Chapter 6 describes a method for constructing the definitions of individual predicates by applying sequences of transformations. Each transformation is intended to correspond to a key concept in the design of the predicate, such as recursive construction of a data structure. An example of this sort of transformation would be to extend a predicate:
where is a structured term, to the predicate:
where is a structured term built recursively by
relating each
to
via the relation
, and the
relation
ensures that the base case of the constructed
term (Y) is instantiated from the base case of the deconstructed term
(X).