Re: The wonderful world of keys

From: Marshall <marshall.spight_at_gmail.com>
Date: 25 Jan 2007 07:41:36 -0800
Message-ID: <1169739696.693750.243130_at_h3g2000cwc.googlegroups.com>


On Jan 25, 4:25 am, paul c <toledobythe..._at_oohay.ac> wrote:
> paul c wrote:
> > Marshall wrote:
>
> >> So, I don't see anything wrong with having nothing on either the
> >> left or the right side of the "->". One could think of both sides
> >> as being in conjunctive normal form, and an empty expression
> >> is just the conjunction of zero terms.
>
> >> Consider how you would express a boolean function as
> >> a relation. Let's take less-than. You *could* think of it as a
> >> relation of three attributes:
>
> >> x:int, y:int -> result:boolean
>
> >> But it is cleaner to consider it instead as
>
> >> { x, y | x < y }
>
> >> A relation on two attributes. And what is the functional
> >> dependency of the above?
>
> >> x, y ->
>
> > I thought that dependency theory says (x,y) -> {}, so the right side
> > isn't exactly nothing, rather the empty set and the dependency would be
> > true of every true tuple when {x,y} is a superkey. And that the
> > "implication" is true if the relation has tuples. But not always true
> > of false tuples, ie., the complement. Darwen and co give relations with
> > empty attribute sets a value, either true or false.
>
> Correction - the "implication" is true even if the relation is empty,
> but not necessarily true in the complement. (I think I'd better stop now
> as it is early here and this might distract me all day long.)

Sure. Don't get hung up on the notation. I was writing a function type when I wrote

    x, y ->

I could also have written

    x, y -> ()

Or:

   (x, y -> )

If I was writing a comparable functional dependency, it would be

   {x, y} -> {}

Since FDs are between sets of attributes.

Marshall Received on Thu Jan 25 2007 - 16:41:36 CET

Original text of this message