Relating Reasoning Methodologies in Linear Logic and Process Algebra - - PowerPoint PPT Presentation

relating
SMART_READER_LITE
LIVE PREVIEW

Relating Reasoning Methodologies in Linear Logic and Process Algebra - - PowerPoint PPT Presentation

Relating Reasoning Methodologies in Linear Logic and Process Algebra Yuxin Deng Iliano Cervesato Robert J. Simmons Jiao Tong University Carnegie Mellon University Carnegie Mellon University Shanghai Qatar Pittsburgh Linearity 2012


slide-1
SLIDE 1

Relating Reasoning Methodologies in Linear Logic and Process Algebra

Robert J. Simmons

Carnegie Mellon University Pittsburgh

Yuxin Deng

Jiao Tong University Shanghai Linearity 2012 Tallinn, Estonia – 1 April 2012

Iliano Cervesato

Carnegie Mellon University Qatar

slide-2
SLIDE 2

Worlds Apart

Logic

  • Mechanisms
  • Derivability
  • Search
  • Cut-elimination
  • Invertibility
  • Methods
  • Structural induction
  • Logical equivalence

Process Algebra

  • Mechanisms
  • Reduction
  • Structural equivalence
  • Methods
  • Observational equivalence
  • Testing
  • Simulation
  • Bisimulation

Inductive Co-inductive

ABOUT WITH

Reasoning

slide-3
SLIDE 3

Related Work – PA vs. Logic

  • Encodings
  • Long history back to the Chemical Abstract Machine
  • Reasoning
  • Miller, 1992:
  • Fragment of LL used to observe traces
  • Lincoln & Saraswat, 1991:
  • Γ |- ∆ understood as process Γ passing test ∆
  • McDowell, Miller & Palamidessi, 2003:
  • LL + definitions to express simulation as derivability
  • Tiu & Miller, 2004:
  • Nominal logic to capture bisimulation

Reasoning with logic to reason about PA

slide-4
SLIDE 4

This work

Explore one relationship between methods to

  • reason about logic – Inductive
  • reason about process algebra – Co-inductive

… very initial steps

  • Motivations
  • Growing interest in using logic for concurrency
  • Use co-inductive reasoning in logic
  • CLF
slide-5
SLIDE 5

Outline

Logical Preorder (Γ’; ∆’) ≤l (Γ; ∆) Simulation Preorder (Γ’; ∆’) ≤s (Γ; ∆) Contextual Preorder (Γ’; ∆’) ≤c (Γ; ∆)

slide-6
SLIDE 6

Logical Preorder (Γ’; ∆’) ≤l (Γ; ∆) Simulation Preorder (Γ’; ∆’) ≤s (Γ; ∆) Contextual Preorder (Γ’; ∆’) ≤c (Γ; ∆)

slide-7
SLIDE 7

Our Linear Logic

A ::= a | 1 | A ⊗ B | T | A & B | a –o B | !A

Γ; ∆ |- A

Γ,A; ∆ |- C Γ; ∆,!A |- C Γ; ⋅ |- A Γ; ⋅ |- !A Γ,A; ∆,A |- C Γ,A; ∆ |- C Γ; a |- a …

slide-8
SLIDE 8

Logical Preorder – ≤l

(Γ1; ∆1) ≤l (Γ2; ∆2) iff for all (Γ; ∆) and C, (Γ1,Γ); (∆1,∆) |- C implies (Γ2,Γ); (∆2,∆) |- C

  • (Γ1; ∆1) ≤l (Γ2; ∆2) iff Γ2; ∆2 |- ⊗!Γ1 ⊗ ⊗∆1
  • Inductive!

(Γ1; ∆1)

(Γ; ∆)

(Γ2; ∆2)

(Γ; ∆) Prop Prop

slide-9
SLIDE 9

Logical Preorder (Γ’; ∆’) ≤l (Γ; ∆) Simulation Preorder (Γ’; ∆’) ≤s (Γ; ∆) Contextual Preorder (Γ’; ∆’) ≤c (Γ; ∆)

slide-10
SLIDE 10

Process-as-Formula

Interpretation

  • a

send

  • 1

null

  • A ⊗ B

fork

  • T

stuck

  • A & B

choice

  • a –o B

receive

  • !A

replicate Transitions

  • (Γ; ∆, 1) → (Γ; ∆)
  • (Γ; ∆, A ⊗ B) → (Γ; ∆, A, B)
  • (none)
  • (Γ; ∆, A1 & A2) → (Γ; ∆, Ai)
  • (Γ; ∆, a, a –o B) → (Γ; ∆, B)
  • (Γ; ∆,!A) → (Γ,A; ∆)
  • (Γ, A; ∆) → (Γ, A; ∆, A)

The left rules of LL

Reduction-as-Search

slide-11
SLIDE 11

Towards a Contextual Preorder

a a

ℜ ↓∗ ℜ ↓∗ ↓ ℜ ℜ ℜ ℜ ↓∗ ℜ ℜ

Barb preserving Reduction closed Partition preserving Compositional

slide-12
SLIDE 12

Contextual Preorder – ≤c

The largest ℜ with these properties

  • Symmetric closure is contextual congruence
  • AKA reduction barbed congruence
  • Co-inductive
  • ≤c is a preorder
slide-13
SLIDE 13

Logical Preorder (Γ’; ∆’) ≤l (Γ; ∆) Simulation Preorder (Γ’; ∆’) ≤s (Γ; ∆) Contextual Preorder (Γ’; ∆’) ≤c (Γ; ∆)

slide-14
SLIDE 14

A Labeled Transition System

  • Capture the other left rules

(Γ; ∆) → (Γ’; ∆’)

α

(Γ; ∆, a) → (Γ; ∆)

!a

(Γ; ∆, a –o B) → (Γ; ∆, B)

?a

(Γ; ∆, 1) → (Γ; ∆)

τ

→ → →

τ !a ?a

slide-15
SLIDE 15

Towards a Simulation Preorder

ℜ ↓∗ ↓ ℜ ℜ ↓∗ ℜ ℜ

τ

!a !a

ℜ ↓∗ ↓ ℜ

?a

τ

+a

ℜ ↓∗ ↓ ℜ

τ τ

!-step closed Partition preserving ?-step closed

τ-step closed

slide-16
SLIDE 16

Simulation Preorder – ≤s

The largest ℜ with these properties

  • Co-inductive
  • ≤s is a preorder
  • ≤s is compositional

≤s ≤s

slide-17
SLIDE 17

Logical Preorder (Γ’; ∆’) ≤l (Γ; ∆) Simulation Preorder (Γ’; ∆’) ≤s (Γ; ∆) Contextual Preorder (Γ’; ∆’) ≤c (Γ; ∆)

slide-18
SLIDE 18

≤l ≤s

≤l ≤s

  • Chaining of inductive results
  • |- to ≤s
  • Inductive definition of ≤l
  • Rather involved

≤l ≤s

  • Co-inductive parts
  • ≤s to |-
  • Inductive parts
  • Transitive closures
  • Weak-head reduction
  • Also complex

|- A iff (⋅; A) ≤s

slide-19
SLIDE 19

Logical Preorder (Γ’; ∆’) ≤l (Γ; ∆) Simulation Preorder (Γ’; ∆’) ≤s (Γ; ∆) Contextual Preorder (Γ’; ∆’) ≤c (Γ; ∆)

slide-20
SLIDE 20

≤s ≤c

≤s ≤c

  • Relatively simple
  • Mainly co-inductive
  • Compositionality
  • Specific inductive parts
  • Transitive closure

≤s ≤c

  • Direct co-inductive proof
  • Also rather simple
  • Uses a few lemmas
  • Some co-inductive
  • Other inductive

→∗ iff →∗

τ

slide-21
SLIDE 21

What’s Next

  • Extend results to
  • general implication: A –o B
  • Special cases in join calculus
  • Largely beyond traditional PA
  • quantifiers: ∀x. A, ∃x. A
  • Special cases in π-calculus
  • Go beyond preorder
  • Implement co-inductive reasoning within CLF
  • A framework to reason about concurrent languages
slide-22
SLIDE 22

Thank you!

Questions?