categorical semantics for linear logic
play

Categorical Semantics for Linear Logic Categorical semantics for - PowerPoint PPT Presentation

Categorical Semantics for Linear Logic Wolfgang Jeltsch Linear logic Categorical Semantics for Linear Logic Categorical semantics for linear logic Interaction Wolfgang Jeltsch between linear and non-linear Based on work by Nick Benton


  1. Categorical Semantics for Linear Logic Wolfgang Jeltsch Linear logic Categorical Semantics for Linear Logic Categorical semantics for linear logic Interaction Wolfgang Jeltsch between linear and non-linear Based on work by Nick Benton (1994) logic References TT¨ U K¨ uberneetika Instituut Teooriaseminar 18 Juni 2013

  2. Categorical Semantics for Linear Logic Wolfgang Jeltsch 1 Linear logic Linear logic Categorical semantics 2 Categorical semantics for linear logic for linear logic Interaction between linear 3 Interaction between linear and non-linear logic and non-linear logic References 4 References

  3. Categorical Semantics for Linear Logic Wolfgang Jeltsch 1 Linear logic Linear logic Categorical semantics 2 Categorical semantics for linear logic for linear logic Interaction between linear 3 Interaction between linear and non-linear logic and non-linear logic References 4 References

  4. Categorical Semantics Linear logic for Linear Logic Wolfgang Jeltsch Linear logic Categorical semantics for linear logic • useful for reasoning about resources Interaction between linear • each proposition must be used exactly once in a proof and non-linear logic • very different from the normal understanding of logic References • classical and intuitionistic variant • in this talk, only intuitionistic linear logic

  5. Categorical Semantics Linear logic formulas for Linear Logic Wolfgang Jeltsch • language: Linear logic Categorical semantics F ::= F ⊗ F | 1 | F & F | ⊤ | F ⊕ F | 0 | F ⊸ F | ! F for linear logic Interaction • meanings: between linear and non-linear α ⊗ β α and β hold simultaneously logic References 1 nothing holds α & β α and β hold (not necessarily simultaneously) ⊤ tautology α ⊕ β α or β holds 0 absurdity α ⊸ β if α holds in addition, then β holds ! α α holds arbitrarily often

  6. Categorical Semantics Linear logic example for Linear Logic Wolfgang • atomic propositions: Jeltsch e I have one euro. Linear logic s / p / i I get a soup/a pancake/an icecream. Categorical • derived propositions: semantics for linear logic • For four euros, I get a soup and a pancake: Interaction between linear and non-linear e ⊗ e ⊗ e ⊗ e ⊸ s ⊗ p logic References • For two euros, I get a soup or a pancake (my choice): e ⊗ e ⊸ s & p • For two euros, I get a pancake or an icecream (cafeteria’s choice): e ⊗ e ⊸ p ⊕ i • I am the central bank: ! e

  7. Categorical Semantics Linear λ -calculus for Linear Logic • the Curry–Howard analog of intuitionistic linear logic Wolfgang Jeltsch • values have to be used exactly once: Linear logic • a value can represent the current state of an object Categorical • changes to the state (destructive updates) expressible semantics for linear logic as pure functions Interaction • some functions with destructive updates: between linear and non-linear • array update: logic References ι ⊗ α ⊗ Array ι α ⊸ Array ι α • opening a file: FileName ⊗ World ⊸ File ⊗ World • writing to an opened file: String ⊗ File ⊸ File • closing a file: File ⊗ World ⊸ World

  8. Categorical Semantics for Linear Logic Wolfgang Jeltsch 1 Linear logic Linear logic Categorical semantics 2 Categorical semantics for linear logic for linear logic Interaction between linear 3 Interaction between linear and non-linear logic and non-linear logic References 4 References

  9. Categorical Semantics Products and coproducts for Linear Logic Wolfgang Jeltsch • intuitionistic (non-linear) logic: Linear logic • finite products for ∧ and ⊤ Categorical • finite coproducts for ∨ and ⊥ semantics for linear logic • intuitionistic linear logic: Interaction • finite products for & and ⊤ between linear and non-linear • finite coproducts for ⊕ and 0 logic • seems strange that ∧ / ⊤ and &/ ⊤ are modeled by the same References constructions, although they denote quite different things • however, analogous statements hold for ∧ / ⊤ and &/ ⊤ : α ⊢ α ∧ α α ⊢ α & α α ∧ β ⊢ α α & β ⊢ α α ⊢ ⊤ α ⊢ ⊤

  10. Categorical Semantics Symmetric monoidal structure for Linear Logic Wolfgang Jeltsch • axioms of ⊗ and 1: Linear logic • associativity of ⊗ : Categorical semantics ( α ⊗ β ) ⊗ γ ⊢ α ⊗ ( β ⊗ γ ) for linear logic α ⊗ ( β ⊗ γ ) ⊢ ( α ⊗ β ) ⊗ γ Interaction between linear and non-linear logic • commutativity of ⊗ : References α ⊗ β ⊢ β ⊗ α • 1 as neutral element: 1 ⊗ α ⊢ α α ⊢ 1 ⊗ α • symmetric monoidal structure for ⊗ and 1

  11. Categorical Semantics Adjunctions for Linear Logic Wolfgang • non-linear logic: Jeltsch • cartesian closed structure for ∧ and → Linear logic • − B defined as right-adjoint of − × B Categorical • corresponds to equivalence of semantics for linear logic α ∧ β ⊢ γ Interaction between linear and non-linear and logic α ⊢ β → γ References • linear logic: • symmetric monoidal closed structure for ⊗ and ⊸ • B ⊸ − defined as right-adjoint of − ⊗ B • corresponds to equivalence of α ⊗ β ⊢ γ and α ⊢ β ⊸ γ

  12. Categorical Semantics Structure for ! for Linear Logic Wolfgang • symmetric lax monoidal functor structure: Jeltsch Linear logic ! α ⊗ ! β ⊢ !( α ⊗ β ) Categorical semantics 1 ⊢ !1 for linear logic Interaction between linear • comonad structure: and non-linear logic ! α ⊢ α References ! α ⊢ !! α • commutative comonoid structure: ! α ⊢ ! α ⊗ ! α ! α ⊢ 1 • some additional coherence conditions

  13. Categorical Semantics for Linear Logic Wolfgang Jeltsch 1 Linear logic Linear logic Categorical semantics 2 Categorical semantics for linear logic for linear logic Interaction between linear 3 Interaction between linear and non-linear logic and non-linear logic References 4 References

  14. Categorical Semantics Linear and non-linear models for Linear Logic Wolfgang • for now: Jeltsch • non-linear logic with only ∧ , ⊤ , and → Linear logic • linear logic with only ⊗ , 1, and ⊸ Categorical • categorical models: semantics for linear logic non-linear logic cartesian closed category: Interaction between linear and non-linear ( C , × , 1 , → ) logic References linear logic symmetric monoidal closed category: ( L , ⊗ , I , ⊸ ) • beware: proposition ⊤ ˆ = object 1 proposition 1 ˆ = object I

  15. Categorical Semantics Interaction for Linear Logic Wolfgang Jeltsch • symmetric lax monoidal adjunction ( F , ϕ, ψ ) ⊣ ( G , υ, ν ) Linear logic between ( L , ⊗ , I ) and ( C , × , 1): Categorical semantics • adjunction F ⊣ G between L and C : for linear logic Interaction F : C → L between linear and non-linear logic G : L → C References • ( F , ϕ, ψ ) and ( G , υ, ν ) are symmetric lax monoidal functors between ( L , ⊗ , I ) and ( C , × , 1): ϕ X , Y : FX ⊗ FY → F ( X × Y ) ψ : I → F 1 υ A , B : GA × GB → G ( A ⊗ B ) ν : 1 → GI • unit and counit of F ⊣ G are monoidal transformations

  16. Categorical Semantics Isomorphisms for Linear Logic Wolfgang Theorem Jeltsch If ( F , ϕ, ψ ) ⊣ ( G , υ, ν ) is a lax monoidal adjunction, Linear logic then ϕ and ψ are isomorphisms. Categorical semantics • inverses: for linear logic Interaction ϕ − 1 between linear X , Y : F ( X × Y ) → FX ⊗ FY and non-linear logic ϕ − 1 X , Y = Φ − 1 ( υ FX , FY ◦ ( η X × η Y )) References ψ − 1 : F 1 → I ψ − 1 = Φ − 1 ( ν ) • closer relationship between × and ⊗ as well as 1 and I : FX ⊗ FY ∼ = F ( X × Y ) I ∼ = F 1

  17. Categorical Semantics Derived structure for ! for Linear Logic • adjunction F ⊣ G gives rise to a comonad (! , ε, δ ): Wolfgang Jeltsch ! : L → L δ : FG → FGFG Linear logic Categorical ! = FG δ = F η G semantics for linear logic • symmetric monoidal functor structures for F and G Interaction between linear give rise to a symmetric monoidal functor structure for ! and non-linear logic • commutative comonoid structure can be derived: References ξ A : FGA → FGA ⊗ FGA ξ A = ϕ − 1 GA , GA ◦ F ∆ GA χ A : FGA → I χ A = ψ − 1 ◦ F ! GA • further coherence conditions follow

  18. Categorical Semantics More structure for Linear Logic Wolfgang Jeltsch • more structure can be required: Linear logic • finite products in L for & and ⊤ : Categorical semantics for linear logic ( L , & , ⊤ ) Interaction between linear • finite coproducts in C for ∨ and ⊥ : and non-linear logic References ( C , + , 0) • finite coproducts in L for ⊕ and 0: ( L , ⊕ , 0) • no additional coherence conditions • interesting properties can still be derived

  19. Categorical Semantics More isomorphisms for Linear Logic Wolfgang Jeltsch • right-adjoints preserve limits: Linear logic GA × GB ∼ Categorical = G ( A & B ) semantics 1 ∼ for linear logic = G ⊤ Interaction between linear • consequence: and non-linear logic References ! A ⊗ ! B ∼ = !( A & B ) I ∼ = ! ⊤ • left-adjoints preserve colimits: FX ⊕ FY ∼ = F ( X + Y ) 0 ∼ = F 0

Recommend


More recommend