Verified proof checking for higher-order logic
Licentiate thesis, 2020
Mathematical proofs exist to provide a high degree of confidence in the truth of statements. The level of confidence we place in a proof depends on its correctness. This correctness is usually established through proof checking, performed either by human or machine. One benefit of using a machine for this task is that the correctness of the machine itself can be proven.
The main contribution of this work is a verified mechanized proof checker for theorems in higher-order logic (HOL). The checker is implemented as functions in the logic of the HOL4 theorem prover, and it comes with a soundness result, which states that it will only accept proofs of true theorems of HOL. Using a technique for proof-producing code generation (which is extended as part of this thesis), we synthesize a CakeML program that is compiled using the CakeML compiler. The CakeML compiler is verified to preserve program semantics. As a consequence, we are able to obtain a soundness result about the machine code which implements the proof checker.
Chalmers, Computer Science and Engineering (Chalmers), Formal methods
A verified proof checker for higher-order logic
Journal of Logical and Algebraic Methods in Programming,; Vol. 112(2020)
Proof-Producing Synthesis of CakeML from Monadic HOL Functions
Journal of Automated Reasoning,; Vol. 64(2020)p. 1287-1306
Pålitlig mjukvara via programmering och kompilering i logik
Swedish Foundation for Strategic Research (SSF), 2017-01-01 -- 2021-12-31.
Chalmers University of Technology
Opponent: Dr. Joe Leslie-Hurd, Intel Corporation, Portland, Oregon, USA