A1

4 downloads 885 Views 191KB Size Report
LJNS ↦− → LJ ⋆. S. , iii.) Embedding LJ ⋆. S into NuPRL. Stephan Schmitt, Christoph Kreitz: On Transforming Intuitionistic Matrix Proofs into Standard- Sequent ...
Motivation

• Background: Development of verifiably correct software. ⇒ Constructive proofs: “proof ≡ program”. ⇒ Interactive proof editors: sequent proofs • Starting point: Separation of first order parts (logic J). Separation

Prover Matrix Calculus

NuPRL

MJ

Standard

LJS

MJ 7−→ LJN S

Basic Calculus Extended Standard

Non–Standard

LJS?

LJN S LJN S 7−→ LJS?

• Task: Transformations i.) MJ 7−→ LJN S , ii.) LJN S 7−→ LJS?, iii.) Embedding LJS? into NuPRL.

Stephan Schmitt, Christoph Kreitz: On Transforming Intuitionistic Matrix Proofs into Standard-Sequent Proofs

[1]

The Calculi LJN S and LJS

• Differences: Treatment of succedents. i.) Processing rules. LJN S :

LJS :

Γ, ¬A ` A, ∆

Γ, ¬A ` A

Γ, ¬A ` ∆

¬–elim

Γ, ¬A ` C

¬–elim

ii.) Selection rules. LJN S : Γ, A ` Γ ` ¬A, ∆

LJS : ¬–intro

Γ, A ` Γ ` ¬A

¬–intro

• Standard condition: At most one succedent formula . i.) Standard calculus LJS : Γ ` C. ii.) Non–standard calculus LJN S : Γ ` ∆.

Stephan Schmitt, Christoph Kreitz: On Transforming Intuitionistic Matrix Proofs into Standard-Sequent Proofs

[2]

The Calculi LJN S and LJS

Example: Prove ¬A → (A ∨ B → B) • In LJN S :

S1

¬A, A ` A, B ¬A, B ` A, B ¬A, A ∨ B ` A, B ¬A, A ∨ B ` B ¬A ` A ∨ B → B

¬–elim →–intro

` ¬A → (A ∨ B → B)

• In LJS :

∨–elim

→–intro

S2

¬A, A ` A ¬A, A ` B

¬–elim

¬A, B ` B

¬A, A ∨ B ` B ¬A ` A ∨ B → B

∨–elim

→–intro

` ¬A → (A ∨ B → B)

→–intro

• Result: I(S1) = {|A, B|} = I(S2). ⇒ f (S1) = S2 is “structure preserving”.

Stephan Schmitt, Christoph Kreitz: On Transforming Intuitionistic Matrix Proofs into Standard-Sequent Proofs

[3]

Structure Preserving Proof Transformations

f is structure preserving wrt. S



same axioms are used in S and f (S).

Initial set I(S) ≡ axiom formulae used in S. ; Basic knowledge required in S.

f is structure preserving wrt. S



same knowledge is used: I(S) = I(f (S)).

Stephan Schmitt, Christoph Kreitz: On Transforming Intuitionistic Matrix Proofs into Standard-Sequent Proofs

[4]

Structure Preserving Proof Transformations

Example: ∀x.A(x) ∨ B(x), ∃y.A(y) → ∃z.¬A(z) ` ∃x.B(x). i.) →–elim leads in the LJN S –proof S3 to 1. ∀x.A(x) ∨ B(x), ∃y.A(y) → ∃z.¬A(z) ` ∃y.A(y), ∃x.B(x) 2. ∀x.A(x) ∨ B(x), ∃z.¬A(z) ` ∃x.B(x)

ii.) ∀–elim t leads in the LJS –proof S4 to A(t) ∨ B(t), ∀x.A(x) ∨ B(x), ∃y.A(y) → ∃z.¬A(z) ` ∃x.B(x) After finishing both proofs we have: I(S3) = {|A(a), B(a), A(a), B(a)|} I(S4) = {|A(t), A(a), B(a), B(t)|} ; No structure preserving proof transformation: LJN S 7−→ LJS

Stephan Schmitt, Christoph Kreitz: On Transforming Intuitionistic Matrix Proofs into Standard-Sequent Proofs

[5]

The Extended Calculus LJS?

Solution: Simulation of succedent sets ∆ by standard formulae ∆S : ∆ = {A1, . . . , An} =⇒ ∆S = A1 ∨ . . . ∨ An ; ∆S satisfies the standard condition.

• Processing rules require new rules in LJS? . LJN S :

LJS?:

Γ, ¬A ` A, ∆

Γ, ¬A ` A ∨ ∆S

Γ, ¬A ` ∆

¬–elim

Γ, ¬A ` ∆S

¬(∨)–elim

• Selection rules are simulated by LJS –rules. LJS?:

LJN S :

Γ, A ` Γ, A ` Γ ` ¬A, ∆

¬–intro

Γ ` ¬A

¬–intro

Γ ` ¬A ∨ ∆S

∨–intro 1

Stephan Schmitt, Christoph Kreitz: On Transforming Intuitionistic Matrix Proofs into Standard-Sequent Proofs

[6]

The Extended Calculus LJS?

1. LJS? is complete: Rules(LJS ) ⊂ Rules(LJS?). 2. LJS? is sound: Verify each new LJS?–rule using the cut. 3. LJS? satisfies the standard condition: |∆S | ≤ 1 4. There exists a structure preserving proof transformation LJN S 7−→ LJS?. The proof directly leads to the transformation algorithm. 5. Implementation: Represent LJN S –proofs in NuPRL by simulating LJS?–rules via tactics.

Stephan Schmitt, Christoph Kreitz: On Transforming Intuitionistic Matrix Proofs into Standard-Sequent Proofs

[7]

The Matrix Characterization MJ

Theorem: Characterization MJ (Wallen 1990) Formula F is J–valid iff there exists: 1. µ = hµJ , µQi and σ = hσJ , σQi (J–admissible), 2. spanning set of connections K (σ–complementary). Example: F ≡ ¬A0 ∨ B 1 → B 0 ∨ ¬A1        

     

A0 a13 B 1 a¯14



      

·

0

1

B a6

A

a¯18

¸      

Prefixes: Op(k) ∈ {∀j , →j , ¬j , atomj }, j ∈ {0, 1} →0 a0 A0 7→ a0a¯12a13 A1 7→ a0a7a¯18 B 0 7→ a0a6 B 1 7→ a0a¯14 σJ (¯a12) = a7 σJ (¯a18) = a13 σJ (¯a14) = a6

∨1 a1

¬1 a¯12

B 1 a¯14

∨0 a5

B 0 a6

A0 a13

Stephan Schmitt, Christoph Kreitz: On Transforming Intuitionistic Matrix Proofs into Standard-Sequent Proofs

¬ 0 a7

A1 a¯18

[8]

The Transformation MJ 7−→ LJN S

Given: MJ –proof M (F ) = hF, µ, σ, Ki in ∝? ← Reduction ordering Task: “Totalization” of ∝? ⇒ LJN S –proof. Example: F ≡ ¬A0 ∨ B 1 → B 0 ∨ ¬A1 →0 a 0

∨ 1 a1

¬1 a¯12

B 1 a¯14

A0 a13

∨0 a5

B 0 a6

¬ 0 a7

A1 a¯18

Idea: Traversing the positions k of the relation ∝?. • The LJN S –rule is uniquely determined by Op(k). • Split ∝? at the β–positions (ex. a1).

Stephan Schmitt, Christoph Kreitz: On Transforming Intuitionistic Matrix Proofs into Standard-Sequent Proofs

[9]

The Transformation MJ 7−→ LJN S

→0 a0

∨1 a1

→ 0 a0

∨ 0 a5

∨1 a1

¬1 a¯12

¬0 a7

A0 a13

A1 a¯18

B 1 a¯41

∨ 0 a5

B 0 a6

LJN S –proof: [a0, a5, a1, a7, a¯12, a13, a¯18, a6, a¯14]

axiom A (a13, a¯18)

¬A, A ` A

¬–elim (¯a12)

¬A, A ` ¬A ` B, ¬A

¬–intro (a7) ¬A ∨ B ` B, ¬A

¬A ∨ B ` B ∨ ¬A

B ` B, ¬A

axiom B (a6, a¯14) ∨–elim (a1)

∨–intro (a5)

` ¬A ∨ B → B ∨ ¬A

→–intro (a0)

Stephan Schmitt, Christoph Kreitz: On Transforming Intuitionistic Matrix Proofs into Standard-Sequent Proofs

[10]

The Transformation MJ 7−→ LJN S

; “More than simply traversing the reduction ordering.” Problem I: Non–permutability of LJN S –rules.

Solution: Defining wait–labels for all k ∈∝?. • Preprocessing: wait1(k) ⇒ determined by σ in ∝?. • At Runtime: wait2(k) ⇒ depends on the traversing order.

Problem II: Redundancy after the β–split at β S .

β–split (∝?, β S ) ⇐⇒ Op(β S ) ∈ {→1, ∨1, ∧0} Goal for the LJN S –proof: ∝?i does not represent any redundant formulae.

z

∝?1 }|

{

z

∝?2 }|

{

Γ1, Γ3, A ` ∆1, ∆3 Γ2, Γ3, B ` ∆2, ∆3 Γ , Γ2, Γ3, A ∨ {zB ` ∆1, ∆2, ∆3} | 1

∨–elim

∝?

Stephan Schmitt, Christoph Kreitz: On Transforming Intuitionistic Matrix Proofs into Standard-Sequent Proofs

[11]

Conclusion

Results: • The Transformation MJ 7−→ LJN S : – No additional search. – Optimized LJN S –proofs possible. • The Transformation LJN S 7−→ LJS?: – Keeping the size of the LJS?–proof small. – Easy simulation of the LJN S –rules. • An effective combination MJ 7−→ LJS?.

Future work: • Realization of an MJ –prover [Otten,Kreitz 1995], • Implementing MJ 7−→ LJN S , • Integration into the NuPRL–System.

Stephan Schmitt, Christoph Kreitz: On Transforming Intuitionistic Matrix Proofs into Standard-Sequent Proofs

[12]