15-819/18-879: hybrid systems analysis & theorem provingaplatzer/course/hsatp/04... · 2020. 6....

214
15-819/18-879: Hybrid Systems Analysis & Theorem Proving 04: Tableau Provers in Propositional and First-order Logic Andr´ e Platzer [email protected] Carnegie Mellon University, Pittsburgh, PA 0.2 0.4 0.6 0.8 1.0 0.1 0.2 0.3 0.4 0.5 Andr´ e Platzer (CMU) 15-819/04: Tableau Proving 1 / 39

Upload: others

Post on 24-Jan-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

15-819/18-879: Hybrid Systems Analysis& Theorem Proving

04: Tableau Provers in Propositional and First-order Logic

Andre Platzer

[email protected]

Carnegie Mellon University, Pittsburgh, PA

0.20.4

0.60.8

1.00.1

0.2

0.3

0.4

0.5

Andre Platzer (CMU) 15-819/04: Tableau Proving 1 / 39

Page 2: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Outline

1 Propositional LogicTableau ProvingSoundnessCompleteness

1 First-order LogicHerbrand TheoryFirst-order Ground TableauxFree-Variable TableauxSoundnessCompleteness

Andre Platzer (CMU) 15-819/04: Tableau Proving 1 / 39

Page 3: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Outline

1 Propositional LogicTableau ProvingSoundnessCompleteness

1 First-order LogicHerbrand TheoryFirst-order Ground TableauxFree-Variable TableauxSoundnessCompleteness

Andre Platzer (CMU) 15-819/04: Tableau Proving 1 / 39

Page 4: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Deciding/Analyzing Validity of PL0

Proposition

Validity and satisfiability for propositional logic are decidable (byexhaustive enumeration) in exponential time.

Enumeration of interpretations does not scale

Enumeration of interpretations is more tricky to generalize to FOL

Andre Platzer (CMU) 15-819/04: Tableau Proving 2 / 39

Page 5: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Deciding/Analyzing Validity of PL0

Proposition

Validity and satisfiability for propositional logic are decidable (byexhaustive enumeration) in exponential time.

Enumeration of interpretations does not scale

Enumeration of interpretations is more tricky to generalize to FOL

Andre Platzer (CMU) 15-819/04: Tableau Proving 2 / 39

Page 6: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Deciding/Analyzing Validity of PL0

Proposition

Validity and satisfiability for propositional logic are decidable (byexhaustive enumeration) in exponential time.

Enumeration of interpretations does not scale

Enumeration of interpretations is more tricky to generalize to FOL

Andre Platzer (CMU) 15-819/04: Tableau Proving 2 / 39

Page 7: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Intuitive Approach

Example for an unsatisfiable PL0 formula?

(A ∧ B → C ) ∧ ¬(B → C ∨ ¬A)

Andre Platzer (CMU) 15-819/04: Tableau Proving 3 / 39

Page 8: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Intuitive Approach

Example for an unsatisfiable PL0 formula?

(A ∧ B → C ) ∧ ¬(B → C ∨ ¬A)

Andre Platzer (CMU) 15-819/04: Tableau Proving 3 / 39

Page 9: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 10: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 11: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 12: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 13: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 14: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 15: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 16: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 17: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 18: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 19: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 20: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 21: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 22: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

A

A

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 23: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

“Systematically keep track of truth in tables”

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 24: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux

analytic tableaux with subformula property

¬¬A

AA

α-rules

A ∧ B

AB

¬(A ∨ B)

¬A¬B

¬(A→ B)

A¬B

β-rules

A ∨ B

A B

¬(A ∧ B)

¬A ¬B

A→ B

¬A B

uniform

α

α1

α2

β

β1 β2

Andre Platzer (CMU) 15-819/04: Tableau Proving 4 / 39

Page 25: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

α-extension

α

π

T

α1

α2

T2

β-extension

β

π

T

β1 β2

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 5 / 39

Page 26: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

α-extension

α

π

T

α1

α2

T2

β-extension

β

π

T

β1 β2

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 5 / 39

Page 27: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

α-extension

α

π

T

α1

α2

T2

β-extension

β

π

T

β1 β2

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 5 / 39

Page 28: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

α-extension

α

π

T

α1

α2

T2

β-extension

β

π

T

β1 β2

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 5 / 39

Page 29: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Propositional Tableaux - Formally

Definition (Tableaux)

A binary tree with PL0 formulas as nodes is a tableau for formula F :

1 The tree consisting only of a node labelled ¬F is a tableau.

2 Let G be the label of a node on some path π in a tableau T for F . IfG is of the form of an α-premiss, then when extending π by two newnodes labelled with the α-conclusions, we obtain tableau T2.

3 Let G be the label of a node on some path π in a tableau T for F . IfG is of the form of a β-premiss, then when extending π by a branchto two new leaves labelled with the β-conclusions, we obtain atableau T2.

Andre Platzer (CMU) 15-819/04: Tableau Proving 6 / 39

Page 30: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Path Closing

path closure

P

¬P

Andre Platzer (CMU) 15-819/04: Tableau Proving 7 / 39

Page 31: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Path Closing

path closure

P

¬P

Andre Platzer (CMU) 15-819/04: Tableau Proving 7 / 39

Page 32: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Provability

Definition (Provability)

A path is closed iff it contains nodes labelled G and ¬G for anyformula G .

A tableau is closed iff all its paths are closed.

Formula F is provable (by propositional tableaux) iff there is a closedtableau for ¬FNotation: `tabPL0 F

Andre Platzer (CMU) 15-819/04: Tableau Proving 8 / 39

Page 33: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Proving Example

Example

A ∨ (B ∧ C )→ (A ∨ B) ∧ (A ∨ C ) is valid?

Andre Platzer (CMU) 15-819/04: Tableau Proving 9 / 39

Page 34: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

¬

(A ∨ (B ∧ C )→ (A ∨ B) ∧ (A ∨ C ))

A ∨ (B ∧ C )

¬((A ∨ B) ∧ (A ∨ C ))

A

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

B ∧ C

B

C

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

Andre Platzer (CMU) 15-819/04: Tableau Proving 10 / 39

Page 35: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

¬(A ∨ (B ∧ C )→ (A ∨ B) ∧ (A ∨ C ))

A ∨ (B ∧ C )

¬((A ∨ B) ∧ (A ∨ C ))

A

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

B ∧ C

B

C

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

Andre Platzer (CMU) 15-819/04: Tableau Proving 10 / 39

Page 36: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

¬(A ∨ (B ∧ C )→ (A ∨ B) ∧ (A ∨ C ))

A ∨ (B ∧ C )

¬((A ∨ B) ∧ (A ∨ C ))

A

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

B ∧ C

B

C

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

Andre Platzer (CMU) 15-819/04: Tableau Proving 10 / 39

Page 37: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

¬(A ∨ (B ∧ C )→ (A ∨ B) ∧ (A ∨ C ))

A ∨ (B ∧ C )

¬((A ∨ B) ∧ (A ∨ C ))

A

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

B ∧ C

B

C

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

Andre Platzer (CMU) 15-819/04: Tableau Proving 10 / 39

Page 38: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

¬(A ∨ (B ∧ C )→ (A ∨ B) ∧ (A ∨ C ))

A ∨ (B ∧ C )

¬((A ∨ B) ∧ (A ∨ C ))

A

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

B ∧ C

B

C

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

Andre Platzer (CMU) 15-819/04: Tableau Proving 10 / 39

Page 39: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

¬(A ∨ (B ∧ C )→ (A ∨ B) ∧ (A ∨ C ))

A ∨ (B ∧ C )

¬((A ∨ B) ∧ (A ∨ C ))

A

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

B ∧ C

B

C

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

Andre Platzer (CMU) 15-819/04: Tableau Proving 10 / 39

Page 40: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

¬(A ∨ (B ∧ C )→ (A ∨ B) ∧ (A ∨ C ))

A ∨ (B ∧ C )

¬((A ∨ B) ∧ (A ∨ C ))

A

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

B ∧ C

B

C

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

Andre Platzer (CMU) 15-819/04: Tableau Proving 10 / 39

Page 41: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

¬(A ∨ (B ∧ C )→ (A ∨ B) ∧ (A ∨ C ))

A ∨ (B ∧ C )

¬((A ∨ B) ∧ (A ∨ C ))

A

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

B ∧ C

B

C

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

Andre Platzer (CMU) 15-819/04: Tableau Proving 10 / 39

Page 42: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

¬(A ∨ (B ∧ C )→ (A ∨ B) ∧ (A ∨ C ))

A ∨ (B ∧ C )

¬((A ∨ B) ∧ (A ∨ C ))

A

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

B ∧ C

B

C

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

Andre Platzer (CMU) 15-819/04: Tableau Proving 10 / 39

Page 43: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

¬(A ∨ (B ∧ C )→ (A ∨ B) ∧ (A ∨ C ))

A ∨ (B ∧ C )

¬((A ∨ B) ∧ (A ∨ C ))

A

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

B ∧ C

B

C

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

Andre Platzer (CMU) 15-819/04: Tableau Proving 10 / 39

Page 44: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

¬(A ∨ (B ∧ C )→ (A ∨ B) ∧ (A ∨ C ))

A ∨ (B ∧ C )

¬((A ∨ B) ∧ (A ∨ C ))

A

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

B ∧ C

B

C

¬(A ∨ B)

¬A

¬B

¬(A ∨ C )

¬A

¬C

Andre Platzer (CMU) 15-819/04: Tableau Proving 10 / 39

Page 45: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Soundness of PL0 Tableaux

Theorem (Soundness)

All provable PL0 formulas F are valid:

`tabPL0 F ⇒ � F

Andre Platzer (CMU) 15-819/04: Tableau Proving 11 / 39

Page 46: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Soundness of PL0 Tableaux

Theorem (Soundness)

All provable PL0 formulas F are valid:

`tabPL0 F ⇒ � F

Definition

An interpretation I is a model of tableau T iff there is a branch on which Isatisfies all formulas.

Closed tableaux cannot have models.

Andre Platzer (CMU) 15-819/04: Tableau Proving 11 / 39

Page 47: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Soundness of PL0 Tableaux

Theorem (Soundness)

All provable PL0 formulas F are valid:

`tabPL0 F ⇒ � F

Proof.

Contrapositively, assume 6� F , then

¬F has a model

Any tableau for F has a model: having a model transfers from eachnode to its children Check rules

There is no closed tableau for F .

Andre Platzer (CMU) 15-819/04: Tableau Proving 11 / 39

Page 48: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Soundness of PL0 Tableaux

Theorem (Soundness)

All provable PL0 formulas F are valid:

`tabPL0 F ⇒ � F

Proof.

Contrapositively, assume 6� F , then

¬F has a model

Any tableau for F has a model: having a model transfers from eachnode to its children Check rules

There is no closed tableau for F .

Andre Platzer (CMU) 15-819/04: Tableau Proving 11 / 39

Page 49: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Soundness of PL0 Tableaux

Theorem (Soundness)

All provable PL0 formulas F are valid:

`tabPL0 F ⇒ � F

Proof.

Contrapositively, assume 6� F , then

¬F has a model

Any tableau for F has a model: having a model transfers from eachnode to its children Check rules

There is no closed tableau for F .

Andre Platzer (CMU) 15-819/04: Tableau Proving 11 / 39

Page 50: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Soundness of PL0 Tableaux

Theorem (Soundness)

All provable PL0 formulas F are valid:

`tabPL0 F ⇒ � F

Proof.

Contrapositively, assume 6� F , then

¬F has a model

Any tableau for F has a model: having a model transfers from eachnode to its children Check rules

There is no closed tableau for F .

Andre Platzer (CMU) 15-819/04: Tableau Proving 11 / 39

Page 51: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Soundness of PL0 Tableaux

Theorem (Soundness)

All provable PL0 formulas F are valid:

`tabPL0 F ⇒ � F

Proof.

Contrapositively, assume 6� F , then

¬F has a model

Any tableau for F has a model: having a model transfers from eachnode to its children Check rules

There is no closed tableau for F .

Andre Platzer (CMU) 15-819/04: Tableau Proving 11 / 39

Page 52: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Completeness of PL0 Tableaux

Theorem (Completeness)

All valid PL0 formulas F are provable:

� F ⇒ `tabPL0 F

Proof Sketch.

For any exhausted open tableau for F there is a model of ¬F .

Exhaustive iff every formula has been used on every open path.

Andre Platzer (CMU) 15-819/04: Tableau Proving 12 / 39

Page 53: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Completeness of PL0 Tableaux

Theorem (Completeness)

All valid PL0 formulas F are provable:

� F ⇒ `tabPL0 F

Proof Sketch.

For any exhausted open tableau for F there is a model of ¬F .

Exhaustive iff every formula has been used on every open path.

Andre Platzer (CMU) 15-819/04: Tableau Proving 12 / 39

Page 54: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Completeness of PL0 Tableaux

Theorem (Completeness)

All valid PL0 formulas F are provable:

� F ⇒ `tabPL0 F

Proof Sketch.

For any exhausted open tableau for F there is a model of ¬F .

Exhaustive iff every formula has been used on every open path.

Andre Platzer (CMU) 15-819/04: Tableau Proving 12 / 39

Page 55: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Outline

1 Propositional LogicTableau ProvingSoundnessCompleteness

1 First-order LogicHerbrand TheoryFirst-order Ground TableauxFree-Variable TableauxSoundnessCompleteness

Andre Platzer (CMU) 15-819/04: Tableau Proving 12 / 39

Page 56: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Logic

What is the most naıve syntactic interpretation?

Andre Platzer (CMU) 15-819/04: Tableau Proving 13 / 39

Page 57: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Herbrand Model

Definition (Herbrand Model)

An interpretation with free semantics for terms is called Herbrand model:

1 Ground terms Term0(Σ) over Σ as domain D (i.e. no variables)

2 I (f ) : Dn → D; (t1, . . . , tn) 7→ f (t1, . . . , tn) for each functionsymbol f of arity n

Let Γ be a set of closed universal formulas. Term0(Σ)(Γ) is the set of allground term instances of the formulas in Γ, i.e., with ground termsinstantiated for the variables of the universal quantifier prefix.

Andre Platzer (CMU) 15-819/04: Tableau Proving 14 / 39

Page 58: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Herbrand’s Theorem

Theorem (Herbrand)

Let Γ be a (suitable) set of first-order formulas (i.e. closed universalformulas without equality with Σ having at least one constant).

Γ has a model ⇐⇒ Γ has a Herbrand model, i.e. free on ground terms⇐⇒ ground terms Term0(Σ)(Γ) of Γ have a model

Theorem (Finiteness Corollary to Compactness)

Γ has a model iff every finite subset of Γ has.

Corollary

Validity of FOL is semidecidable.

F valid ⇐⇒ ¬F unsatisfiable⇐⇒ Term0(Σ)(¬F ) have no model⇐⇒ some finite subet of Term0(Σ)(¬F ) has no Herbrand model

Andre Platzer (CMU) 15-819/04: Tableau Proving 15 / 39

Page 59: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Herbrand’s Theorem

Theorem (Herbrand)

Let Γ be a (suitable) set of first-order formulas (i.e. closed universalformulas without equality with Σ having at least one constant).

Γ has a model ⇐⇒ Γ has a Herbrand model, i.e. free on ground terms⇐⇒ ground terms Term0(Σ)(Γ) of Γ have a model

Theorem (Finiteness Corollary to Compactness)

Γ has a model iff every finite subset of Γ has.

Corollary

Validity of FOL is semidecidable.

F valid ⇐⇒ ¬F unsatisfiable⇐⇒ Term0(Σ)(¬F ) have no model⇐⇒ some finite subet of Term0(Σ)(¬F ) has no Herbrand model

Andre Platzer (CMU) 15-819/04: Tableau Proving 15 / 39

Page 60: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Herbrand’s Theorem

Theorem (Herbrand)

Let Γ be a (suitable) set of first-order formulas (i.e. closed universalformulas without equality with Σ having at least one constant).

Γ has a model ⇐⇒ Γ has a Herbrand model, i.e. free on ground terms⇐⇒ ground terms Term0(Σ)(Γ) of Γ have a model

Theorem (Finiteness Corollary to Compactness)

Γ has a model iff every finite subset of Γ has.

Corollary

Validity of FOL is semidecidable.

F valid ⇐⇒ ¬F unsatisfiable⇐⇒ Term0(Σ)(¬F ) have no model⇐⇒ some finite subet of Term0(Σ)(¬F ) has no Herbrand model

Andre Platzer (CMU) 15-819/04: Tableau Proving 15 / 39

Page 61: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Herbrand’s Theorem

Theorem (Herbrand)

Let Γ be a (suitable) set of first-order formulas (i.e. closed universalformulas without equality with Σ having at least one constant).

Γ has a model ⇐⇒ Γ has a Herbrand model, i.e. free on ground terms⇐⇒ ground terms Term0(Σ)(Γ) of Γ have a model

Theorem (Finiteness Corollary to Compactness)

Γ has a model iff every finite subset of Γ has.

Corollary

Validity of FOL is semidecidable.

F valid ⇐⇒ ¬F unsatisfiable

⇐⇒ Term0(Σ)(¬F ) have no model⇐⇒ some finite subet of Term0(Σ)(¬F ) has no Herbrand model

Andre Platzer (CMU) 15-819/04: Tableau Proving 15 / 39

Page 62: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Herbrand’s Theorem

Theorem (Herbrand)

Let Γ be a (suitable) set of first-order formulas (i.e. closed universalformulas without equality with Σ having at least one constant).

Γ has a model ⇐⇒ Γ has a Herbrand model, i.e. free on ground terms⇐⇒ ground terms Term0(Σ)(Γ) of Γ have a model

Theorem (Finiteness Corollary to Compactness)

Γ has a model iff every finite subset of Γ has.

Corollary

Validity of FOL is semidecidable.

F valid ⇐⇒ ¬F unsatisfiable⇐⇒ Term0(Σ)(¬F ) have no model

⇐⇒ some finite subet of Term0(Σ)(¬F ) has no Herbrand model

Andre Platzer (CMU) 15-819/04: Tableau Proving 15 / 39

Page 63: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Herbrand’s Theorem

Theorem (Herbrand)

Let Γ be a (suitable) set of first-order formulas (i.e. closed universalformulas without equality with Σ having at least one constant).

Γ has a model ⇐⇒ Γ has a Herbrand model, i.e. free on ground terms⇐⇒ ground terms Term0(Σ)(Γ) of Γ have a model

Theorem (Finiteness Corollary to Compactness)

Γ has a model iff every finite subset of Γ has.

Corollary

Validity of FOL is semidecidable.

F valid ⇐⇒ ¬F unsatisfiable⇐⇒ Term0(Σ)(¬F ) have no model⇐⇒ some finite subet of Term0(Σ)(¬F ) has no Herbrand model

Andre Platzer (CMU) 15-819/04: Tableau Proving 15 / 39

Page 64: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Arbitrary Formulas versus Universal Formulas

∀x ∀y (p(x , y)→ p(y , x)) is universal

∃x ∀y (p(x , y)→ p(y , x)) is not universal

Name existentials: ∀y (p(x , a)→ p(a, x)) is universal (with newconstant symbol a)

Are these formulas equivalent?

No! But satisfiability-equivalent!

∀y ∃x (p(x , y)→ p(y , x)) is not universal. How to call x?

∀y (p(s(y), y)→ p(y , s(y)) is universal (with new Skolem function s)

Both are satisfiability-equivalent

In group theory, ∀x ∃y x · y = 1 that inverse would be called i(x),obviously depending on x : ∀x x · i(x) = 1

Andre Platzer (CMU) 15-819/04: Tableau Proving 16 / 39

Page 65: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Arbitrary Formulas versus Universal Formulas

∀x ∀y (p(x , y)→ p(y , x)) is universal

∃x ∀y (p(x , y)→ p(y , x)) is not universal

Name existentials: ∀y (p(x , a)→ p(a, x)) is universal (with newconstant symbol a)

Are these formulas equivalent?

No! But satisfiability-equivalent!

∀y ∃x (p(x , y)→ p(y , x)) is not universal. How to call x?

∀y (p(s(y), y)→ p(y , s(y)) is universal (with new Skolem function s)

Both are satisfiability-equivalent

In group theory, ∀x ∃y x · y = 1 that inverse would be called i(x),obviously depending on x : ∀x x · i(x) = 1

Andre Platzer (CMU) 15-819/04: Tableau Proving 16 / 39

Page 66: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Arbitrary Formulas versus Universal Formulas

∀x ∀y (p(x , y)→ p(y , x)) is universal

∃x ∀y (p(x , y)→ p(y , x)) is not universal

Name existentials: ∀y (p(x , a)→ p(a, x)) is universal (with newconstant symbol a)

Are these formulas equivalent?

No! But satisfiability-equivalent!

∀y ∃x (p(x , y)→ p(y , x)) is not universal. How to call x?

∀y (p(s(y), y)→ p(y , s(y)) is universal (with new Skolem function s)

Both are satisfiability-equivalent

In group theory, ∀x ∃y x · y = 1 that inverse would be called i(x),obviously depending on x : ∀x x · i(x) = 1

Andre Platzer (CMU) 15-819/04: Tableau Proving 16 / 39

Page 67: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Arbitrary Formulas versus Universal Formulas

∀x ∀y (p(x , y)→ p(y , x)) is universal

∃x ∀y (p(x , y)→ p(y , x)) is not universal

Name existentials: ∀y (p(x , a)→ p(a, x)) is universal (with newconstant symbol a)

Are these formulas equivalent?

No! But satisfiability-equivalent!

∀y ∃x (p(x , y)→ p(y , x)) is not universal. How to call x?

∀y (p(s(y), y)→ p(y , s(y)) is universal (with new Skolem function s)

Both are satisfiability-equivalent

In group theory, ∀x ∃y x · y = 1 that inverse would be called i(x),obviously depending on x : ∀x x · i(x) = 1

Andre Platzer (CMU) 15-819/04: Tableau Proving 16 / 39

Page 68: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Arbitrary Formulas versus Universal Formulas

∀x ∀y (p(x , y)→ p(y , x)) is universal

∃x ∀y (p(x , y)→ p(y , x)) is not universal

Name existentials: ∀y (p(x , a)→ p(a, x)) is universal (with newconstant symbol a)

Are these formulas equivalent? No! But satisfiability-equivalent!

∀y ∃x (p(x , y)→ p(y , x)) is not universal. How to call x?

∀y (p(s(y), y)→ p(y , s(y)) is universal (with new Skolem function s)

Both are satisfiability-equivalent

In group theory, ∀x ∃y x · y = 1 that inverse would be called i(x),obviously depending on x : ∀x x · i(x) = 1

Andre Platzer (CMU) 15-819/04: Tableau Proving 16 / 39

Page 69: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Arbitrary Formulas versus Universal Formulas

∀x ∀y (p(x , y)→ p(y , x)) is universal

∃x ∀y (p(x , y)→ p(y , x)) is not universal

Name existentials: ∀y (p(x , a)→ p(a, x)) is universal (with newconstant symbol a)

Are these formulas equivalent? No! But satisfiability-equivalent!

∀y ∃x (p(x , y)→ p(y , x)) is not universal. How to call x?

∀y (p(s(y), y)→ p(y , s(y)) is universal (with new Skolem function s)

Both are satisfiability-equivalent

In group theory, ∀x ∃y x · y = 1 that inverse would be called i(x),obviously depending on x : ∀x x · i(x) = 1

Andre Platzer (CMU) 15-819/04: Tableau Proving 16 / 39

Page 70: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Arbitrary Formulas versus Universal Formulas

∀x ∀y (p(x , y)→ p(y , x)) is universal

∃x ∀y (p(x , y)→ p(y , x)) is not universal

Name existentials: ∀y (p(x , a)→ p(a, x)) is universal (with newconstant symbol a)

Are these formulas equivalent? No! But satisfiability-equivalent!

∀y ∃x (p(x , y)→ p(y , x)) is not universal. How to call x?

∀y (p(s(y), y)→ p(y , s(y)) is universal (with new Skolem function s)

Both are satisfiability-equivalent

In group theory, ∀x ∃y x · y = 1 that inverse would be called i(x),obviously depending on x : ∀x x · i(x) = 1

Andre Platzer (CMU) 15-819/04: Tableau Proving 16 / 39

Page 71: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Arbitrary Formulas versus Universal Formulas

∀x ∀y (p(x , y)→ p(y , x)) is universal

∃x ∀y (p(x , y)→ p(y , x)) is not universal

Name existentials: ∀y (p(x , a)→ p(a, x)) is universal (with newconstant symbol a)

Are these formulas equivalent? No! But satisfiability-equivalent!

∀y ∃x (p(x , y)→ p(y , x)) is not universal. How to call x?

∀y (p(s(y), y)→ p(y , s(y)) is universal (with new Skolem function s)

Both are satisfiability-equivalent

In group theory, ∀x ∃y x · y = 1 that inverse would be called i(x),obviously depending on x : ∀x x · i(x) = 1

Andre Platzer (CMU) 15-819/04: Tableau Proving 16 / 39

Page 72: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Arbitrary Formulas versus Universal Formulas

∀x ∀y (p(x , y)→ p(y , x)) is universal

∃x ∀y (p(x , y)→ p(y , x)) is not universal

Name existentials: ∀y (p(x , a)→ p(a, x)) is universal (with newconstant symbol a)

Are these formulas equivalent? No! But satisfiability-equivalent!

∀y ∃x (p(x , y)→ p(y , x)) is not universal. How to call x?

∀y (p(s(y), y)→ p(y , s(y)) is universal (with new Skolem function s)

Both are satisfiability-equivalent

In group theory, ∀x ∃y x · y = 1 that inverse would be called i(x),obviously depending on x : ∀x x · i(x) = 1

Andre Platzer (CMU) 15-819/04: Tableau Proving 16 / 39

Page 73: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 74: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Proof.

Iterative Skolemization

Nonsense! Existential quantifiers in negative positions are more likeuniversals!

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 75: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Proof.

Iterative Skolemization

∀x∃y(p(x , y)→ ∀z ∃u (q(x , u, z) ∧ p(u, y))

)

Nonsense! Existential quantifiers in negative positions are more likeuniversals!

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 76: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Proof.

Iterative Skolemization

∀x∃y(p(x , y)→ ∀z ∃u (q(x , u, z) ∧ p(u, y))

)

Nonsense! Existential quantifiers in negative positions are more likeuniversals!

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 77: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Proof.

Iterative Skolemization

∀x(p(x , s(x))→ ∀z ∃u(q(x , u, z) ∧ p(u, s(x)))

)

Nonsense! Existential quantifiers in negative positions are more likeuniversals!

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 78: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Proof.

Iterative Skolemization

∀x(p(x , s(x))→ ∀z ∃u(q(x , u, z) ∧ p(u, s(x)))

)

Nonsense! Existential quantifiers in negative positions are more likeuniversals!

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 79: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Proof.

Iterative Skolemization

∀x(p(x , s(x))→ ∀z (q(x , t(x , z), z) ∧ p(t(x , z), s(x)))

)

Nonsense! Existential quantifiers in negative positions are more likeuniversals!

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 80: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Proof.

Iterative Skolemization

∀x∃y(p(x , y)→ ∀z ∃u(q(x , u, z) ∧ p(u, y))

)→ ∃v q(v , x , y)

Nonsense! Existential quantifiers in negative positions are more likeuniversals!

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 81: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Proof.

Iterative Skolemization

∀x∃y(p(x , y)→ ∀z ∃u(q(x , u, z) ∧ p(u, y))

)→ ∃v q(v , x , y)

Nonsense! Existential quantifiers in negative positions are more likeuniversals!

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 82: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Proof.

Iterative Skolemization

∀x(p(x , s(x))→ ∀z (q(x , t(x , z), z) ∧ p(t(x , z), s(x)))

)→ ∃vq(v , x , y)

Nonsense! Existential quantifiers in negative positions are more likeuniversals!

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 83: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Proof.

Iterative Skolemization

∀x(p(x , s(x))→ ∀z (q(x , t(x , z), z) ∧ p(t(x , z), s(x)))

)→ ∃vq(v , x , y)

Nonsense! Existential quantifiers in negative positions are more likeuniversals!

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 84: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Proof.

Iterative Skolemization

∀x(p(x , s(x))→ ∀z (q(x , t(x , z), z) ∧ p(t(x , z), s(x)))

)→ q(f (x , y), x , y)

Nonsense! Existential quantifiers in negative positions are more likeuniversals!

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 85: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Proof.

Iterative Skolemization

∀x(p(x , s(x))→ ∀z (q(x , t(x , z), z) ∧ p(t(x , z), s(x)))

)→ q(f (x , y), x , y)

Nonsense! Existential quantifiers in negative positions are more likeuniversals!

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 86: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Proof.

Iterative Skolemization

∀x(p(x , s(x))→ ∀z (q(x , t(x , z), z) ∧ p(t(x , z), s(x)))

)→ q(f (x , y), x , y)

Nonsense! Existential quantifiers in negative positions are more likeuniversals!

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 87: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent.

Proof.

Iterative Skolemization

∀x(p(x , s(x))→ ∀z (q(x , t(x , z), z) ∧ p(t(x , z), s(x)))

)→ q(f (x , y), x , y)

Nonsense! Existential quantifiers in negative positions are more likeuniversals!

Andre Platzer (CMU) 15-819/04: Tableau Proving 17 / 39

Page 88: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent, and it can be constructed effectively.

Proof.

Prenex normal form + iterative Skolemization

F ∧ ∀x G ≡

∀x (F ∧ G ) if x 6∈ FV (F )

F ∨ ∀x G ≡

∀x (F ∨ G ) if x 6∈ FV (F )

F → ∀x G ≡

∀x (F → G ) if x 6∈ FV (F )

(∃x F )→ G ≡

∀x (F → G ) if x 6∈ FV (G )

(∀x F )→ G ≡

∃x (F → G ) if x 6∈ FV (G )

Andre Platzer (CMU) 15-819/04: Tableau Proving 18 / 39

Page 89: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent, and it can be constructed effectively.

Proof.

Prenex normal form + iterative Skolemization

F ∧ ∀x G ≡

∀x (F ∧ G ) if x 6∈ FV (F )

F ∨ ∀x G ≡

∀x (F ∨ G ) if x 6∈ FV (F )

F → ∀x G ≡

∀x (F → G ) if x 6∈ FV (F )

(∃x F )→ G ≡

∀x (F → G ) if x 6∈ FV (G )

(∀x F )→ G ≡

∃x (F → G ) if x 6∈ FV (G )

Andre Platzer (CMU) 15-819/04: Tableau Proving 18 / 39

Page 90: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent, and it can be constructed effectively.

Proof.

Prenex normal form + iterative Skolemization

F ∧ ∀x G ≡ ∀x (F ∧ G ) if x 6∈ FV (F )

F ∨ ∀x G ≡

∀x (F ∨ G ) if x 6∈ FV (F )

F → ∀x G ≡

∀x (F → G ) if x 6∈ FV (F )

(∃x F )→ G ≡

∀x (F → G ) if x 6∈ FV (G )

(∀x F )→ G ≡

∃x (F → G ) if x 6∈ FV (G )

Andre Platzer (CMU) 15-819/04: Tableau Proving 18 / 39

Page 91: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent, and it can be constructed effectively.

Proof.

Prenex normal form + iterative Skolemization

F ∧ ∀x G ≡ ∀x (F ∧ G ) if x 6∈ FV (F )

F ∨ ∀x G ≡

∀x (F ∨ G ) if x 6∈ FV (F )

F → ∀x G ≡

∀x (F → G ) if x 6∈ FV (F )

(∃x F )→ G ≡

∀x (F → G ) if x 6∈ FV (G )

(∀x F )→ G ≡

∃x (F → G ) if x 6∈ FV (G )

Andre Platzer (CMU) 15-819/04: Tableau Proving 18 / 39

Page 92: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent, and it can be constructed effectively.

Proof.

Prenex normal form + iterative Skolemization

F ∧ ∀x G ≡ ∀x (F ∧ G ) if x 6∈ FV (F )

F ∨ ∀x G ≡ ∀x (F ∨ G ) if x 6∈ FV (F )

F → ∀x G ≡

∀x (F → G ) if x 6∈ FV (F )

(∃x F )→ G ≡

∀x (F → G ) if x 6∈ FV (G )

(∀x F )→ G ≡

∃x (F → G ) if x 6∈ FV (G )

Andre Platzer (CMU) 15-819/04: Tableau Proving 18 / 39

Page 93: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent, and it can be constructed effectively.

Proof.

Prenex normal form + iterative Skolemization

F ∧ ∀x G ≡ ∀x (F ∧ G ) if x 6∈ FV (F )

F ∨ ∀x G ≡ ∀x (F ∨ G ) if x 6∈ FV (F )

F → ∀x G ≡

∀x (F → G ) if x 6∈ FV (F )

(∃x F )→ G ≡

∀x (F → G ) if x 6∈ FV (G )

(∀x F )→ G ≡

∃x (F → G ) if x 6∈ FV (G )

Andre Platzer (CMU) 15-819/04: Tableau Proving 18 / 39

Page 94: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent, and it can be constructed effectively.

Proof.

Prenex normal form + iterative Skolemization

F ∧ ∀x G ≡ ∀x (F ∧ G ) if x 6∈ FV (F )

F ∨ ∀x G ≡ ∀x (F ∨ G ) if x 6∈ FV (F )

F → ∀x G ≡ ∀x (F → G ) if x 6∈ FV (F )

(∃x F )→ G ≡

∀x (F → G ) if x 6∈ FV (G )

(∀x F )→ G ≡

∃x (F → G ) if x 6∈ FV (G )

Andre Platzer (CMU) 15-819/04: Tableau Proving 18 / 39

Page 95: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent, and it can be constructed effectively.

Proof.

Prenex normal form + iterative Skolemization

F ∧ ∀x G ≡ ∀x (F ∧ G ) if x 6∈ FV (F )

F ∨ ∀x G ≡ ∀x (F ∨ G ) if x 6∈ FV (F )

F → ∀x G ≡ ∀x (F → G ) if x 6∈ FV (F )

(∃x F )→ G ≡

∀x (F → G ) if x 6∈ FV (G )

(∀x F )→ G ≡

∃x (F → G ) if x 6∈ FV (G )

Andre Platzer (CMU) 15-819/04: Tableau Proving 18 / 39

Page 96: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent, and it can be constructed effectively.

Proof.

Prenex normal form + iterative Skolemization

F ∧ ∀x G ≡ ∀x (F ∧ G ) if x 6∈ FV (F )

F ∨ ∀x G ≡ ∀x (F ∨ G ) if x 6∈ FV (F )

F → ∀x G ≡ ∀x (F → G ) if x 6∈ FV (F )

(∃x F )→ G ≡ ∀x (F → G ) if x 6∈ FV (G )

(∀x F )→ G ≡

∃x (F → G ) if x 6∈ FV (G )

Andre Platzer (CMU) 15-819/04: Tableau Proving 18 / 39

Page 97: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent, and it can be constructed effectively.

Proof.

Prenex normal form + iterative Skolemization

F ∧ ∀x G ≡ ∀x (F ∧ G ) if x 6∈ FV (F )

F ∨ ∀x G ≡ ∀x (F ∨ G ) if x 6∈ FV (F )

F → ∀x G ≡ ∀x (F → G ) if x 6∈ FV (F )

(∃x F )→ G ≡ ∀x (F → G ) if x 6∈ FV (G )

(∀x F )→ G ≡

∃x (F → G ) if x 6∈ FV (G )

Andre Platzer (CMU) 15-819/04: Tableau Proving 18 / 39

Page 98: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Skolemization and Satisfiability-Equivalence

Lemma

For every FOL formula there is a universal formula that issatisfiability-equivalent, and it can be constructed effectively.

Proof.

Prenex normal form + iterative Skolemization

F ∧ ∀x G ≡ ∀x (F ∧ G ) if x 6∈ FV (F )

F ∨ ∀x G ≡ ∀x (F ∨ G ) if x 6∈ FV (F )

F → ∀x G ≡ ∀x (F → G ) if x 6∈ FV (F )

(∃x F )→ G ≡ ∀x (F → G ) if x 6∈ FV (G )

(∀x F )→ G ≡ ∃x (F → G ) if x 6∈ FV (G )

Andre Platzer (CMU) 15-819/04: Tableau Proving 18 / 39

Page 99: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(t)

t ground¬∃x A(x)

¬A(t)

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(c)

c new constant¬∀x A(x)

¬A(c)

Andre Platzer (CMU) 15-819/04: Tableau Proving 19 / 39

Page 100: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(t)

t ground¬∃x A(x)

¬A(t)

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(c)

c new constant¬∀x A(x)

¬A(c)

Andre Platzer (CMU) 15-819/04: Tableau Proving 19 / 39

Page 101: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(t)

t ground¬∃x A(x)

¬A(t)

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(c)

c new constant¬∀x A(x)

¬A(c)

Andre Platzer (CMU) 15-819/04: Tableau Proving 19 / 39

Page 102: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Ground Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(t)

t ground

¬∃x A(x)

¬A(t)

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(c)

c new constant¬∀x A(x)

¬A(c)

Andre Platzer (CMU) 15-819/04: Tableau Proving 19 / 39

Page 103: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Ground Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(t)

t ground

¬∃x A(x)

¬A(t)

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(c)

c new constant¬∀x A(x)

¬A(c)

Andre Platzer (CMU) 15-819/04: Tableau Proving 19 / 39

Page 104: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Ground Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(t)

t ground

¬∃x A(x)

¬A(t)

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(c)

c new constant¬∀x A(x)

¬A(c)

Andre Platzer (CMU) 15-819/04: Tableau Proving 19 / 39

Page 105: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Ground Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(t)

t ground

¬∃x A(x)

¬A(t)

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(c)

c new constant

¬∀x A(x)

¬A(c)

Andre Platzer (CMU) 15-819/04: Tableau Proving 19 / 39

Page 106: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Ground Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(t)

t ground

¬∃x A(x)

¬A(t)

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(c)

c new constant

¬∀x A(x)

¬A(c)

Andre Platzer (CMU) 15-819/04: Tableau Proving 19 / 39

Page 107: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Ground Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(t)

t ground¬∃x A(x)

¬A(t)

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(c)

c new constant

¬∀x A(x)

¬A(c)

Andre Platzer (CMU) 15-819/04: Tableau Proving 19 / 39

Page 108: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Ground Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(t)

t ground¬∃x A(x)

¬A(t)

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(c)

c new constant

¬∀x A(x)

¬A(c)

Andre Platzer (CMU) 15-819/04: Tableau Proving 19 / 39

Page 109: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Ground Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(t)

t ground¬∃x A(x)

¬A(t)

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(c)

c new constant¬∀x A(x)

¬A(c)

Andre Platzer (CMU) 15-819/04: Tableau Proving 19 / 39

Page 110: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Ground Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(t)

t ground¬∃x A(x)

¬A(t)

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(c)

c new constant¬∀x A(x)

¬A(c)

Andre Platzer (CMU) 15-819/04: Tableau Proving 19 / 39

Page 111: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

α-extension

α

π

T

α1

α2

T2

β-extension

β

π

T

β1 β2

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 20 / 39

Page 112: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

α-extension

α

π

T

α1

α2

T2

β-extension

β

π

T

β1 β2

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 20 / 39

Page 113: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

α-extension

α

π

T

α1

α2

T2

β-extension

β

π

T

β1 β2

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 20 / 39

Page 114: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

α-extension

α

π

T

α1

α2

T2

β-extension

β

π

T

β1 β2

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 20 / 39

Page 115: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

γ∗-extension

∀x A(x)

π

T

A(t)

A(s)

T2

δ-extension

∃x A(x)

π

T

A(c)

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 21 / 39

Page 116: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

γ∗-extension

∀x A(x)

π

T

A(t)

A(s)

T2

δ-extension

∃x A(x)

π

T

A(c)

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 21 / 39

Page 117: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

γ∗-extension

∀x A(x)

π

T

A(t)A(s)

T2

δ-extension

∃x A(x)

π

T

A(c)

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 21 / 39

Page 118: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

γ∗-extension

∀x A(x)

π

T

A(t)A(s)

T2

δ-extension

∃x A(x)

π

T

A(c)

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 21 / 39

Page 119: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

γ∗-extension

∀x A(x)

π

T

A(t)A(s)

T2

δ-extension

∃x A(x)

π

T

A(c)

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 21 / 39

Page 120: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Path Closing

path closure

P

¬P

Andre Platzer (CMU) 15-819/04: Tableau Proving 22 / 39

Page 121: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Path Closing

path closure

P

¬P

Andre Platzer (CMU) 15-819/04: Tableau Proving 22 / 39

Page 122: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Ground Tableaux Example

¬

(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

What is the difficulty?

Andre Platzer (CMU) 15-819/04: Tableau Proving 23 / 39

Page 123: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Ground Tableaux Example

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

What is the difficulty?

Andre Platzer (CMU) 15-819/04: Tableau Proving 23 / 39

Page 124: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Ground Tableaux Example

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

What is the difficulty?

Andre Platzer (CMU) 15-819/04: Tableau Proving 23 / 39

Page 125: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Ground Tableaux Example

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

What is the difficulty?

Andre Platzer (CMU) 15-819/04: Tableau Proving 23 / 39

Page 126: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Ground Tableaux Example

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

What is the difficulty?

Andre Platzer (CMU) 15-819/04: Tableau Proving 23 / 39

Page 127: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Ground Tableaux Example

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

What is the difficulty?

Andre Platzer (CMU) 15-819/04: Tableau Proving 23 / 39

Page 128: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Ground Tableaux Example

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

¬ctrl(d , c)

What is the difficulty?

Andre Platzer (CMU) 15-819/04: Tableau Proving 23 / 39

Page 129: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Ground Tableaux Example

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

¬ctrl(d , c)

ctrl(d , c)

What is the difficulty?

Andre Platzer (CMU) 15-819/04: Tableau Proving 23 / 39

Page 130: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Ground Tableaux Example

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

¬ctrl(d , c)

ctrl(d , c)

What is the difficulty?

Andre Platzer (CMU) 15-819/04: Tableau Proving 23 / 39

Page 131: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Ground Tableaux Example

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

¬ctrl(d , c)

ctrl(d , c)

∗What is the difficulty?

Andre Platzer (CMU) 15-819/04: Tableau Proving 23 / 39

Page 132: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Ground Tableaux Example

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

¬ctrl(d , c)

ctrl(d , c)

∗What is the difficulty?

Andre Platzer (CMU) 15-819/04: Tableau Proving 23 / 39

Page 133: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Fighting Eager Instantiations

Idea: delay instantiation

Andre Platzer (CMU) 15-819/04: Tableau Proving 24 / 39

Page 134: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Fighting Eager Instantiations

Idea: delay instantiation

Andre Platzer (CMU) 15-819/04: Tableau Proving 24 / 39

Page 135: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Lazy Instantiation Tableaux Motivation

¬

(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

¬ctrl(d ,Y )

ctrl(X , c)

∗{d/X}{c/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 25 / 39

Page 136: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Lazy Instantiation Tableaux Motivation

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

¬ctrl(d ,Y )

ctrl(X , c)

∗{d/X}{c/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 25 / 39

Page 137: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Lazy Instantiation Tableaux Motivation

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

¬ctrl(d ,Y )

ctrl(X , c)

∗{d/X}{c/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 25 / 39

Page 138: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Lazy Instantiation Tableaux Motivation

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

¬ctrl(d ,Y )

ctrl(X , c)

∗{d/X}{c/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 25 / 39

Page 139: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Lazy Instantiation Tableaux Motivation

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

¬ctrl(d ,Y )

ctrl(X , c)

∗{d/X}{c/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 25 / 39

Page 140: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Lazy Instantiation Tableaux Motivation

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

¬ctrl(d ,Y )

ctrl(X , c)

∗{d/X}{c/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 25 / 39

Page 141: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Lazy Instantiation Tableaux Motivation

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

¬ctrl(d ,Y )

ctrl(X , c)

∗{d/X}{c/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 25 / 39

Page 142: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Lazy Instantiation Tableaux Motivation

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

¬ctrl(d ,Y )

ctrl(X , c)

∗{d/X}{c/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 25 / 39

Page 143: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Lazy Instantiation Tableaux Motivation

¬(∃y ∀x ctrl(x , y)→ ∀x ∃y ctrl(x , y))

∃y ∀x ctrl(x , y)

¬∀x ∃y ctrl(x , y)

∀x ctrl(x , c)

¬∃y ctrl(d , y)

¬ctrl(d ,Y )

ctrl(X , c)

∗{d/X}{c/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 25 / 39

Page 144: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Free-Variable Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(X )

X new variable on path¬∃x A(x)

¬A(X )

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(s(X1, . . . ,Xn))

FV (∃x A(x)) = {X1, . . . ,Xn}, s new¬∀x A(x)

¬A(s(X1, . . . ,Xn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 26 / 39

Page 145: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Free-Variable Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(X )

X new variable on path¬∃x A(x)

¬A(X )

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(s(X1, . . . ,Xn))

FV (∃x A(x)) = {X1, . . . ,Xn}, s new¬∀x A(x)

¬A(s(X1, . . . ,Xn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 26 / 39

Page 146: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Free-Variable Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(X )

X new variable on path¬∃x A(x)

¬A(X )

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(s(X1, . . . ,Xn))

FV (∃x A(x)) = {X1, . . . ,Xn}, s new¬∀x A(x)

¬A(s(X1, . . . ,Xn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 26 / 39

Page 147: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Free-Variable Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(X )

X new variable on path

¬∃x A(x)

¬A(X )

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(s(X1, . . . ,Xn))

FV (∃x A(x)) = {X1, . . . ,Xn}, s new¬∀x A(x)

¬A(s(X1, . . . ,Xn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 26 / 39

Page 148: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Free-Variable Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(X )

X new variable on path

¬∃x A(x)

¬A(X )

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(s(X1, . . . ,Xn))

FV (∃x A(x)) = {X1, . . . ,Xn}, s new¬∀x A(x)

¬A(s(X1, . . . ,Xn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 26 / 39

Page 149: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Free-Variable Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(X )

X new variable on path

¬∃x A(x)

¬A(X )

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(s(X1, . . . ,Xn))

FV (∃x A(x)) = {X1, . . . ,Xn}, s new¬∀x A(x)

¬A(s(X1, . . . ,Xn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 26 / 39

Page 150: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Free-Variable Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(X )

X new variable on path

¬∃x A(x)

¬A(X )

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(s(X1, . . . ,Xn))

FV (∃x A(x)) = {X1, . . . ,Xn}, s new

¬∀x A(x)

¬A(s(X1, . . . ,Xn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 26 / 39

Page 151: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Free-Variable Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(X )

X new variable on path

¬∃x A(x)

¬A(X )

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(s(X1, . . . ,Xn))

FV (∃x A(x)) = {X1, . . . ,Xn}, s new

¬∀x A(x)

¬A(s(X1, . . . ,Xn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 26 / 39

Page 152: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Free-Variable Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(X )

X new variable on path¬∃x A(x)

¬A(X )

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(s(X1, . . . ,Xn))

FV (∃x A(x)) = {X1, . . . ,Xn}, s new

¬∀x A(x)

¬A(s(X1, . . . ,Xn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 26 / 39

Page 153: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Free-Variable Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(X )

X new variable on path¬∃x A(x)

¬A(X )

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(s(X1, . . . ,Xn))

FV (∃x A(x)) = {X1, . . . ,Xn}, s new

¬∀x A(x)

¬A(s(X1, . . . ,Xn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 26 / 39

Page 154: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Free-Variable Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(X )

X new variable on path¬∃x A(x)

¬A(X )

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(s(X1, . . . ,Xn))

FV (∃x A(x)) = {X1, . . . ,Xn}, s new¬∀x A(x)

¬A(s(X1, . . . ,Xn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 26 / 39

Page 155: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

First-order Free-Variable Tableaux

α-rules

A ∧ B

AB

γ∗-rules

∀x A(x)

A(X )

X new variable on path¬∃x A(x)

¬A(X )

β-rules

A ∨ B

A B

δ-rules

∃x A(x)

A(s(X1, . . . ,Xn))

FV (∃x A(x)) = {X1, . . . ,Xn}, s new¬∀x A(x)

¬A(s(X1, . . . ,Xn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 26 / 39

Page 156: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

γ∗-extension

∀x A(x)

π

T

A(X )

A(Y )

T2

δ-extension

∃x A(x)

π

T

A(s(X1, . . . ,Xn))

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 27 / 39

Page 157: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

γ∗-extension

∀x A(x)

π

T

A(X )

A(Y )

T2

δ-extension

∃x A(x)

π

T

A(s(X1, . . . ,Xn))

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 27 / 39

Page 158: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

γ∗-extension

∀x A(x)

π

T

A(X )A(Y )

T2

δ-extension

∃x A(x)

π

T

A(s(X1, . . . ,Xn))

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 27 / 39

Page 159: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

γ∗-extension

∀x A(x)

π

T

A(X )A(Y )

T2

δ-extension

∃x A(x)

π

T

A(s(X1, . . . ,Xn))

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 27 / 39

Page 160: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Extension

γ∗-extension

∀x A(x)

π

T

A(X )A(Y )

T2

δ-extension

∃x A(x)

π

T

A(s(X1, . . . ,Xn))

T2

Andre Platzer (CMU) 15-819/04: Tableau Proving 27 / 39

Page 161: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Free-Variable Tableaux Closing

¬φ(t1, . . . , tn)...

ψ(s1, . . . , sn)

∗σσ(φ(t1, . . . , tn)) = σ(ψ(t1, . . . , tn))

With substitution σ applied to full tableau for closing

Andre Platzer (CMU) 15-819/04: Tableau Proving 28 / 39

Page 162: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Free-Variable Tableaux Closing

¬φ(t1, . . . , tn)...

ψ(s1, . . . , sn)

∗σσ(φ(t1, . . . , tn)) = σ(ψ(t1, . . . , tn))

With substitution σ applied to full tableau for closing

Andre Platzer (CMU) 15-819/04: Tableau Proving 28 / 39

Page 163: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Path Closing

path closure

ψ(s1, . . . , sn)

¬φ(t1, . . . , tn)

∗σ

Andre Platzer (CMU) 15-819/04: Tableau Proving 29 / 39

Page 164: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Tableau Path Closing

path closure

ψ(s1, . . . , sn)

¬φ(t1, . . . , tn)

∗σ

Andre Platzer (CMU) 15-819/04: Tableau Proving 29 / 39

Page 165: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Provability

Definition (Provability)

A path can be closed by substitution σ iff it contains nodes labelled Gand ¬H for any formulas G ,H with σG = σH. When closing thispath, σ is applied to the full tableaux.

A tableau is closed iff all its paths are closed.

Formula F is provable (by first-order tableaux) iff there is a closedtableau for ¬FNotation: `tabFOL F

Andre Platzer (CMU) 15-819/04: Tableau Proving 30 / 39

Page 166: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Variation

σ only admissible for formula F iff no replaced variable x occurs withinscope of a quantifier for σx

Definition (Substitution)

A total endomorphism σ : Trm(Σ)→ Trm(Σ) of finite support in V :

{x ∈ V : σx 6= x} is finite and σ = id on Σ

σ(f (t1, . . . , tn)) = σf (σt1, . . . , σtn)

σ(p(t1, . . . , tn)) = σp(σt1, . . . , σtn)

σ¬A = ¬σA

σA ∧ B = σA ∧ σB (likewise for ∨,→,↔)

σ∀x A = ∀x σxA where σx is like σ except that σx(x) = x

σ∃x A = ∃x σxA where σx is like σ except that σx(x) = x

“simultaneously replace all free occurrences of any variable x by σx”

Andre Platzer (CMU) 15-819/04: Tableau Proving 31 / 39

Page 167: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Variation

σ only admissible for formula F iff no replaced variable x occurs withinscope of a quantifier for σx

Definition (Substitution)

A total endomorphism σ : Trm(Σ)→ Trm(Σ) of finite support in V :

{x ∈ V : σx 6= x} is finite and σ = id on Σ

σ(f (t1, . . . , tn)) = σf (σt1, . . . , σtn)

σ(p(t1, . . . , tn)) = σp(σt1, . . . , σtn)

σ¬A = ¬σA

σA ∧ B = σA ∧ σB (likewise for ∨,→,↔)

σ∀x A = ∀x σxA where σx is like σ except that σx(x) = x

σ∃x A = ∃x σxA where σx is like σ except that σx(x) = x

“simultaneously replace all free occurrences of any variable x by σx”

Andre Platzer (CMU) 15-819/04: Tableau Proving 31 / 39

Page 168: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Free Variable Tableaux Example

¬

(∀x ∃y ctrl(x , y)→ ∃y ∀x ctrl(x , y))

∀x ∃y ctrl(x , y)

¬∃y ∀x ctrl(x , y)

∃y ctrl(X , y)

ctrl(X , c(X ))

¬∀x ctrl(x ,Y )

¬ctrl(d(Y ),Y )

∗{d(Y )/X}{c()/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 32 / 39

Page 169: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Free Variable Tableaux Example

¬(∀x ∃y ctrl(x , y)→ ∃y ∀x ctrl(x , y))

∀x ∃y ctrl(x , y)

¬∃y ∀x ctrl(x , y)

∃y ctrl(X , y)

ctrl(X , c(X ))

¬∀x ctrl(x ,Y )

¬ctrl(d(Y ),Y )

∗{d(Y )/X}{c()/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 32 / 39

Page 170: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Free Variable Tableaux Example

¬(∀x ∃y ctrl(x , y)→ ∃y ∀x ctrl(x , y))

∀x ∃y ctrl(x , y)

¬∃y ∀x ctrl(x , y)

∃y ctrl(X , y)

ctrl(X , c(X ))

¬∀x ctrl(x ,Y )

¬ctrl(d(Y ),Y )

∗{d(Y )/X}{c()/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 32 / 39

Page 171: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Free Variable Tableaux Example

¬(∀x ∃y ctrl(x , y)→ ∃y ∀x ctrl(x , y))

∀x ∃y ctrl(x , y)

¬∃y ∀x ctrl(x , y)

∃y ctrl(X , y)

ctrl(X , c(X ))

¬∀x ctrl(x ,Y )

¬ctrl(d(Y ),Y )

∗{d(Y )/X}{c()/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 32 / 39

Page 172: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Free Variable Tableaux Example

¬(∀x ∃y ctrl(x , y)→ ∃y ∀x ctrl(x , y))

∀x ∃y ctrl(x , y)

¬∃y ∀x ctrl(x , y)

∃y ctrl(X , y)

ctrl(X , c(X ))

¬∀x ctrl(x ,Y )

¬ctrl(d(Y ),Y )

∗{d(Y )/X}{c()/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 32 / 39

Page 173: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Free Variable Tableaux Example

¬(∀x ∃y ctrl(x , y)→ ∃y ∀x ctrl(x , y))

∀x ∃y ctrl(x , y)

¬∃y ∀x ctrl(x , y)

∃y ctrl(X , y)

ctrl(X , c(X ))

¬∀x ctrl(x ,Y )

¬ctrl(d(Y ),Y )

∗{d(Y )/X}{c()/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 32 / 39

Page 174: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Free Variable Tableaux Example

¬(∀x ∃y ctrl(x , y)→ ∃y ∀x ctrl(x , y))

∀x ∃y ctrl(x , y)

¬∃y ∀x ctrl(x , y)

∃y ctrl(X , y)

ctrl(X , c(X ))

¬∀x ctrl(x ,Y )

¬ctrl(d(Y ),Y )

∗{d(Y )/X}{c()/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 32 / 39

Page 175: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Free Variable Tableaux Example

¬(∀x ∃y ctrl(x , y)→ ∃y ∀x ctrl(x , y))

∀x ∃y ctrl(x , y)

¬∃y ∀x ctrl(x , y)

∃y ctrl(X , y)

ctrl(X , c(X ))

¬∀x ctrl(x ,Y )

¬ctrl(d(Y ),Y )

∗{d(Y )/X}{c()/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 32 / 39

Page 176: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Free Variable Tableaux Example

¬(∀x ∃y ctrl(x , y)→ ∃y ∀x ctrl(x , y))

∀x ∃y ctrl(x , y)

¬∃y ∀x ctrl(x , y)

∃y ctrl(X , y)

ctrl(X , c(X ))

¬∀x ctrl(x ,Y )

¬ctrl(d(Y ),Y )

∗{d(Y )/X}{c(X )/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 32 / 39

Page 177: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Free Variable Tableaux Example

¬(∀x ∃y ctrl(x , y)→ ∃y ∀x ctrl(x , y))

∀x ∃y ctrl(x , y)

¬∃y ∀x ctrl(x , y)

∃y ctrl(X , y)

ctrl(X , c(X ))

¬∀x ctrl(x ,Y )

¬ctrl(d(Y ),Y )

∗{d(Y )/X}{c(d(Y ))/Y }

Andre Platzer (CMU) 15-819/04: Tableau Proving 32 / 39

Page 178: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Free Variable Tableaux Example

¬(∀x ∃y ctrl(x , y)→ ∃y ∀x ctrl(x , y))

∀x ∃y ctrl(x , y)

¬∃y ∀x ctrl(x , y)

∃y ctrl(X , y)

ctrl(X , c(X ))

¬∀x ctrl(x ,Y )

¬ctrl(d(Y ),Y )

not unifiable!

Andre Platzer (CMU) 15-819/04: Tableau Proving 32 / 39

Page 179: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Soundness of FOL Tableaux

Theorem (Soundness)

All provable (closed) FOL formulas F are valid:

`tabFOL F ⇒ � F

Andre Platzer (CMU) 15-819/04: Tableau Proving 33 / 39

Page 180: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Soundness of FOL Tableaux

Theorem (Soundness)

All provable (closed) FOL formulas F are valid:

`tabFOL F ⇒ � F

Definition

An interpretation I is a model of tableau T iff for each assignment β thereis a branch on which I , β satisfies all formulas.

Andre Platzer (CMU) 15-819/04: Tableau Proving 33 / 39

Page 181: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Soundness of FOL Tableaux

Theorem (Soundness)

All provable (closed) FOL formulas F are valid:

`tabFOL F ⇒ � F

Proof.

Contrapositively, assume 6� F , then

¬F has a model

Any tableau for F has a model: A tableau extending a tableau with amodel, has a model too. Details

There is no closed tableau for F (closed tableaux have no models).

Andre Platzer (CMU) 15-819/04: Tableau Proving 33 / 39

Page 182: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Soundness of FOL Tableaux

Theorem (Soundness)

All provable (closed) FOL formulas F are valid:

`tabFOL F ⇒ � F

Proof.

Contrapositively, assume 6� F , then

¬F has a model

Any tableau for F has a model: A tableau extending a tableau with amodel, has a model too. Details

There is no closed tableau for F (closed tableaux have no models).

Andre Platzer (CMU) 15-819/04: Tableau Proving 33 / 39

Page 183: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Soundness of FOL Tableaux

Theorem (Soundness)

All provable (closed) FOL formulas F are valid:

`tabFOL F ⇒ � F

Proof.

Contrapositively, assume 6� F , then

¬F has a model

Any tableau for F has a model: A tableau extending a tableau with amodel, has a model too. Details

There is no closed tableau for F (closed tableaux have no models).

Andre Platzer (CMU) 15-819/04: Tableau Proving 33 / 39

Page 184: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Soundness of FOL Tableaux

Theorem (Soundness)

All provable (closed) FOL formulas F are valid:

`tabFOL F ⇒ � F

Proof.

Contrapositively, assume 6� F , then

¬F has a model

Any tableau for F has a model: A tableau extending a tableau with amodel, has a model too. Details

There is no closed tableau for F (closed tableaux have no models).

Andre Platzer (CMU) 15-819/04: Tableau Proving 33 / 39

Page 185: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Soundness of FOL Tableaux

Theorem (Soundness)

All provable (closed) FOL formulas F are valid:

`tabFOL F ⇒ � F

Proof.

Contrapositively, assume 6� F , then

¬F has a model

Any tableau for F has a model: A tableau extending a tableau with amodel, has a model too. Details

There is no closed tableau for F (closed tableaux have no models).

Andre Platzer (CMU) 15-819/04: Tableau Proving 33 / 39

Page 186: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Extensions of Tableaux with a Model have a Model

γ∗-extension

∀x A(x)

π

T

A(X )

T2

I model of T ⇒ I model of T2:

Let β be such that I , β satisfies allformulas on π (for other branchesthere is nothing to show).

Now I , β |= ∀x A(x) impliesI , β |= A(X ).

Andre Platzer (CMU) 15-819/04: Tableau Proving 34 / 39

Page 187: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Extensions of Tableaux with a Model have a Model

γ∗-extension

∀x A(x)

π

T

A(X )

T2

I model of T ⇒ I model of T2:

Let β be such that I , β satisfies allformulas on π (for other branchesthere is nothing to show).

Now I , β |= ∀x A(x) impliesI , β |= A(X ).

Andre Platzer (CMU) 15-819/04: Tableau Proving 34 / 39

Page 188: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Extensions of Tableaux with a Model have a Model

γ∗-extension

∀x A(x)

π

T

A(X )

T2

I model of T ⇒ I model of T2:

Let β be such that I , β satisfies allformulas on π (for other branchesthere is nothing to show).

Now I , β |= ∀x A(x) impliesI , β |= A(X ).

Andre Platzer (CMU) 15-819/04: Tableau Proving 34 / 39

Page 189: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Extensions of Tableaux with a Model have a Model

δ-extension

∃x A(x)

π

T

A(s(X1, . . . ,Xn))

T2

I model of T ⇒ there is a model I ′

of T2 that only differs in theinterpretation of new symbol s:

I ′(s)(d1, . . . , dn) :={d if I , β |= ∃x A(x) for witness d

e if I , β 6|= ∃x A(x), arbitrary e

for β(X1) = d1, . . . , β(Xn) = dn,which are all free variables.

Let β be such that I , β satisfies allformulas on π.

Now I , β |= ∃x A(x) impliesI ′, β |= A(s(X1, . . . ,Xn)).

s new, thus I ′, β satisfies π formulas

Andre Platzer (CMU) 15-819/04: Tableau Proving 35 / 39

Page 190: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Extensions of Tableaux with a Model have a Model

δ-extension

∃x A(x)

π

T

A(s(X1, . . . ,Xn))

T2

I model of T ⇒ there is a model I ′

of T2 that only differs in theinterpretation of new symbol s:

I ′(s)(d1, . . . , dn) :={d if I , β |= ∃x A(x) for witness d

e if I , β 6|= ∃x A(x), arbitrary e

for β(X1) = d1, . . . , β(Xn) = dn,which are all free variables.

Let β be such that I , β satisfies allformulas on π.

Now I , β |= ∃x A(x) impliesI ′, β |= A(s(X1, . . . ,Xn)).

s new, thus I ′, β satisfies π formulas

Andre Platzer (CMU) 15-819/04: Tableau Proving 35 / 39

Page 191: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Extensions of Tableaux with a Model have a Model

δ-extension

∃x A(x)

π

T

A(s(X1, . . . ,Xn))

T2

I model of T ⇒ there is a model I ′

of T2 that only differs in theinterpretation of new symbol s:

I ′(s)(d1, . . . , dn) :={d if I , β |= ∃x A(x) for witness d

e if I , β 6|= ∃x A(x), arbitrary e

for β(X1) = d1, . . . , β(Xn) = dn,which are all free variables.

Let β be such that I , β satisfies allformulas on π.

Now I , β |= ∃x A(x) impliesI ′, β |= A(s(X1, . . . ,Xn)).

s new, thus I ′, β satisfies π formulas

Andre Platzer (CMU) 15-819/04: Tableau Proving 35 / 39

Page 192: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Extensions of Tableaux with a Model have a Model

δ-extension

∃x A(x)

π

T

A(s(X1, . . . ,Xn))

T2

I model of T ⇒ there is a model I ′

of T2 that only differs in theinterpretation of new symbol s:

I ′(s)(d1, . . . , dn) :={d if I , β |= ∃x A(x) for witness d

e if I , β 6|= ∃x A(x), arbitrary e

for β(X1) = d1, . . . , β(Xn) = dn,which are all free variables.

Let β be such that I , β satisfies allformulas on π.

Now I , β |= ∃x A(x) impliesI ′, β |= A(s(X1, . . . ,Xn)).

s new, thus I ′, β satisfies π formulas

Andre Platzer (CMU) 15-819/04: Tableau Proving 35 / 39

Page 193: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Extensions of Tableaux with a Model have a Model

δ-extension

∃x A(x)

π

T

A(s(X1, . . . ,Xn))

T2

I model of T ⇒ there is a model I ′

of T2 that only differs in theinterpretation of new symbol s:

I ′(s)(d1, . . . , dn) :={d if I , β |= ∃x A(x) for witness d

e if I , β 6|= ∃x A(x), arbitrary e

for β(X1) = d1, . . . , β(Xn) = dn,which are all free variables.

Let β be such that I , β satisfies allformulas on π.

Now I , β |= ∃x A(x) impliesI ′, β |= A(s(X1, . . . ,Xn)).

s new, thus I ′, β satisfies π formulas

Andre Platzer (CMU) 15-819/04: Tableau Proving 35 / 39

Page 194: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Closure of Tableaux with a Model have a Model

path closure

ψ(s1, . . . , sn)

¬φ(t1, . . . , tn)

∗σ

I model of T ⇒ I model of T2:

Let β be any assignment.

By substitution lemma we have for allformulas G :

I , σ∗β |= G iff I , β |= σG

with σ∗β(x) = [[σx ]]I ,βBy premise, for σ∗β there is a path πsatisfied by I , σ∗β in T .

Thus I , β satisfies σπ in T2.

σπ belongs to T2, becauseI , β |= σ(ψ(s1, . . . , sn)) contradictsI , β |= σ(¬φ(t1, . . . , tn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 36 / 39

Page 195: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Closure of Tableaux with a Model have a Model

path closure

ψ(s1, . . . , sn)

¬φ(t1, . . . , tn)

∗σ

I model of T ⇒ I model of T2:

Let β be any assignment.

By substitution lemma we have for allformulas G :

I , σ∗β |= G iff I , β |= σG

with σ∗β(x) = [[σx ]]I ,βBy premise, for σ∗β there is a path πsatisfied by I , σ∗β in T .

Thus I , β satisfies σπ in T2.

σπ belongs to T2, becauseI , β |= σ(ψ(s1, . . . , sn)) contradictsI , β |= σ(¬φ(t1, . . . , tn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 36 / 39

Page 196: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Closure of Tableaux with a Model have a Model

path closure

ψ(s1, . . . , sn)

¬φ(t1, . . . , tn)

∗σ

I model of T ⇒ I model of T2:

Let β be any assignment.

By substitution lemma we have for allformulas G :

I , σ∗β |= G iff I , β |= σG

with σ∗β(x) = [[σx ]]I ,β

By premise, for σ∗β there is a path πsatisfied by I , σ∗β in T .

Thus I , β satisfies σπ in T2.

σπ belongs to T2, becauseI , β |= σ(ψ(s1, . . . , sn)) contradictsI , β |= σ(¬φ(t1, . . . , tn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 36 / 39

Page 197: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Closure of Tableaux with a Model have a Model

path closure

ψ(s1, . . . , sn)

¬φ(t1, . . . , tn)

∗σ

I model of T ⇒ I model of T2:

Let β be any assignment.

By substitution lemma we have for allformulas G :

I , σ∗β |= G iff I , β |= σG

with σ∗β(x) = [[σx ]]I ,βBy premise, for σ∗β there is a path πsatisfied by I , σ∗β in T .

Thus I , β satisfies σπ in T2.

σπ belongs to T2, becauseI , β |= σ(ψ(s1, . . . , sn)) contradictsI , β |= σ(¬φ(t1, . . . , tn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 36 / 39

Page 198: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Closure of Tableaux with a Model have a Model

path closure

ψ(s1, . . . , sn)

¬φ(t1, . . . , tn)

∗σ

I model of T ⇒ I model of T2:

Let β be any assignment.

By substitution lemma we have for allformulas G :

I , σ∗β |= G iff I , β |= σG

with σ∗β(x) = [[σx ]]I ,βBy premise, for σ∗β there is a path πsatisfied by I , σ∗β in T .

Thus I , β satisfies σπ in T2.

σπ belongs to T2, becauseI , β |= σ(ψ(s1, . . . , sn)) contradictsI , β |= σ(¬φ(t1, . . . , tn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 36 / 39

Page 199: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Closure of Tableaux with a Model have a Model

path closure

ψ(s1, . . . , sn)

¬φ(t1, . . . , tn)

∗σ

I model of T ⇒ I model of T2:

Let β be any assignment.

By substitution lemma we have for allformulas G :

I , σ∗β |= G iff I , β |= σG

with σ∗β(x) = [[σx ]]I ,βBy premise, for σ∗β there is a path πsatisfied by I , σ∗β in T .

Thus I , β satisfies σπ in T2.

σπ belongs to T2, becauseI , β |= σ(ψ(s1, . . . , sn)) contradictsI , β |= σ(¬φ(t1, . . . , tn))

Andre Platzer (CMU) 15-819/04: Tableau Proving 36 / 39

Page 200: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Repetitive γ∗ Tableau Expansions

¬

(safe(0) ∧ ∀x (safe(x)→ safe(n(x)))→ safe(n(n(0)))

)safe(0)

∀x (safe(x)→ safe(n(x)))

¬safe(n(n(0)))

safe(X )→ safe(n(X ))

¬safe(X )

∗{0/X}

safe(n(X ))

safe(Y )→ safe(n(Y ))

¬safe(Y )

∗{n(0)/Y }safe(n(Y

n(0)Y ))

∗{n(0)/Y }Rules

Andre Platzer (CMU) 15-819/04: Tableau Proving 37 / 39

Page 201: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Repetitive γ∗ Tableau Expansions

¬(safe(0) ∧ ∀x (safe(x)→ safe(n(x)))→ safe(n(n(0)))

)safe(0)

∀x (safe(x)→ safe(n(x)))

¬safe(n(n(0)))

safe(X )→ safe(n(X ))

¬safe(X )

∗{0/X}

safe(n(X ))

safe(Y )→ safe(n(Y ))

¬safe(Y )

∗{n(0)/Y }safe(n(Y

n(0)Y ))

∗{n(0)/Y }Rules

Andre Platzer (CMU) 15-819/04: Tableau Proving 37 / 39

Page 202: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Repetitive γ∗ Tableau Expansions

¬(safe(0) ∧ ∀x (safe(x)→ safe(n(x)))→ safe(n(n(0)))

)safe(0)

∀x (safe(x)→ safe(n(x)))

¬safe(n(n(0)))

safe(X )→ safe(n(X ))

¬safe(X )

∗{0/X}

safe(n(X ))

safe(Y )→ safe(n(Y ))

¬safe(Y )

∗{n(0)/Y }safe(n(Y

n(0)Y ))

∗{n(0)/Y }Rules

Andre Platzer (CMU) 15-819/04: Tableau Proving 37 / 39

Page 203: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Repetitive γ∗ Tableau Expansions

¬(safe(0) ∧ ∀x (safe(x)→ safe(n(x)))→ safe(n(n(0)))

)safe(0)

∀x (safe(x)→ safe(n(x)))

¬safe(n(n(0)))

safe(X )→ safe(n(X ))

¬safe(X )

∗{0/X}

safe(n(X ))

safe(Y )→ safe(n(Y ))

¬safe(Y )

∗{n(0)/Y }safe(n(Y

n(0)Y ))

∗{n(0)/Y }Rules

Andre Platzer (CMU) 15-819/04: Tableau Proving 37 / 39

Page 204: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Repetitive γ∗ Tableau Expansions

¬(safe(0) ∧ ∀x (safe(x)→ safe(n(x)))→ safe(n(n(0)))

)safe(0)

∀x (safe(x)→ safe(n(x)))

¬safe(n(n(0)))

safe(X )→ safe(n(X ))

¬safe(X )

∗{0/X}

safe(n(X ))

safe(Y )→ safe(n(Y ))

¬safe(Y )

∗{n(0)/Y }safe(n(Y

n(0)Y ))

∗{n(0)/Y }Rules

Andre Platzer (CMU) 15-819/04: Tableau Proving 37 / 39

Page 205: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Repetitive γ∗ Tableau Expansions

¬(safe(0) ∧ ∀x (safe(x)→ safe(n(x)))→ safe(n(n(0)))

)safe(0)

∀x (safe(x)→ safe(n(x)))

¬safe(n(n(0)))

safe(X )→ safe(n(X ))

¬safe(X )

∗{0/X}

safe(n(X ))

safe(Y )→ safe(n(Y ))

¬safe(Y )

∗{n(0)/Y }safe(n(Y

n(0)Y ))

∗{n(0)/Y }Rules

Andre Platzer (CMU) 15-819/04: Tableau Proving 37 / 39

Page 206: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Repetitive γ∗ Tableau Expansions

¬(safe(0) ∧ ∀x (safe(x)→ safe(n(x)))→ safe(n(n(0)))

)safe(0)

∀x (safe(x)→ safe(n(x)))

¬safe(n(n(0)))

safe(X )→ safe(n(X ))

¬safe(X )

∗{0/X}

safe(n(X ))

safe(Y )→ safe(n(Y ))

¬safe(Y )

∗{n(0)/Y }safe(n(Y

n(0)Y ))

∗{n(0)/Y }Rules

Andre Platzer (CMU) 15-819/04: Tableau Proving 37 / 39

Page 207: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Repetitive γ∗ Tableau Expansions

¬(safe(0) ∧ ∀x (safe(x)→ safe(n(x)))→ safe(n(n(0)))

)safe(0)

∀x (safe(x)→ safe(n(x)))

¬safe(n(n(0)))

safe(X )→ safe(n(X ))

¬safe(X )

∗{0/X}

safe(n(X 0X ))

safe(Y )→ safe(n(Y ))

¬safe(Y )

∗{n(0)/Y }safe(n(Y

n(0)Y ))

∗{n(0)/Y }Rules

Andre Platzer (CMU) 15-819/04: Tableau Proving 37 / 39

Page 208: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Repetitive γ∗ Tableau Expansions

¬(safe(0) ∧ ∀x (safe(x)→ safe(n(x)))→ safe(n(n(0)))

)safe(0)

∀x (safe(x)→ safe(n(x)))

¬safe(n(n(0)))

safe(X )→ safe(n(X ))

¬safe(X )

∗{0/X}

safe(n(X 0X ))

safe(Y )→ safe(n(Y ))

¬safe(Y )

∗{n(0)/Y }safe(n(Y

n(0)Y ))

∗{n(0)/Y }Rules

Andre Platzer (CMU) 15-819/04: Tableau Proving 37 / 39

Page 209: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Repetitive γ∗ Tableau Expansions

¬(safe(0) ∧ ∀x (safe(x)→ safe(n(x)))→ safe(n(n(0)))

)safe(0)

∀x (safe(x)→ safe(n(x)))

¬safe(n(n(0)))

safe(X )→ safe(n(X ))

¬safe(X )

∗{0/X}

safe(n(X 0X ))

safe(Y )→ safe(n(Y ))

¬safe(Y )

∗{n(0)/Y }safe(n(Y

n(0)Y ))

∗{n(0)/Y }Rules

Andre Platzer (CMU) 15-819/04: Tableau Proving 37 / 39

Page 210: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Repetitive γ∗ Tableau Expansions

Can we limit the number of γ applications needed in proofs?

NO!Can we prove everything at all?

Andre Platzer (CMU) 15-819/04: Tableau Proving 38 / 39

Page 211: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Repetitive γ∗ Tableau Expansions

Can we limit the number of γ applications needed in proofs?NO!

Can we prove everything at all?

Andre Platzer (CMU) 15-819/04: Tableau Proving 38 / 39

Page 212: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Repetitive γ∗ Tableau Expansions

Can we limit the number of γ applications needed in proofs?NO!

Can we prove everything at all?

Andre Platzer (CMU) 15-819/04: Tableau Proving 38 / 39

Page 213: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

Completeness of FOL Tableaux

Theorem (Completeness)

All valid FOL formulas F are provable:

� F ⇒ `tabFOL F

Andre Platzer (CMU) 15-819/04: Tableau Proving 39 / 39

Page 214: 15-819/18-879: Hybrid Systems Analysis & Theorem Provingaplatzer/course/hsatp/04... · 2020. 6. 16. · Andr e Platzer (CMU) 15-819/04: Tableau Proving 2 / 39. Deciding/Analyzing

M. D’Agostino, D. Gabbay, R. Hahnle, and J. Posegga, editors.Handbook of Tableau Methods (in 3 volumes).Kluwer, 1999.

M. Fitting.First-Order Logic and Automated Theorem Proving.Springer, New York, 2nd edition, 1996.

J. A. Robinson and A. Voronkov, editors.Handbook of Automated Reasoning (in 2 volumes).Elsevier and MIT Press, 2001.

R. M. Smullyan.First-Order Logic.Dover, 1995.

Andre Platzer (CMU) 15-819/04: Tableau Proving 39 / 39