Re: A simple notation, again




"paul c" <toledobythesea@xxxxxxxx> wrote in message
news:4kWmi.125098$1i1.56624@xxxxxxxxxxxx
Bob Badour wrote:
David Cressey wrote:

"Bob Badour" <bbadour@xxxxxxxxxxxxxxxx> wrote in message
news:469bac76$0$8868$9a566e8b@xxxxxxxxxxxxxxxxxx

David Cressey wrote:


Using the notation [A B C] for <NOT> (A <AND> B <AND> C), etc.

The following [ A [B]] means "A implies B" for Boolean algebra.


What is

the corresponding thing for Relational Algebra?

Also, I'm trying to come up with a bracket notation for a "literal
relation", like literals for simple datatypes like numbers and


character

strings.

I'm toying with this:

[["David" "Cressey" 1]
["Marshall" "Spight" 2]
["Bob" "Badour" 3]
["Jan" Hidders" 4]]



This would represent a relation of order 3 and cardinality 4.


What I don't like about this is that the binding between attribute


values

and attribute names is
by position rather than by name, and in fact the attribute names
don't


even

appear here. That's unacceptably bad. The symmetry is appealing,
but


it

clearly needs improvement.


You omitted names entirely. You would have to extend the syntax to
something like:
[[name="David" surname="Cressey" n=1]
[n=2 name="Marshall" surname="Spight"]
[surname="Badour" name="Bob" n=3]
[name="Jan" surname="Hidders" n=4]]



Yeah, that'll do it, all right. To be consistent with the former
notation,
each attribute=value pair needs to be construed as a relation of order 1
and
cardinality 1.

The extended <AND> of a single name, a single surname, and a single n,
will
be the cartesian extended product, which will be a relation of order 3
and
cardinality 1.
Outside the inner bracket, what we have is the <NOT> of this, which
I'll
call the <NOT> of a <TUPLE>. Where <TUPLE> means a relation of
cardinality
one.

We have four of these <NOT> of a <TUPLE>, connected by an extended <AND>
.
This time the extended <AND> resolves to the intersection of the
operands,
bercause all the operands have the same attributes.

So inside the outer brackets we have the intersection of a collection of
<NOT>s of <TUPLE>s.
This is equivalent to the <NOT> of the union of the <TUPLE>s. Outside
of
the outer brackets, we have the <NOT> of the <NOT> of the union of the
<TUPLE>s, This is the union of the <TUPLE>s, which is the desired
relation.

Does this make any sense at all, from a mathematical perspective? I am
definitely in over my head, here.


Yeah, I followed it when you posted it. I will leave it for Jan or Vadim
to answer whether A UNION B = NOT( (NOT A) JOIN (NOT B))
...

I think I follow it too, at least as far as the D&D TTM-A algebra is
concerned and it gibes with any example I've ever tried to work through as
long as I followed the closed-world-assumption that D&D follow.

ie. de Morgan's law applied with TTM-A means A <OR> B being true implies
<NOT> ((<NOT> A) <AND> (<NOT> B)) being true and vice versa. But why ask
the question using "UNION", "NOT" and "JOIN" unless they are defined
differently than D&D define them?

Also, this gives me an excuse to mention one of my pet penchants again.
<NOT> (A <OR> B) is the complement of a union in D&D terms and when A <OR>
B is true, it implies that (<NOT> A) <AND> (<NOT> B) is false. I find it
interesting to think about a relation's complement when thinking about
insert to "union". When A and B have the same heading and we insert a
single tuple to a view that is A <OR> B, some people say inserting to one
or the other of A or B is just as logical as inserting to both A and B, so
we can't really decide what to do. But it seems reasonable to me that the
complement of the view must also respect the complements of A and B, so
neither of those complements should contain the inserted tuple, which
means that both A and B would contain it after the insert.


I don't think this is quite right.

Suppose t is a tuple whose presence in A or in B would not violate any
constraints. Then t must necessarily be an element of either A or its
complement, and t must necessarily be an element of either B or its
compliment. Now, if t does not appear in A union B, then t must necessarily
be an element of both the complement of A and the complement of B. As a
result, an insert of t into the view, A union B, does not map to any one of
these operations: (1) an insert of t into A, (2) an insert of t into B, or
(3) an insert of t into both A and B.

As an aside: if one adheres to the Principle of Orthogonal Design, then the
individual represented by the tuple t can never* exemplify both A and
B--that is, t would violate the predicate of A or of B, so an insert of t
into the view, A union B, would necessarily be deterministic. (There is one
exception, but it is trivial: when the keys of both A and B are composed of
their entire headings and when an inclusion dependency is defined between A
and B, then it is possible for t to exemplify both A and B, but it should be
obvious that the view, A union B, would necessarily be composed of just
those tuples that exist in whichever is the referenced relation, so it would
be pointless to create such a view in the first place.)


p


.



Relevant Pages

  • Re: A simple notation, again
    ... This would represent a relation of order 3 and cardinality 4. ... You would have to extend the syntax to ... Outside the inner bracket, what we have is the of this, which I'll ... find it interesting to think about a relation's complement when thinking about insert to "union". ...
    (comp.databases.theory)
  • Re: relative complement?
    ... The complement of a join A JOIN B is equal to: JOIN Ub) UNION ... JOIN, means inserting into the UNION, means there are three distinct ... I asked the question just to try to understand the technicalities of what McGoveran said and deliberately avoided mention of UNION which I think is an idiosyncrasy that commonly misleads as well as view updating which I have no problem with, at least conceptually, although I realize that many, many others have big problems with. ...
    (comp.databases.theory)
  • Re: Lazy question about De Morgans Laws
    ... the complement of a union is the intersection of the ... closed sets, and the fact that we are only allowed to take infinite ...
    (sci.math)
  • Re: Lazy question about De Morgans Laws
    ... the complement of a union is the intersection of the ... closed sets, and the fact that we are only allowed to take infinite ...
    (sci.math)
  • Re: a union is always a join!
    ... Relational Algebra', ... join and and union of relational algebra as special cases. ... relational complement as being 'simple' complement. ... Why eschew a more precise interpretation when it's ...
    (comp.databases.theory)