SOS and Modal Logic Revisited Bartek Klin University of Cambridge, Warsaw University CMCS, Paphos, 26/03/10
SOS and distributive laws t ::= nil | a | t ⊗ t a a x � → y � − → y − x a a x ⊗ x � → y ⊗ y � a → nil − − CMCS, Paphos, 26/03/10 2 / 11
SOS and distributive laws t ::= nil | a | t ⊗ t Σ X = 1 + A + X 2 a a x � → y � − → y − x a a x ⊗ x � → y ⊗ y � a → nil − − CMCS, Paphos, 26/03/10 2 / 11
SOS and distributive laws t ::= nil | a | t ⊗ t Σ X = 1 + A + X 2 BX = ( P ω X ) A a a x � → y � − → y − x a a x ⊗ x � → y ⊗ y � a → nil − − CMCS, Paphos, 26/03/10 2 / 11
SOS and distributive laws t ::= nil | a | t ⊗ t Σ X = 1 + A + X 2 BX = ( P ω X ) A a a x � → y � − → y − x λ : Σ B = ⇒ B Σ a a x ⊗ x � → y ⊗ y � a → nil − − CMCS, Paphos, 26/03/10 2 / 11
SOS and distributive laws t ::= nil | a | t ⊗ t Σ X = 1 + A + X 2 BX = ( P ω X ) A a a x � → y � − → y − x λ : Σ B = ⇒ B Σ a a x ⊗ x � → y ⊗ y � a → nil − − λ X ( nil )( a ) = ∅ � ⇐ b = a { nil } λ X ( a )( b ) = ∅ ⇐ b � = a λ X ( β ⊗ β ′ )( a ) = { y ⊗ y ′ | y ∈ β ( a ) , y ′ ∈ β ′ ( a ) } CMCS, Paphos, 26/03/10 2 / 11
SOS and distributive laws t ::= nil | a | t ⊗ t Σ X = 1 + A + X 2 BX = ( P ω X ) A a a x � → y � − → y − x λ : Σ B = ⇒ B Σ a a x ⊗ x � → y ⊗ y � a → nil − − CMCS, Paphos, 26/03/10 2 / 11
� � � SOS and distributive laws t ::= nil | a | t ⊗ t Σ X = 1 + A + X 2 BX = ( P ω X ) A a a x � → y � − → y − x λ : Σ B = ⇒ B Σ a a x ⊗ x � → y ⊗ y � a → nil − − a -terms Σ A A Σ Σ h h � B Σ A � BA Σ BA λ A Ba CMCS, Paphos, 26/03/10 2 / 11
� � � SOS and distributive laws t ::= nil | a | t ⊗ t Σ X = 1 + A + X 2 BX = ( P ω X ) A a a x � → y � − → y − x λ : Σ B = ⇒ B Σ a a x ⊗ x � → y ⊗ y � a → nil − − a -terms Σ A A Σ Σ h h � B Σ A � BA Σ BA λ A Ba Fact: Bisimilarity is a congruence (for any ) λ CMCS, Paphos, 26/03/10 2 / 11
Predicate liftings BX = ( P ω X ) A Modal logic: φ ::= ⊤ | � a � φ CMCS, Paphos, 26/03/10 3 / 11
Predicate liftings BX = ( P ω X ) A Modal logic: φ ::= ⊤ | � a � φ = ⊤ always x | a x | = � a � φ ⇐ ⇒ ∃ x − → y. y | = φ CMCS, Paphos, 26/03/10 3 / 11
Predicate liftings BX = ( P ω X ) A Modal logic: φ ::= ⊤ | � a � φ | ∅ = ⊤ always x | a x | = � a � φ ⇐ ⇒ ∃ x − → y. y | = φ CMCS, Paphos, 26/03/10 3 / 11
Predicate liftings BX = ( P ω X ) A Modal logic: φ ::= ⊤ | � a � φ | ∅ = ⊤ always x | a x | = � a � φ ⇐ ⇒ ∃ x − → y. y | = φ x | = ∅ ⇐ ⇒ x �− → CMCS, Paphos, 26/03/10 3 / 11
Predicate liftings BX = ( P ω X ) A Modal logic: φ ::= ⊤ | � a � φ | ∅ | φ ∧ φ = ⊤ always x | a x | = � a � φ ⇐ ⇒ ∃ x − → y. y | = φ x | = ∅ ⇐ ⇒ x �− → CMCS, Paphos, 26/03/10 3 / 11
Predicate liftings BX = ( P ω X ) A Modal logic: φ ::= ⊤ | � a � φ | ∅ | φ ∧ φ = ⊤ always x | a x | = � a � φ ⇐ ⇒ ∃ x − → y. y | = φ x | = ∅ ⇐ ⇒ x �− → x | ⇒ x | = φ , x | = φ ∧ ψ ⇐ = ψ CMCS, Paphos, 26/03/10 3 / 11
Predicate liftings BX = ( P ω X ) A Modal logic: φ ::= ⊤ | � a � φ | ∅ | φ ∧ φ = ⊤ always x | a x | = � a � φ ⇐ ⇒ ∃ x − → y. y | = φ x | = ∅ ⇐ ⇒ x �− → x | ⇒ x | = φ , x | = φ ∧ ψ ⇐ = ψ Predicate liftings: β : B (2 n ) → 2 2 = { tt , ff } CMCS, Paphos, 26/03/10 3 / 11
Predicate liftings BX = ( P ω X ) A Modal logic: φ ::= ⊤ | � a � φ | ∅ | φ ∧ φ = ⊤ always x | a x | = � a � φ ⇐ ⇒ ∃ x − → y. y | = φ x | = ∅ ⇐ ⇒ x �− → x | ⇒ x | = φ , x | = φ ∧ ψ ⇐ = ψ Predicate liftings: β : B (2 n ) → 2 2 = { tt , ff } ⊤ ( β ) = tt ⊤ : B 1 → 2 � a � ( β ) = tt ⇐ ⇒ tt ∈ β ( a ) � a � : B 2 → 2 ∅ ( β ) = tt ⇐ ⇒ ∀ a ∈ A. β ( a ) = ∅ ∅ : B 1 → 2 CMCS, Paphos, 26/03/10 3 / 11
Predicate liftings BX = ( P ω X ) A Modal logic: φ ::= ⊤ | � a � φ | ∅ | φ ∧ φ = ⊤ always x | a x | = � a � φ ⇐ ⇒ ∃ x − → y. y | = φ x | = ∅ ⇐ ⇒ x �− → x | ⇒ x | = φ , x | = φ ∧ ψ ⇐ = ψ Predicate liftings: β : B (2 n ) → 2 2 = { tt , ff } ⊤ ( β ) = tt ⊤ : B 1 → 2 � a � ( β ) = tt ⇐ ⇒ tt ∈ β ( a ) � a � : B 2 → 2 ∅ ( β ) = tt ⇐ ⇒ ∀ a ∈ A. β ( a ) = ∅ ∅ : B 1 → 2 � a � ( − 1 ∧ · · · ∧ − n ) : B 2 n → 2 � a � ( − 1 ∧ · · · ∧ − n )( β ) = tt ⇐ ⇒ ( tt , . . . , tt ) ∈ β ( a ) CMCS, Paphos, 26/03/10 3 / 11
Predicate liftings for syntax t ::= nil | a | t ⊗ t Σ X = 1 + A + X 2 CMCS, Paphos, 26/03/10 4 / 11
Predicate liftings for syntax t ::= nil | a | t ⊗ t Σ X = 1 + A + X 2 T ( t ) = tt T : Σ 1 → 2 a ( t ) = tt ⇐ ⇒ t = a a : Σ 1 → 2 [ ⊗ ]( t ) = tt ⇐ ⇒ t = tt ⊗ tt [ ⊗ ] : Σ 2 → 2 ⇒ t = v ⊗ v ′ , tt ∈ { v, v ′ } �⊗� : Σ 2 → 2 �⊗� ( t ) = tt ⇐ CMCS, Paphos, 26/03/10 4 / 11
Predicate liftings for syntax t ::= nil | a | t ⊗ t Σ X = 1 + A + X 2 T ( t ) = tt T : Σ 1 → 2 a ( t ) = tt ⇐ ⇒ t = a a : Σ 1 → 2 [ ⊗ ]( t ) = tt ⇐ ⇒ t = tt ⊗ tt [ ⊗ ] : Σ 2 → 2 ⇒ t = v ⊗ v ′ , tt ∈ { v, v ′ } �⊗� : Σ 2 → 2 �⊗� ( t ) = tt ⇐ − 1 ⊗ − 2 : Σ 2 2 → 2 a ∨ [ ⊗ ] : Σ 2 → 2 etc. CMCS, Paphos, 26/03/10 4 / 11
Construction of liftings Variable renaming: β : B 2 n → 2 f : n → m β | f : B 2 m → 2 CMCS, Paphos, 26/03/10 5 / 11
Construction of liftings Variable renaming: β : B 2 n → 2 x 1 ⊗ x 2 : Σ 2 2 → 2 f : n → m x ⊗ x : Σ 2 → 2 β | f : B 2 m → 2 = [ ⊗ ] x CMCS, Paphos, 26/03/10 5 / 11
Construction of liftings Variable renaming: β : B 2 n → 2 x 1 ⊗ x 2 : Σ 2 2 → 2 f : n → m x ⊗ x : Σ 2 → 2 β | f : B 2 m → 2 = [ ⊗ ] x Composition: σ i : Σ 2 m i → 2 � � β : B 2 n → 2 i =1 ,...,n β ( σ 1 , . . . , σ n ) : B Σ 2 m → 2 m = � m i =1 m i CMCS, Paphos, 26/03/10 5 / 11
Example BX = ( P ω X ) A Σ X = 1 + A + X 2 [ ⊗ ] : Σ 2 → 2 � a � : B 2 → 2 CMCS, Paphos, 26/03/10 6 / 11
Example BX = ( P ω X ) A Σ X = 1 + A + X 2 [ ⊗ ] : Σ 2 → 2 � a � : B 2 → 2 [ ⊗ ] � a � : Σ B 2 → 2 � a � [ ⊗ ] : B Σ 2 → 2 CMCS, Paphos, 26/03/10 6 / 11
Example BX = ( P ω X ) A Σ X = 1 + A + X 2 [ ⊗ ] : Σ 2 → 2 � a � : B 2 → 2 a a x � → y � − → y − x [ ⊗ ] � a � : Σ B 2 → 2 a a x ⊗ x � → y ⊗ y � a → nil − − � a � [ ⊗ ] : B Σ 2 → 2 λ : Σ B = ⇒ B Σ CMCS, Paphos, 26/03/10 6 / 11
Example BX = ( P ω X ) A Σ X = 1 + A + X 2 [ ⊗ ] : Σ 2 → 2 � a � : B 2 → 2 a a x � → y � − → y − x [ ⊗ ] � a � : Σ B 2 → 2 a a x ⊗ x � → y ⊗ y � a → nil − − � a � [ ⊗ ] : B Σ 2 → 2 λ : Σ B = ⇒ B Σ � a � [ ⊗ ] ◦ λ 2 : Σ B 2 → 2 CMCS, Paphos, 26/03/10 6 / 11
Example BX = ( P ω X ) A Σ X = 1 + A + X 2 [ ⊗ ] : Σ 2 → 2 � a � : B 2 → 2 a a x � → y � − → y − x [ ⊗ ] � a � : Σ B 2 → 2 a a x ⊗ x � → y ⊗ y � a → nil − − λ : Σ B = ⇒ B Σ � a � [ ⊗ ] ◦ λ 2 : Σ B 2 → 2 CMCS, Paphos, 26/03/10 6 / 11
Example BX = ( P ω X ) A Σ X = 1 + A + X 2 [ ⊗ ] : Σ 2 → 2 � a � : B 2 → 2 a a x � → y � − → y − x [ ⊗ ] � a � : Σ B 2 → 2 a a x ⊗ x � → y ⊗ y � a → nil − − = λ : Σ B = ⇒ B Σ � a � [ ⊗ ] ◦ λ 2 : Σ B 2 → 2 CMCS, Paphos, 26/03/10 6 / 11
Valid equations β ( σ 1 ( x 11 , . . . , x 1 n 1 ) , . . . , σ m ( x m 1 , . . . , x mn m )) = σ ( β 1 ( y 11 , . . . , y 1 k 1 ) , . . . , β l ( y l 1 , . . . , y lk l )) CMCS, Paphos, 26/03/10 7 / 11
Valid equations β ( σ 1 ( x 11 , . . . , x 1 n 1 ) , . . . , σ m ( x m 1 , . . . , x mn m )) = σ ( β 1 ( y 11 , . . . , y 1 k 1 ) , . . . , β l ( y l 1 , . . . , y lk l )) CMCS, Paphos, 26/03/10 7 / 11
Valid equations β ( σ 1 ( x 11 , . . . , x 1 n 1 ) , . . . , σ m ( x m 1 , . . . , x mn m )) = σ ( β 1 ( y 11 , . . . , y 1 k 1 ) , . . . , β l ( y l 1 , . . . , y lk l )) - LHS defines a -lifting B Σ - RHS+ define a -lifting of the same arity. Σ B then use to get a -lifting B Σ λ CMCS, Paphos, 26/03/10 7 / 11
Valid equations β ( σ 1 ( x 11 , . . . , x 1 n 1 ) , . . . , σ m ( x m 1 , . . . , x mn m )) = σ ( β 1 ( y 11 , . . . , y 1 k 1 ) , . . . , β l ( y l 1 , . . . , y lk l )) - LHS defines a -lifting B Σ - RHS+ define a -lifting of the same arity. Σ B then use to get a -lifting B Σ λ The equation is valid if the two -liftings are equal. B Σ CMCS, Paphos, 26/03/10 7 / 11
Recommend
More recommend