Re: RL notation

From: Marshall <marshall.spight_at_gmail.com>
Date: Fri, 8 Feb 2008 09:06:14 -0800 (PST)
Message-ID: <d21147b8-0fa4-465e-a7f6-053a1b72b9cc_at_e6g2000prf.googlegroups.com>


On Feb 7, 5:12 pm, Tegiri Nenashi <TegiriNena..._at_gmail.com> wrote:
> On Feb 7, 2:29 pm, Marshall <marshall.spi..._at_gmail.com> wrote:
>
> > > Can we
> > > have just one more constant: Universal Equality Relation (denoted as
> > > E)? Then `x=y` is defined as E projected to attributes x and y.
>
> > What are the advantages and disadvantages? It doesn't seem
> > much different from having = as a logical operator. But maybe
> > it is, and equality (and hence substitutibility) exists only in the
> > metalanguage. I guess one advantage would be that E would
> > then be subject to the regular axioms as any other relation is.
>
> ... plus some extra.

Right. I would guess that these would look something like the usual equality axioms recast in RL terms. At least those that aren't already subsumed by the lattice axioms.

> No, the top and bottom are not redundant, they are the least
> interesting. I can't think of any relational expression (a query, or a
> constraint) where you need them. Indeed, as soon as we have
>
> R \/ 10
>
> then we just rewrite it as
>
> R
>
> Likewise the
>
> R /\ 10
>
> is reduced to
>
> 10
>
> Eventually you either get rid of 10, or collapse the expression to a
> single 10. Ditto for 01. So you can't really express any non vacuous
> fact about the database with them.

Ah! That's what you mean by "interesting!" Now I understand why you keep saying that. Yes, 01 and 10 will never appear in any conjunction or disjunction (or comparison) in any theorem, and that certainly does make them less interesting.

> > > I'd suggest operating
> > > RL expressions in completely attribute free fascion. Whenever there is
> > > an expression and there is a relation with some specific constraints
> > > (e.g. having attribute x, or being empty), then it could be rewritten
> > > in more general way without these constraints. In principle generality
> > > should lead to simplicity....
>
> It actually seems to be easy. Consider the "equality" axiom
>
> R(x,y) /\ `y=z` = R(x,z) /\ `y=z`
>
> Informally, we requre the renaming of the attribute y into z to be
> consistent with the equality relation `y=z`. So we have three
> attributes x,y, and z. First of all the fact that attributes are
> atomic is not significant, we can easily think of "composite"
> attributes as disjoint sets of attributes! Next if we just agree to
> call empty relations as "attributes" then we half way to our goal of
> excluding the concept of attributes altogether. So what constraint to
> the relations x,y,z do we have? Easy:
>
> x \/ y = 00
> x \/ z = 00
> y \/ z = 00
>
> They say both that x,y,z are empty, and their set of attributes are
> disjoint! If you really insist on atomic attributes, then we can
> define them as atoms in the boolean algebra of the header relations,
> but again, this is unnecessary constraint.
>
> Next, the next two constraints
>
> R /\ 00 = x /\ y
> S /\ 00 = x /\ z
>
> are specify what are the attributes of the two relations R and S. And,
> finally, the constraint
>
> R /\ (E \/ (y /\ z)) = S /\ (E \/ (y /\ z))
>
> tell us that R and S is essentially "the same" relation,
>
> P.S. I propose small letters for empty relations as a convention.

Right. This was essentially the line of thought that caused me to talk myself out of my earlier position.

Marshall Received on Fri Feb 08 2008 - 18:06:14 CET

Original text of this message