equations contractions and unique solutions
play

Equations, contractions, and unique solutions (work in progress) - PowerPoint PPT Presentation

Equations, contractions, and unique solutions (work in progress) Davide Sangiorgi Focus Team, University of Bologna (Italy)/INRIA (France) Email: Davide.Sangiorgi@cs.unibo.it http://www.cs.unibo.it/sangio/ Bertinoro, June 2014 This talk


  1. Equations, contractions, and unique solutions (work in progress) Davide Sangiorgi Focus Team, University of Bologna (Italy)/INRIA (France) Email: Davide.Sangiorgi@cs.unibo.it http://www.cs.unibo.it/˜sangio/ Bertinoro, June 2014

  2. This talk Bisimulation proof method and coinductive operational techniques – enhancements such as ’up-to context’ Contractions Some new proof techniques for behavioural equivalence, eg unique solutions of contractions – unique solutions of equations for bisimilarity [Milner ’89] – comparable in strength to ‘up-to context’ bisimulation enhancements – transport to inductive equivalences page 1

  3. The buzzwords (and some motivations) page 2

  4. Behavioural equivalence (processes or other objects) P and Q behaviourally equal: no difference between them is observable Weak equivalences (wrt internal moves) Some standard notations (Milner’s CCS book) : µ (action) τ, ℓ (internal action, visible action a, b . . . ) µ → P ′ P − (one action) τ → P ′ → P ′ ) P − (one internal step, also P − ⇒ P ′ P = (reflexive and transitive closure of − → ) ∧ → P ′ or P = P ′ ) → P ′ P − ( P − µ µ ⇒ P ′ ⇒ P ′ ) P = ( P = ⇒ − → = µ � µ → P ′ or ( µ = τ and P = P ′ ) ) → P ′ P − ( P − µ � µ ⇒ P ′ or ( µ = τ and P = P ′ ) ) ⇒ P ′ P = ( P = page 3

  5. Bisimilarity and the bisimulation proof method Bisimulation: Q Q A relation R s.t. P R P R µ µ µ � µ � Q ′ Q ′ P ′ P ′ R R Bisimilarity ( ≈ ) : ∪ {R : R is a bisimulation } Hence: x R y R is a bisimulation (bisimulation proof method) x ≈ y Today by far the most popular proof technique for ≈ (coupled with enhancements) page 4

  6. Enhancements of the bisimulation proof method Bisimulation up-to contexts: Q P R µ µ � × [ Q ′′ ] × [ P ′′ ] R C C Q ′ = = P ′ Identity ( = ) too strong, ideally we would like ≈ (eg applying some algebraic laws) ‘up-to ≈ ’ is unsound: τ . a 0 R τ a ≈ ≈ 0 τ . a R 0 page 5

  7. Enhancements of the bisimulation proof method (cont.) Expansion ( ⊒ ): ⊒ Q ⊒ Q P P µ µ µ µ � Q ′ Q ′ P ′ ⊒ P ′ ⊒ a + τ . a ⊒ Example: �⊑ a Bisimulation up-to expansion and contexts: Q P R – Sound in CCS, π , ... – Very effective in higher-order µ µ � languages, including π × [ Q ′′ ] × [ P ′′ ] R C C Q ′ P ′ ⊒ ≈ – used also on automata [Bonchi, Bonsangue, Pous, Rot, Rutten, ... ] Open problem: soundness proof of up-to context in higher-order languages page 6

  8. Equations and unique solutions page 7

  9. Unique solutions of equations A landmark for bisimulation: Milner’s book on CCS, 1989 One of the proof techniques proposed: unique solutions of equations Example: X = a . X P unique solution for bisimilarity (modulo ≈ ) is P with [ P ≈ a . P ] a Hence: if Q ≈ a . Q then Q ≈ P Another example of unique solution: X 1 = a . X 2 , X 2 = b . X 1 a unique solution for bisimilarity (modulo ≈ ) is ( P 1 , P 2 ) with P 1 P 2 [ P 1 ≈ a . P 2 P 2 ≈ b . P 1 ] b page 8

  10. Systems of equations (in CCS) ( E i may contain the variables � { X i = E i } i ∈ I X ) X = � � Notations: E as an abbreviation E [ � P ] : replace (syntactically) each X i with P i – a solution for ≈ : P with P i ≈ E i [ � � P ] for each i – the system has unique solution for ≈ : P and � � Q solutions imply � P ≈ � Q . Another example: X = a . ( X | b ) Non examples: X = X and X = τ . X page 9

  11. Milner’s theorem A system of equations is – guarded if each variable underneath a visible prefix – sequential if each variable only underneath prefixes and sums Examples: – X = τ . X + α . 0 is sequential but not guarded – X = a . X | P is guarded but not sequential – X = a . X + τ . b . X + τ is both guarded and sequential. Theorem [Milner, ’89 CCS book] A system of equations that is guarded and sequential has unique solutions of equation for ≈ . Other versions of the theorem? page 10

  12. The sequentiality condition ... cannot be removed from the theorem. Example [Mil89] : X = νa ( a . X | a ) ( the same as X = τ . X ) A wrong attempt at relaxing it: require each expression to be sequentially guarded (i.e., of the form X i = ℓ . E i ) Counterexample: X = a . νb ( νa ( a . ! a . b | X ) | ! b . a ) Some solutions: a . 0 , a . a . 0 , a ω page 11

  13. Incompleteness There is no system of guarded and sequential equations in which one of the solutions is the process K : K � τ . ( a | K ) + τ . 0 The behaviour of K can be expressed via the following process definitions (for i natural number): H i � τ . H i +1 + a . H i − 1 + τ . a i s page 12

  14. Remarks on unique solutions of equations – The technique incorporates the flavour of up-to context : an equations X = � � E describes the behaviour of each X i in term of a structure ( E i ) – However: the sequentiality condition makes the up-to context useless (when X in E is reached, there is no “context” left) – The same definitions, examples, counterexamples apply to other behavioural equivalences (eg., contextual equivalence) Has it been used with other equivalences? page 13

  15. The proposal in this talk A new technique, refinement of unique solutions of equations Contractions in place of equations Pros: – no constraints on sequentiality – complete – up-to context – can be transported onto contextual/inductive equivalences (more generally any equivalence with finitary observables) – bisimulations up-to contraction and context – language independent Cons: – later .... page 14

  16. Contractions page 15

  17. ≻ The contraction ≍ of a behavioural equivalence ≍ ≻ ≍ Q � P ≍ Q and, in addition, Q has the possibility of being as P efficient as P (however Q may also have slower paths) Example: the bisimilarity contraction � ≻ ≻ Q Q P P ≈ ≈ µ µ µ � µ � Q ′ Q ′ P ′ ≈ ≻ P ′ ≈ (same as for expansion) (same as for bisimulation) – Examples: a + τ . a � a , a � a + τ . a , a � � τ . a – Coarser than expansion – (Pre)-congruence properties: as those of bisimilarity and expansion page 16

  18. Systems of contractions ( E i may contain the variables � { X i � E i } i ∈ I X ) – a solution for � : P with P i � E i [ � � P ] for each i – the system has unique solution for ≈ : whenever � P and � Q are solutions for � , then � P ≈ � Q . Some simple facts: – unique solutions for � X = � E implies unique solutions for � X � � E (because there is at least one solution for strong bisimilarity) (unique solution for ≈ is τ ω ) – converse false, for X � τ . X – still no unique solutions for X � X page 17

  19. Conditions for unique solutions A system of contractions { X i � E i } i ∈ I is weakly guarded if each variable underneath a prefix (possibly τ ) Theorem A weakly-guarded system of contractions has unique solutions for ≈ . NB: ‘guarded and sequential’ replaced by ‘weakly guarded’ Examples: – X � τ . X (a solution is a . τ ω ) – X � a . νb ( νa ( a . ! a . b | X ) | ! b . a ) page 18

  20. Completeness (in CCS) Theorem Any process bisimilarity can be proved using a system of weakly guarded contractions Also computationally complete: Theorem Suppose R is a bisimulation. Then there is a system of weakly guarded contractions, of the same size, of which the projections of R are solutions for ≈ . The result also holds wrt bisimulation enhancements, such as ‘bisimulation up-to expansion and context’. (The contraction technique is equivalent to ‘bisimulation up-to contraction and context’) Proofs: the definition of contraction is crucial page 19

  21. Applications to non-coinductive equivalences page 20

  22. Contextual equivalence ℓ P ⇓ � P = ⇒ − → , for ℓ � = τ (ie, barb/convergence) Definition [contextual equivalence] P ⌣ Q if for all C : C [ P ] ⇓ iff C [ Q ] ⇓ . P ⇓ n � P ( τ ℓ → . Similarly for P ⇓ ≤ n → ) n − − ≻ Definition [contextual equivalence contraction] P ⌣ Q if for all C : 1. C [ P ] ⇓ n implies C [ Q ] ⇓ ≤ n ; 2. C [ Q ] ⇓ implies C [ P ] ⇓ . unique solution of � X � � E for ⌣ : if � ⌣ � E [ � P ] and � ⌣ � E [ � Q ] then � P ⌣ � ≻ Q ≻ P Q page 21

  23. Theorem A system of weakly guarded contractions has unique solution for ⌣ . Proof (sketch): Suppose � P and � Q are solutions. Show that C [ � P ] ⇓ implies C [ � Q ] ⇓ . Induction on n s.t. C [ � P ] ⇓ n . Case n = 0 easy. Case n > 0 . P ] ⇓ n and � C [ � ⌣ � E [ � P ] imply C [ � E [ � ≻ P ] ] ⇓ ≤ n . P Since � E is weakly guarded, either C [ � E [ � P ] ] ⇓ 0 , or C [ � E [ � → C ′ [ � P ] ⇓ ≤ n − 1 P ] ] − Latter case: also C [ � E [ � → C ′ [ � Q ] (since � Q ] ] − E is weakly guarded) P ] ⇓ ≤ n − 1 infer C ′ [ � By induction and C ′ [ � Q ] ⇓ . Hence C [ � E [ � Q ] ] ⇓ . From � Q ≻ ⌣ � E [ � Q ] , deduce C [ � � Q ] ⇓ . page 22

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend