Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
4661709 | Annals of Pure and Applied Logic | 2015 | 36 Pages |
Abstract
Induction plays a key role in reasoning in many areas of mathematics and computer science. A central problem in the automation of proof by induction is the non-analytic nature of induction invariants. In this paper we present an algorithm for proving universal statements by induction that separates this problem into two phases. The first phase consists of a structural analysis of witness terms of instances of the universal statement. The result of such an analysis is a tree grammar which induces a quantifier-free unification problem which is solved in the second phase. Each solution to this problem is an induction invariant. The arguments and techniques used in this paper heavily exploit a correspondence between tree grammars and proofs already applied successfully to the generation of non-analytic cuts in the setting of pure first-order logic.
Related Topics
Physical Sciences and Engineering
Mathematics
Logic
Authors
Sebastian Eberhard, Stefan Hetzl,