University of Edinburgh. College of Science and Engineering. School of Informatics.
Abstract
Centre for Intelligent Systems and their ApplicationsProof planning is a paradigm for the automation of proof that focuses on encoding intelligence
to guide the proof process. The idea is to capture common patterns of reasoning which can be
used to derive abstract descriptions of proofs known as proof plans. These can then be executed
to provide fully formal proofs.
This thesis concerns the development and analysis of a novel approach to proof planning
that focuses on an explicit representation of choices during search. We embody our approach
as a proof planner for the generic proof assistant Isabelle and use the Isar language, which is
human-readable and machine-checkable, to represent proof plans. Within this framework we
develop an inductive theorem prover as a case study of our approach to proof planning.
Our prover uses the difference reduction heuristic known as rippling to automate the step
cases of the inductive proofs. The development of a flexible approach to rippling that supports
its various modifications and extensions is the second major focus of this thesis. Here, our
inductive theorem prover provides a context in which to evaluate rippling experimentally.
This work results in an efficient and powerful inductive theorem prover for Isabelle as well
as proposals for further improving the efficiency of rippling. We also draw observations in order
to direct further work on proof planning. Overall, we aim to make it easier for mathematical
techniques, and those specific to mechanical theorem proving, to be encoded and applied to
problems