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]