From Display Calculi to Decision Procedures for Full Intuitionistic Linear Logic Ranald Clouston, Jeremy Dawson, Rajeev Gor´ e, Alwen Tiu Logic and Computation Group Research School of Computer Science The Australian National University rajeev.gore@anu.edu.au December 14, 2013 Published in Proc. 22nd EACSL Annual Conference on Computer Science Logic, Turin September 2013 as “Annotation-free sequent calculi for Full Intuitionistic Linear Logic”
Overview What is FILL? Existing sequent calculi A Display Calculus for FILL Nested Sequent Calculus for FILL Separation Decidability and Complexity Further Work
Full Intuitionistic Linear Logic LL : modal substructural logic without weakening and without contraction ⊗ , ⊕ , 1 , 0 , ⊸ , ∧ , ∨ , ⊤ , ⊥ , ! , ? Girard 1987 MALL : ⊗ , ⊕ , 1 , 0 , ⊸ , ∧ , ∨ , ⊤ , ⊥ drop exponentials MILL : ⊗ , 1 , ⊸ intuitionistic MLL : ⊗ , 1 , ⊸ , ⊕ , 0 classical (( A ⊸ 0 ) ⊸ 0 ) ⊸ A FILL : ⊗ , 1 , ⊸ , ⊕ , 0 Hyland and de Paiva 1993
Categorial Semantics for FILL ( ⊗ , 1 , ⊸ ) is a symmetric monoidal closed structure A ⊗ B ⊸ C iff A ⊸ ( B ⊸ C ) iff B ⊸ ( A ⊸ C ) ( A ⊗ 1 ) ⊸ A and A ⊸ ( A ⊗ 1 ) ( ⊕ , 0 ) is a symmetric monoidal structure ( A ⊕ B ) ⊸ ( B ⊕ A ) ( A ⊕ 0 ) ⊸ A and A ⊸ ( A ⊕ 0 ) interaction via either of weak distributivity (( A ⊗ B ) ⊕ C ) ⊸ ( A ⊗ ( B ⊕ C )) Grishin(b) (( A ⊸ B ) ⊕ C ) ⊸ ( A ⊸ ( B ⊕ C )) Collapse to (classical) MLL: if we add converse of Grishin(b) Grishin(a) ( A ⊸ ( B ⊕ C )) ⊸ (( A ⊸ B ) ⊕ C )
Proof Theory of Full Intuitionistic Linear Logic LL : substructural logic without weakening and without contraction MILL ⊗ ⊸ 1 intuitionistic cut-elimination Γ 1 ⊢ A Γ 2 ⊢ B Γ , A ⊢ B Γ 1 , Γ 2 ⊢ A ⊗ B Γ ⊢ A ⊸ B ⊗ 1 ⊕ ⊥ classical cut-elimination MLL ⊸ Γ 1 , A ⊢ B , ∆ 1 Γ 2 , A ⊢ B , ∆ 2 Γ ⊢ A , B , ∆ Γ , A ⊢ B , ∆ Γ 1 , Γ 2 ⊢ ∆ 1 , A ⊗ B , ∆ 2 Γ ⊢ A ⊕ B , ∆ Γ ⊢ A ⊸ B , ∆ FILL ⊗ ⊸ 1 ⊕ ⊥ intuitionistic cut-elimination fails Γ 1 , A ⊢ B , ∆ 1 Γ 2 , A ⊢ B , ∆ 2 Γ ⊢ A , B , ∆ Γ , A ⊢ B Γ 1 , Γ 2 ⊢ ∆ 1 , A ⊗ B , ∆ 2 Γ ⊢ A ⊕ B , ∆ Γ ⊢ A ⊸ B , ∆
Problem and a solutions via annotated derivations Remember: we need comma on the right to accommodate ⊕ Problem and existing solutions: multiple conclusions single conclusion existing solutions Γ , A ⊢ B , ∆ Γ , A ⊢ B Γ , A ⊢ B , ∆ ( † ) Γ ⊢ A ⊸ B , ∆ Γ ⊢ A ⊸ B , ∆ Γ ⊢ A ⊸ B , ∆ unsound no cut-elimination cut-elimination † : side-conditions which ensure that A is “independent” of ∆ Hyland, de Paiva 1993: type assignments to ensure that the variable typed by A not appear free in the terms typed by ∆
Further problems and solutions using annotations Γ , A ⊢ B , ∆ ( † ) Hyland and de Paiva 1993: Γ ⊢ A ⊸ B , ∆ † : side-conditions which ensure that A is “independent” of ∆ Bierman 1996: ( a ⊕ b ) ⊕ c ⊢ a , (( b ⊕ c ) ⊸ d ) ⊕ ( e ⊸ ( d ⊕ e )) has no cut-free derivation in the Hyland and de Paiva calculus Bierman, Bellin 1996: refined annotations to regain cut-elimination Br¨ auner and de Paiva 1997: annotate rules with a binary relation between antecedent formulae and succedent formulae, which effectively trace variable occurrence What do derivations look like ?
Hyland , de Paiva and Biermann ( ⊸ R ) legal as v and ( w ⊕ x ⊸ y ) ⊕ z share no free variables. v : a ⊢ v : a w : b ⊢ w : b v ⊕ w : a ⊕ b ⊢ v : a , w : b x : c ⊢ x : c ( v ⊕ w ) ⊕ x : ( a ⊕ b ) ⊕ c ⊢ v : a , w : b , x : c ( v ⊕ w ) ⊕ x : ( a ⊕ b ) ⊕ c ⊢ v : a , w ⊕ x : b ⊕ c y : d ⊢ y : d ( v ⊕ w ) ⊕ x : ( a ⊕ b ) ⊕ c , w ⊕ x ⊸ y : b ⊕ c ⊸ d ⊢ v : a , y : d z : e ⊢ z : e ( v ⊕ w ) ⊕ x : ( a ⊕ b ) ⊕ c , ( w ⊕ x ⊸ y ) ⊕ z : ( b ⊕ c ⊸ d ) ⊕ e ⊢ v : a , y : d , z : e ( v ⊕ w ) ⊕ x : ( a ⊕ b ) ⊕ c , ( w ⊕ x ⊸ y ) ⊕ z : ( b ⊕ c ⊸ d ) ⊕ e ⊢ v : a , y ⊕ z : d ⊕ e ( v ⊕ w ) ⊕ x : ( a ⊕ b ) ⊕ c ⊢ v : a , λ ( w ⊕ x ⊸ y ) ⊕ z ( b ⊕ c ⊸ d ) ⊕ e . ( y ⊕ z ) : ( b ⊕ c ⊸ d ) ⊕ e ⊸ d ⊕ e But the type annotations have no computational content
Bellin-style Proof ( ⊸ R ) is legal because r is not free in let t be u ⊕ - in let u be v ⊕ - in v v : a ⊢ v : a w : b ⊢ w : b u : a ⊕ b ⊢ let u be v ⊕ - in v : a , let u be - ⊕ w in w : b x : c ⊢ x : c a ⊕ b ) ⊕ c ⊢ let t be u ⊕ - in let u be v ⊕ - in v : a , let t be u ⊕ - in let u be - ⊕ w in w : b , let t be - ⊕ x in x : c b ) ⊕ c ⊢ let t be u ⊕ - in let u be v ⊕ - in v : a , (let t be u ⊕ - in let u be - ⊕ w in w ) ⊕ (let t be - ⊕ x in x ) : b ⊕ c y : d ⊢ a ⊕ b ) ⊕ c , s : b ⊕ c ⊸ d ⊢ let t be u ⊕ - in let u be v ⊕ - in v : a , ( s (let t be u ⊕ - in let u be - ⊕ w in w ) ⊕ (let t be - ⊕ x in x )) , r : ( b ⊕ c ⊸ d ) ⊕ e ⊢ let t be u ⊕ - in let u be v ⊕ - in v : a , let r be s ⊕ - in ( s (let t be u ⊕ - in let u be - ⊕ w in w ) ⊕ (let t be - : ( b ⊕ c ⊸ d ) ⊕ e ⊢ let t be u ⊕ - in let u be v ⊕ - in v : a , (let r be s ⊕ - in ( s (let t be u ⊕ - in let u be - ⊕ w in w ) ⊕ (let t be - ⊕ u ⊕ - in let u be v ⊕ - in v : a , λ r ( b ⊕ c ⊸ d ) ⊕ e . (let r be s ⊕ - in ( s (let t be u ⊕ - in let u be - ⊕ w in w ) ⊕ (let t be - ⊕ x in x ))) ⊕ (let Again, the type annotations are not given any computational content and this derivation does not even fit on the page!
Br¨ auner and de Paiva-style proof ( ⊸ R ) legal because ( b ⊕ c ⊸ d ) ⊕ e is not related to a ( a , a ) ( b , b ) a ⊢ a b ⊢ b ( a ⊕ b , a ) , ( a ⊕ b , b ) ( c , c ) a ⊕ b ⊢ a , b c ⊢ c c , b ) , (( a ⊕ b ) ⊕ c , c ) ( a ⊕ b ) ⊕ c ⊢ a , b , c ⊕ c , a ) , (( a ⊕ b ) ⊕ c , b ⊕ c ) ( d , d ) ( a ⊕ b ) ⊕ c ⊢ a , b ⊕ c d ⊢ d ⊕ b ) ⊕ c , d ) , ( b ⊕ c ⊸ d , d ) ( e , e ) ( a ⊕ b ) ⊕ c , b ⊕ c ⊸ d ⊢ a , d e ⊢ e ⊕ c ⊸ d ) ⊕ e , d ) , (( b ⊕ c ⊸ d ) ⊕ e , e ) ( a ⊕ b ) ⊕ c , ( b ⊕ c ⊸ d ) ⊕ e ⊢ a , d , e a ) , (( a ⊕ b ) ⊕ c , d ⊕ e ) , (( b ⊕ c ⊸ d ) ⊕ e , d ⊕ e ) ( a ⊕ b ) ⊕ c , ( b ⊕ c ⊸ d ) ⊕ e ⊢ a , d ⊕ e ⊕ c , a ) , (( a ⊕ b ) ⊕ c , ( b ⊕ c ⊸ d ) ⊕ e ⊸ d ⊕ e ) ( a ⊕ b ) ⊕ c ⊢ a , ( b ⊕ c ⊸ d ) ⊕ e ⊸ d ⊕ e Pure annotational device to track variable occurrences
Cut-free derivation in our display calculus a ⊢ a b ⊢ b a ⊕ b ⊢ a , b c ⊢ c ( a ⊕ b ) ⊕ c ⊢ a , b , c ( a ⊕ b ) ⊕ c < a ⊢ b , c ( a ⊕ b ) ⊕ c < a ⊢ b ⊕ c d ⊢ d b ⊕ c ⊸ d ⊢ (( a ⊕ b ) ⊕ c < a ) > d e ⊢ e ( b ⊕ c ⊸ d ) ⊕ e ⊢ ((( a ⊕ b ) ⊕ c < a ) > d ) , e ( b ⊕ c ⊸ d ) ⊕ e ⊢ (( a ⊕ b ) ⊕ c < a ) > d , e ( b ⊕ c ⊸ d ) ⊕ e , (( a ⊕ b ) ⊕ c < a ) ⊢ d , e ( b ⊕ c ⊸ d ) ⊕ e , (( a ⊕ b ) ⊕ c < a ) ⊢ d ⊕ e ( a ⊕ b ) ⊕ c < a ⊢ ( b ⊕ c ⊸ d ) ⊕ e > d ⊕ e ( a ⊕ b ) ⊕ c < a ⊢ ( b ⊕ c ⊸ d ) ⊕ e ⊸ d ⊕ e ( a ⊕ b ) ⊕ c ⊢ a , ( b ⊕ c ⊸ d ) ⊕ e ⊸ d ⊕ e No annotations, but many extra structural connectives
Cut-free derivation in the deep nested calculus · ⇒ ( b ⇒ b ) a ⇒ a , ( · ⇒ · ) b ⇒ ( · ⇒ b ) · ⇒ ( c ⇒ c ) a ⊕ b ⇒ a , ( · ⇒ b ) c ⇒ ( · ⇒ c ) ( a ⊕ b ) ⊕ c ⇒ a , ( · ⇒ b , c ) ( a ⊕ b ) ⊕ c ⇒ a , ( · ⇒ b ⊕ c ) · ⇒ ( d ⇒ d ) ( a ⊕ b ) ⊕ c ⇒ a , ( b ⊕ c ⊸ d ⇒ d ) · ⇒ ( e ⇒ e ) ( a ⊕ b ) ⊕ c ⇒ a , (( b ⊕ c ⊸ d ) ⊕ e ⇒ d , e ) ( a ⊕ b ) ⊕ c ⇒ a , (( b ⊕ c ⊸ d ) ⊕ e ⇒ d ⊕ e ) ( a ⊕ b ) ⊕ c ⇒ a , ( b ⊕ c ⊸ d ) ⊕ e ⊸ d ⊕ e No annotations, only commas as structural connective, but sequents are nested ( · · · ⇒ · · · ) · · · ⇒ · · · ( · · · ⇒ · · · )
Display calculus for (an extension of) FILL Structural Constant and Binary Connectives: Φ , < > Antecedent Structure: X a Y a ::= A | Φ | X a , Y a | X a < Y s Succcedent Structure: X s Y s ::= A | Φ | X s , Y s | X a > Y s Sequent: X a ⊢ Y s (drop subscripts to avoid clutter) Display Postulates: reversible structural rules X a ⊢ Y a > Z s Z a < Y s ⊢ X s X a , Y a ⊢ Z s Z a ⊢ X s , Y s Y a ⊢ X a > Z s Z a < X s ⊢ Y s Display Property: For every antecedent (succedent) part Z of the sequent X ⊢ Y , there is a sequent Z ⊢ Y ′ (resp. X ′ ⊢ Z ) obtainable from X ⊢ Y using only the display postulates, thereby displaying the Z as the whole of one side
Logical rules: introduced formula is always displayed X ⊢ A A ⊢ Y (cut) (id) p ⊢ p X ⊢ Y Φ ⊢ X ( 1 ⊢ ) ( ⊢ 1 ) Φ ⊢ 1 1 ⊢ X X ⊢ Φ ( ⊢ 0 ) ( 0 ⊢ ) 0 ⊢ Φ X ⊢ 0 A , B ⊢ X X ⊢ A Y ⊢ B ( ⊢ ⊗ ) ( ⊗ ⊢ ) X , Y ⊢ A ⊗ B A ⊗ B ⊢ X X ⊢ A , B A ⊢ X B ⊢ Y ( ⊕ ⊢ ) ( ⊢ ⊕ ) A ⊕ B ⊢ X , Y X ⊢ A ⊕ B X ⊢ A > B X ⊢ A B ⊢ Y ( ⊸ ⊢ ) ( ⊢ ⊸ ) A ⊸ B ⊢ X > Y X ⊢ A ⊸ B A < B ⊢ X X ⊢ A B ⊢ Y ( − < ⊢ ) ( ⊢ − < ) A − < B ⊢ X X < Y ⊢ A − < B read upwards, one rule is a “rewrite” while other “constrains”
Recommend
More recommend