Constructing Induction Rules for Deductive Synthesis Proofs

We describe novel computational techniques for constructing induction rules for deductive synthesis proofs. Deductive synthesis holds out the promise of automated construction of correct computer programs from specifications of their desired behaviour. Synthesis of programs with iteration or recursion requires inductive proof, but standard techniques for the construction of appropriate induction rules are restricted to recycling the recursive structure of the specifications. What is needed is induction rule construction techniques that can introduce novel recursive structures. We show that a combination of rippling and the use of meta-variables as a least-commitment device can provide such novelty.

[1]  Andrew Ireland,et al.  Productive use of failure in inductive proof , 1996, Journal of Automated Reasoning.

[2]  Alan Bundy,et al.  Extensions to the Estimation Calculus , 1999, LPAR.

[3]  A. Tate,et al.  The Dynamic Creation of Induction Rules Using Proof Planning , 2004 .

[4]  Alan Bundy,et al.  Rippling - meta-level guidance for mathematical reasoning , 2005, Cambridge tracts in theoretical computer science.

[5]  Dieter Hutter,et al.  Synthesis of Induction Orderings for Existence Proofs , 1994, CADE.

[6]  Robert S. Boyer,et al.  Computational Logic , 1990, ESPRIT Basic Research Series.

[7]  Christoph Walther,et al.  On Proving the Termination of Algorithms by Machine , 1994, Artif. Intell..

[8]  Martin Protzen Lazy generation of induction hypotheses and patching faulty conjectures , 1995, DISKI.

[9]  H. C. Kraan Proof planning for logic program synthesis , 1994 .

[10]  Michael Hanus,et al.  The Integration of Functions into Logic Programming: From Theory to Practice , 1994, J. Log. Program..

[11]  Alan Bundy,et al.  Middle-out reasoning for synthesis and induction , 1996, Journal of Automated Reasoning.

[12]  John Darlington,et al.  A synthesis of several sorting algorithms , 1978, Acta Informatica.

[13]  Christoph Walther,et al.  Combining Induction Axioms by Machine , 1993, IJCAI.

[14]  Patrick Brézillon,et al.  Lecture Notes in Artificial Intelligence , 1999 .

[15]  Jacques D. Fleuriot,et al.  IsaPlanner: A Prototype Proof Planner in Isabelle , 2003, CADE.