operational semantics coalgebraically
play

Operational Semantics Coalgebraically Bartek Klin University of - PowerPoint PPT Presentation

Operational Semantics Coalgebraically Bartek Klin University of Cambridge, Warsaw University CMCS, Paphos, 27/03/10 Summary Structural Operational Semantics is about Defining transition relations by induction CMCS, Paphos, 27/03/10 2 / 37


  1. � � � � � � Bialgebras g h � X � BX Σ X - bialgebra: Bg λ Σ h λ X � B Σ X Σ BX g h � Σ X X BX morphisms: Σ f f Bf k l � Y � BY Σ Y Bialgebras are (co)algebras: = Σ λ -alg ∼ λ -bialg ∼ = B λ -coalg CMCS, Paphos, 27/03/10 10 / 37

  2. � � � � � More benefits λ : Σ B = ⇒ B Σ λ Z � B Σ Z Σ z � Σ BZ Σ Z g Bg � BZ Z z a Σ A A Σ h h � B Σ A � BA Σ BA λ A Ba CMCS, Paphos, 27/03/10 11 / 37

  3. � � � � � More benefits λ : Σ B = ⇒ B Σ λ Z � B Σ Z Σ z � Σ BZ Σ Z the final bialgebra g Bg � BZ Z z a Σ A A the initial bialgebra Σ h h � B Σ A � BA Σ BA λ A Ba CMCS, Paphos, 27/03/10 11 / 37

  4. � � � � Bisimilarity as a congruence h � a Σ A A BA ∼ = Σ f f Bf = � BZ ∼ � Z Σ Z g z The kernel relation of is: f - bisimilarity on , h - a congruence on . a CMCS, Paphos, 27/03/10 12 / 37

  5. � � � � Bisimilarity as a congruence h � a Σ A A BA ∼ = Σ f f Bf = � BZ ∼ � Z Σ Z g z The kernel relation of is: f Bisimilarity is - bisimilarity on , h a congruence - a congruence on . a CMCS, Paphos, 27/03/10 12 / 37

  6. � � � � Bisimilarity as a congruence h � a Σ A A BA ∼ = Σ f f Bf = � BZ ∼ � Z Σ Z g z The kernel relation of is: f Bisimilarity is - bisimilarity on , h a congruence - a congruence on . a For example, hence C [ alt ( a , a )] ≈ C [ a ] alt ( a , a ) ≈ a CMCS, Paphos, 27/03/10 12 / 37

  7. II. MORE DISTRIBUTIVE LAWS CMCS, Paphos, 27/03/10 13 / 37

  8. Another coinductive definition BX = A × X Z = A ω CMCS, Paphos, 27/03/10 14 / 37

  9. Another coinductive definition BX = A × X Z = A ω Define: zip : Z 2 → Z CMCS, Paphos, 27/03/10 14 / 37

  10. Another coinductive definition BX = A × X Z = A ω a 1 , a 2 , a 3 , a 4 , a 5 , . . . Define: zip : Z 2 → Z b 1 , b 2 , b 3 , b 4 , b 5 , . . . CMCS, Paphos, 27/03/10 14 / 37

  11. Another coinductive definition BX = A × X Z = A ω a 1 , a 2 , a 3 , a 4 , a 5 , . . . Define: zip : Z 2 → Z b 1 , b 2 , b 3 , b 4 , b 5 , . . . CMCS, Paphos, 27/03/10 14 / 37

  12. Another coinductive definition BX = A × X Z = A ω a 1 , a 2 , a 3 , a 4 , a 5 , . . . Define: zip : Z 2 → Z b 1 , b 2 , b 3 , b 4 , b 5 , . . . zip a 1 , b 1 , a 2 , b 2 , a 3 , . . . CMCS, Paphos, 27/03/10 14 / 37

  13. � � Another coinductive definition BX = A × X Z = A ω a 1 , a 2 , a 3 , a 4 , a 5 , . . . Define: zip : Z 2 → Z b 1 , b 2 , b 3 , b 4 , b 5 , . . . zip a 1 , b 1 , a 2 , b 2 , a 3 , . . . z 2 � ( BZ ) 2 λ � B ( Z 2 ) Z 2 B ( zip ) zip � BZ Z z CMCS, Paphos, 27/03/10 14 / 37

  14. � � Another coinductive definition BX = A × X Z = A ω a 1 , a 2 , a 3 , a 4 , a 5 , . . . Define: zip : Z 2 → Z b 1 , b 2 , b 3 , b 4 , b 5 , . . . zip a 1 , b 1 , a 2 , b 2 , a 3 , . . . z 2 � ( BZ ) 2 λ � B ( Z 2 ) Z 2 λ ( a, σ , b, τ ) a, ( b :: τ , σ ) = B ( zip ) zip � BZ Z z CMCS, Paphos, 27/03/10 14 / 37

  15. � � Another coinductive definition BX = A × X Z = A ω a 1 , a 2 , a 3 , a 4 , a 5 , . . . Define: zip : Z 2 → Z b 1 , b 2 , b 3 , b 4 , b 5 , . . . zip a 1 , b 1 , a 2 , b 2 , a 3 , . . . z 2 � ( BZ ) 2 λ � B ( Z 2 ) Z 2 λ ( a, σ , b, τ ) a, ( b :: τ , σ ) = B ( zip ) zip a → x ′ x a � BZ zip ( x, y ) → zip ( y, x ′ ) Z z CMCS, Paphos, 27/03/10 14 / 37

  16. � � Another coinductive definition BX = A × X Z = A ω a 1 , a 2 , a 3 , a 4 , a 5 , . . . Define: zip : Z 2 → Z b 1 , b 2 , b 3 , b 4 , b 5 , . . . zip a 1 , b 1 , a 2 , b 2 , a 3 , . . . z 2 � ( BZ ) 2 λ � B ( Z 2 ) Z 2 λ ( a, σ , b, τ ) a, ( b :: τ , σ ) = B ( zip ) zip a → x ′ x a � BZ zip ( x, y ) → zip ( y, x ′ ) Z z But this is not natural! CMCS, Paphos, 27/03/10 14 / 37

  17. � � Copointed coalgebras A distributive law definition of : zip � id ,z � 2 � ( Z × BZ ) 2 λ � B ( Z 2 ) Z 2 B ( zip ) zip � BZ Z z a → x ′ x ( x, a, x ′ , y, b, y ′ ) �→ a, ( y, x ′ ) a zip ( x, y ) → zip ( y, x ′ ) CMCS, Paphos, 27/03/10 15 / 37

  18. � � Copointed coalgebras A distributive law definition of : zip � id ,z � 2 � ( Z × BZ ) 2 λ � B ( Z 2 ) Z 2 B ( zip ) zip � BZ Z z a → x ′ x ( x, a, x ′ , y, b, y ′ ) �→ a, ( y, x ′ ) a zip ( x, y ) → zip ( y, x ′ ) λ : Σ (Id × B ) = ⇒ B Σ CMCS, Paphos, 27/03/10 15 / 37

  19. � � Copointed coalgebras A distributive law definition of : zip � id ,z � 2 � ( Z × BZ ) 2 λ � B ( Z 2 ) Z 2 B ( zip ) zip � BZ Z z a → x ′ x ( x, a, x ′ , y, b, y ′ ) �→ a, ( y, x ′ ) a zip ( x, y ) → zip ( y, x ′ ) λ : Σ (Id × B ) = ⇒ B Σ To gain the benefits, work with copointed coalgebras. CMCS, Paphos, 27/03/10 15 / 37

  20. Pointed algebras b 1 , b 2 , b 3 , b 4 , b 5 , . . . a/ − a/ − : Z → Z a, b 2 , b 3 , b 4 , b 5 , . . . CMCS, Paphos, 27/03/10 16 / 37

  21. � � Pointed algebras b 1 , b 2 , b 3 , b 4 , b 5 , . . . a/ − a/ − : Z → Z a, b 2 , b 3 , b 4 , b 5 , . . . ? Z BZ a/ − B ( a/ − ) � BZ Z z CMCS, Paphos, 27/03/10 16 / 37

  22. Pointed algebras b 1 , b 2 , b 3 , b 4 , b 5 , . . . a/ − a/ − : Z → Z a, b 2 , b 3 , b 4 , b 5 , . . . CMCS, Paphos, 27/03/10 16 / 37

  23. � � Pointed algebras b 1 , b 2 , b 3 , b 4 , b 5 , . . . a/ − a/ − : Z → Z a, b 2 , b 3 , b 4 , b 5 , . . . Σ z � Σ BZ λ � B ( Z + Σ Z ) Σ Z g B [id ,g ] � BZ Z z CMCS, Paphos, 27/03/10 16 / 37

  24. � � Pointed algebras b 1 , b 2 , b 3 , b 4 , b 5 , . . . a/ − a/ − : Z → Z a, b 2 , b 3 , b 4 , b 5 , . . . Σ z � Σ BZ λ � B ( Z + Σ Z ) Σ Z g B [id ,g ] � BZ Z z λ : BZ → B ( Z + Z ) b x → x ′ − b, x ′ �→ a, ι 1 ( x ′ ) a a/x → x ′ − CMCS, Paphos, 27/03/10 16 / 37

  25. � � Pointed algebras b 1 , b 2 , b 3 , b 4 , b 5 , . . . a/ − a/ − : Z → Z a, b 2 , b 3 , b 4 , b 5 , . . . Σ z � Σ BZ λ � B ( Z + Σ Z ) Σ Z g B [id ,g ] � BZ Z z λ : BZ → B ( Z + Z ) b x → x ′ − b, x ′ �→ a, ι 1 ( x ′ ) a a/x → x ′ − To gain the benefits, work with pointed algebras. CMCS, Paphos, 27/03/10 16 / 37

  26. Complex successors a → x ′ x − a f ( x ) → zip ( a , f ( x ′ )) − CMCS, Paphos, 27/03/10 17 / 37

  27. Complex successors a → x ′ x − λ : Σ B = ⇒ BT Σ a f ( x ) → zip ( a , f ( x ′ )) − free monad over Σ CMCS, Paphos, 27/03/10 17 / 37

  28. � � Complex successors a → x ′ x − λ : Σ B = ⇒ BT Σ a f ( x ) → zip ( a , f ( x ′ )) − free monad over Σ Σ z � Σ BZ λ � BT Σ Σ Z g Bg ♯ � BZ Z z CMCS, Paphos, 27/03/10 17 / 37

  29. � � Complex successors a → x ′ x − λ : Σ B = ⇒ BT Σ a f ( x ) → zip ( a , f ( x ′ )) − free monad over Σ Σ z � Σ BZ λ � BT Σ Σ Z g Bg ♯ � BZ Z z Here, work with E-M algebras for the monad T Σ CMCS, Paphos, 27/03/10 17 / 37

  30. � � Complex successors a → x ′ x − λ : Σ B = ⇒ BT Σ a f ( x ) → zip ( a , f ( x ′ )) − free monad over Σ Σ z � Σ BZ λ � BT Σ Σ Z g Bg ♯ � BZ Z z Here, work with E-M algebras for the monad T Σ Together with : λ : Σ (Id × B ) = ⇒ BT Σ zip CMCS, Paphos, 27/03/10 17 / 37

  31. Look-ahead CMCS, Paphos, 27/03/10 18 / 37

  32. Look-ahead a 1 , a 2 , a 3 , a 4 , a 5 , . . . odd odd : Z → Z a 1 , a 3 , a 5 , a 7 , ... CMCS, Paphos, 27/03/10 18 / 37

  33. Look-ahead a 1 , a 2 , a 3 , a 4 , a 5 , . . . odd odd : Z → Z a 1 , a 3 , a 5 , a 7 , ... a b x − → y − → z a odd ( x ) → odd ( z ) − CMCS, Paphos, 27/03/10 18 / 37

  34. Look-ahead a 1 , a 2 , a 3 , a 4 , a 5 , . . . odd odd : Z → Z a 1 , a 3 , a 5 , a 7 , ... a b x − → y − → z λ : Σ D B = ⇒ B Σ a odd ( x ) → odd ( z ) − CMCS, Paphos, 27/03/10 18 / 37

  35. Look-ahead a 1 , a 2 , a 3 , a 4 , a 5 , . . . odd odd : Z → Z a 1 , a 3 , a 5 , a 7 , ... a b x − → y − → z λ : Σ D B = ⇒ B Σ a odd ( x ) → odd ( z ) − cofree comonad over B CMCS, Paphos, 27/03/10 18 / 37

  36. � � Look-ahead a 1 , a 2 , a 3 , a 4 , a 5 , . . . odd odd : Z → Z a 1 , a 3 , a 5 , a 7 , ... a b x − → y − → z λ : Σ D B = ⇒ B Σ a odd ( x ) → odd ( z ) − cofree comonad over B Σ z ♭ � Σ D B Z λ Z � B Σ Z Σ Z g Bg � BZ Z z CMCS, Paphos, 27/03/10 18 / 37

  37. � � Monad over comonad The general case: λ : T Σ D B = ⇒ D B T Σ subject to laws T Σ z � T Σ D B Z λ z � D B T Σ Z T Σ Z g D B g � D B Z Z z CMCS, Paphos, 27/03/10 19 / 37

  38. � � Monad over comonad The general case: λ : T Σ D B = ⇒ D B T Σ subject to laws T Σ z � T Σ D B Z λ z � D B T Σ Z T Σ Z g D B g � D B Z Z z This subsumes all previous cases. CMCS, Paphos, 27/03/10 19 / 37

  39. III. STRUCTURAL OPERATIONAL SEMANTICS CMCS, Paphos, 27/03/10 20 / 37

  40. III. STRUCTURAL OPERATIONAL SEMANTICS BX = ( P ω X ) A CMCS, Paphos, 27/03/10 20 / 37

  41. Toy SOS example Σ X = 1 + A + X 2 BX = ( P ω X ) A a a → x ′ → y ′ − − x y a → x ′ ⊗ y ′ a x ⊗ y − → nil a − This defines: λ : Σ B = ⇒ B Σ CMCS, Paphos, 27/03/10 21 / 37

  42. Toy SOS example Σ X = 1 + A + X 2 BX = ( P ω X ) A a a → x ′ → y ′ − − x y a → x ′ ⊗ y ′ a x ⊗ y − → nil a − This defines: λ : Σ B = ⇒ B Σ Fact: the LTS induced by the rules is the initial -bialgebra. λ Hence, bisimilarity on it is a congruence. CMCS, Paphos, 27/03/10 21 / 37

  43. GSOS Laws correspond to rules: λ : Σ (Id × B ) = ⇒ BT Σ a ij b ik → y ij } 1 ≤ i ≤ n → } 1 ≤ i ≤ n { x i { x i � − − 1 ≤ j ≤ m i 1 ≤ k ≤ l i c f ( x 1 , . . . , x n ) − → t where - , are all distinct y ij x i - no other variables occur in t - there are finitely many rules for every , f c CMCS, Paphos, 27/03/10 22 / 37

  44. GSOS Laws correspond to rules: λ : Σ (Id × B ) = ⇒ BT Σ a ij b ik → y ij } 1 ≤ i ≤ n → } 1 ≤ i ≤ n { x i { x i � − − 1 ≤ j ≤ m i 1 ≤ k ≤ l i c f ( x 1 , . . . , x n ) − → t where no lookahead - , are all distinct y ij x i - no other variables occur in t - there are finitely many rules for every , f c CMCS, Paphos, 27/03/10 22 / 37

  45. GSOS Laws correspond to rules: λ : Σ (Id × B ) = ⇒ BT Σ a ij b ik → y ij } 1 ≤ i ≤ n → } 1 ≤ i ≤ n { x i { x i � − − 1 ≤ j ≤ m i 1 ≤ k ≤ l i c f ( x 1 , . . . , x n ) − → t where - , are all distinct y ij x i - no other variables occur in t - there are finitely many rules for every , f c CMCS, Paphos, 27/03/10 22 / 37

  46. GSOS Laws correspond to rules: λ : Σ (Id × B ) = ⇒ BT Σ a ij b ik → y ij } 1 ≤ i ≤ n → } 1 ≤ i ≤ n { x i { x i � − − 1 ≤ j ≤ m i 1 ≤ k ≤ l i c f ( x 1 , . . . , x n ) − → t where - , are all distinct y ij x i - no other variables occur in t - there are finitely many rules for every , f c This is GSOS, where bisimilarity is a congruence. CMCS, Paphos, 27/03/10 22 / 37

  47. Safe ntree Laws correspond to rules: λ : Σ D B = ⇒ B (Id + Σ ) b j a i { z i → y i } i ∈ I { w j � → } j ∈ J − − c f ( x 1 , . . . , x n ) − → t where - , are all distinct y i x i - no other variables occur in the rule - the graph of premises is well-founded - has depth at most 1 t - there are finitely many rules for every , f c CMCS, Paphos, 27/03/10 23 / 37

  48. Safe ntree Laws correspond to rules: λ : Σ D B = ⇒ B (Id + Σ ) b j a i { z i → y i } i ∈ I { w j � → } j ∈ J − − c f ( x 1 , . . . , x n ) − → t where - , are all distinct y i x i - no other variables occur in the rule - the graph of premises is well-founded - has depth at most 1 t - there are finitely many rules for every , f c This is the “safe” ntree format. CMCS, Paphos, 27/03/10 23 / 37

  49. Monad over comonad? complex successors λ : Σ (Id × B ) = ⇒ BT Σ look-ahead λ : Σ D B = ⇒ B (Id + Σ ) both? λ : T Σ D B = ⇒ D B T Σ CMCS, Paphos, 27/03/10 24 / 37

  50. Monad over comonad? complex successors λ : Σ (Id × B ) = ⇒ BT Σ look-ahead λ : Σ D B = ⇒ B (Id + Σ ) both? λ : T Σ D B = ⇒ D B T Σ But: a b − → y y � − → x a b → f ( k ) k f ( x ) − → k − does not induce an LTS! CMCS, Paphos, 27/03/10 24 / 37

  51. IV . FURTHER DEVELOPMENTS CMCS, Paphos, 27/03/10 25 / 37

  52. Probabilistic (reactive) GSOS BX = (1 + D ω X ) A D ω X = { φ : X → R + 0 | ♯ supp( φ ) < ω , � x φ ( x ) = 1 } λ : Σ (Id × B ) = ⇒ BT Σ ⇐ ⇒ � � � � � b j � a a − → x i � − → − → y j x i x i j a ∈ D i a ∈ B i 1 ≤ j ≤ k c,w f ( x 1 , . . . , x n ) − → t Probabilistic bisimilarity is a congruence. CMCS, Paphos, 27/03/10 26 / 37

  53. Stochastic GSOS BX = ( F X ) A F X = { φ : X → R + 0 | ♯ supp( φ ) < ω } λ : Σ (Id × B ) = ⇒ BT Σ ⇐ ⇒ � � � b j � a @ w ai x i x i j → y j − → − a ∈ D i , 1 ≤ i ≤ n 1 ≤ j ≤ k c,w f ( x 1 , . . . , x n ) → t − Stochastic bisimilarity is a congruence. CMCS, Paphos, 27/03/10 27 / 37

  54. Weighted GSOS BX = ( F X ) A F X = { φ : X → W | ♯ supp( φ ) < ω } λ : Σ (Id × B ) = ⇒ BT Σ ⇒ = � � b j � � a x i x i j → y j → w a,i − − a ∈ D i , 1 ≤ i ≤ n 1 ≤ j ≤ k c, β f ( x 1 , . . . , x n ) → t − Weighted bisimilarity is a congruence. CMCS, Paphos, 27/03/10 28 / 37

  55. Weighted GSOS any comm. monoid BX = ( F X ) A F X = { φ : X → W | ♯ supp( φ ) < ω } λ : Σ (Id × B ) = ⇒ BT Σ ⇒ = � � b j � � a x i x i j → y j → w a,i − − a ∈ D i , 1 ≤ i ≤ n 1 ≤ j ≤ k c, β f ( x 1 , . . . , x n ) → t − Weighted bisimilarity is a congruence. CMCS, Paphos, 27/03/10 28 / 37

  56. Timed SOS BX = {T ⇀ X | . . . } T a time domain (a comm. monoid with cancellation and linear specialization order) λ : T Σ D B = ⇒ D B T Σ ⇐ ⇒ t i { x i (0) → x i ( t i ) | t i ∈ T ∧ x i ( t i ) ↓ } 1 ≤ i ≤ n − t f ( x 1 (0) , . . . , x n (0)) → θ t − CMCS, Paphos, 27/03/10 29 / 37

  57. Name-passing GSOS Another underlying category: Nom (actually a bit more complicated...) λ : Σ ( | − | × B | − | ) = ⇒ BT Σ | − | ⇒ = c ?( a ) c ! d x → x ′ y → y ′ − − τ x || y → y || ([ d/a ] y ′ ) − “Wide open” bisimilarity a congruence. CMCS, Paphos, 27/03/10 30 / 37

  58. Other work - The “microcosm” interpretation GSOS rules operations on coalgebras CMCS, Paphos, 27/03/10 31 / 37

Recommend


More recommend