Re: Can relvars be dissymetrically decomposed? (vadim and x insight demanded on that subject)

From: Cimode <cimode_at_hotmail.com>
Date: 19 Jul 2006 07:13:22 -0700
Message-ID: <1153318402.103354.221070_at_h48g2000cwc.googlegroups.com>


erk wrote:
> Cimode wrote:
> > *Strong* caution must be put here before assuming relations and
> > relvalue are synonyms. relvalues are not to be confused with relations
> > in abstract thinking. The only thing that can be said is that a
> > relvalue is *necessarily* the *evaluation* of a specific relation.
>
> An "evaluation of a specific relation" means that you must be
> evaluating an expression. Perhaps you mean "dereferencing", which would
> return the value referenced by a variable?
No. I mean a relation can be evaluated just as a function can be evaluated mathematically speaking. When a relvar hold a specific relvalue in time, then and only the such evaluation represents an relvalue N tuple set. The definition of the relation itself can not be equated to either a specific relvalue nor to a relvar. Besides the same relation can be expressed using several relvars: it still is the same relation.

For instance F(x) is expressed as 2 * x + 2 if you express another function T(y) as =
2 * y + 2 then F = T

When the variable x in F or the variable y for T holds the value 2 both F and T = 2 * 2 + 2 = 6 . By analogy F and T are equivalent to relations R1 and R2, just as *x* and *y* are relvars, just as *6* is a specific relvalue to which relation R1 is evaluated when *x* and *y* have a specific relvalue. An inverse reasoning allow to establish that a relvalue is necessarily a relation as well.

> Either way, the concepts of values and variables are fundamental;
> "abstract thinking" can't smooth over their differences. When you say
> "relation," you mean either a VALUE (the usual definition), or a
> VARIABLE. If there's another concept here, define it.
I define relation as a specific type of function. For relation definition, look for function definition as opposed to variable and value definitions.

> > An N tuples relvalue necessarily constitutes the *evaluation* a relation
> > R1 but does not equate to R1.
>
> I don't understand this sentence.
See above analogy.

> > Question is how a relation can be defined or specified otherwise than
> > by the relvalues it may evaluate to?
>
> Then in this context by "relation" you mean a RELVAR, which can "hold"
> RELVALS of a type (the type of the relvar), and thus can vary over
> time.
Definition of relation is independent from both relvalues and relvar definition.

> > When a function F(x) is defined
> > as 2 * x + 2 such definition is independent from the values to which
> > the function is evaluated. The value F(2) is an evaluation of
> > function F when the variable x = 2. Stating that F(x) = 2 changes the
> > nature of the function.
>
> It defines a new function. It doesn't make sense to refer to a changing
> function; you're defining a new one - for example, "F(x) = 2" has type
> ANY -> int, while "F(x) = 2*x + 2" might be int -> int or number ->
> number.
Absolutely. Which is why a relation or a function should *not* be assimilated by deifnition to either relvar or relvalue.

> There's no relationship between redefining a function F and changing
> the relval assigned to a relvar (e.g. via update operations).
True. I have used the example above the illustrate the danger to deifne relation accordingly to either relvalues or relvar. It just lead to false reasonning/

> Especially in view of database constraints which not only restrict
> tuples in a relvar but also restrict sets of relvars simultaneously
> (e.g. database constraints, rather than those in a single relvar).
The primary purpose of DB constraints through type definitions is *not* to restrict tuples in relvars but to restrict relvalues that later *fill in* the relvar. Therefore, a relvar can only be filled with permissible NTuples relvalues by definition. That is the whole point with RM definitions.

>
> - Eric
Received on Wed Jul 19 2006 - 16:13:22 CEST

Original text of this message