# Re: a union is always a join!

From: Brian Selzer <brian_at_selzer-software.com>
Date: Wed, 7 Jan 2009 22:35:12 -0500
Message-ID: <Qve9l.515\$PE4.406_at_nlpi061.nbdc.sbc.com>

This is really very simple, if you choose to actually use the mass of tissue between your ears.

~(p /\ q) = ~p \/ ~q

So if ~(p /\ q), then which is false? p? q? both? All we can determine for certain is that it is definitely not neither.

"paul c" <toledobythesea_at_oohay.ac> wrote in message news:Gea9l.52558\$u17.60_at_newsfe20.iad...
> rpost wrote:

```>> paul c wrote:
>>
>>> Criticisms, please (preferably ones based on some formal logic or
>>> other).
>>>
>>> It is inescapable that every relation is a join (eg., Heath's theorem).
>>
>> As Brian writes, this is one step too far.  Every relation can be
>> decomposed into smaller ones based on its nontrivial functional
>> dependencies, but if it hasn't any - and the resulting relations don't -
>> it is only a join of itself.
>> ...
>
```

> All relations have at least n+1 fd's, even if trivial, where n is the
> number of attributes. All relations with at least one attribute (all but
> 'Dee') are a join of at least two (non-empty) relations.
```>
>> Perhaps by join you mean something like the AND in Darwen's 'A New
>> Relational Algebra' (thanks for giving its URL earlier), which has the
>> join and and union of relational algebra as special cases.  We can also
>> decompose relations by writing them as the unions of other relations
>> (someone I know wrote a PhD thesis about it), but Heath isn't about that.
>> ...
>
```

> <AND> or the equivalent in another algebra is the only way to understand
> what join and union really mean, ie., are actually capable of being
> interpreted as. Some 'unions' can only be expressed as the union of
> themselves and an empty relation. I think it is helpful to understand
> union from some formal definition that acknowledges the logical
> possibility that two relations may not be 'union' compatible, eg., the
> '<OR>' operation or equivalent. Understanding relation structure based on
> empty relations seems as pointless/useless to me as understanding
> relational complement as being 'simple' complement. In fact, I'd rather
> call simple complement the vague complement and relative complement the
> exact complement. Why eschew a more precise interpretation when it's
> staring us in the face?
```>
>> algebra join horizontally (it extends tuples with attributes and values),
>> but when projecting these attributes away again, hasn't added anything).
>> An insert can be expressed as a (relational algebra) union of the
>> existing
>> relation with the inserted tuples, but no nontrivial r.a. union is a
>> r.a. join (and vice versa).  Using the term 'join' for Darwen's AND
>> operator, which combines r.a. union and join, doesn't change this.
>>
>> What are you trying to achieve?
>> ...
>
```

> Originally, the most potent axioms for an implementation language that
> follows McGoveran's suggestions, ie., ones that recognize relation
> structure as opposed to how a relation value may have been arbitrarily
> formed. The way most people talk of Codd's algebra is simplistic because
> they have typically not tried to interpret it, probably have never even
> read it, for example, in the above, what do horizontal and vertical
> coordinates have to do with anything relational?. This is faux
> technocracy, usually involving what de Bono called porridge words which in
> this case are additional lingo to disguise a lack of basic understand (and
> which is how I believe Codd's algebra is usually 'taught', or thought to
> be 'taught'. But more to the point, I continue to be amazed that people
> claim they can 'insert' a tuple to a relvar but cannot 'delete' that very
> tuple! (vice-versa too.) I think when they say they can't delete, what
> they are really saying is that they can't delete a tuple that
> is not in the join! The same goes for asserting and retracting a
> proposition in general. I've no doubt that it might be difficult to
> retract a proposition that one has never asserted! In a way, this is no
> surprise to me and I still don't know why people think it is a problem,
> when all human affairs contain much mumbo-jumbo that is logically
> make-believe. Now that you mention it, another goal would be to prevent
> geometric interpretations of the basic algebraic structures! Sounds like
> tables or arrays are getting mixed up with relations.
>
Received on Thu Jan 08 2009 - 04:35:12 CET

Original text of this message