TY - GEN
T1 - Rewrite methods for clausal and non-clausal theorem proving
AU - Hsiang, Jieh
AU - Dershowitz, Nachum
N1 - Publisher Copyright:
© 1983, Springer-Verlag.
PY - 1983
Y1 - 1983
N2 - Effective theorem provers are essential for automatic verification and generation of programs. The conventional resolution strategies, albeit complete, are inefficient. On the other hand, special purpose methods, such as term rewriting systems for solving word problems, are relatively efficient but applicable to only limited classes of problems. In this paper, a simple canonical set of rewrite rules for Boolean algebra is presented. Based on this set of rules, the notion of term rewriting systems is generalized to provide complete proof strategies for first order predicate calculus. The methods are conceptually simple and can frequently utilize lemmas in proofs. Moreover, when the variables of the predicates involve some domain that has a canonical system, that system can be incorporated as rewrite rules, with the algebraic simplifications being done simultaneously with the merging of clauses. This feature is particularly useful in program verification, data type specification, and programming language design, where axioms can be expressed as equations (rewrite rules). Preliminary results from our implementation indicate that the methods are space-efficient with respect to the number of rules generated (as compared to the number of resolvents in resolution provers).
AB - Effective theorem provers are essential for automatic verification and generation of programs. The conventional resolution strategies, albeit complete, are inefficient. On the other hand, special purpose methods, such as term rewriting systems for solving word problems, are relatively efficient but applicable to only limited classes of problems. In this paper, a simple canonical set of rewrite rules for Boolean algebra is presented. Based on this set of rules, the notion of term rewriting systems is generalized to provide complete proof strategies for first order predicate calculus. The methods are conceptually simple and can frequently utilize lemmas in proofs. Moreover, when the variables of the predicates involve some domain that has a canonical system, that system can be incorporated as rewrite rules, with the algebraic simplifications being done simultaneously with the merging of clauses. This feature is particularly useful in program verification, data type specification, and programming language design, where axioms can be expressed as equations (rewrite rules). Preliminary results from our implementation indicate that the methods are space-efficient with respect to the number of rules generated (as compared to the number of resolvents in resolution provers).
UR - http://www.scopus.com/inward/record.url?scp=0021011327&partnerID=8YFLogxK
U2 - 10.1007/BFb0036919
DO - 10.1007/BFb0036919
M3 - ???researchoutput.researchoutputtypes.contributiontobookanthology.conference???
AN - SCOPUS:0021011327
SN - 9783540123170
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 331
EP - 346
BT - Automata, Languages and Programming - 10th Colloquium
A2 - Diaz, Josep
PB - Springer Verlag
T2 - 10th International Colloquium on Automata, Languages and Programming, ICALP 1983
Y2 - 18 July 1983 through 22 July 1983
ER -