Re: SQL, related records (quotes)
Date: Sun, 26 Jun 2005 17:36:18 +0200
Dan Guntermann wrote:
> "Stefan Rybacki" <stefan.rybacki_at_gmx.net> wrote in message
>>Dan Guntermann wrote: >> >>>... >>>But alas, not many implementations allow for assertions of antisymmetry, >>>though it could be done with a trigger. This approach would enforce the >>>condition that >>>for all (child, parent) relationships that are members of hierarchies, >>>there does not exist a tuple of (parent, child). It also has the >>>limiting factor of disallowing single node hierarchies. >> >>You meant non-symmetry since anti-symmetry says: you can have (child, >>parent) and (parent, child) at the same time execept parent=child
> Deesn't non-symmetry simply mean there exists a tuple <child X, parent Y> in
> hierarchies such that there is no corresponding tuple <child Y, parent X> in
> hierarchies? This isn't the same as a universal quantifier.
> No. I still think anti-symmetry in conjunction with non-reflexive holds
> here. Does the following meet the definition of anti-symmetry that you
> state above?
anti-symmetry + non-reflexifity = non-symmetry
Since anti-symmetry disallow symmetry except if both relation partners are equal. And non-reflexifity disallow this case a R a, so what remains is non-symmetry.
> child parent
> 6 3
> 3 6
> If it doesn't, then it makes sense that the DBMS reject such a condition.
> Obviously 6 does not equal 3.
>>Just mentioned ;) (I know antisymmetry works here since you said you don't >>allow reflexive tupels)
> Right. Suppose a relation R on the domain A. For all a, b in the same
> domain A,
> a R b ^ b R a --> a = b, which is equivalent to
> ~(a R b ^ b R a) V a=b.
> However, we have a constraint that asserts the condition a <> b. Thus, ~(a
> R b ^ b R a) V FALSE reduces to:
> ~(a R b ^ b R a).
Correct, this is exactly non-symmetry.
>>Regards >>Stefan >> >> >>>...
Received on Sun Jun 26 2005 - 17:36:18 CEST