Cells as Machines:
towards Deciphering
Biochemical Programs in the Cell
François Fages
Inria Saclay-Ile de France http://lifeware.inria.fr
To master the complexity of cell processes, investigate:
• Programming theory concepts
• Formal methods of circuit and program verification
• Parameter search and optimization algorithms
• Theory of analog computation (new in this course)
Context: Systems Biology
Gain system-level understanding of multi-scale biological processes in terms of their elementary interactions at the molecular level. [Kitano 1999]
Cell mitosis [Lodish et al. 03] controlled by protein complex cdk1-cycB
Follow-up of Human Genome Project (90s), beyond genomic data:
à Creation of protein-protein interaction databases, RNAs, …
à Model repositories of cell processes : e.g. biomodels.net1000 models à Systems Biology Markup Language (SBML): model exchange format
à Modeling software (Cell designer, Cytoscape, Copasi, KaSim, BIOCHAM,…) à Simulation of a whole-cell mycoplasma genitalium [Karr Covert et al 12]
Biochemical reactions
• Binding, complexation: 𝐴 + 𝐵 → 𝐶
𝑐𝑑𝑘1 + 𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵
• Unbinding, decomplexation: 𝐴 → 𝐵 + 𝐶
+ ↔
Biochemical reactions
• Binding, complexation: 𝐴 + 𝐵 → 𝐶
𝑐𝑑𝑘1 + 𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵
• Unbinding, decomplexation: 𝐴 → 𝐵 + 𝐶
• Transformation, phosphorylation, transport: 𝐴 → 𝐵 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵𝑝
→
Biochemical reactions
• Binding, complexation: 𝐴 + 𝐵 → 𝐶
𝑐𝑑𝑘1 + 𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵
• Unbinding, decomplexation: 𝐴 → 𝐵 + 𝐶
• Transformation, phosphorylation, transport: 𝐴 → 𝐵 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵𝑝
• Gene expression, synthesis: 𝐴 → 𝐴 + 𝐵
𝐸2𝐹𝑎 → 𝐸2𝐹𝑎 + 𝑅𝑁𝐴𝑐𝑦𝑐𝐴
How to Program with Biochemical Reactions?
• Binding, complexation: 𝐴 + 𝐵 → 𝐶
𝑐𝑑𝑘1 + 𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵
• Unbinding, decomplexation: 𝐴 → 𝐵 + 𝐶
• Transformation, phosphorylation, transport: 𝐴 → 𝐵 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵𝑝
• Gene expression, synthesis: 𝐴 → 𝐴 + 𝐵
𝐸2𝐹𝑎 → 𝐸2𝐹𝑎 + 𝑅𝑁𝐴𝑐𝑦𝑐𝐴
• Degradation: 𝐴 → _
Biochemical reaction rates
• Binding, complexation: 𝐴 + 𝐵 4.6.7 𝐶
𝑐𝑑𝑘1 + 𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵
• Unbinding, decomplexation: 𝐴 4.6 𝐵 + 𝐶
• Transformation, phosphorylation, transport: 𝐴 8.6/(4;6) 𝐵
𝑐𝑑𝑘1𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵𝑝
• Gene expression, synthesis: 𝐴 8.6=/(4;6=) 𝐴 + 𝐵
𝐸2𝐹𝑎 → 𝐸2𝐹𝑎 + 𝑅𝑁𝐴𝑐𝑦𝑐𝐴
• Degradation: 𝐴 4.6 _
Biochemical reaction rates
• Binding, complexation: 𝐴 + 𝐵 4.6.7 𝐶
𝑐𝑑𝑘1 + 𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵
• Unbinding, decomplexation: 𝐴 4.6 𝐵 + 𝐶
• Transformation, phosphorylation, transport: 𝐴 8.6/(4;6) 𝐵
𝑐𝑑𝑘1𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵𝑝
• Gene expression, synthesis: 𝐴 8.6=/(4;6=) 𝐴 + 𝐵
𝐸2𝐹𝑎 → 𝐸2𝐹𝑎 + 𝑅𝑁𝐴𝑐𝑦𝑐𝐴
• Degradation: 𝐴 4.6 _
Biochemical reaction rates
• Binding, complexation: 𝐴 + 𝐵 4.6.7 𝐶
𝑐𝑑𝑘1 + 𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵
• Unbinding, decomplexation: 𝐴 4.6 𝐵 + 𝐶
• Transformation, phosphorylation, transport: 𝐴 8.6/(4;6) 𝐵 (𝐴 + 𝐸 → 𝐶 → 𝐵 + 𝐸)
𝑐𝑑𝑘1𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵𝑝
• Gene expression, synthesis: 𝐴 8.6=/(4;6=) 𝐴 + 𝐵
𝐸2𝐹𝑎 → 𝐸2𝐹𝑎 + 𝑅𝑁𝐴𝑐𝑦𝑐𝐴
• Degradation: 𝐴 4.6 _
Biochemical reaction rates
• Binding, complexation: 𝐴 + 𝐵 4.6.7 𝐶
𝑐𝑑𝑘1 + 𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵
• Unbinding, decomplexation: 𝐴 4.6 𝐵 + 𝐶
• Transformation, phosphorylation, transport: 𝐴 8.6/(4;6) 𝐵
𝑐𝑑𝑘1𝑐𝑦𝑐𝐵 → 𝑐𝑑𝑘1𝑐𝑦𝑐𝐵𝑝
• Gene expression, synthesis: 𝐴 8.6=/(4;6=) 𝐴 + 𝐵
𝐸2𝐹𝑎 → 𝐸2𝐹𝑎 + 𝑅𝑁𝐴𝑐𝑦𝑐𝐴
• Degradation: 𝐴 4.6 _
Boolean Semantics: presence-absence of molecules A Ù B → C Ù A/¬A Ù B/¬B Asynchronous Transition System
Semantics of Reactions A+B 𝒇(𝑨,𝑩) C
Boolean Semantics: presence-absence of molecules A Ù B → C Ù A/¬A Ù B/¬B Asynchronous Transition System
Petri Net Semantics: numbers of molecules A , B → C++, A--, B--
Multiset rewriting CHAM [Berry Boudol 90] [Banatre Le Metayer 86]
Semantics of Reactions A+B 𝒇(𝑨,𝑩) C
Boolean Semantics: presence-absence of molecules A Ù B → C Ù A/¬A Ù B/¬B Asynchronous Transition System
Petri Net Semantics: numbers of molecules A , B → C++, A--, B--
Multiset rewriting CHAM [Berry Boudol 90] [Banatre Le Metayer 86]
Stochastic Semantics: reaction probabilities, time of next reaction in a given state Si
Continuous Time Markov Chain (CTMC) A , B𝒑 𝑺𝒊 , 𝒕(𝑺𝒊) C++, A--, B--
Semantics of Reactions A+B 𝒇(𝑨,𝑩) C
Boolean Semantics: presence-absence of molecules A Ù B → C Ù A/¬A Ù B/¬B Asynchronous Transition System
Petri Net Semantics: numbers of molecules A , B → C++, A--, B--
Multiset rewriting CHAM [Berry Boudol 90] [Banatre Le Metayer 86]
Stochastic Semantics: reaction probabilities, time of next reaction in a given state Si
Continuous Time Markov Chain (CTMC) A , B𝒑 𝑺𝒊 , 𝒕(𝑺𝒊) C++, A--, B--
Semantics of Reactions A+B 𝒇(𝑨,𝑩) C
Boolean Semantics: presence-absence of molecules A Ù B → C Ù A/¬A Ù B/¬B Asynchronous Transition System
Petri Net Semantics: numbers of molecules A , B → C++, A--, B--
Multiset rewriting CHAM [Berry Boudol 90] [Banatre Le Metayer 86]
Stochastic Semantics: reaction probabilities, time of next reaction in a given state Si
Continuous Time Markov Chain (CTMC) A , B𝒑 𝑺𝒊 , 𝒕(𝑺𝒊) C++, A--, B--
Continuous Semantics: concentrations, continuous evolution
Ordinary Differential Equations (ODE)
𝐴 ̇ = ∑
𝑖 NOPQf
𝑟𝗑 δ
𝑟(𝐴𝑖)
Semantics of Reactions A+B 𝒇(𝑨,𝑩) C
Abstraction Relationships
Stochastic traces Petri net traces abstract
concrete
Boolean traces
Theory of abstract Interpretation Abstractions as Galois connections
[Cousot Cousot POPL’77]
Thm. Galois connections between the syntactical, stochastic, Petri Net and Boolean semantics
[FF Soliman CMSB’06,TCS’08]
Reaction sets
ODE traces
Abstraction Relationships
Stochastic traces Petri net traces abstract
concrete
Boolean traces
Theory of abstract Interpretation Abstractions as Galois connections
[Cousot Cousot POPL’77]
Thm. Galois connections between the syntactical, stochastic, Petri Net and Boolean semantics
[FF Soliman CMSB’06,TCS’08]
Reactions
ODE traces
Abstraction Relationships
Stochastic traces
ODE traces Petri net traces
abstract
concrete
Boolean traces
Thm. Under large number conditions the ODE semantics approximates
the mean stochastic behavior
[Gillespie 71]
Reactions
Abstraction Relationships
Stochastic traces
ODE traces Petri net traces
abstract
concrete
Boolean traces
Thm. Under large number conditions the ODE semantics approximates
the mean stochastic behavior
[Gillespie 71]
Reactions
TD 1: Lotka-Volterra Prey-Predator Model
1. Connect to http://lifeware.inria.fr/biocham4
2. Open examples/MPRI
3. Run the notebook TD1_lotka_volterra.ipynb
4. Change parameters using %slider k1 k2 k3
5. Add immigration and emigration reactions
Hybrid Models
Stochastic traces
ODE traces Petri net traces
abstract
concrete
Boolean traces
• Hybrid Boolean-continuous models (hybrid automata)
Boolean gene expression + continuous protein activation
• Hybrid stochastic-continuous models (CTMC+ODE)
Stochastic gene expression + continuous protein activation Specification of hybrid simulators
with reactions+events in SBML
[Chiang FF Huang Soliman 13 cmsb]
Reactions
Hybrid Models
Stochastic traces
ODE traces Petri net traces
abstract
concrete
Boolean traces
• Hybrid Boolean-continuous models (hybrid automata)
Boolean gene expression + continuous protein activation
• Hybrid stochastic-continuous models (CTMC+ODE)
Stochastic gene expression + continuous protein activation Specification of hybrid simulators
with reactions+events in SBML
[Chiang FF Huang Soliman 13 cmsb]
Reactions
Compiling Real Functions in Reaction Systems
biocham: compile_from_expression(cos,time,cos(t)).
present(cos(t)_p,1).
_=[z_p_2]=>cos(t)_p.
_=[z_m_2]=>cos(t)_m.
_=[cos(t)_m]=>z_p_2.
_=[cos(t)_p]=>z_m_2.
biocham: present(x_p, 4).
biocham: compile_from_expression(cos,x,cos(x)).
present(cos(x)_p, 1).
_=[g_m]=>g_p. _=[g_m+cos(x)_m]=>z_p_4.
_=[x_p]=>g_p. _=[g_p+cos(x)_p]=>z_p_4.
_=[g_p]=>g_m. _=[x_p+cos(x)_m]=>z_p_4.
_=[x_m]=>g_m. _=[x_m+cos(x)_p]=>z_p_4.
_=[g_m+z_p_4]=>cos(x)_p. _=[g_m+cos(x)_p]=>z_m_4.
_=[g_p+z_m_4]=>cos(x)_p. _=[g_p+cos(x)_m]=>z_m_4.
_=[x_m+z_m_4]=>cos(x)_p. _=[x_m+cos(x)_m]=>z_m_4.
_=[x_p+z_p_4]=>cos(x)_p. _=[x_p+cos(x)_p]=>z_m_4.
_=[g_m+z_m_4]=>cos(x)_m. _=[x_p+cos(x)_p]=>z_m_4.
Roadmap of the Lectures
19 Jan 2017:
• Introduction to biochemical programming
• Continuous semantics by ordinary differential equations
• Chemical master equation and moment closures
• Exercises: kinetics of enzymatic reactions 26 Jan 2017:
• Hierarchies of model reductions by subgraph epimorphisms
• Hierarchy of semantics and types by abstract interpretation
• Reaction hypergraph and influence graph
• Exercises: analysis of MAPK signaling models 2 Feb 2017:
• Specification of qualitative dynamical behaviors in temporal logic CTL
• Symbolic model-checking and model reductions preserving CTL properties
• Specification of quantitative dynamical behaviors in first-order temporal logic LTL(Rlin)
• Exercises: verification and synthesis of cell cycle models 9 Feb 2017:
• Parameter search in high dimension with LTL(Rlin) constraints
• Robustness of LTL(Rlin) properties
• Compiling programs in biochemical reactions
• Conclusion on hot research topics
• Exercises: designing a biosensor in non-living vesicles