Inductive reasoning is critical for ensuring reliability of computational descriptions, especially of algorithms defined on recursive data structures. Despite advances made in automating inductive reasoning, proof attempts by theorem provers frequently fail while performing inductive reasoning. A user of such a system must scrutinize a failed proof attempt and do intensive debugging to understand the cause of failure, and then provide additional information to make a failed proof attempt succeed. A method for predicting a priori failure of proof attempts by induction is proposed. It is based on analyzing the definitions of function symbols appearing in a conjecture. Further, failure analysis is shown to provide information that can be used to make those proof attempts succeed for valid conjectures. The failure of proof attempts could be because of a number of reasons even when a conjecture is believed to be valid. It might be that an induction scheme used in a proof attempt is not powerful enough to yield useful induction hypotheses which can be applied effectively. Or, even when induction hypotheses are applicable, the proof attempt might not succeed because of missing lemmas. A method for speculating intermediate lemmas which can make induction hypotheses applicable and/or lead to simplification obtaining validity is proposed. The analysis can be automated and is illustrated on several examples. A preliminary implementation demonstrates the effectiveness of the proposed approach.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
F. Baader and T. Nipkow, Term Rewriting and All That. Cambridge University Press, 1998.
R. S. Boyer and J. S. Moore, A Computational Logic. ACM Monographs in Computer Science, 1979.
A. Bundy, The Automation of Proof by Mathematical Induction, Handbook of Automated Rea-soning, 2001.
A. Bundy, Planning and Patching Proof, Proc. AISC ’04, LNCS 3249, 26-37, 2004.
A. Ireland, Productive Use of Failure in Inductive Proof, Journal of Automated Reasoning, 16 (1-2):79-111, 1996.
D. Kapur, J. Giesl, and M. Subramaniam, Induction and Decision Procedures, Rev. R. Acad. Cien. Serie A: Mat., 2004.
D. Kapur and M. Subramaniam, Lemma Discovery in Automated Induction, Proc. CADE ’96, LNCS 1104, 538-552, 1996.
D. Kapur and M. Subramaniam, Extending Decision Procedures with Induction Schemes, Proc. CADE ’00, LNAI 1831, 324-345, 2000.
D. Kapur and H. Zhang, An Overview of Rewrite Rule Laboratory (RRL), Proc. RTA ’89, LNCS 355, 559-563, 1989.
M. Kaufmann, An Extension of the Boyer-Moore Theorem prover to Support First-Order Quantification, Journal of Automated Reasoning, 9(3):355-372, 1992.
M. Subramaniam, Failure Analyses in Inductive Theorem Provers, Ph.D. Thesis, Department of Computer Science, University of Albany, New York, 1997.
H. Zhang, D. Kapur, and M. S. Krishnamoorthy, A Mechanizable Induction Principle for Equa-tional Specifications, Proc. CADE ’88, LNCS 310, 162-181, 1988.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2007 Springer
About this paper
Cite this paper
Subramaniam, M., Kapur, D., Falke, S. (2007). Predicting Failures of and Repairing Inductive Proof Attempts. In: Ramesh, S., Sampath, P. (eds) Next Generation Design and Verification Methodologies for Distributed Embedded Control Systems. Springer, Dordrecht. https://doi.org/10.1007/978-1-4020-6254-4_15
Download citation
DOI: https://doi.org/10.1007/978-1-4020-6254-4_15
Publisher Name: Springer, Dordrecht
Print ISBN: 978-1-4020-6253-7
Online ISBN: 978-1-4020-6254-4
eBook Packages: EngineeringEngineering (R0)