Proof assistants offer tactics to apply proof by induction, but these tactics rely on inputs given by human engineers. To automate this laborious process, we developed SeLFiE, a boolean query language to represent experienced users' knowledge on how to apply the induct tactic in Isabelle/HOL: when we apply an induction heuristic written in SeLFiE to an inductive problem and arguments to the induct tactic, the SeLFiE interpreter judges whether the arguments are plausible for that problem according to the heuristic by examining both the syntactic structure of the problem and definitions of the relevant constants. To examine the intricate interaction between syntactic analysis and analysis of constant definitions, we introduce definitional quantifiers. For evaluation we build an automatic induction prover using SeLFiE. Our evaluation based on 347 inductive problems shows that our new prover achieves 1.4 x 10^3% improvement over the corresponding baseline prover for 1.0 second of timeout and the median value of speedup is 4.48x.
翻译:校对助理提供了采用诱导证明的策略,但这些策略依赖于人类工程师提供的投入。为了让这一艰苦过程自动化,我们开发了SELFiE, 这是一种布林查询语言,代表有经验的用户如何在伊莎贝尔/HOL应用诱导战术的知识:当我们应用SELFiE 中写成的诱导性疲劳症对诱导策略的诱导问题和论据应用时,SELFiE口译员通过检查问题的综合结构和相关常数的定义,判断根据超常数的超常数,这些论点是否合理。为了检查对常数的综合分析和分析之间的复杂互动,我们引入了定义限定词。关于评价,我们用SELFE建立自动诱导证明。我们基于347个诱导问题的评估表明,我们的新证明在1. 0秒超时,比相应的基线证明提高了1.4 x 10.3%,加速值的中值为4.48x。