Inductive Proof Automation for Coq

Sean Wilson, Jacques Fleuriot, Alan Smaill

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

We introduce inductive proof automation for Coq that supports reasoning about inductively defined data types and recursively defined functions. This includes support for proofs involving case splits and multiple inductive hypotheses. The automation makes use of the rippling heuristic to guide step case proofs as well as heuristics for generalising goals. We include features for caching lemmas that are found during proof search, where these lemmas can be reused in future proof attempts. We show that the techniques we present provide a high-level of automation for inductive proofs which improves upon what is already available in Coq. We also discuss an algorithm that, by inspecting finished proofs, can identify and then remove irrelevant subformulae from cached lemmas, making the latter more reusable. Finally, we compare our work to related research in the field.
Original languageEnglish
Title of host publicationSecond Coq Workshop
EditorsYves Bertot
Publication statusPublished - 1 Jul 2010

Fingerprint Dive into the research topics of 'Inductive Proof Automation for Coq'. Together they form a unique fingerprint.

Cite this