On the Internal and External View of Graded Linear Logic Preston Keel Harley Eades III 1
All data is not created equal • Would you pass an integer around a program freely • What about memory pointers 2
Getting to Grades: Linear Logic • Linear Logic • Resource conscience A • used exactly once, used zero to many ! A Γ ⊢ C Γ ,! A ,! A ⊢ C Γ ,! A ⊢ C Weak Cont Γ ,! A ⊢ C 3
! A A → A ⊗ A ! A , B → B ! A → A ⊗ A ⊗ A A , A → A ⊗ A 4
Getting to Grades: Bounded Linear Logic • Adding specifications for resource reuse • Aid in time complexity 5
Getting to Grades: Bounded Linear Logic • Capture between one and any number of times • where can be used up to a natural A ! A → ! n A number, n, times 6
Graded Linear Logic • Generalize reuse bound of BLL to an arbitrary ! r A of a semiring r ∈ R ( R ,0, + ,1,*) • Two forms: externally graded and internally graded 7
Graded Linear Logic • Externally graded x 1 : A 1 ⊙ r 1 , . . . , x i : A i ⊙ r i ⊢ t : B where is of a resource algebra r ∈ R ( R , * ,1, + ,0, ≤ ) • Internally graded x 1 : A 1 , . . . , A i : x i ⊢ t : B • New type annotation, □ r A 8
Two Sides…Same Coin • Inference rules of linear logic parallel rules for graded linear logic Γ , A ⊢ B [ Γ ] ⊢ B Γ , A ⊢ B ! Γ ⊢ B Γ , □ 1 A ⊢ B r * Γ ⊢ □ r B Γ ,! A ⊢ B ! Γ ⊢ ! B • when eliminated introduces a discharged □ r A formula into the context A ⊙ r 9
Two Sides…Same Coin • Internally graded context contain both linear, , A and discharged, , hypotheses A ⊙ r • Internally graded system makes use of external grade information 10
Two Sides…Same Coin • New sequent calculus - Externally/Internally Graded Linear Logic • Two fragments • Externally graded X 1 ⊙ r 1 , . . . , X i ⊙ r i ⊢ B • Mixed externally/internally graded ( X 1 ⊙ r 1 , . . . , X i ⊙ r i ); ( A 1 , . . . , A i ) ⊢ B 11
How are they connected? Γ 1 , X ⊙ r , Γ 2 ⊢ A Γ 1 , A , Γ 2 ⊢ B F L G L Γ 1 , GA ⊙ 1, Γ 2 ⊢ B Γ 1 , F r X , Γ 2 ⊢ A □ r A • Can now be defined as □ r A = F r GA • Externally graded linear logic underlies internally graded linear logic 12
What can grades do? A private → A public A public → A private A [2..4] → A ⊗ A ⊗ A 13
Structural Rules • Internally and externally graded systems precisely control resources by controlling weakening and contraction • Non-optional with respect to the logic • Controlling exchange is often overlooked 14
Structural Rules: Exchange • Useful when needing control over ordering • Mapping over lists, ordered communication • Applications in software verification and interactive theorem proving 15
□ e (2) A □ 2 A Γ 1 , X ⊙ e ( r 1 ), Y ⊙ e ( r 2 ), Γ 2 ⊢ L A Γ 1 , Y ⊙ e ( r 2 ), X ⊙ e ( r 1 ), Γ 2 ⊢ L A Γ 1 , X ⊙ e ( r 1 ), Y ⊙ r 2 , Γ 2 ⊢ L A Γ 1 , Y ⊙ r 2 , X ⊙ e ( r 1 ), Γ 2 ⊢ L A 16
Structural Rules: Contraction and Weakening • Generalize system further to make these rules optional Γ 1 , Γ 2 ⊢ A 0 ∈ R Γ 1 , X ⊙ r 1 , X ⊙ r 2 , Γ 2 ⊢ A ( r 1 + r 2 ) ∈ R Γ 1 , X ⊙ 0, Γ 2 ⊢ A Γ 1 , X ⊙ ( r 1 + r 2 ), Γ 2 ⊢ A 17
Controlling structural rules • Contraction logic - no weakening • Affine logic - no contraction • Non-commutative and commutative versions 18
Where we go from here • Understanding of substructural type systems • Higher order systems such as dependent types • Granule 19
Questions ? 20
Recommend
More recommend