A Naive Prover for First-Order Logic: A Minimal Example of Analytic Completeness

被引:1
|
作者
From, Asta Halkjaer [1 ]
Villadsen, Jorgen [1 ]
机构
[1] Tech Univ Denmark, Lyngby, Denmark
关键词
First-Order Logic; Prover; Completeness; Isabelle/HOL;
D O I
10.1007/978-3-031-43513-3_25
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
The analytic technique for proving completeness gives a very operational perspective: build a countermodel to the unproved formula from a failed proof attempt in your calculus. We have to be careful, however, that the proof attempt did not fail because our strategy in finding it was flawed. Overcoming this concern requires designing a prover. We design and formalize in Isabelle/HOL a sequent calculus prover for first-order logic with functions. We formalize soundness and completeness theorems using an existing framework and extract executable code to Haskell. The crucial idea is to move complexity from the prover itself to a stream of instructions that it follows. The result serves as a minimal example of the analytic technique, a naive prover for first-order logic, and a case study in formal verification.
引用
收藏
页码:468 / 480
页数:13
相关论文
共 50 条