dbTalk Databases Forums  

Re: Relation subset operators

comp.databases.theory comp.databases.theory


Discuss Re: Relation subset operators in the comp.databases.theory forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
cimode@hotmail.com
 
Posts: n/a

Default Re: Relation subset operators - 06-06-2009 , 02:03 AM






On 5 juin, 22:00, paul c <toledobythe... (AT) oohay (DOT) ac> wrote:
Quote:
paul c wrote:

...

It's to do with logical FORALL. *If the set of purple cars is empty,
then no salesman could sell any purple cars (not even one) so all
salesman have sold all of them! *(wish I could phrase that en francais.)
I am still trying to get my head around making sense of this. While
doing that, here is the French translation of this assertion:

"Si l'ensemble des voitures pourpres est un ensemble vide, alors aucun
vendeur n'aurait pu vendre la moindre voiture pourpre (pas meme une
seule) alors tous les vendeurs les auraient toutes vendues." I
believe you are not aware how that sounds absurd in French...

Quote:
I really do. *Used to have a friend who could give French and Latin and
sometimes Greek translations of my text. *If Cimod gets the drift maybe
he'd oblige and maybe he or somebody else could post the Latin.
Something memorable, like semper ubi sub ubi, so I'd never have to think
twice about purple parts again.

Reply With Quote
  #2  
Old   
Walter Mitty
 
Posts: n/a

Default Re: Relation subset operators - 06-06-2009 , 05:11 AM






<cimode (AT) hotmail (DOT) com> wrote

On 5 juin, 22:00, paul c <toledobythe... (AT) oohay (DOT) ac> wrote:
Quote:
paul c wrote:

...

It's to do with logical FORALL. If the set of purple cars is empty,
then no salesman could sell any purple cars (not even one) so all
salesman have sold all of them! (wish I could phrase that en francais.)
I am still trying to get my head around making sense of this. While
doing that, here is the French translation of this assertion:

"Si l'ensemble des voitures pourpres est un ensemble vide, alors aucun
vendeur n'aurait pu vendre la moindre voiture pourpre (pas meme une
seule) alors tous les vendeurs les auraient toutes vendues." I
believe you are not aware how that sounds absurd in French...

Quote:
I really do. Used to have a friend who could give French and Latin and
sometimes Greek translations of my text. If Cimod gets the drift maybe
he'd oblige and maybe he or somebody else could post the Latin.
Something memorable, like semper ubi sub ubi, so I'd never have to think
twice about purple parts again.
Here's an attempt in Spanish

"Si el conjunto de autos morados fuese un conjunto vacío,
entonces ningun vendedor no podría vender auto morado alguno
(nisiquiera uno) de tal modo que todos los vendedores
los han vendido todos. "

It sounds equally absurd to me. I'm not sure it's right.
Note the double negative, and the use of a subjunctive.

A guy walks into a coffee shop, and orders a coffee without cream.
The server says, "we're all out of cream today."
"In that case," the guy responds, "I'll have a cup of coffee without milk."

Reply With Quote
  #3  
Old   
paul c
 
Posts: n/a

Default Re: Relation subset operators - 06-06-2009 , 07:09 AM



cimode (AT) hotmail (DOT) com wrote:
....
Quote:
"Si l'ensemble des voitures pourpres est un ensemble vide, alors aucun
vendeur n'aurait pu vendre la moindre voiture pourpre (pas meme une
seule) alors tous les vendeurs les auraient toutes vendues." I
believe you are not aware how that sounds absurd in French...
..l.
Merci beaucoup. Maybe it sounds "fou", what about something more pithy
like "nothing is true of everything"?

Reply With Quote
  #4  
Old   
cimode@hotmail.com
 
Posts: n/a

Default Re: Relation subset operators - 06-06-2009 , 10:18 AM



On 6 juin, 14:09, paul c <toledobythe... (AT) oohay (DOT) ac> wrote:
Quote:
cim... (AT) hotmail (DOT) com wrote:

...

"Si l'ensemble des voitures pourpres est un ensemble vide, alors aucun
vendeur n'aurait pu vendre la moindre voiture pourpre (pas meme une
seule) alors tous les vendeurs les auraient toutes vendues." *I
believe you are not aware how that sounds absurd in French...
..l.

Merci beaucoup. Maybe it sounds "fou", what about something more pithy
like "nothing is true of everything"?
Absurd is not necessarily crazy(fou).

Actually I do respect *absurd* reasonning as a mathematical tool (if
you can't prove something is right try to prove that the opposite is
wrong)...I just don't believe that a science that does even yet have
consensus about how universal quantifiers are defined should even go
there. Not for a second. In French: Ne pas mettre la charrue avant
les boeufs.

Reply With Quote
  #5  
Old   
paul c
 
Posts: n/a

Default Re: Relation subset operators - 06-06-2009 , 10:56 AM



cimode (AT) hotmail (DOT) com wrote:
....
Quote:
Absurd is not necessarily crazy(fou).

Actually I do respect *absurd* reasonning as a mathematical tool (if
you can't prove something is right try to prove that the opposite is
wrong)...I just don't believe that a science that does even yet have
consensus about how universal quantifiers are defined should even go
there. Not for a second. In French: Ne pas mettre la charrue avant
les boeufs.
Just curious, since everybody seems to be in such a good mood, is there
a French word for (logically) 'true', other than 'vrai'?, eg., true in
some formal logic sense.


(If English had no such word, limited, say, to 'real', there'd be no
stopping the mystics. Then there is 'faux' which I gather often stands
for artificial. I often think neither language has the exact right
words and think that would put any sensible person in a mood to think
that the relational 'modal' wouldn't be precisely expressible in either
one.)


This all reminds me that I've never tried to follow through Codd's
reduction algorithm nor the later corrections (ie., the equivalence
between the calculus and the algebra might be a way to constrain the
possible interpretations of each individuallly and so avoid the spoken
language problems . Does anybody know of a free online source for either?

Reply With Quote
  #6  
Old   
cimode@hotmail.com
 
Posts: n/a

Default Re: Relation subset operators - 06-06-2009 , 11:08 AM



On 6 juin, 17:56, paul c <toledobythe... (AT) oohay (DOT) ac> wrote:
Quote:
cim... (AT) hotmail (DOT) com wrote:

...

Absurd is not necessarily crazy(fou).

Actually I do respect *absurd* reasonning as a mathematical tool (if
you can't prove something is right try to prove that the opposite is
wrong)...I just don't believe that a science that does even yet have
consensus about how universal quantifiers are defined should even go
there. *Not for a second. *In French: Ne pas mettre la charrue avant
les boeufs.

Just curious, since everybody seems to be in such a good mood, is there
a French word for (logically) 'true', other than 'vrai'?, eg., true in
some formal logic sense.
Well in the army when a proposition/assertion is made to a soldier,
that soldier can answer *affirmatif* to validate the assertion or
negatif to deny it.

Quote:
(If English had no such word, limited, say, to 'real', there'd be no
stopping the mystics. *Then there is 'faux' which I gather often stands
for artificial. *I often think neither language has the exact right
words and think that would put any sensible person in a mood to think
that the relational 'modal' wouldn't be precisely expressible in either
one.)

This all reminds me that I've never tried to follow through Codd's
reduction algorithm nor the later corrections (ie., the *equivalence
between the calculus and the algebra might be a way to constrain the
possible interpretations of each individuallly and so avoid the spoken
language problems . *Does anybody know of a free online source for either?
Formalism is the only way around subjectiveness. I do somehow believe
that a formalism that is non universal is not good formalism. As far
as the formalism used in RM, I believe that D&D have failed a long
time ago onto designing an effective formalism for scrutiny (which
does not say anything about the algebra though). In a sense, their
body of logical work needs to be reexpressed and reformulated to be
more inclusive to larger audiences.

Reply With Quote
  #7  
Old   
paul c
 
Posts: n/a

Default Re: Relation subset operators - 06-06-2009 , 02:31 PM



cimode (AT) hotmail (DOT) com wrote:
....
Quote:
I would go further than that into saying that previous work has only
clarified side effects of relation operations. And a lot of it missed
the mark into expressing properties of operations that can not be
expressed without proper quantifiers. For instance, does the empty
set has the same role place in relational theory, than the zero would
have in traditional algebra. Up till, such questions have not been
answered and these claims have neither been properly demonstrated nor
they have been properly evaluated. ...
In relational algebra, I know of only two contexts for the empty set,
one is the empty heading/attribute set, the other is the empty
relation/tuple set. The first has two values, the second can have many
values. Neither operates like arithmetical zero, for example division
by the empty set is defined whereas it is undefined for zero. I'm not
sure what "questions" remain unanswered, as far as I know both empty set
contexts are defined and both function as identities that give
relational closure, unlike arithmetic.

Reply With Quote
  #8  
Old   
cimode@hotmail.com
 
Posts: n/a

Default Re: Relation subset operators - 06-06-2009 , 02:54 PM



Quote:
In relational algebra, I know of only two contexts for the empty set,
one is the empty heading/attribute set, the other is the empty
relation/tuple set. *The first has two values, the second can have many
values. *Neither operates like arithmetical zero, for example division
by the empty set is defined whereas it is undefined for zero. *
I disagree with the assertiion that division is undefined for zero.
The tool of limits demonstrated that the operation is simply not
possible because the result would an infinite value that can not be
handled solely though mere algebra. I used the example of the zero
because this is how I perceive algebric rigor: the need for qualifying
a tool and the limits of such tool to be a reliable way to achieve
demonstrative properties. As for the empty set, describing some
characteristics does not determine it usefulness. I just wished I had
your optimism on that.

Quote:
I'm not
sure what "questions" remain unanswered, as far as I know both empty set
contexts are defined and both function as identities that give
relational closure, unlike arithmetic.
I believe in the test of time. zero has now been around for more than
a millenia and allowed great progress for humanity. I would not say I
am confident that the concept of empty set (at least as currently
defined) would provide as much to advance research. Hard to say.

Reply With Quote
  #9  
Old   
vadimtro@gmail.com
 
Posts: n/a

Default Re: Relation subset operators - 06-06-2009 , 04:19 PM



On Jun 6, 11:43 am, cim... (AT) hotmail (DOT) com wrote:
Quote:
I would go further than that into saying that previous work has only
clarified side effects of relation operations. And a lot of it missed
the mark into expressing properties of operations that can not be
expressed without proper quantifiers. For instance, does the empty
set has the same role place in relational theory, than the zero would
have in traditional algebra. Up till, such questions have not been
answered and these claims have neither been properly demonstrated nor
they have been properly evaluated. However nothing prevented
demonstrators of using such quantifier in relational operations.
There is something in that puzzles me. The creators of the zero did
prove and demonstrate the usefulness of such value into simplifying
algebra before they could actually use it. Nothing similar can be
said of all particular relation that have been created in packs and
used (Empty sets, DEE, DUM etc...)...In a word, a lot of
demonstrations were made using tools but nobody questionned the
relevance of such tools before using them...That is a deep sign of
immaturity
Share many of your sentiments:

http://arxiv.org/abs/0902.3532

Page 5 documents four constants, compared to Boolean algebra which has
2 constants: top and bottom (aka true and false for two-valued boolean
algebras). In fact, everything exploded twice in relational lattice:
there are 2 pairs of true and false constants, two versions of logical
AND and OR operators (page 6, figure 1), and two versions of
negation!

The last assertion goes a little beyond the scope of the paper which
introduced complement as unary operation satisfying the two axioms:

x' ^ x = x ^ R00.
x' v x = x v R11.

The dual version of this operation also makes sence. Let's call it
"inversion" and use the back quote "`" symbol in postfix notation to
write down the defining axioms:

x` ^ x = x ^ R11.
x` v x = x v R00.

(For those readers who bothered to copy and paste in these identities
into Prover9, please don't forget to add something like

op(300, postfix, "`" ).

to Language options.)

Informally, inversion complements relation header, and it could be
demonstrated that the best it can do about the relation content is
producing either the cartesian product of the full domains, or the
empty relation. Not surprisingly, it is weaker than complement. Double
inversion doesn't hold, only

x```=x`.

The other interesting theorems:

x` v y` = (x + y)`.
x` + y` = (x v y)`.
x'`v y'`= (x ^ y )'`.

Complement and inversion can be viewed as "halves" of genuine boolean
negation operator, because in relational lattice it is impossible to
have a genuine negation.

Now into the main topic -- set equality join. I prefer to focus on set
equality rather than set containment because I expect it to have nicer
algebraic properties. For one thing, set equality join is commutative,
and set containment is not. Because set join is essentially universal
quantifier, and the later is often is written as "/\" (capital join
"^"), lets choose the notation appropriately, so that set equality
join of relations x and y is written as x/\y. What is set equality
join algebraically in terms of our basic operations?

A good starting point is taking a familiar representation of
relational division in terms of standard RA operations, and convert it
to RL. Unfortunately, in RA there is no escape from regressing to
explicit attribute usage, so lets assume that x=X(q,s) and y=Y(s,t).
Then,

X(q,s) /\ Y(s,t) = ( project_q(X) join project_t(Y) ) \
project_qt( (project_q(X) join Y ) symm_diff (X join project_t(Y) ) )

Here is direct RL equivalent:

x /\ y = (x v (y^R00)`) ^ (y v (x^R00)`) ^
(
(((x ^ y) v (x v y)`) ^ R00) v
(
( ((x v (y^R00)`) ^ y) v ((y v (x^R00)`) ^ x) )
^ ( ((x v (y^R00)`) ^ y) ^ ((y v (x^R00)`) ^ x) )'
)
)'.

This certainly looks more verbose than RA, on a plus side however,
there is no explicit reference to relation attributes; every variable
is a relation! Please also note how inversion came handy when we have
to construct relations with attribute sets which are set differences.
After writing this (and double checking its validity in QBQL) I
refused to believe that this is the shortest possible expression for
set equality join. There is no way one can get any insight from such
unwieldy blob!

There indeed is a nicer version:

x /\ y = ((x`*y)^(y`*x)) *
(
((x`*y)^(y`*x)) *
((x'^y)v(y'^x))
)'.

I especially like symmetries and dualities of this one:

x /\ y = ((x`*y)+(y`*x)) ^
(
((x`*y)+(y`*x)) *
((x'^y)v(y'^x))
)'.

I'm still not sure if there are shorter versions. Marshall (who is
apparently in stealth mode) used to work on a program that generates
all valid RL expressions, and this looks like a problem fitted for
such a tool. The other curiosity is how many different RL expressions
one can generate with inversions and complements alone. For example,
the identities

x``` = x`.
x'' = x.
x`'`'`'=x`'.
x'`'`'`=x'`.

show some limitations, but what about less obvious interleavings of
inversion and complement?

Reply With Quote
  #10  
Old   
vadimtro@gmail.com
 
Posts: n/a

Default Re: Relation subset operators --> negation - 06-06-2009 , 05:36 PM



On Jun 6, 2:19*pm, vadim... (AT) gmail (DOT) com wrote:
Quote:
The dual version of this operation also makes sence. Let's call it
"inversion" and use the back quote "`" symbol in postfix notation to
write down the defining axioms:

x` ^ x = x ^ R11.
x` v x = x v R00.

....

Informally, inversion complements relation header, and it could be
demonstrated that the best it can do about the relation content is
producing either the cartesian product of the full domains, or the
empty relation. Not surprisingly, it is weaker than complement. Double
inversion doesn't hold, only

x```=x`.

The other interesting theorems:

x` v y` = (x + y)`.
x` + y` = (x v y)`.
x'`v y'`= (x ^ y )'`.

Complement and inversion can be viewed as "halves" of genuine boolean
negation operator, because in relational lattice it is impossible to
have a genuine negation.
To clarify this a little more, the fundamental decomposition identity

x = (x ^ R00) v (x ^ R11).

generalizes to

x = (x ^ y') v (x ^ y`).

which the double complement law y = y'' makes it equivalent to

x = (x ^ y) v (x ^ y`').

Compare it to boolean algebra identity

x = (x ^ y) v (x ^ (-y)).

To repeat, one can't have a genuine negation -x in relational,
lattice. The composition of inversion and complement gets us as close
as it can. In order to have genuine negation one would have to
complement not only relation's content, but relation header as well,
and it is impossible to do it satisfactory.

Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.