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

Date: 17 Jul 2006 05:28:15 -0700

Message-ID: <1153139295.384185.272170_at_m79g2000cwm.googlegroups.com>

Cimode wrote:

*> [snipped]
**> I suspect a harmless communication problem here. Relations are N
*

> dimensional, there is no doubt about that. I refered to projections of

*> relations in a specific point in time.
*

I think there are established terms for what you mean; in Date's writings he frequently distinguishes between relvars and relvals (although he uses the latter less frequently). The term "projection" is a different concept, and time has nothing to do with it.

A relvar can have different values at different points in time - like any variable. The values are relvals (of course). Every UPDATE/INSERT/DELETE is, I believe, syntactic sugar for an assignment like R = R op X op Y op ..., where R is being assigned the result of applying operations to itself, with other relVALs as parameters (e.g. an insert is a union of R with a single-tuple relval).

Sorry if I'm repeating the obvious; I think the terminology is getting in the way. And I'm still not sure what your goal is in "characterizing" relvars, as distinct from relvals. A relvar is simply a variable that can "hold" values of the same type. Several relvars can be created with identical definitions (obviously their predicates (real-world semantics) are different, but in all other ways they can be identical), so relvars do have types, and a relvar with constraints has at least 2 types: one including the constraints, and the supertype without the constraints.

- Eric