In the context of interactive theorem provers based on a dependent type theory, automation tactics (dedicated decision procedures, call of automated solvers, ...) are often limited to goals which are exactly in some expected logical fragment. This very often prevents users from applying these tactics in other contexts, even similar ones. This paper discusses the design and the implementation of pre-processing operations for automating formal proofs in the Coq proof assistant. It presents the implementation of a wide variety of predictible, atomic goal transformations, which can be composed in various ways to target different backends. A gallery of examples illustrates how it helps to expand significantly the power of automation engines.
翻译:在基于依赖型理论的互动理论验证中,自动化战术(专用决策程序、自动解答器呼叫......)往往局限于完全属于某种预期逻辑碎片的目标,这往往使用户无法在其它情况下应用这些战术,甚至类似的情况。本文讨论了将正式证据自动化的预处理操作的设计和实施情况,以在科克验证助理中进行正式证据自动化。它介绍了各种可预测的原子目标变换情况,这些变换可以以不同方式组成,针对不同的后端。一系列实例说明了它如何有助于显著扩大自动化引擎的动力。