Databases Reference
In-Depth Information
one consisting of just VSP2 are also information equivalent, given that the values of those relvars
are also equal at any given time. But are these things really so?
For definiteness, let's focus until further notice on Example 2 and views VPL1 and VPL2.
Here again are the view defining expressions:
exp1
PL /* defining view VPL1 */
exp2
PL INTERSECT ( PL UNION PK ) /* defining view VPL2 */
Now, it's true that exp1 and exp2 here are logically equivalent (each can be logically
derived from the other). But they aren't informationally equivalent! To be specific, exp2 tells us
something that exp1 doesn't—it tells us that relvar PK exists, which exp1 certainly doesn't. 7 By
the same token, consider the tuple consisting of just the PNO value P1, which appears in both
relvars. The appearance of that tuple in relvar VPL1 represents the following proposition:
Part P1 is on sale.
By contrast, the appearance of that same tuple in relvar VPL2 denotes the following proposition:
Part P1 is on sale and (part P1 is on sale or part P1 is in stock).
And just as the expressions exp1 and exp2 are logically but not informationally equivalent, so
these two propositions too are logically but not informationally equivalent—i.e., they don't
convey the same information. At the very least, the second proposition tells us it could possibly
be the case that part P1 is in stock (a fact about the real world that isn't even mentioned in the
first proposition); likewise, it also tells us that it must be the case that part P1 is either on sale or
in stock or both, another fact about the real world that isn't mentioned in the first proposition.
With the foregoing by way of motivation, I propose the following definition for what it
means for two relational expressions to be “informationally equivalent” (except that now I revert
to our more usual phrase “ information equivalent”):
Definition: Relational expressions exp1 and exp2 are information equivalent if and only if
(a) they're logically equivalent—i.e., each can be derived from the other by means of the
system's rules of inference—and (b) every relvar mentioned in exp1 is also mentioned in
exp2 and vice versa.
Clearly, the defining expressions for views VPL1 and VPL2, although they're logically
equivalent, aren't information equivalent by this definition. Now, our original definition of
information equivalence (i.e., for sets of relvars) talked in terms of constraints, not relational
7 It's germane to point out here that relvar names can be thought of, conceptually, as nothing more than shorthand for the relevant
predicates.
Search WWH ::




Custom Search