Abstract
Whereas proof assistants based on Higher-Order Logic benefit from external solvers' automation, those based on Type Theory resist automation and thus require more expertise. Indeed, the latter use a more expressive logic which is further away from first-order logic, the logic of most automatic theorem provers. In this article, we develop a methodology to transform a subset of Coq goals into first-order statements that can be automatically discharged by automatic provers. The general idea is to write modular, pairwise independent transformations and combine them. Each of these eliminates a specific aspect of Coq logic towards first-order logic. As a proof of concept, we apply this methodology to a set of simple but crucial transformations which extend the local context with proven first-order assertions that make Coq definitions and algebraic types explicit. They allow users of Coq to solve non-trivial goals automatically. This methodology paves the way towards the definition and combination of more complex transformations, making Coq more accessible.
Cite
CITATION STYLE
Blot, V., De Prisque, L. D., Keller, C., & Vial, P. (2021). General automation in Coq through modular transformations. In Electronic Proceedings in Theoretical Computer Science, EPTCS (Vol. 336, pp. 24–39). Open Publishing Association. https://doi.org/10.4204/EPTCS.336.3
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.