Proof Engineering of Higher Order Logic Robert White (Shuai Proof Engineering of Higher Order Logic Wang) Collaboration, Translation, Checking and Retrieval Introduction Higher Order Logic HOL Kernel Inference Rules Robert White (Shuai Wang) Proof Collaboration OpenTheory ILLC/INRIA → CNRS Version 5 & 6 Proof Translation AITP’16 and Proof Checking Proof Retrieval Engine: ProofCloud 1/29 Conclusion
Outline Proof Engineering 1 Introduction of Higher Order Logic Higher Order Logic Robert HOL Kernel White (Shuai Wang) Inference Rules Introduction Higher Order 2 Proof Collaboration Logic HOL Kernel OpenTheory Inference Rules Version 5 & 6 Proof Collaboration OpenTheory 3 Proof Translation and Proof Checking Version 5 & 6 Proof Translation 4 Proof Retrieval Engine: ProofCloud and Proof Checking 5 Conclusion and Future Work Proof Retrieval Engine: ProofCloud 2/29 Conclusion
Higher Order Logic Proof Engineering of Higher Simple type theory (STT) is also known as Higher order Order Logic logic (HOL). Robert White (Shuai Wang) HOL = simply typed λ -Calculus + boolean types + axioms + inference rules. Introduction Higher Order Most mathematical objects/theories can be expressed in Logic HOL Kernel HOL. Inference Rules Proof Interactive and automatic theorem provers & proof Collaboration checkers for formal mathematics. OpenTheory Version 5 & 6 HOL Light, ProofPower, HOL4, HOL Zero . . . [HOL Proof Translation family]. and Proof Checking The first talk by Tom Hales: Kepler Conjecture Proof Retrieval Engine: ProofCloud 3/29 Conclusion
Kernel Proof Engineering of Higher HOL syntax: Order Logic Robert type variables α, β White (Shuai Wang) type operators p types A , B ::= α | p ( A 1 , . . . , A n ) Introduction Higher Order term variables Logic x , y HOL Kernel Inference term constants c Rules terms M , N ::= x | λ x : A . M | MN | c Proof Collaboration OpenTheory Version 5 & 6 Proof Polymorphic Type: Translation and Proof Checking = : α → α → o Proof Retrieval Engine: ProofCloud 4/29 Conclusion
Primitive Inference Rules Proof Engineering of Higher Order Logic ASSUME Structural { A } ⊢ A Robert Γ ⊢ A = B ABS White (Shuai Γ ⊢ λ x . A = λ x . B λ Calculus Wang) BETA ( λ x . A ) x = A Γ[ x 1 , . . . , x n ] ⊢ A [ x 1 , . . . , x n ] Introduction INST Γ[ t 1 , . . . , t n ] ⊢ A [ t 1 , . . . , t n ] Instantiation Higher Order Γ[ α 1 , . . . , α n ] ⊢ A [ α 1 , . . . , α n ] Logic INST _ TYPE HOL Kernel Γ[ γ 1 , . . . , γ n ] ⊢ A [ γ 1 , . . . , γ n ] Inference Γ ⊢ A = B ∆ ⊢ A Rules EQ _ MP Γ ∪ ∆ ⊢ B Bi-implication Proof Γ ⊢ A ∆ ⊢ B DEDUCTANTISYMRULE Collaboration (Γ \ { B } ) ∪ ∆ \ { A } ) ⊢ A = B OpenTheory REFL Version 5 & 6 ⊢ A = A Γ ⊢ A = B ∆ ⊢ C = D MK _ COMB Proof Equality Γ ∪ ∆ ⊢ A ( C ) = B ( D ) Translation Γ ⊢ A = B ∆ ⊢ B = C and Proof TRANS Γ ∪ ∆ ⊢ A = C Checking Proof Retrieval Engine: ProofCloud 5/29 Conclusion
Dependency Proof Engineering of Higher Order Logic ¬ Robert White (Shuai ⊥ Wang) ∨ ∃ Introduction Higher Order ⇒ Logic ∀ HOL Kernel Inference Rules ∧ Proof Collaboration ⊤ OpenTheory Version 5 & 6 = Proof Translation and Proof Figure: Constants and Connectives Dependency Analysis Checking Proof Retrieval Engine: ProofCloud 6/29 Conclusion
OpenTheory Proof Engineering of Higher Order Logic Robert HOL family: HOL Light, ProofPower, HOL4, Isabelle . . . White (Shuai Wang) Need a platform to reuse proofs from different systems. Introduction OpenTheory has a standard format of proofs (*.art). Higher Order Logic Export proofs and import proofs (in article files). HOL Kernel Inference Rules OpenTheory HOL Light: Proof a modified version of HOL Light which allows import and Collaboration OpenTheory export of proofs. Version 5 & 6 Proof http://www.gilith.com/research/opentheory/ Translation and Proof Checking Proof Retrieval Engine: ProofCloud 7/29 Conclusion
Packages and Dependency Proof Engineering of Higher natural-list Order Logic gfp Robert White (Shuai Wang) probability Introduction natural-fibonacci modular Higher Order Logic HOL Kernel natural-prime Inference Rules Proof Collaboration stream natural-divides OpenTheory Version 5 & 6 Proof Translation base (the standard library) and Proof Checking Figure: Dependency of Packages of OpenTheory Proof Retrieval Engine: ProofCloud 8/29 Conclusion
OpenTheory Kernel Proof Engineering of Higher Order Logic Robert White (Shuai Wang) Introduction Higher Order Logic HOL Kernel Inference Rules Proof Collaboration OpenTheory Version 5 & 6 Proof Figure: Primitive Inference Rules of OpenTheory 5 Translation and Proof Checking Proof Retrieval Engine: ProofCloud 9/29 Conclusion
OpenTheory 5 & 6 Proof Engineering of Higher Order Logic Commands Updated/New Robert White (Shuai proveHyp new Wang) trans new Introduction sym new Higher Order Logic HOL Kernel defineConstList new Inference Rules hdTl new Proof defineTypeOp updated Collaboration OpenTheory pragma new Version 5 & 6 Proof Translation Table: Differences between commands of version 5 and version 6 and Proof Checking Proof Retrieval Engine: ProofCloud 10/29 Conclusion
OpenTheory 5 & 6 Proof Engineering of Higher Order Logic Robert White (Shuai Wang) Introduction Higher Order Logic HOL Kernel Inference Rules Proof Collaboration OpenTheory Figure: Additional Primitive Inference Rules in OpenTheory 6 Version 5 & 6 Proof Translation and Proof Checking Proof Retrieval Engine: ProofCloud 11/29 Conclusion
News from OpenTheory Proof Engineering of Higher Order Logic Robert White (Shuai OpenTheory is updating constantly, so will Holide and Dedukti. Wang) Introduction Higher Order Logic HOL Kernel Inference Rules Proof Collaboration OpenTheory Version 5 & 6 Proof Translation and Proof Checking Proof Retrieval Engine: ProofCloud 12/29 Conclusion
Holide and Dedukti Proof Engineering of Higher Order Logic Robert White (Shuai OpenTheory has a repository of proof packages (articles). Wang) Holide translates proofs from OpenTheory articles to Introduction Dedukti. Higher Order Logic HOL Kernel Dedukti 1 is a proof checker (for proof checking). Inference Rules from a reviewer: It is not clear from the abstract whether Proof Collaboration the author has contributed to the development of Holide OpenTheory Version 5 & 6 or Dedukti Proof Translation and Proof Checking Proof Retrieval Engine: ProofCloud 13/29 Conclusion
Workflow of OpenTheory, Holide and Dedukti Proof Engineering of Higher Order Logic Robert White (Shuai Wang) Introduction Higher Order Logic HOL Kernel Inference Rules Proof Collaboration OpenTheory Version 5 & 6 Proof Translation and Proof Figure: Work Flow of OpenTheory, Holide and Dedukti Checking Proof Retrieval Engine: ProofCloud 14/29 Conclusion
Translation Proof Engineering of Higher Order Logic Γ ⊢ ϕ = ψ sym Robert translate ( ) = Sym | A || t 1 || t 2 | White (Shuai Γ ⊢ ψ = ϕ Wang) Γ ⊢ s = t ∆ ⊢ t = u trans translate( ) = Introduction Γ ∪ ∆ ⊢ s = u Higher Order Trans | A || x || y || z || D 1 || D 2 | , where D 1 is the proof of s = t Logic HOL Kernel and D 1 is the proof of t = u Inference Rules Γ ⊢ ϕ ∆ ⊢ ψ Proof translate( ) = proveHyp Collaboration Γ ∪ (∆ \ { ϕ } ) ⊢ ψ OpenTheory Version 5 & 6 ProveHyp | x || y || D 1 | ( λ x : || ψ || . | D 2 | ) , where D 1 is the proof Proof of ϕ and D 2 is the proof of ψ . Translation and Proof Checking Proof Retrieval Engine: ProofCloud 15/29 Conclusion
Translation (Continued) Proof Engineering of Higher Order Logic Robert Sym , Trans and ProveHyp have types as follows: White (Shuai Wang) Sym : Π α : type . Π x , y : term α. proof ( eq bool x y ) → Introduction proof ( eq bool y x ) Higher Order Logic HOL Kernel Trans : Π α : type . Π x , y , z : term α proof ( eq α x y ) → Inference Rules proof ( eq α y z ) → proof ( eq α x z ) Proof Collaboration ProveHyp : Π x , y : term bool . proof x → ( proof x → OpenTheory Version 5 & 6 proof y ) → proof y Proof Translation and Proof Checking Proof Retrieval Engine: ProofCloud 16/29 Conclusion
Benchmarks: Translation Proof Engineering of Higher Order Logic Robert White (Shuai Wang) Introduction Higher Order Logic HOL Kernel Inference Rules Proof Collaboration OpenTheory Version 5 & 6 Proof Translation and Proof Checking Proof Retrieval Engine: ProofCloud Figure: The Size of Article Files and Translation Time 17/29 Conclusion
Benchmarks: Checking Proof Engineering of Higher Order Logic Robert White (Shuai Wang) Introduction Higher Order Logic HOL Kernel Inference Rules Proof Collaboration OpenTheory Version 5 & 6 Proof Translation and Proof Checking Proof Retrieval Engine: ProofCloud Figure: Th Size of Article Files and Proof Checking Time 18/29 Conclusion
Recommend
More recommend