Newsgroups: comp.object,comp.object.logic,comp.theory,sci.math,de.sci.informatik
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!oitnews.harvard.edu!yale!yale.edu!spool.mu.edu!howland.reston.ans.net!newsfeed.internetmci.com!news.kei.com!nntp.coast.net!col.hp.com!news.corp.hp.com!isonews.bbn.hp.com!news.sweden!hpwin055.uksr!hplb!cdollin!kers
From: kers@hplb.hpl.hp.com (Chris Dollin)
Subject: Re: mathematics (algebra?) of object orientation
Sender: news@hplb.hpl.hp.com (Usenet News Administrator)
Message-ID: <KERS.95Dec7081304@cdollin.hpl.hp.com>
In-Reply-To: timd@Starbase.NeoSoft.COM's message of 5 Dec 1995 12:32:23 -0600
Date: Thu, 7 Dec 1995 15:13:04 GMT
Distribution: inet
References: <49c627$bgn@sparcserver.lrz-muenchen.de> <49d23s$6bk@Starbase.NeoSoft.COM>
	<xstepanp.3.30C328BA@cslab.felk.cvut.cz>
	<4a237n$agt@Starbase.NeoSoft.COM>
Nntp-Posting-Host: cdollin.hpl.hp.com
Organization: Hewlett-Packard Laboratories, Bristol, UK.
Lines: 69
Xref: glinda.oz.cs.cmu.edu comp.object:42363 comp.object.logic:629 comp.theory:14901 sci.math:128112

timd@Starbase.NeoSoft.COM (Orph) writes:

   In article <xstepanp.3.30C328BA@cslab.felk.cvut.cz>,
    <xstepanp@cslab.felk.cvut.cz> wrote:
   >In article <49d23s$6bk@Starbase.NeoSoft.COM> 
   >timd@Starbase.NeoSoft.COM (Zombie) writes:
   >
   >>I'm sure there is a lot of theory out there regarding OO systems.
   >
   >>Let's start with this one:  A class is a set of entities.  A sub-
   >>class is a subset.  Where do you want to go from here?
   >
   >Class is a set? It is true and it is not true, I think:
   >It is true if you think that OID (only identification) is a part of a object
   >	in the class
   >It is not true if you don't think so, because what mathematics mean by
   >	'set' is that there are not two exactly same 'objects' in it.
   >	Redundantance is not allowed.

   I don't know, but I think you are off on a tangent somewhere.  Or, 
   perhaps, you are caught up in how you might implement something
   using a programming language.

   It is simple...let's say that we can make a list of all items
   that are an instance of Class X.  Gee.  A list of items.  If
   I can make a list of items, I have a set.  Let's call it Set X.

Lists are not sets; I can have a list [3,3,3,3,3], which is different
from the lists [3,3,3] and [3]. The set {3,3,3,3,3} is the same set as
{3,3,3} or {3}; sets do not admit duplicates.

   Let's say there is a subclass of X called Class Y.  All members
   of Y are members of X.  Hence, the members of Class Y make
   up Set Y which is a subset of Set X.  QED.

Yes, but ...

   The point of Redundancy is irrelavent.  If x1 is a member of
   Class X then x1 is a member of Set X.  I don't see how that
   brings about redundancy.

No, he means that without some way of distinguishing objects that are
otherwise equal, they'd collapse into a single element of the set.

Thus suppose I am considering cartesian 2d points as my objects. I create
a point (0,0). Now I create another point (0,0).

How many points are there?

   >And from this comes out a question: should I think that OID is a part of an
   >object? I has no sence to think so at analysis level. But what at design
   >level? What do you think?

   I don't know what you mean by OID.  

``Object Identifier'' or ``Object Identity''; the value that distinguishes
one object from another with which it might otherwise be confused, eg, a point
with the same (x,y) components.

   I know that in various implementations of systems, sometimes I
   need identifiers for objects and sometimes I don't.

One point of view is that you ``always'' need them, except, by coincidence, 
in some systems or implementations where objects can be distinguished by other
properties.
--

Regards | "Always code as if the guy who ends up maintaining your code will be
Kers.   | a violent psychopath who knows where you live." - John F. Woods
