# Re: Is a function a relation?

Date: Tue, 23 Jun 2009 08:32:46 -0400

Message-ID: <PX30m.509$kA.392_at_nlpi068.nbdc.sbc.com>

"David BL" <davidbl_at_iinet.net.au> wrote in message
news:09f7bd9a-76f9-47c3-a4fd-8ef4556c2036_at_m19g2000yqk.googlegroups.com...

> On Jun 23, 1:09 pm, Keith H Duggar <dug..._at_alum.mit.edu> 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