TY - GEN
T1 - Lemma discovery in automating induction
AU - Kapur, Deepak
AU - Subramaniam, M.
N1 - Publisher Copyright:
© Springer-Verlag Berlin Heidelberg 1996.
PY - 1996
Y1 - 1996
N2 - Speculating intermediate lemmas is one of the main reason of user interaction/guidance while mechanically attempting proofs by induction. An approach for generating intermediate lemmas is developed, and its effectiveness is demonstrated while proving properties of recursively defined functions. The approach is guided by the paradigm of attempting to generate a proof of the conclusion subgoal in an induction step by the application of an induction hypothesis (es). Generation of intermediate conjectures is motivated by attempts to find appropriate instantiations for non-induction variables in the main conjecture. In case, the main conjecture does not have any non-induction variables, such variables are introduced by attempting its generalization. A constraint based paradigm is proposed for guessing the missing side of an intermediate conjecture by identifying constraints on the term schemes introduced for the missing side. Definitions and properties of functions are judiciously used for generating instantiations and intermediate conjectures. Heuristics are identified for performing such analysis. The approach fails if appropriate instantiations of non-induction variables cannot be generated. Otherwise, proofs of intermediate conjectures are attempted and the proposed method is recursively applied. The method has proven to be surprisingly effective in speculating intermediate lemmas for tail-recursive programs.
AB - Speculating intermediate lemmas is one of the main reason of user interaction/guidance while mechanically attempting proofs by induction. An approach for generating intermediate lemmas is developed, and its effectiveness is demonstrated while proving properties of recursively defined functions. The approach is guided by the paradigm of attempting to generate a proof of the conclusion subgoal in an induction step by the application of an induction hypothesis (es). Generation of intermediate conjectures is motivated by attempts to find appropriate instantiations for non-induction variables in the main conjecture. In case, the main conjecture does not have any non-induction variables, such variables are introduced by attempting its generalization. A constraint based paradigm is proposed for guessing the missing side of an intermediate conjecture by identifying constraints on the term schemes introduced for the missing side. Definitions and properties of functions are judiciously used for generating instantiations and intermediate conjectures. Heuristics are identified for performing such analysis. The approach fails if appropriate instantiations of non-induction variables cannot be generated. Otherwise, proofs of intermediate conjectures are attempted and the proposed method is recursively applied. The method has proven to be surprisingly effective in speculating intermediate lemmas for tail-recursive programs.
UR - http://www.scopus.com/inward/record.url?scp=84957615401&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84957615401&partnerID=8YFLogxK
U2 - 10.1007/3-540-61511-3_112
DO - 10.1007/3-540-61511-3_112
M3 - Conference contribution
AN - SCOPUS:84957615401
SN - 3540615113
SN - 9783540615118
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 538
EP - 552
BT - Automated Deduction – Cade-13 - 13th International Conference on Automated Deduction, Proceedings
A2 - Slaney, John K.
A2 - McRobbie, Michael A.
PB - Springer Verlag
T2 - 13th International Conference on Automated Deduction, CADE 1996
Y2 - 30 July 1996 through 3 August 1996
ER -