The relvar proposition
A relvar in a relational database is regarded as recording a proposition
about the world, called the relvar proposition of the
relvar.
For example, consider a relvar having the following relvar predicate
There is an employee named [NAME] working in a department named [DEPT]
Let it be assumed that attribute NAME has domain { 'Adams', 'Blake', 'Jones', 'Smith' }
and attribute DEPT has domain { 'Energy', 'Health', 'Mining' }
Let the current recorded value of the relvar be:
NAME | DEPT |
---|
Blake | Health |
Jones | Health |
Smith | Mining |
The relvar is assumed to record the extension of its predicate.
i.e. { TUP{ (NAME n), (DEPT d) } | There is an employee named [n] working in a department named [d] }
Note that absent tuples imply the corresponding instantiation of the predicate is false.
This is called the Closed World Assumption (CWA).
It follows that the relvar proposition is:
There is an employee named 'Blake' working in a department named 'Health' AND
There is an employee named 'Jones' working in a department named 'Health' AND
There is an employee named 'Smith' working in a department named 'Mining' AND
NOT(There is an employee named 'Adams' working in a department named 'Energy') AND
NOT(There is an employee named 'Adams' working in a department named 'Health') AND
NOT(There is an employee named 'Adams' working in a department named 'Mining') AND
NOT(There is an employee named 'Blake' working in a department named 'Energy') AND
NOT(There is an employee named 'Blake' working in a department named 'Mining') AND
NOT(There is an employee named 'Jones' working in a department named 'Energy') AND
NOT(There is an employee named 'Jones' working in a department named 'Mining') AND
NOT(There is an employee named 'Smith' working in a department named 'Energy') AND
NOT(There is an employee named 'Smith' working in a department named 'Health')