Download free books at BookBooN.com
An Introduction to Relational Database Theory
69
Predicates and Propositions
If we substitute designators for all of the parameters, we obtain a niladic predicatea proposition. For
example, if we substitute 5 for a and 15 for c in the dyadic predicate above, we obtain
5 < 10 and 10 < 15
which happens to denote a true proposition. The act of substituting designators for all the parameters of a
predicate is sometimes referred to as instantiation
viii
a term that is especially useful in the interpretation
of relations. We can say, then, that the proposition 5 < 10 is an instantiation of the predicate a < 10. It is
also an instantiation of the predicates 5 < b, a < b and x < y.
According to our stance of regarding a proposition as a special case of a predicate, we must also accept the
strange-looking notion that 5 < 10 is an instantiationthe only possible instantiationof itself! Such
quirky observations are not often found in textbooks on logic, but they often turn out to be more important
than might appear at first sight when it comes to designing computer languages, as we shall eventually see.
Extension and Intension
Now, given some predicate p, we can consider all the possible instantiations of p. Each is either a true
proposition or a false one. The true instantiations of p, taken collectively, are referred to as the extension
of p. This concept will prove to be very important to us in the database context. Also important is the
intension of a predicate. Loosely speaking this is just its meaning, but note that predicates that differ only
in the names of their parametersfor example, a < b and x < y, have the same intension, and this gives
meaning in turn to their instantiations. The same term, intension, is also used for the meaning of a
designator. Thus, although 5 < 10 and 10 < 5 are both instantiations of a < b, their meanings are obviously
different (as are their truth values). Intension is important with regard to our interpretation of a relation,
but the relation itself tells us nothing about what its tuples might mean.
3.4 How a Relation Represents an Extension
In Chapters 1 and 2 the word “set” appears many times, without definition but intended to be precise. For
example, the heading of a relation is described as a set of attributes, its body a set of tuples. I assume you
are somewhat familiar with the concept of a set and in any case this book does not include a complete
account of the mathematical theory of sets. The theory of sets arose out of predicate logic (in the 19th
century); the theory of relations arose out of the theory of sets; and the theory of relational databases arose
out of the theory of relations. The remainder of this section explains these connections.
A set is a collection of distinct objects, termed its elements. Each element appears exactly oncethere is
no sense in which the same element can appear more than once in a given set. Anything can be an element
of some set. Even a set can be an element of a set, though we can run into trouble, as the philosopher
Bertrand Russell famously observed, if we consider the possibility of a set being one of its own elements.
ix
Mathematicians recognize two distinct methods of defining (or denoting) a set. These methods relate to
the terms extension and intension that we have just met, and are indeed called extensional definition and
intensional definition. We are interested in both methods.