The formalism defined so far will be used in this thesis in two ways.
Firstly I use the formalism to define *grammars* with. However, I
also use the formalism to define *meta-interpreters* in. This will
become clear in the next section. To separate these two usages, I
define a grammar as follows. Without loss of generality I
restrict a *grammar* *G* to consist of definite clauses defining
only one unary relation. Restricting grammars to consist of only one
relation enables us to distinguish between truly recursive relations
and relations that could (at least in principle) be compiled away by
partial evaluation techniques. I assume e.g. that the usual templates
known from PATR II are already compiled out in such a grammar.
As an example of partial evaluation, observe that the
following definite clause specification:

can automatically be compiled into the following equivalent specification, where
the `effect' of the predicate
*q*/1 is obtained in the predicate
*p*/1 directly:

In monolingual grammars, the privileged relation will be called `sign', as I think of this relation as defining the possible (linguistic) signs.

Note that any set of ()-definite clauses can be rewritten as a grammar of (), by `reification'; for example the following example set of clauses, consisting of several relations

is rewritten into
the following, using the attributes
*rel*,*arg1*,*arg2* to represent the relation symbol and
the arguments:

Before I continue to define the procedural semantics of
() in the
next section, I will first introduce some notational conveniences as
follows. Using the matrix representation introduced above, I often leave
out the constraints in a definite clause, and instead replace the
variables in the clause with the matrix notation of the equations
constraining that variable. Moreover, if the predicate symbol of an
atom is
*sign*/1 then I sometimes leave the predicate symbol out; hence

may be written simply as:

where
M_{i} are the matrices defining the constraints on
X_{i}.
For example, the rule

is written:

1998-09-30