A Proof from 1988 that PDL has Interpolation? (1) EDV-Beratung - - PowerPoint PPT Presentation

β–Ά
a proof from 1988 that pdl has interpolation
SMART_READER_LITE
LIVE PREVIEW

A Proof from 1988 that PDL has Interpolation? (1) EDV-Beratung - - PowerPoint PPT Presentation

A Proof from 1988 that PDL has Interpolation? (1) EDV-Beratung Manfred Borzechowski, Berlin, Germany (2) University of Groningen, Groningen, The Netherlands Advances in Modal Logic 2020 2020-08-26 15:00 1 Manfred Borzechowski (1) & Malvin


slide-1
SLIDE 1

A Proof from 1988 that PDL has Interpolation?

Manfred Borzechowski(1) & Malvin Gattinger(2)

(1) EDV-Beratung Manfred Borzechowski, Berlin, Germany (2) University of Groningen, Groningen, The Netherlands

Advances in Modal Logic 2020 2020-08-26 15:00

1

slide-2
SLIDE 2

Propositional Dynamic Logic (PDL)

Syntax

𝜚 ∢∢= π‘ž ∣ ¬𝜚 ∣ 𝜚 ∧ 𝜚 ∣ [𝑏]𝜚 𝑏 ∢∢= 𝐡 ∣ 𝑏; 𝑏 ∣ 𝑏 βˆͺ 𝑏 ∣ π‘βˆ— ∣ 𝜚?

Also expressible: β€œif…then…else…” and β€œwhile…do…” Example v:π‘ž w: π‘Ÿ x: π‘Ÿ

A A B B

β„³, π‘₯ ⊨ ⟨𝐡; πΆβŸ©π‘Ÿ β„³, π‘₯ ⊨ [𝐢]π‘Ÿ β„³, π‘₯ ⊨ [πΆβˆ—]π‘Ÿ β„³, π‘₯ ⊨ ⟨𝐡⟩(βŸ¨π΅βŸ©Β¬π‘Ÿ ∧ ⟨𝐢⟩[πΆβˆ—]π‘Ÿ)

2

slide-3
SLIDE 3

Propositional Dynamic Logic (PDL)

Syntax

𝜚 ∢∢= π‘ž ∣ ¬𝜚 ∣ 𝜚 ∧ 𝜚 ∣ [𝑏]𝜚 𝑏 ∢∢= 𝐡 ∣ 𝑏; 𝑏 ∣ 𝑏 βˆͺ 𝑏 ∣ π‘βˆ— ∣ 𝜚?

Also expressible: β€œif…then…else…” and β€œwhile…do…” Example v:π‘ž w: π‘Ÿ x: π‘Ÿ

A A B B

β„³, π‘₯ ⊨ ⟨𝐡; πΆβŸ©π‘Ÿ β„³, π‘₯ ⊨ [𝐢]π‘Ÿ β„³, π‘₯ ⊨ [πΆβˆ—]π‘Ÿ β„³, π‘₯ ⊨ ⟨𝐡⟩(βŸ¨π΅βŸ©Β¬π‘Ÿ ∧ ⟨𝐢⟩[πΆβˆ—]π‘Ÿ)

2

slide-4
SLIDE 4

Craig Interpolation

𝑀(𝜚) ∢= {π‘ž ∣ π‘ž occurs in 𝜚}

Definition A logic has Craig Interpolation iff for any valid

𝜚 β†’ πœ” there is an interpolant πœ„ such that:

  • 𝜚 β†’ πœ„

is valid

  • πœ„ β†’ πœ” is valid
  • 𝑀(πœ„) βŠ† 𝑀(𝜚) ∩ 𝑀(πœ”)

We then write 𝜚

πœ„

⟢ πœ”.

William Craig (1918 – 2016)

Example

(π‘ž ∧ π‘Ÿ)

π‘Ÿ

⟢ (π‘Ÿ ∨ 𝑠)

3

slide-5
SLIDE 5

Logics that (we know) have Craig Interpolation

  • Propositional Logic
  • First-Order Logic
  • Intuitionistic Logic
  • Basic and Multi-modal logic (MadarΓ‘sz 1995)
  • 𝜈-Calculus (D’Agostino and Hollenberg 2000)

What about PDL? Language of a formula := all atomic propositions and programs. Example

[(𝐡 βˆͺ 𝐢)

βˆ—](π‘ž ∧ π‘Ÿ) [πΆβˆ—]π‘Ÿ

⟢ [(𝐢; 𝐢)

βˆ—](π‘Ÿ ∨ [𝐷]𝑠)

Problem: How to find interpolants for βˆ— systematically?

4

slide-6
SLIDE 6

Logics that (we know) have Craig Interpolation

  • Propositional Logic
  • First-Order Logic
  • Intuitionistic Logic
  • Basic and Multi-modal logic (MadarΓ‘sz 1995)
  • 𝜈-Calculus (D’Agostino and Hollenberg 2000)

What about PDL? Language of a formula := all atomic propositions and programs. Example

[(𝐡 βˆͺ 𝐢)

βˆ—](π‘ž ∧ π‘Ÿ) [πΆβˆ—]π‘Ÿ

⟢ [(𝐢; 𝐢)

βˆ—](π‘Ÿ ∨ [𝐷]𝑠)

Problem: How to find interpolants for βˆ— systematically?

4

slide-7
SLIDE 7

History

  • Daniel Leivant: Proof theoretic methodology for propositional dynamic
  • logic. Conference paper in LNCS, 1981.
  • Manfred Borzechowski: Tableau–KalkΓΌl fΓΌr PDL und Interpolation.

Diploma thesis, FU Berlin, 1988.

  • Tomasz Kowalski: PDL has interpolation.

Journal of Symbolic Logic, 2002. Revoked in 2004.

  • Marcus Kracht: Chapter The open question

in Tools and Techniques in Modal Logic, 1999.

5

slide-8
SLIDE 8

History

  • Daniel Leivant: Proof theoretic methodology for propositional dynamic
  • logic. Conference paper in LNCS, 1981.
  • Manfred Borzechowski: Tableau–KalkΓΌl fΓΌr PDL und Interpolation.

Diploma thesis, FU Berlin, 1988.

  • Tomasz Kowalski: PDL has interpolation.

Journal of Symbolic Logic, 2002. Revoked in 2004.

  • Marcus Kracht: Chapter The open question

in Tools and Techniques in Modal Logic, 1999.

5

slide-9
SLIDE 9

History

  • Daniel Leivant: Proof theoretic methodology for propositional dynamic
  • logic. Conference paper in LNCS, 1981.
  • Manfred Borzechowski: Tableau–KalkΓΌl fΓΌr PDL und Interpolation.

Diploma thesis, FU Berlin, 1988.

  • Tomasz Kowalski: PDL has interpolation.

Journal of Symbolic Logic, 2002. Revoked in 2004.

  • Marcus Kracht: Chapter The open question

in Tools and Techniques in Modal Logic, 1999.

5

slide-10
SLIDE 10

Borzechowski 1988: Why look at it now?

  • It seems it was never really published.
  • We now make an English translation available.
  • Kracht (1999): not β€œpossible to verify the argument”

6

slide-11
SLIDE 11

Outline of the proof attempt

  • 1. Define a tableaux system.
  • 2. Show soundness and completeness.
  • 3. Define interpolants for each node β€œbottom-up”.

Problems caused by βˆ—:

  • How to ensure finite tableaux?
  • How to define interpolants for βˆ— steps?

7

slide-12
SLIDE 12

Tableaux Rules: Part 1/2

classical rules:

π‘Œ; ¬¬𝑄 (Β¬) π‘Œ; 𝑄 π‘Œ; 𝑄 ∧ 𝑅

(∧)

π‘Œ; 𝑄; 𝑅 π‘Œ; Β¬(𝑄 ∧ 𝑅) (¬∧) π‘Œ; ¬𝑄 ∣ π‘Œ; ¬𝑅

local rules:

π‘Œ; Β¬[𝑏 βˆͺ 𝑐]𝑄 (Β¬βˆͺ) π‘Œ; Β¬[𝑏]𝑄 ∣ π‘Œ; Β¬[𝑐]𝑄 π‘Œ; Β¬[𝑅?]𝑄 (Β¬?) π‘Œ; 𝑅; ¬𝑄 π‘Œ; Β¬[𝑏; 𝑐]𝑄 (Β¬; ) π‘Œ; Β¬[𝑏][𝑐]𝑄 π‘Œ; [𝑏 βˆͺ 𝑐]𝑄 (βˆͺ) π‘Œ; [𝑏]𝑄; [𝑐]𝑄 π‘Œ; [𝑅?]𝑄 (?) 𝑦; ¬𝑅 ∣ π‘Œ; 𝑄 π‘Œ; [𝑏; 𝑐]𝑄 (; ) π‘Œ; [𝑏][𝑐]𝑄 π‘Œ; Β¬[π‘βˆ—]𝑄 (Β¬π‘œ) π‘Œ; ¬𝑄 ∣ π‘Œ; Β¬[𝑏][𝑏(π‘œ)]𝑄 π‘Œ; [π‘βˆ—]𝑄 (π‘œ) π‘Œ; 𝑄; [𝑏][𝑏(π‘œ)]𝑄

8

slide-13
SLIDE 13

Tableaux Rules: Part 2/2

PDL rules:

π‘Œ; Β¬[𝑏0] … [π‘π‘œ]𝑄 (𝑁+) π‘Œ free π‘Œ; Β¬[𝑏0] … [π‘π‘œ]𝑄 𝑄

the loading rule,

π‘Œ; Β¬[𝑏]𝑄 𝑆 (π‘βˆ’) π‘Œ; Β¬[𝑏]𝑄

the liberation rule,

π‘Œ; Β¬[𝐡]𝑄 𝑆 (𝐡𝑒) π‘Œπ΅; ¬𝑄 𝑆\𝑄

the critical rule. marked rules:

π‘Œ; Β¬[𝑏 βˆͺ 𝑐]𝑄 𝑆 (Β¬βˆͺ) π‘Œ; Β¬[𝑏]𝑄 𝑆 ∣ π‘Œ; Β¬[𝑐]𝑄 𝑆 π‘Œ; Β¬[𝑏; 𝑐]𝑄 𝑆 (Β¬; ) π‘Œ; Β¬[𝑏][𝑐]𝑄 𝑆 π‘Œ; Β¬[π‘βˆ—]𝑄 𝑆 (Β¬π‘œ) π‘Œ; ¬𝑄 𝑆\𝑄 ∣ π‘Œ; Β¬[𝑏][𝑏(π‘œ)]𝑄 𝑆 π‘Œ; Β¬[𝑅?]𝑄 𝑆 (Β¬?) π‘Œ; 𝑅; ¬𝑄 𝑆\𝑄

where (…)

𝑆\𝑄 indicates that 𝑆 is removed iff 𝑆 = 𝑄 . 9

slide-14
SLIDE 14

Tableaux Rules: Extra Conditions

  • 1. On reaching π‘Œ; Β¬[𝐡]𝑄 or π‘Œ; [𝐡]𝑄 , change (π‘œ) back to βˆ— in 𝑄 .
  • 2. Instead of π‘Œ; [𝑏(π‘œ)]𝑄 we always obtain π‘Œ.
  • 3. A rule must be applied to an π‘œ-formula whenever it is possible.
  • 4. No rule may be applied to a Β¬[𝑏(π‘œ)]-node.
  • 5. To a node obtained using (𝑁+) we may not apply (π‘βˆ’).
  • 6. If a normal node 𝑒 has a predecessor 𝑑 with the same formulas and the

path 𝑑…𝑒 uses (𝐡𝑒) and is loaded if 𝑑 is loaded, then 𝑒 is an end node.

  • 7. Every loaded node that is not an end note by 6 has a successor.

10

slide-15
SLIDE 15

Tableaux Rules: Extra Conditions

  • 1. On reaching π‘Œ; Β¬[𝐡]𝑄 or π‘Œ; [𝐡]𝑄 , change (π‘œ) back to βˆ— in 𝑄 .
  • 2. Instead of π‘Œ; [𝑏(π‘œ)]𝑄 we always obtain π‘Œ.
  • 3. A rule must be applied to an π‘œ-formula whenever it is possible.
  • 4. No rule may be applied to a Β¬[𝑏(π‘œ)]-node.
  • 5. To a node obtained using (𝑁+) we may not apply (π‘βˆ’).
  • 6. If a normal node 𝑒 has a predecessor 𝑑 with the same formulas and the

path 𝑑…𝑒 uses (𝐡𝑒) and is loaded if 𝑑 is loaded, then 𝑒 is an end node.

  • 7. Every loaded node that is not an end note by 6 has a successor.

10

slide-16
SLIDE 16

A Full Proof Example

Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿ ; [π΅βˆ—]π‘Ÿ

Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; [π΅βˆ—]π‘Ÿ

(𝑁+) Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(π‘œ) Β¬π‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ (Β¬π‘œ)1.

x

Β¬[(𝐡 βˆͺ π‘ž?)][(𝐡 βˆͺ π‘ž?)

(π‘œ)]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(Β¬π‘œ) Β¬[𝐡][(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(Β¬βˆͺ) Β¬[π‘ž?][(𝐡 βˆͺ π‘ž?)

(π‘œ)]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿπ‘Ÿ

(Β¬βˆͺ) Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; [π΅βˆ—]

(𝐡𝑒)

x

π‘ž ; Β¬[(𝐡 βˆͺ π‘ž?)

(π‘œ)]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(Β¬?)

x

11

slide-17
SLIDE 17

A Full Proof Example

Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿ ; [π΅βˆ—]π‘Ÿ

Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; [π΅βˆ—]π‘Ÿ

(𝑁+) Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(π‘œ) Β¬π‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ (Β¬π‘œ)1.

x

Β¬[(𝐡 βˆͺ π‘ž?)][(𝐡 βˆͺ π‘ž?)

(π‘œ)]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(Β¬π‘œ) Β¬[𝐡][(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(Β¬βˆͺ) Β¬[π‘ž?][(𝐡 βˆͺ π‘ž?)

(π‘œ)]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿπ‘Ÿ

(Β¬βˆͺ) Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; [π΅βˆ—]

(𝐡𝑒)

x

π‘ž ; Β¬[(𝐡 βˆͺ π‘ž?)

(π‘œ)]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(Β¬?)

x closed

11

slide-18
SLIDE 18

A Full Proof Example

Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿ ; [π΅βˆ—]π‘Ÿ

Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; [π΅βˆ—]π‘Ÿ

(𝑁+) Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(π‘œ) Β¬π‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ (Β¬π‘œ)1.

x

Β¬[(𝐡 βˆͺ π‘ž?)][(𝐡 βˆͺ π‘ž?)

(π‘œ)]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(Β¬π‘œ) Β¬[𝐡][(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(Β¬βˆͺ) Β¬[π‘ž?][(𝐡 βˆͺ π‘ž?)

(π‘œ)]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿπ‘Ÿ

(Β¬βˆͺ) Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; [π΅βˆ—]

(𝐡𝑒)

x

π‘ž ; Β¬[(𝐡 βˆͺ π‘ž?)

(π‘œ)]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(Β¬?)

x closed by condition 6

11

slide-19
SLIDE 19

A Full Proof Example

Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿ ; [π΅βˆ—]π‘Ÿ

Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; [π΅βˆ—]π‘Ÿ

(𝑁+) Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(π‘œ) Β¬π‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ (Β¬π‘œ)1.

x

Β¬[(𝐡 βˆͺ π‘ž?)][(𝐡 βˆͺ π‘ž?)

(π‘œ)]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(Β¬π‘œ) Β¬[𝐡][(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(Β¬βˆͺ) Β¬[π‘ž?][(𝐡 βˆͺ π‘ž?)

(π‘œ)]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿπ‘Ÿ

(Β¬βˆͺ) Β¬[(𝐡 βˆͺ π‘ž?)

βˆ—]π‘Ÿπ‘Ÿ ; [π΅βˆ—]

(𝐡𝑒)

x

π‘ž ; Β¬[(𝐡 βˆͺ π‘ž?)

(π‘œ)]π‘Ÿπ‘Ÿ ; π‘Ÿ ; [𝐡][π΅βˆ—]π‘Ÿ

(Β¬?)

x closed by condition 4

11

slide-20
SLIDE 20

Tableaux Interpolation

Definition Write π‘Œ1/π‘Œ2 for a partitioned node π‘Œ = π‘Œ1 βˆͺ π‘Œ2 with π‘Œ1 ∩ π‘Œ2 = βˆ…. A formula πœ„ is an interpolant for π‘Œ1 / π‘Œ2 iff

  • πœ„ is in 𝑀(π‘Œ1) ∩ 𝑀(π‘Œ2)
  • π‘Œ1 βˆͺ {Β¬πœ„} is inconsistent
  • {πœ„} βˆͺ π‘Œ2 is inconsistent

Corollary A formula πœ„ is an interpolant for {𝜚}/{Β¬πœ”} iff 𝜚

πœ„

⟢ πœ”.

Idea: Define interpolants depending on the rule application!

(Similar to Maehara’s method for sequent calculi used by Leivant)

12

slide-21
SLIDE 21

Tableaux Interpolation

Definition Write π‘Œ1/π‘Œ2 for a partitioned node π‘Œ = π‘Œ1 βˆͺ π‘Œ2 with π‘Œ1 ∩ π‘Œ2 = βˆ…. A formula πœ„ is an interpolant for π‘Œ1 / π‘Œ2 iff

  • πœ„ is in 𝑀(π‘Œ1) ∩ 𝑀(π‘Œ2)
  • π‘Œ1 βˆͺ {Β¬πœ„} is inconsistent
  • {πœ„} βˆͺ π‘Œ2 is inconsistent

Corollary A formula πœ„ is an interpolant for {𝜚}/{Β¬πœ”} iff 𝜚

πœ„

⟢ πœ”.

Idea: Define interpolants depending on the rule application!

(Similar to Maehara’s method for sequent calculi used by Leivant)

12

slide-22
SLIDE 22

Tableaux Interpolation

Definition Write π‘Œ1/π‘Œ2 for a partitioned node π‘Œ = π‘Œ1 βˆͺ π‘Œ2 with π‘Œ1 ∩ π‘Œ2 = βˆ…. A formula πœ„ is an interpolant for π‘Œ1 / π‘Œ2 iff

  • πœ„ is in 𝑀(π‘Œ1) ∩ 𝑀(π‘Œ2)
  • π‘Œ1 βˆͺ {Β¬πœ„} is inconsistent
  • {πœ„} βˆͺ π‘Œ2 is inconsistent

Corollary A formula πœ„ is an interpolant for {𝜚}/{Β¬πœ”} iff 𝜚

πœ„

⟢ πœ”.

Idea: Define interpolants depending on the rule application!

(Similar to Maehara’s method for sequent calculi used by Leivant)

12

slide-23
SLIDE 23

Tableaux Interpolation: Example

Consider the (Β¬βˆͺ) rule, applied within π‘Œ2:

π‘Œ1 / π‘Œ2; Β¬[𝑏 βˆͺ 𝑐]𝑄 π‘Œ1 / π‘Œ2; Β¬[𝑏]𝑄

(Β¬βˆͺ)

π‘Œ1 / π‘Œ2; Β¬[𝑐]𝑄

(Β¬βˆͺ) Induction hypothesis provides πœ„π‘ and πœ„π‘. We define πœ„ ∢= πœ„π‘ ∧ πœ„π‘.

13

slide-24
SLIDE 24

Tableaux Interpolation: Example

Consider the (Β¬βˆͺ) rule, applied within π‘Œ2:

π‘Œ1 / π‘Œ2; Β¬[𝑏 βˆͺ 𝑐]𝑄

???

π‘Œ1 / π‘Œ2; Β¬[𝑏]𝑄

(Β¬βˆͺ)

πœ„π‘ π‘Œ1 / π‘Œ2; Β¬[𝑐]𝑄

(Β¬βˆͺ)

πœ„π‘

Induction hypothesis provides πœ„π‘ and πœ„π‘. We define πœ„ ∢= πœ„π‘ ∧ πœ„π‘.

13

slide-25
SLIDE 25

Tableaux Interpolation: Example

Consider the (Β¬βˆͺ) rule, applied within π‘Œ2:

π‘Œ1 / π‘Œ2; Β¬[𝑏 βˆͺ 𝑐]𝑄 πœ„π‘ ∧ πœ„π‘ π‘Œ1 / π‘Œ2; Β¬[𝑏]𝑄

(Β¬βˆͺ)

πœ„π‘ π‘Œ1 / π‘Œ2; Β¬[𝑐]𝑄

(Β¬βˆͺ)

πœ„π‘

Induction hypothesis provides πœ„π‘ and πœ„π‘. We define πœ„ ∢= πœ„π‘ ∧ πœ„π‘.

13

slide-26
SLIDE 26

A Full Interpolation Example

[𝐡]π‘ž ∧ [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡 βˆͺ 𝐢]π‘ž [𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡 βˆͺ 𝐢]π‘ž

(∧)

[𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡]π‘ž

(Β¬βˆͺ) x

[𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐢]π‘ž

(Β¬βˆͺ)

(π‘ž ∧ π‘Ÿ) / Β¬π‘ž

(At)

π‘ž ; π‘Ÿ / Β¬π‘ž

(∧) x

14

slide-27
SLIDE 27

A Full Interpolation Example

[𝐡]π‘ž ∧ [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡 βˆͺ 𝐢]π‘ž [𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡 βˆͺ 𝐢]π‘ž

(∧)

[𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡]π‘ž

(Β¬βˆͺ) x

[𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐢]π‘ž

(Β¬βˆͺ)

(π‘ž ∧ π‘Ÿ) / Β¬π‘ž

(At)

π‘ž ; π‘Ÿ / Β¬π‘ž

(∧) x

π‘ž

14

slide-28
SLIDE 28

A Full Interpolation Example

[𝐡]π‘ž ∧ [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡 βˆͺ 𝐢]π‘ž [𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡 βˆͺ 𝐢]π‘ž

(∧)

[𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡]π‘ž

(Β¬βˆͺ) x

[𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐢]π‘ž

(Β¬βˆͺ)

(π‘ž ∧ π‘Ÿ) / Β¬π‘ž

(At)

π‘ž ; π‘Ÿ / Β¬π‘ž

(∧) x

π‘ž π‘ž

14

slide-29
SLIDE 29

A Full Interpolation Example

[𝐡]π‘ž ∧ [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡 βˆͺ 𝐢]π‘ž [𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡 βˆͺ 𝐢]π‘ž

(∧)

[𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡]π‘ž

(Β¬βˆͺ) x

[𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐢]π‘ž

(Β¬βˆͺ)

(π‘ž ∧ π‘Ÿ) / Β¬π‘ž

(At)

π‘ž ; π‘Ÿ / Β¬π‘ž

(∧) x

π‘ž π‘ž [𝐢]π‘ž

14

slide-30
SLIDE 30

A Full Interpolation Example

[𝐡]π‘ž ∧ [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡 βˆͺ 𝐢]π‘ž [𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡 βˆͺ 𝐢]π‘ž

(∧)

[𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡]π‘ž

(Β¬βˆͺ) x

[𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐢]π‘ž

(Β¬βˆͺ)

(π‘ž ∧ π‘Ÿ) / Β¬π‘ž

(At)

π‘ž ; π‘Ÿ / Β¬π‘ž

(∧) x

π‘ž π‘ž [𝐢]π‘ž [𝐡]π‘ž

14

slide-31
SLIDE 31

A Full Interpolation Example

[𝐡]π‘ž ∧ [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡 βˆͺ 𝐢]π‘ž [𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡 βˆͺ 𝐢]π‘ž

(∧)

[𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡]π‘ž

(Β¬βˆͺ) x

[𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐢]π‘ž

(Β¬βˆͺ)

(π‘ž ∧ π‘Ÿ) / Β¬π‘ž

(At)

π‘ž ; π‘Ÿ / Β¬π‘ž

(∧) x

π‘ž π‘ž [𝐢]π‘ž [𝐡]π‘ž [𝐡]π‘ž ∧ [𝐢]π‘ž

14

slide-32
SLIDE 32

A Full Interpolation Example

[𝐡]π‘ž ∧ [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡 βˆͺ 𝐢]π‘ž [𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡 βˆͺ 𝐢]π‘ž

(∧)

[𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐡]π‘ž

(Β¬βˆͺ) x

[𝐡]π‘ž ; [𝐢](π‘ž ∧ π‘Ÿ) / Β¬[𝐢]π‘ž

(Β¬βˆͺ)

(π‘ž ∧ π‘Ÿ) / Β¬π‘ž

(At)

π‘ž ; π‘Ÿ / Β¬π‘ž

(∧) x

π‘ž π‘ž [𝐢]π‘ž [𝐡]π‘ž [𝐡]π‘ž ∧ [𝐢]π‘ž [𝐡]π‘ž ∧ [𝐢]π‘ž

14

slide-33
SLIDE 33

Conclusion

  • 1988 attempt to show Craig Interpolation for PDL, now also in English.
  • No obvious gap or problem found, so far.
  • Many details about βˆ— rules still to be checked!
  • Question: Is condition 6 actually a circular system?
  • Work in progress: A PDL prover with interpolation in Haskell.

If you are interested, please read, comment and help:

https://malv.in/2020/borzechowski-pdl

15

slide-34
SLIDE 34

Bonus Slides

slide-35
SLIDE 35

Craig Interpolation: Proof Methods

  • Syntactic
  • propositional logic: replace unwanted atoms with ⊀ or βŠ₯
  • no proof system needed
  • constructive
  • Algebraic
  • amalgamation β‰ˆ interpolation
  • not constructive
  • Proof Theoretic
  • using sequent calculi or tableaux systems
  • start with a proof of the validity 𝜚 β†’ πœ”
  • construct interpolants for each step
  • sometimes constructive

16

slide-36
SLIDE 36

Interpolation via Translation?

Wait, but we can translate PDL to the 𝜈-Calculus, right?

  • D’Agostino & Hollenberg: Logical questions concerning the 𝜈-Calculus:

Interpolation, Lyndon and ŁoΕ›-Tarski. JSL, 2000. Yes, but …

  • 0. Let 𝑒 ∢ ℒ𝑄𝐸𝑀 β†’ β„’πœˆ be the translation.
  • 1. Suppose βŠ¨π‘„πΈπ‘€ 𝜚 β†’ πœ”.
  • 2. Then we have ⊨𝜈 𝑒(𝜚) β†’ 𝑒(πœ”).
  • 3. 𝜈-Calculus has C-I, there is an interpolant π›Ώπœˆ ∈ β„’πœˆ:
  • ⊨𝜈 𝑒(𝜚) β†’ 𝛿𝑛𝑣
  • ⊨𝜈 𝛿𝑛𝑣 β†’ 𝑒(πœ”)
  • 𝑀(π›Ώπœˆ) = 𝑀(𝑒(𝜚)) ∩ 𝑀(𝑒(πœ”))
  • 4. But now we still need 𝛿 ∈ ℒ𝑄𝐸𝑀 such that 𝑒(𝛿) = π›Ώπœˆ !?!?
  • 17