Rippling is a form of rewriting that guides search by only performing steps that reduce the differences between formulae. Termination is normally ensured by a defined measure that is required to decrease with each step. Because of these restrictions, rippling will fail to prove theorems about, for example, mutual recursion where steps that temporarily increase the differences are necessary. Best-first rippling is an extension to rippling where the restrictions have been recast as heuristic scores for use in best-first search. If nothing better is available, previously illegal steps can be considered, making best-first rippling more flexible than ordinary rippling. We have implemented best-first rippling in the IsaPlanner system together with a mechanism for caching proof-states that helps remove symmetries in the search space, and machinery to ensure termination based on term embeddings. Our experiments show that the implementation of best-first rippling is faster on average than IsaPlanner’s version of traditional depth-first rippling, and solves a range of problems where ordinary rippling fails.
KeywordsRecursive Function Reasoning State Automate Reasoning Induction Scheme Inductive Proof
Unable to display preview. Download preview PDF.
- 2.Brotherston, J., Dennis, L.: LambdaClam v.4.0.1 User/Developer’s manual, Available online: http://dream.inf.ed.ac.uk/software/lambda-clam/
- 3.Bundy, A.: The use of explicit plans to guide inductive proofs. In: 9th International Conference on Automated Deduction, pp. 111–120 (1988)Google Scholar
- 4.Bundy, A.: The termination of rippling + unblocking. Informatics research paper 880, University of Edinburgh (1998)Google Scholar
- 7.Bundy, A., van Harmelen, F., Horn, C., Smaill, A.: The Oyster-Clam system. In: Stickel, M.E. (ed.) CADE 1990. LNCS (LNAI), vol. 449, pp. 647–648. Springer, Heidelberg (1990)Google Scholar
- 9.Dennis, L.A., Green, I., Smaill, A.: Embeddings as a higher-order representation of annotations for rippling. Technical Report Computer Science No. NOTTCS-WP-SUB-0503230955-5470, University of Nottingham (2005)Google Scholar
- 10.Dixon, L.: A proof-planning framework for Isabelle. PhD thesis, School of Informatics, University of Edinburgh (2005)Google Scholar
- 15.Kruskal, J.B.: Well-quasi-ordering, the tree theorem, and Vazsonyi’s conjecture. Transactions of the American Mathematical Society (1960)Google Scholar
- 16.Lacey, D., Richardson, J., Smaill, A.: Logic Program Synthesis in a Higher-Order Setting. In: Palamidessi, C., Moniz Pereira, L., Lloyd, J.W., Dahl, V., Furbach, U., Kerber, M., Lau, K.-K., Sagiv, Y., Stuckey, P.J. (eds.) CL 2000. LNCS, vol. 1861, pp. 87–100. Springer, Heidelberg (2000)CrossRefGoogle Scholar
- 17.Manning, A., Ireland, A., Bundy, A.: Increasing the versatility of heuristic based theorem provers. In: Voronkov, A. (ed.) LPAR 1993. LNCS (LNAI), vol. 698, pp. 194–204. Springer, Heidelberg (1993)Google Scholar
- 20.Smaill, A., Green, I.: Higher-order annotated terms for proof search. In: Theorem Proving in higher-order logics: 9th international conference. LNCS, vol. 1275, pp. 399–413. Springer, Heidelberg (1996)Google Scholar
- 21.Walsh, T., Nunes, A., Bundy, A.: The use of proof plans to sum series. In: Kapur, D. (ed.) CADE 1992. LNCS, vol. 607, pp. 325–339. Springer, Heidelberg (1992)Google Scholar