Reverse Engineering of HOL Proofs
Abstract
In Logical Framework, proofs are defined using definitions of logical constants, connectives, quantifiers and axioms. Using a Logical Framework, the theories can be defined explicitly, making it possible to investigate which part of the theory is needed for each given proof. The process of reconstructing proofs in a given form is defined “reverse engineering of proofs”. This work is a first attempt to do such reverse engineering of higher order proofs. More specifically, this project first analyse which proofs in the HOL-light library are constructive. If so, we at- tempt to transform them in the weaker constructive system. This internship project aimed at such automatic analysis for proofs by picking constructive-compatible definitions and trans- form proofs using those definitions. As a consequence, rework all the chain from HOL-Light to Dedukti takes these modifications into account for proof checking. Several unsuccessful attempts have been made to change the kernel of HOL Light. Among them HOLALA ex- tends the kernel of HOL Light by introducing the universal quantification and implication. It can classify proofs and perform structural and statistical analysis. The result is that 531 proofs out of 1199 (44%) in the HOL-light standard library are shown to be constructive. The evaluation results showed that HOLALA is a successful attempt to reduce the size of proof files, leading to an improvement of 41.81% in translation time and a speed-up of 38.04% in proof checking. Finally, all structural analysis and proof checking results were presented in a proof search engine, namely ProofCloud.
Domains
Computer Science [cs]Origin | Publisher files allowed on an open archive |
---|---|
Licence |