a based process calculus for the implementation of
play

@: a -based Process Calculus for the Implementation of - PowerPoint PPT Presentation

@: a -based Process Calculus for the Implementation of Compartmentalised Bio-inspired Calculi Cristian Versari versari(at)cs.unibo.it joint work with Roberto Gorrieri Department of Computer Science University of Bologna International


  1. π @: a π -based Process Calculus for the Implementation of Compartmentalised Bio-inspired Calculi Cristian Versari versari(at)cs.unibo.it joint work with Roberto Gorrieri Department of Computer Science University of Bologna International School on Formal Methods for the Design of Computer, Communication and Software Systems: Computational Systems Biology Versari (UniBO) π @ calculus SFM08-Bio 1 / 42

  2. Outline Introduction Biochemical modelling with the π -Calculus Modelling compartments in π -Calculus Two biologically inspired calculi: Bioambients, Brane π @: a core calculus Encodings of bio-calculi into π @ Conclusion Versari (UniBO) π @ calculus SFM08-Bio 2 / 42

  3. Introduction The π -Calculus Biochemical modelling with the π -Calculus Main ideas free floating biochemical elements (e.g. molecules) m 1 , m 2 , . . . = ⇒ parallel processes M 1 , M 2 , . . . ; I/O channel = ⇒ reaction capability; reaction = ⇒ synchronisation/communication; Example � M 1 � · · · � � � � S M 1 � � · · · � M 2 � � M 2 Versari (UniBO) π @ calculus SFM08-Bio 3 / 42

  4. Introduction The π -Calculus Biochemical modelling with the π -Calculus Binary reactions Chemical reaction π -Calculus system M 1 � r . M 3 M 2 � r . M 4 R : m 1 + m 2 → m 3 + m 4 = ⇒ M 1 | M 2 → M 3 | M 4 Example → M 1 | M 1 | · · · | M 2 | M 2 | · · · M 3 | M 1 | · · · | M 4 | M 2 | · · · Versari (UniBO) π @ calculus SFM08-Bio 4 / 42

  5. Introduction The π -Calculus Biochemical modelling with the π -Calculus Mutually exclusive reactions Chemical reaction π -Calculus system M 1 � r 1 . M 4 + r 2 . M 5 R 1 : m 1 + m 2 → m 4 M 2 � = ⇒ r 1 . 0 R 2 : m 1 + m 3 → m 5 M 3 � r 2 . 0 Example Example � � M 3 � � M 2 M 1 | M 2 | M 3 → M 4 M 1 | M 2 | M 3 → M 5 Versari (UniBO) π @ calculus SFM08-Bio 5 / 42

  6. Introduction The π -Calculus Biochemical modelling with the π -Calculus Molecular binding Chemical reaction π -Calculus system M ( b l ) � r � b l � . M l ( b l ) + r ( b r ) . M r ( b l , b r ) R 1 : m 1 + m 1 → m 11 R − M l ( b l ) � r ( b r ) . M lr ( b l , b r ) + b l . M 1 : m 11 → m 1 + m 1 R 11 : m 11 + m 1 → m 111 M r ( b l , b r ) � r � b l � . M lr ( b l , b r ) + b l . M = ⇒ R − 11 : m 111 → m 11 + m 1 M lr ( b l , b r ) � b l . M r ( b r ) . . . Example ν a M ( a ) | ν b M ( b ) | ν c M ( c ) → · · · → ν abc ( M r | M lr | M l ) Versari (UniBO) π @ calculus SFM08-Bio 6 / 42

  7. Introduction Limits Compartments Biological compartments systems organised into complex spatial and functional configurations (organelles, cells, tissues, organs, . . . ) partial mobility of simple elements but also of whole structures (membrane channels, vesicular transport, . . . ) Versari (UniBO) π @ calculus SFM08-Bio 7 / 42

  8. Introduction Limits Static Compartment Modelling Main ideas distinct names for same chemical species in different compartments transport as “renaming” reaction Example m a 1 + m a 2 → m a 3 + m a Compartments A , B R A : 4 = ⇒ m b 1 + m b 2 → m b 3 + m b R : m 1 + m 2 → m 3 + m 4 R B : 4 m a 1 → m b Inter-compartment transport: T AB : 1 Versari (UniBO) π @ calculus SFM08-Bio 8 / 42

  9. Introduction Limits Dynamic Compartment Modelling Example Exocytosis: Problems how to grant that all processes are properly renamed? how to avoid overlapping of compartment operations? Versari (UniBO) π @ calculus SFM08-Bio 9 / 42

  10. Introduction Bio-calculi Bio-inspired Process Calculi with Compartments BioAmbients Brane Calculi Beta-binders Compartments explicitly formalised used at different levels of abstraction represented by ambients/membranes/boxes may be nested dynamical (created, merged/split, . . . ) Versari (UniBO) π @ calculus SFM08-Bio 10 / 42

  11. Introduction Bio-calculi Overview of BioAmbients BioAmbients: Mobile Ambients added with communication primitives compartments are represented by ambients ambients contain processes or nested ambients = ⇒ tree structure special primitives allow π -Calculus-like name communication ambients may exit from, move inside, or merge with other ambients Example � Q � m [ R ] ] � � n [ P Versari (UniBO) π @ calculus SFM08-Bio 11 / 42

  12. Introduction Bio-calculi Ambient capabilities Example Merge: � n [ merge − c . R | S ] → m [ P | Q | R | S ] � m [ merge + c . P | Q ] Versari (UniBO) π @ calculus SFM08-Bio 12 / 42

  13. Introduction Bio-calculi Ambient capabilities Example Enter/accept: m [ enter c . P | Q ] | n [ accept c . R | S ] → n [ R | S | m [ P | Q ] ] Exit/expel: n [ m [ exit c . P | Q ] | expel c . R | S ] → m [ P | Q ] | n [ R | S ] Versari (UniBO) π @ calculus SFM08-Bio 13 / 42

  14. Introduction Bio-calculi Ambient communications Example Local (intra-ambient): m [ local c ! { a } . P | local c ? { x } . Q ] → m [ P | Q { a / x } ] Sibling-to-sibling (inter-ambient): m [ s 2 s c ! { a } . P ] | n [ s 2 s c ? { x } . Q ] → m [ P ] | n [ Q { a / x } ] Versari (UniBO) π @ calculus SFM08-Bio 14 / 42

  15. Introduction Bio-calculi Ambient communications Example Parent-to-child/child-to-parent (inter-ambient, between nested ambients): m [ p 2 c c ! { a } . P | n [ c 2 p c ? { x } . Q ] ] → m [ P | n [ Q { a / x } ] ] Child-to-parent/parent-to-child (inter-ambient, between nested ambients): m [ p 2 c c ? { x } . P | n [ c 2 p c ! { a } . Q ] ] → m [ P { a / x } | n [ Q ] ] Versari (UniBO) π @ calculus SFM08-Bio 15 / 42

  16. Introduction Bio-calculi Overview of Brane Calculi Brane Calculi: membranes as active sites of computation compartments are represented by membranes membranes may contain other membranes in a tree structure processes are located on membranes membranes transformations preserve bitonality Example r | r ′ ( ) ◦ t | t ′ ( | P ◦ s ( | Q | ) | | R | ) Versari (UniBO) π @ calculus SFM08-Bio 16 / 42

  17. Introduction Bio-calculi Bitonal operations Example Exocytosis: � t ′ ( � s ′ ( � s ′ � � t � t ′ ( | exo ⊥ . t � � � � ( | exo . s | P | ) ◦ Q | ) | ) → ( | P ◦ s | Q | ) | ) Versari (UniBO) π @ calculus SFM08-Bio 17 / 42

  18. Introduction Bio-calculi Bitonal operations Example Phagocytosis: phago . s | s ′ ( ) ◦ phago ⊥ ( r ) . t | t ′ ( | s | s ′ ( | P | | Q | ) → t | t 0 ( | r ( | P | ) | ) ◦ Q | ) Versari (UniBO) π @ calculus SFM08-Bio 18 / 42

  19. Introduction Bio-calculi Motivation Bio-inspired process calculi: Pros Cons faithful modelling specialised easy to use (hopefully...) no easy cross coding need to develop new theoretical analyses software tools Motivation what common compartment-related features? what the simplest/minimal language primitives to express all of (most of) them? Versari (UniBO) π @ calculus SFM08-Bio 19 / 42

  20. π @ π @ (paillette): a Conservative Core Calculus Aim To provide a core calculus simple, general purpose embedding the key features of bio-inspired calculi The π @ Calculus [Versari, ESOP’07] π @ ::= π -Calculus + polyadic synchronisation + priority π @ features conservative π -Calculus extension polyadic synchronisation for modeling compartment scoping priority for gaining atomicity of sequences of operations Versari (UniBO) π @ calculus SFM08-Bio 20 / 42

  21. π @ Localisation by means of Polyadic Synchronisation Polyadic synchronisation: channels are identified by one or more names π @ π -Calculus P ≡ c 1 @ c 2 . P ′ P ≡ c . P ′ Compartments may be represented by one of the names of each channel: P ≡ c @ compartment P . P ′ Q ≡ c @ compartment Q . Q ′ P and Q may share free names P and Q may interact iff compartment P = compartment Q Versari (UniBO) π @ calculus SFM08-Bio 21 / 42

  22. π @ Atomicity by means of Priority Priority: high-priority reactions happen before lower-priority ones Example � l . P 2 � h . Q 1 � h . Q 2 � h . Q 1 � h . Q 2 � � � � � � S ≡ l . P 1 → T ≡ P 1 P 2 / � � l . P 2 � h . Q 1 � h . Q 2 � l . P 2 � � � � � � S ≡ l . P 1 → S 2 ≡ l . P 1 Q 1 Q 2 � � � � � → S 3 ≡ P 1 P 2 Q 1 Q 2 � � � Each atomic sequence of operations may be encoded as a low priority reaction followed by an unlimited number of high priority reactions : P 1 ≡ seq 1 . op 11 . op 12 . op 13 P 2 ≡ seq 2 . op 21 . op 22 . op 23 The executions of P 1 and P 2 never overlap Versari (UniBO) π @ calculus SFM08-Bio 22 / 42

  23. π @ π @ Syntax π @ syntax � � � � Q � � P ::= i ∈ I π i . P i P ! P ( ν x ) P � � � � � � � � π ::= τ µ 1 @ · · · @ µ n : k ( x ) µ 1 @ · · · @ µ n : k � x � � � � � each channel is represented by a vector of one or more names µ 1 , . . . , µ n each input or output action has a priority k higher priority actions are executed first priority is static Versari (UniBO) π @ calculus SFM08-Bio 23 / 42

Recommend


More recommend