A logical view on scheduling in concurrency Emmanuel Beffara I2M, CNRS & Université d’Aix-Marseille Chocola – 3 avril 2014 E. Beffara (I2M) A logical view on scheduling in concurrency Chocola – 3 avril 2014 1 / 33
Plan Introduction Proofs as processes Processes as untyped proofs Why we should search further Proofs as schedules MLL with actions Soundness and completess Uniform translations Asynchronous translation Synchronous translation Discussion E. Beffara (I2M) A logical view on scheduling in concurrency Chocola – 3 avril 2014 2 / 33
Logic vs computation proof construction ↔ execution Chocola – 3 avril 2014 A logical view on scheduling in concurrency E. Beffara (I2M) What is a proper denotational semantics for concurrency? How can we fit concurrency into this framework? proof ↔ successful run proof rules ↔ operational semantics The formulae as types approach: formula ↔ program The proof search approach: normalization ↔ evaluation proof ↔ program proof rules ↔ primitive instructions formula ↔ type 3 / 33
(Logic vs computation) vs concurrency proof construction ↔ execution Chocola – 3 avril 2014 A logical view on scheduling in concurrency E. Beffara (I2M) What is a proper denotational semantics for concurrency? How can we fit concurrency into this framework? proof ↔ successful run proof rules ↔ operational semantics The formulae as types approach: formula ↔ program The proof search approach: normalization ↔ evaluation proof ↔ program proof rules ↔ primitive instructions formula ↔ type 3 / 33
(𝜉𝑨)(𝜉𝑦𝑧)( ̄ Proofs as processes . Chocola – 3 avril 2014 A logical view on scheduling in concurrency E. Beffara (I2M) 𝑨⟨𝑦𝑧⟩ | 𝑄 | 𝑅) | 𝑨(𝑦𝑧)𝑆 It is natural to represent it a language for interactive processes: ⅋ ⊗ Cut elimination in proof nets is an interactive process: . 𝑆 . 𝑅 . 𝑄 . . 4 / 33
(𝜉𝑨)(𝜉𝑦𝑧)( ̄ Proofs as processes Cut elimination in proof nets is an interactive process: . . 𝑄 . 𝑅 . 𝑆 It is natural to represent it a language for interactive processes: 𝑨⟨𝑦𝑧⟩ | 𝑄 | 𝑅) | 𝑨(𝑦𝑧)𝑆 E. Beffara (I2M) A logical view on scheduling in concurrency Chocola – 3 avril 2014 4 / 33
Proofs as processes Cut elimination in proof nets is an interactive process: Chocola – 3 avril 2014 A logical view on scheduling in concurrency E. Beffara (I2M) 𝑨⟨𝑦𝑧⟩ | 𝑄 | 𝑅) | 𝑨(𝑦𝑧)𝑆 It is natural to represent it a language for interactive processes: ⅋ . ⊗ . 𝑆 . 𝑅 . 𝑄 . . 4 / 33 (𝜉𝑨)(𝜉𝑦𝑧)( ̄
Proofs as processes Cut elimination in proof nets is an interactive process: . . 𝑄 . 𝑅 . 𝑆 It is natural to represent it a language for interactive processes: E. Beffara (I2M) A logical view on scheduling in concurrency Chocola – 3 avril 2014 4 / 33 (𝜉𝑨)(𝜉𝑦𝑧)( ̄ 𝑨⟨𝑦𝑧⟩ | 𝑄 | 𝑅) | 𝑨(𝑦𝑧)𝑆 → (𝜉𝑦𝑧)(𝑄 | 𝑅 | 𝑆)
Proofs as processes This idea was first implemented in Gianluigi Bellin and Phil Sco On the π-calculus and linear logic Theoretical Computer Science, 1994 Good points: Adequate representation of proof dynamics Study of information flow through proofs Limitations: Requires a lot of coding Touches processes of a very restricted form Does not provide much insight on the π-calculus E. Beffara (I2M) A logical view on scheduling in concurrency Chocola – 3 avril 2014 5 / 33
Proofs as processes This idea was first implemented in Gianluigi Bellin and Phil Sco On the π-calculus and linear logic Theoretical Computer Science, 1994 Good points: Adequate representation of proof dynamics Study of information flow through proofs Limitations: Requires a lot of coding Touches processes of a very restricted form Does not provide much insight on the π-calculus E. Beffara (I2M) A logical view on scheduling in concurrency Chocola – 3 avril 2014 5 / 33
Proofs as processes This idea was first implemented in Gianluigi Bellin and Phil Sco On the π-calculus and linear logic Theoretical Computer Science, 1994 Good points: Adequate representation of proof dynamics Study of information flow through proofs Limitations: Requires a lot of coding Touches processes of a very restricted form Does not provide much insight on the π-calculus E. Beffara (I2M) A logical view on scheduling in concurrency Chocola – 3 avril 2014 5 / 33
Typing processes in linear logic 𝑄 ⊢ Γ,⃗ Chocola – 3 avril 2014 A logical view on scheduling in concurrency E. Beffara (I2M) Exponentials for replication, additives for external choice. 𝑣(⃗ ̄ 𝑄 ⊢ Γ,⃗ 𝑣(⃗ 𝑄 ⊢ Γ,⃗ Actions: 𝑧 ∶ 𝐵 ⅋ 𝐶 𝑦⃗ 𝑄 ⊢ Γ,⃗ Axiom and cut: 6 / 33 𝑧 ∶ 𝐵 ⊗ 𝐶, Δ 𝑦⃗ 𝑄 | 𝑅 ⊢ Γ,⃗ 𝑄 ⊢ Γ,⃗ Multiplicatives: 𝑦)(𝑄 | 𝑅) ⊢ Γ, Δ 𝑄 ⊢ Γ,⃗ (𝜉⃗ 𝑦 ∶ 𝐵 𝑅 ⊢ ⃗ 𝑦 ∶ 𝐵 ⊥ , Δ 𝑣→𝑤 ⊢ 𝑣 ∶ ´ 𝐵 ⊥ , 𝑤 ∶ ˆ 𝐵 𝑅 ⊢ ⃗ 𝑦 ∶ 𝐵 𝑧 ∶ 𝐶, Δ 𝑦 ∶ 𝐵,⃗ 𝑧 ∶ 𝐶 𝑦 ∶ 𝐵 𝑦 ∶ 𝐵 𝑦).𝑄 ⊢ Γ, 𝑣 ∶ ´ 𝐵 𝑦).𝑄 ⊢ Γ, 𝑣 ∶ ˆ 𝐵
Typing processes in linear logic Independently developped: Chocola – 3 avril 2014 A logical view on scheduling in concurrency E. Beffara (I2M) appears as a fragment. Concur 2010 Session types as intuitionistic linear propositions Luís Caires and Frank Pfenning Bellin and Sco’s encoding decomposes inside. The system on the previous slide was introduced in LICS 2001 Strong normalisation in the π-calculus Nobuko Yoshida, Martin Berger, and Kohei Honda but was found to be strongly related to MFPS 2006 A concurrent model for linear logic EB 7 / 33
𝑏. ̄ 𝑐 | 𝑐. ̄ 𝑑 | ̄ Typing processes in linear logic Many well-behaved interaction paerns are not typable. Chocola – 3 avril 2014 A logical view on scheduling in concurrency E. Beffara (I2M) 𝑏.𝑑.𝑒 Only top-level cut elimination matches execution. Good things: Typed processes are essentially functional. Shortcomings: Induces translations of the λ-calculus into the π-calculus. through “algebraic” extensions of process calculi . Extends to differential linear logic up to structural congruence . Typing is preserved by reduction Typed processes cannot diverge or deadlock. 8 / 33
Typing processes in linear logic Typed processes are essentially functional. Chocola – 3 avril 2014 A logical view on scheduling in concurrency E. Beffara (I2M) 𝑏.𝑑.𝑒 Many well-behaved interaction paerns are not typable. Good things: Only top-level cut elimination matches execution. Shortcomings: Induces translations of the λ-calculus into the π-calculus. through “algebraic” extensions of process calculi . Extends to differential linear logic up to structural congruence . Typing is preserved by reduction Typed processes cannot diverge or deadlock. 8 / 33 𝑏. ̄ 𝑐 | 𝑐. ̄ 𝑑 | ̄
Processes as proofs Dual approach: implement processes as proofs in a suitable logic. Translating all processes requires an untyped proof language. Standard linear logic is not an option because of confluence. Differential linear logic allows for explicit non-determinism: 𝑄 ⊢ Γ 𝑅 ⊢ Γ 𝑄 + 𝑅 ⊢ Γ Its rules allow for an implementation of all processes. E. Beffara (I2M) A logical view on scheduling in concurrency Chocola – 3 avril 2014 9 / 33
Processes as untyped proofs Dual approach: implement processes as proofs in a suitable logic. Translating all processes requires an untyped proof language. Standard linear logic is not an option because of confluence. Differential linear logic allows for explicit non-determinism: 𝑄 ⊢ Γ 𝑅 ⊢ Γ 𝑄 + 𝑅 ⊢ Γ Its rules allow for an implementation of all processes. E. Beffara (I2M) A logical view on scheduling in concurrency Chocola – 3 avril 2014 9 / 33
Processes as untyped proofs Dual approach: implement processes as proofs in a suitable logic. Translating all processes requires an untyped proof language. Standard linear logic is not an option because of confluence. Differential linear logic allows for explicit non-determinism: 𝑄 ⊢ Γ 𝑅 ⊢ Γ 𝑄 + 𝑅 ⊢ Γ Its rules allow for an implementation of all processes. E. Beffara (I2M) A logical view on scheduling in concurrency Chocola – 3 avril 2014 9 / 33
Processes as untyped proofs Dual approach: implement processes as proofs in a suitable logic. Translating all processes requires an untyped proof language. Standard linear logic is not an option because of confluence. Differential linear logic allows for explicit non-determinism: 𝑄 ⊢ Γ 𝑅 ⊢ Γ 𝑄 + 𝑅 ⊢ Γ Its rules allow for an implementation of all processes. Thomas Ehrhard and Olivier Laurent Interpreting a finitary π-calculus in differential interaction nets Concur 2007 E. Beffara (I2M) A logical view on scheduling in concurrency Chocola – 3 avril 2014 9 / 33
Processes as untyped proofs Good points: Does provide insights on concurrent processes Relates algebraic proof semantics and process semantics Limitations: Not clear how to get logic back into the process language Prefixing is only described very indirectly: π-calculus ⟶ solos calculus ⟶ differential nets E. Beffara (I2M) A logical view on scheduling in concurrency Chocola – 3 avril 2014 10 / 33
Recommend
More recommend