Title:

Proof diagrams and term rewriting with applications to computational algebra

In this thesis lessons learned from the use of computer algebra systems and machine assisted theorem provers are developed in order to give an insight into both the problems and their solutions. Many algorithms in computational algebra and automated deduction (for example Grobner basis computations and KnuthBendix completion) tend to produce redundant facts and can contain more than one proof of any particular fact. This thesis introduces proof diagrams in order to compare and contrast the proofs of facts which such procedures generate. Proof diagrams make it possible to analyse the effect of heuristics which can be used to guide implementations of such algorithms. An extended version of an inference system for KnuthBendix completion is introduced. It is possible to see that this extension characterises the applicability of critical pair criteria, which are heuristics used in completion. We investigate a number of executions of a completion procedure by analysing the associated proof diagrams. This leads to a better understanding of the heuristics used to control these examples. Derived rales of inference are also investigated in this thesis. This is done in the formalism of proof diagrams. Rewrite rules for proof diagrams are defined: this is motivated by the notion of a transformation tactic in the Nuprl proof development system. A method to automatically extract 'useful' derived inference rales is also discussed. 'Off the shelf' theorem provers, such as the Larch Prover and Otter, are compared to specialised programs from computational group theory. This analysis makes it possible to see where methods from automated deduction can improve on the tools which group theorists currently use. Problems which can be attacked with theorem provers but not with currently used specialised programs are also indicated. Tietze transformations, from group theory, are discussed. This makes it possible to link ideas used in KnuthBendix completion programs and group presentation simplification programs. Tietze transformations provide heuristics for more efficient and effective implementations of these programs.
