Re: Graph

From: David BL <>
Date: Mon, 14 Jan 2008 22:22:48 -0800 (PST)
Message-ID: <>

On Jan 15, 12:56 pm, mAsterdam <> wrote:
> David BL wrote:
> > mAsterdam wrote:
> >> You did not address my question.
> >> I'll rephrase it as a statement:
> >> Having a domain and a codomain is relevant
> >> to something being a function.
> >> Having a domain and a codomain is irrelevant
> >> to wether a function is a kind of relation or not.
> >> You appear to see that differently. Please explain.
> > It appears we may have a different interpretation of what "is-a"
> > means.
> Now this is a kind of can of worm-like beings!

Oh yes!

> I suspect it is more a matter of context: In the context of running
> programs, objects behave, and there is a concern for consistency in
> their behaviour: program correctnes, preferably provable. After the
> object dies, however, there still is data, which may later be used to
> incarnate similar objects, but also to build completely different objects.
> For the data sec no such behavioral consistency concern applies.
> A similar idea can be found at,
> search for 'envelopes'.

Yes I agree that it depends on the context. More to the point, I think it's important to distinguish between value-types and non-value types.

> > I am assuming that for a function to be a relation, a function
> > is not permitted to introduce additional information (not available on
> > the relation). Instead it is only allow to introduce constraints.
> > You could compare this to Date's statement that it is wrong to say
> > that a coloured rectangle is-a rectangle. This corresponds to
> > thinking of a subtype as being a subset, and BTW is not the view
> > generally held by most OO practitioners that assume is-a means LSP:-
> >
> Which is, if I understood correctly, about behavioral consistency.

Yes. I only raised it because most programmers are exposed to OO concepts, and I think the LSP has coloured some people's concept of "is a" in a way that's at odds with the mathematician's perspective.

> > In a pure mathematical setting, the "subtype = subset" view seems more
> > appropriate, as for example when we say that a circle is-a ellipse.

Did I address your question? Received on Tue Jan 15 2008 - 07:22:48 CET

Original text of this message