Re: Is a function a relation?

From: Brian Selzer <>
Date: Tue, 23 Jun 2009 08:32:46 -0400
Message-ID: <PX30m.509$>

"David BL" <> wrote in message
> On Jun 23, 1:09 pm, Keith H Duggar <> wrote:
>> You considered the wrong relation values having the wrong
>> attribute names. Here are the correct values
>> f(x) = x+1 -> { (domain,range) | range = domain + 1 }
>> g(y) = y+1 -> { (domain,range) | range = domain - 1 }
>> corresponding to the f(x) and g(y) you gave.
> So you're suggesting that a function is a relation where a special
> convention has been followed in the choice of attribute names? Yes
> that's one way of looking at it. That would in fact suggest the
> interesting idea that one can use the RA to define functions. E.g.
> start with some n-ary relation and use projection to get a binary
> relation, and rename as required according to this special naming
> convention.

I think that it is not names but roles. Instead of domain and range, think determinant and dependent. A function is a relation that has defined in its schema at least one dependent attribute that does not belong to all determinants. Put it another way: a function is a relation that satisfies at least one nontrivial functional dependency. Received on Tue Jun 23 2009 - 14:32:46 CEST

Original text of this message