Re: All hail Neo!
Date: 28 Apr 2006 07:03:14 -0700
Message-ID: <1146232994.251755.5380_at_g10g2000cwb.googlegroups.com>
Hugo Kornelis wrote:
> On 27 Apr 2006 10:32:16 -0700, JOG wrote:
>
> (snip)
> >With RM, by defining a relation we are, in fact, adding the extra
> >proposition:
> >
> >* Every person has a name and an age.
>
> Hi JOG,
>
> Only if the age attribute is not nullable. Otherwise, the proposition is
> either
> * Every person might haev a name and an age
> or
> * Every person has a name and might have an age
>
> (depending on nullability of the name)
>
> Best, Hugo
Valid point Hugo. I actually think as soon as a column is deemed 'nullable', viewing the respective relation as representing: P(name:x, age:y) may be unhelpful, as it allows one to view missing data as something somehow external to the underlying logic. Rather the predicate the relation represents might be considered as follows (or something similar):
Ap [Ex name(p,x) && Ey age(p,y) ]
where p is a member of the set of assertions. Then by 'nulling' the age column we can translate this to:
Ap [Ex name(p,x) && ŽEy age(p,y)] || [Ex name(p,x) && Ey age(p,y)] = Ap [Ex name(p,x)]
And we can no longer comment about ages in terms of the relation as a whole, average or otherwise. This does not seem productive to me. Received on Fri Apr 28 2006 - 16:03:14 CEST