A basic relation f may be viewed as the set of tuples where it evaluates
to true. We may write
f
instead of f(
).
If f is
unary it can be viewed as a special universe. For example, we may
have a universe Nodes and declare a binary relation Edge over the universe
of Nodes; Edge(x,y) will hold only if both x and y belong to Nodes.
Such universes allow us to view states as many-sorted structures.
Sometimes we speak about universe names. These are unary relation names
intended to be used as universes.
As a rule, undef is not included in universes. Coming back to our example, is it natural that Edge(undef,undef) equals false rather than undef? In a sense, yes. Think about Edge as a set of pairs of nodes. It is natural that the pair (undef,undef) does not belong there.