Upcoming SlideShare
×

# A Generic Tableau Prover and Its Integration with Isabelle

209 views
137 views

Published on

Published in the CADE-15 Workshop on Integration of Deductive Systems (1998). Describes the automatic theorem proving technology used in the Isabelle system.

Published in: Technology
0 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

• Be the first to like this

Views
Total views
209
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
1
0
Likes
0
Embeds 0
No embeds

No notes for slide

### A Generic Tableau Prover and Its Integration with Isabelle

1. 1. A Generic Tableau Prover and Its Integration with Isabelle Lawrence C. Paulson Computer Laboratory University of Cambridge 1
2. 2. Overview of Isabelle • a generic interactive prover for FOL, set theory, HOL, . . . • Prolog inﬂuence: resolution of generalized Horn clauses Existing classical reasoner (Fast tac) • tableau methods • generic: accepts supplied rules • runs on Isabelle’s Prolog engine (trivial integration) 2
3. 3. Objectives for the New Tactic • Genericity: no restriction to predicate logic • Power: quantiﬁer duplication, transitivity reasoning . . . • Speed: perhaps 10–20 seconds for interactive use • Compatibility with Isabelle’s existing tools (Fast tac) 3
4. 4. Why Write a New Tableau Prover? Q. Why not rewrite with A ⊆ B ⇐⇒ ∀x (x ∈ A → x ∈ B)? A. Destroys legibility A. Not always possible: inductive deﬁnitions Q. Why not just call Otter, SETHEO or LeanTaP? A. We need higher-order syntax 4
5. 5. Typical Generic Tableau Rules type α type γ/β type δ/α t ∈ A ∩ B t ∈ A t ∈ B A ⊆ B ¬(?x ∈ A) | ?x ∈ B ¬(A ⊆ B) s ∈ A ¬(s ∈ B) Complications from genericity: • overloading store some type info • variable instantiation heuristic limits • recursive rules ad-hoc checks 5
6. 6. Prover Architecture Free-variable tableau with iterative deepening (leanTaP) Term data structure: no types; variables as pointers Basic heuristics • discrimination nets • search-space pruning • delayed use of unsafe rules (γ-rules) • suppressing needless duplication 6
7. 7. Integration I: Translating Isabelle Rules • multiple goal formulas via negation • dual Skolemization ⇒ standard Skolemization • simpliﬁcation of higher-order conclusions (η-contraction) • limitations on function variables • type translation for overloading 7
8. 8. Integration II: Translating Tableau Proofs Isabelle checks the proof—often the slowest phase • direct correspondence from proof steps to Isabelle tactics • failure might be caused by – breakdown of the correspondence – type complications • recomputation of uniﬁers • fancy tricks not possible (e.g. liberalized δ-rule) 8
9. 9. Results & Limitations Good performance on ﬁrst-order benchmarks e.g. Pelletier’s Mostly compatible with fast_tac; can be 10 times faster • and proves more theorems • but slower for some ‘obvious’ problems Set theory challenge: (∀x, y ∈ S x ⊆ y) → ∃z S ⊆ {z} 9
10. 10. Conclusions • the ﬁrst tableau prover with higher-order syntax? • the ﬁrst tableau prover for ZF, HOL, inductive deﬁnitions, . . . ? • has almost replaced fast_tac • a good example of integration in daily use 10