Measurable Stochastics for Brane Calculus Giorgio Bacci Marino Miculan Department of Mathematics and Computer Science University of Udine, Italy MeCBIC 2010 23rd August 2010, Jena 1 / 23
Stochastic process algebras The semantics of process algebras is classically described by means of Labelled Transition Systems (LTSs) a − → Q P The semantics of stochastic process algebras is classically defined by means of Continuous Time Markov Chains (CTMCs) a , r − − − → Q P rate of an exponentially distributed random variable 2 / 23
Problems with a point-wise stochastic semantics Typically, process algebras are endowed with a structural equivalence relation ≡ equating processes with the same behaviour Example: modeling the parallel operator we expect no differences between Q | R , R | Q , and R | Q | 0 . 3 / 23
Problems with a point-wise stochastic semantics Typically, process algebras are endowed with a structural equivalence relation ≡ equating processes with the same behaviour Example: modeling the parallel operator we expect no differences between Q | R , R | Q , and R | Q | 0 . a , r P − → Q | R 3 / 23
Problems with a point-wise stochastic semantics Typically, process algebras are endowed with a structural equivalence relation ≡ equating processes with the same behaviour Example: modeling the parallel operator we expect no differences between Q | R , R | Q , and R | Q | 0 . a , r P − → Q | R a , r − → R | Q P 3 / 23
Problems with a point-wise stochastic semantics Typically, process algebras are endowed with a structural equivalence relation ≡ equating processes with the same behaviour Example: modeling the parallel operator we expect no differences between Q | R , R | Q , and R | Q | 0 . a , r P − → Q | R a , r − → R | Q P a , r − → R | Q | 0 P 3 / 23
Problems with a point-wise stochastic semantics Typically, process algebras are endowed with a structural equivalence relation ≡ equating processes with the same behaviour Example: modeling the parallel operator we expect no differences between Q | R , R | Q , and R | Q | 0 . a , r P − → Q | R by additivity a , r a , 3 r − → R | Q P P − − → { Q | R , R | Q , R | Q | 0 } a , r − → R | Q | 0 P 3 / 23
A -Markov kernel [Mardare-Cardelli‘10] Mardare and Cardelli generalized the concept of CTMC to generic measurable spaces ( M , Σ): A -Markov kernel: ( M , Σ , θ ) θ : A → � M → ∆( M , Σ) � where measure action label on ( M , Σ) current state 4 / 23
A -Markov kernel [Mardare-Cardelli‘10] Mardare and Cardelli generalized the concept of CTMC to generic measurable spaces ( M , Σ): A -Markov kernel: ( M , Σ , θ ) θ : A → � M → ∆( M , Σ) � where measure action label on ( M , Σ) current state θ ( α )( m ) is a measure on ( M , Σ) 4 / 23
A -Markov kernel [Mardare-Cardelli‘10] Mardare and Cardelli generalized the concept of CTMC to generic measurable spaces ( M , Σ): A -Markov kernel: ( M , Σ , θ ) θ : A → � M → ∆( M , Σ) � where measure action label on ( M , Σ) current state θ ( α )( m ) is a measure on ( M , Σ) θ ( α )( m )( N ) ∈ R + is the rate of m α − → N 4 / 23
Stochastic bisimulation [Mardare-Cardelli‘10] The definition of Markov kernel induces a new definition of stochastic bisimulation Stochastic bisimulation: A rate-bisimulation relation R ⊆ M × M is an equivalence relation such that for all α ∈ A and R -closed measurable sets C ∈ Σ. ( m , n ) ∈ R θ ( α )( m )( C ) = θ ( α )( n )( C ) iff 5 / 23
Stochastic bisimulation [Mardare-Cardelli‘10] The definition of Markov kernel induces a new definition of stochastic bisimulation Stochastic bisimulation: A rate-bisimulation relation R ⊆ M × M is an equivalence relation such that for all α ∈ A and R -closed measurable sets C ∈ Σ. ( m , n ) ∈ R θ ( α )( m )( C ) = θ ( α )( n )( C ) iff we say m and n are stochastic bisimilar, written m ∼ ( M , Σ ,θ ) n , if they are related by a stochastic bisimulation. 5 / 23
Outline of the construction Problem: the definition of a Markov kernel needs a structural presentation of the semantics (SOS). + Brane Calculus + SOS for Brane Calculus + Markov kernel for Brane Calculus 6 / 23
(Finite state) Brane calculus [Cardelli ‘04] k | σ h P i | P m Q Systems P : P , Q ::= nests of membranes 0 | σ | τ | a .σ Membranes M : σ, τ ::= combinations of actions Actions: a , b ::= . . . (not now) σ | τ h P i σ h P i σ σ P P membrane membrane τ contents patches 7 / 23
Brane Calculus Reactions Actions: . . . J n | J I n ( σ ) | K n | K I n | G ( σ ) phago J , exo K , pino G J I τ n ( ρ ) .τ J n .σ ρ σ Q Q τ ′ σ ′ τ ′ phago P σ ′ P K I n .τ σ τ K n .σ σ ′ Q Q τ ′ exo P σ ′ P τ ′ G ( ρ ) .τ τ P P σ pino σ ρ 8 / 23
Reduction Semantics for Brane Calculus } ⊆ P × P Reduction relation (“reaction”): (red-phago) J I n ( ρ ) .τ | τ 0 h Q i m J n .σ | σ 0 h P i } τ | τ 0 h ρ h σ | σ 0 h P ii m Q i (red-exo) K I n .τ | τ 0 hK n .σ | σ 0 h P i m Q i } σ | σ 0 | τ | τ 0 h Q i m P (red-pino) G ( ρ ) .σ | σ 0 h P i } σ | σ 0 h ρ hki m P i P } Q P } Q (red-loc) (red-comp) σ h P i } σ h Q i P m R } Q m R P ′ } Q ′ Q ′ ≡ Q P ≡ P ′ (red-equiv) P } Q 9 / 23
Reduction Semantics for Brane Calculus } ⊆ P × P Reduction relation (“reaction”): (red-phago) J I n ( ρ ) .τ | τ 0 h Q i m J n .σ | σ 0 h P i } τ | τ 0 h ρ h σ | σ 0 h P ii m Q i (red-exo) K I n .τ | τ 0 hK n .σ | σ 0 h P i m Q i } σ | σ 0 | τ | τ 0 h Q i m P (red-pino) G ( ρ ) .σ | σ 0 h P i } σ | σ 0 h ρ hki m P i P } Q P } Q (red-loc) (red-comp) σ h P i } σ h Q i P m R } Q m R P ′ } Q ′ Q ′ ≡ Q P ≡ P ′ (red-equiv) P } Q not structural 9 / 23
Towards a Structural Operational Semantics We give a LTS for the Brane Calculus (along [Rathke-Sobocinski‘08]) Meta-syntax ∗∗ (typed λ -calculus) M ::= 0 | k | α. M | M | M | M m M | M h M i Terms X (variable) λ X : t . M (lambda abstraction) M ( M ) (application) α ::= J n | J I n ( M ) | K n | K I n | G n ( M ) t ::= sys | mem | act | t → t Types (**) It is not a language extension, λ -terms are introduced only for a structural definition of the LTS. 10 / 23
Typing System for Brane Calculus Γ ⊢ M : t (Judgement) environment type Γ: Vars → Types term Γ( X ) = t (var) Γ ⊢ X : t Γ , X : t ⊢ M : t ′ Γ ⊢ M : t → t ′ Γ ⊢ N : t Γ ⊢ λ X : t . M : t → t ′ (lambda) (app) Γ ⊢ M ( N ) : t ′ 11 / 23
Typing System for Brane Calculus Γ ⊢ M : t (Judgement) environment type Γ: Vars → Types term a ∈ { J n , K n , K I a ∈ { J I n , G n } n } Γ ⊢ M : mem (act) (act-arg) Γ ⊢ a : act Γ ⊢ a ( M ) : act 11 / 23
Typing System for Brane Calculus Γ ⊢ M : t (Judgement) environment type Γ: Vars → Types term Γ 1 ⊢ α : act Γ 2 ⊢ M : mem (zero) ( α -pref) Γ ⊢ 0 : mem Γ 1 , Γ 2 ⊢ α. M : mem Γ 1 ⊢ M : mem Γ 2 ⊢ N : mem (par) Γ 1 , Γ 2 ⊢ M | N : mem union of environments supposed to be disjoint 11 / 23
Typing System for Brane Calculus Γ ⊢ M : t (Judgement) environment type Γ: Vars → Types term Γ 1 ⊢ M : mem Γ 2 ⊢ N : sys (void) (loc) Γ ⊢ k : sys Γ 1 , Γ 2 ⊢ M h N i : sys Γ 1 ⊢ M : sys Γ 2 ⊢ N : sys (comp) Γ 1 , Γ 2 ⊢ M m N : sys union of environments supposed to be disjoint 11 / 23
Labelled Transition System (membranes) Labels for mem-transitions: A mem = { J n , J I n ( ρ ) , K n , K I n , G n ( ρ ) } ( J I -pref) ( J -pref) J n .σ J n J I n ( ρ ) − → σ J I n ( ρ ) .σ − − − → σ ( K I -pref) ( K -pref) K n .σ K n K I K I − → σ n n .σ − → σ ( G -pref) G n ( ρ ) G n ( ρ ) .σ − − − → σ σ α σ α → σ ′ → σ ′ − − (L-par) → τ | σ ′ (R-par) α τ | σ α → σ ′ | τ σ | τ − − 12 / 23
Labelled Transition System (systems) Labels for sys-transitions: A + sys = { phago n , phago n , exo n } ∪ { id } Phago fragment ∗∗ J I J n n ( ρ ) σ − → σ ′ σ − − − → σ ′ ( J I ) ( J ) phago n σ h P i → λ Z . Z ( σ ′ h P i ) phago n σ h P i → λ X . σ ′ h ρ h X i m P i − − − − − − − − phago n phago n − − − − → F − − − − → A P P (L mJ I ) (L mJ ) phago n P m Q → λ Z . ( F ( Z ) m Q ) phago n P m Q → λ X . ( A ( X ) m Q ) − − − − − − − − phago n phago n P − − − − → F Q − − − − → A (L-id J ) P m Q id − → F ( A ) (**) Right-symmetric rules are omitted example 13 / 23
Labelled Transition System (systems) Labels for sys-transitions: A + sys = { phago n , phago n , exo n } ∪ { id } Phago fragment ∗∗ J I J n n ( ρ ) σ − → σ ′ σ − − − → σ ′ ( J I ) ( J ) phago n σ h P i → λ Z . Z ( σ ′ h P i ) phago n σ h P i → λ X . σ ′ h ρ h X i m P i − − − − − − − − phago n phago n P − − − − → F P − − − − → A (L mJ I ) (L mJ ) phago n P m Q → λ Z . ( F ( Z ) m Q ) phago n P m Q → λ X . ( A ( X ) m Q ) − − − − − − − − phago n phago n P − − − − → F Q − − − − → A has type has type (L-id J ) (sys → sys) → sys sys → sys P m Q id − → F ( A ) (**) Right-symmetric rules are omitted example 13 / 23
Recommend
More recommend