Process Theory and Equation Solving
Nicoline Johanna Drost
Abstract:
This thesis belongs to the field of process theories and process algebras.
In the first part the model of Rem and Kaldewaij for
communicating processes is analyzed, which shows that their definitions in fact
describe two different models, the first based on prefix-closed trace
structures, the second on trace structures with complete traces. In this
dissertation, both models are described in terms of signature, domain and
axioms. This reveals some problematic properties of the models. The first does
not enable an adequate definition of sequential composition.
In the second model all previous actions are erased in case of succesful
and unsuccessful communication.
The models are combined into a new model that doesn't have these properties.
A discinction is made between successful and unsuccessful terminations.
A complete axiomatisation for this model is presented. Two operators are added
that generate processes with infinitely long executions of infinite choices.
Axioms for these operators are presented. The example for verification
is the alternating bit protocol.
The second topic in this thesis is equation solving in process algebras.
This is useful for specification and implementation of systems with process
algebras. Full specification with an incomplete implementation then leads to
an equation. Equation solving results in a description of all solutions of
missing parts.
Equation solving in astract algebras also plays a role in logic
programming, where it is referred to as unification. The thesis presents
unification algorithms for a number of small process algebras, inspired
by the algebra ACP (Bergstra and Klop). All algebras contain a non-empty
set of constants for atomic actions, and a special constant for
non-successful termination. The first algebra contains the nondeterministic
choice operator as its only operator. This algebra is isomorphic with the
algebra of sets with union and the empy set. A improved version of an
existing unification algorithm for {\em sets} of equations is presented.
The second algebra contains the operators nondeterministic choice and action
prefix. The domain of the algebra also contains infinite processes, that are
described by means of guarded recursive specifications. This algebra turns out
to be finitary. An algorithm is presented that produces a complete set of
most general unifiers for arbitrary sets of equations.
This algorithm is based on transformation rules. When in equations choices do
not contain free variables, the worst case complexity is exponential in the
size of the input, otherwise it is super exponential.
Thus, the algorithm is only usable in the case of small inputs.
The third and last algorithm contains the operators nondeterministic choice and
sequential composition. The algebra contains no finite processes. This algebra
turns out to be finitary and there is thus no unification algorithm that
terminates for each set of equations. An algorithm is presented that
terminates for sets of equations which contain a closed term on one of the
sides. For this input the worst case complexity is exponential in the length
of the input if choices contain no free variables or terms that start with a
variable. This algorithm is only useful for small inputs.