Re: cdt glossary [Graph] (was: what are keys and surrogates?)

From: David BL <>
Date: Fri, 11 Jan 2008 00:54:26 -0800 (PST)
Message-ID: <>

On Jan 11, 5:12 pm, mAsterdam <> wrote:
> David BL wrote:
> > Keith H Duggar wrote:
> >> David BL wrote:
> >>> Marshall wrote:
> >>>> An interesting note, by the way: functions are relations...
> >>> Isn't it more precise to say that the graph of a function is a
> >>> relation?
> >> No, it isn't.
> >>
> > From mathworld a relation
> >
> > is defined as a subset of a cartesian product. If a function is a
> > relation why do they define a graph of a function f as
> > { (x,f(x)) | x in domain of f },
> > as described in
> >
> That is 'graph' meaning 'plot', not 'a collection of vertices and
> edges'. In cdt it is the latter meaning that is mostly used (when
> discussing network and hierarchical databases).

Yes, overloading "graph" can cause confusion.

It seems that when you get down to the detailed formalisms different authors have different definitions of relation and function.

I think it makes most sense to consider a function to be the ordered triple (D,C,G) where D is the domain, C the co-domain and G is the graph of the function.

I've always thought of a (mathematical) relation on X1,...,Xk as formally nothing other than a subset of the cartesian product on X1,...,Xk, but I see here

that it could alternatively be defined as the ordered tuple (X1,...,Xk,G) and we refer to X1,...,Xk as the domains of the relation, and G is a subset of the cartesian product on X1,...,Xk and is called the graph of the relation. In that case it is indeed true that formally a function is a relation.

Saying that a function is a relation of course makes a lot of sense. However there can be some confusion. For example, the co-domain of a function can be referred to as one of the domains! Received on Fri Jan 11 2008 - 09:54:26 CET

Original text of this message