Re: Proposal: 6NF
Date: 14 Oct 2006 22:34:51 -0700
Message-ID: <1160890491.212291.251380_at_m7g2000cwm.googlegroups.com>
Jan Hidders wrote:
[...]
> > I am actually puzzled when one sez, be it
> > Cardelli or anyone else, subtyping is subsetting and then adds
> > something like "Oh, by the way I am really talking about algebraic
> > structures, not just arbitrary sets".
>
> I said no such thing. The whole point was that there are two ways of
> defining certain data types, abstract algebraically and by direct
> construction of the sets. In the second approach subtyping equals
> subsetting,
There are very many ways, maybe too many ways, to define the type. The most familiar to the OOP person expectation of what the type is is based on the LSP where one can substitute objects of type S for objects of type T, S being a subtype of T, without change in behavior. Clearly, treating Z as subtype of R does not conform the LSP, because Z is not a subfield of R.
> and I've discussed what the corresponding requirement in
> the algebra setting is.
My objection to that is, as was before, that in the original definition of subtypes as subsets there was no 'algebra' word.
>Neither of them is "what I'm really talking
> about" because both can be valid ways of modelling certain types.
Does the above mean that you agree that 'subtypes as subsets' cannot adequately model R/Z, Q/Z, or even Z/N type relationship ?
> But seriously, what does the order of derivation have to do with
> direction of subtyping? Surely you are not making the mistake of
> confusing inheritance, as a relationship that expresses that one thing
> is constructed in terms of another, with subtyping that expresses a
> conceptual relationship?
I implicitely used the LSP. What's your subtype definition ? Perhaps we should have started with that.
>
> -- Jan Hidders
Received on Sun Oct 15 2006 - 07:34:51 CEST