François Fages ICLP December 2003 Symbolic model checking of biochemical systems Logic programming steps towards formal biology François Fages, INRIA Rocquencourt http://contraintes.inria.fr/ Joint work with and Nathalie Chabrier-Rivier Sylvain Soliman In collaboration with ARC CPBIO http://contraintes.inria.fr/cpbio Alexander Bockmayr, Vincent Danos, Vincent Schächter et al.
47
Embed
François Fages ICLP December 2003 Symbolic model checking of biochemical systems Logic programming steps towards formal biology François Fages, INRIA Rocquencourt.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
François Fages ICLP December 2003
Symbolic model checking of biochemical systemsLogic programming steps towards formal biology
François Fages, INRIA Rocquencourt http://contraintes.inria.fr/
Joint work with andNathalie Chabrier-Rivier Sylvain Soliman
In collaboration with ARC CPBIO http://contraintes.inria.fr/cpbioAlexander Bockmayr, Vincent Danos, Vincent Schächter et al.
François Fages ICLP December 2003
Current revolution in Biology
• Elucidation of high-level biological processes
in terms of their biochemical basis at the molecular level.
• Mass production of genomic and post-genomic data:
ARN expression, protein synthesis, protein-protein interactions,…
• Need for a strong parallel effort on the formal representation of biological processes.
• Need for formal tools for modeling and reasoning about their global behavior.
CLP-based Deductive Model Checker DMC [Delzanno-Podelski 99]
More efficient implementation using state-of-the-art symbolic model-checker NuSMV [Cimatti Clarke Giunchiglia Giunchiglia Pistore 02].
François Fages ICLP December 2003
Plan of the talk
1. Introduction2. A simple algebra of cell molecules3. Concurrent transition systems of biochemical reactions
• Example of the mammalian cell cycle control4. Temporal logic CTL as a query language
• Computational results with BIOCHAM5. Learning models
• An experiment with inductive logic programming6. Quantitative models
• Simulation with differential equations• Constraint-based model checking
7. Conclusion
François Fages ICLP December 2003
4. Temporal Logic CTL as a Query Language
Computation Tree Logic
Time
Non-determinism E, A
F,G,U EF
EU
AG
Choice
Time
E
exists
A
always
X
next time
EX() AX()
F
finally
EF()
AG()
AF()
liveness
G
globally
EG()
AF( )
AG()
safety
U
untilE (U ) A (U )
François Fages ICLP December 2003
Kripke Structures
A Kripke structure K is a triple (S; R; L) where S is a set of states, and RSxS is a total relation.
s |= if is true in s,
s |= E if there is a path from s such that |= ,
s |= A if for every path from s, |= ,
|= if s |= where s is the starting state of ,
|= X if 1 |= ,
|= F if there exists k >0 such that k |= ,
|= G if for every k >0, k |= ,
|= U iff there exists k>0 such that k |= for all j < k j |= Following [Emerson 90] we identify a formula to the set of states which
satisfy it ~ {sS : s |= }.
François Fages ICLP December 2003
Symbolic Model Checking
Model Checking is an algorithm for computing, in a given finite Kripke structure the set of states satisfying a CTL formula: {sS : s |= }.
Basic algorithm: represent K as a graph and iteratively label the nodes with the subformulas of which are true in that node.
Add to the states satisfying Add EF (EX ) to the (immediate) predecessors of states labeled by Add E( U ) to the predecessor states of while they satisfy Add EG to the states for which there exists a path leading to a non
trivial strongly connected component of the subgraph of states satisfying
Symbolic model checking: use OBDDs to represent states and transitions as boolean formulas (S is finite).
François Fages ICLP December 2003
Biological Queries (1/3)
About reachability:
• Given an initial state init, can the cell produce some protein P? init EF(P)
• Which are the states from which a set of products P1,. . . , Pn can be produced simultaneously? EF(P1^…^Pn)
About pathways:
• Can the cell reach a state s while passing by another state s2? init EF(s2^EFs)
• Is state s2 a necessary checkpoint for reaching state s? EF(s2U s)
• Is it possible to produce P without using nor creating Q? EF(Q U s)• Can the cell reach a state s without violating some constraints c? init EF(cUs)
François Fages ICLP December 2003
Biological Queries (2/3)
About stability:
• Is a certain (partially described) state s a stable state? sAG(s) sAG(s) (s denotes both the state and the formula describing it).
• Is s a steady state (with possibility of escaping) ? sEG(s)
• Can the cell reach a stable state? initEF(AG(s))not a LTL formula.
• Must the cell reach a stable state? initAF(AG(s))
• What are the stable states? Not expressible in CTL [Chan 00].
• Can the system exhibit a cyclic behavior w.r.t. the presence of P ? init EG((P EF P) ^ (P EF P))
François Fages ICLP December 2003
Biological Queries (3/3)
About the correctness of the model:
• Can one see the inaccuracies of the model and correct them?
Exhibit a counterexample pathway or a witness. Suggest refinements of the model or biological experiments to validate/invalidate the property of the model.
About durations:
• How long does it take for a molecule to become activated?
• In a given time, how many Cyclins A can be accumulated?
• What is the duration of a given cell cycle’s phase?
CTL operators abstract from durations. Time intervals can be modeled in FO by adding numerical arguments for start times and durations.
The great ambition of logic programming is to make of programming a modeling task in the first place, with equations, constraints and logical formulae.
In this respect, computational molecular biology offers numerous challenges to the logic programming community at large.
Besides combinatorial search and optimization problems coming from molecular biology (DNA and protein sequence comparison, protein structure prediction,…) there is a need to model globally the system at hand and automate reasoning on all its possible behaviors.
François Fages ICLP December 2003
Conclusion
The biochemical abstract machine BIOCHAM project aims at developing:
Qualitative models of complex biochemical processes:• Intracellular and extracellular signaling, cell-cycle control,…
[http://contraintes.inria.fr/CMBSlib]
• Prolog-based implementation + BDD symbolic model-checking • ILP-based learning of models from temporal properties [6thPCRD APRIL 2]
Membranes and transportation not modeledBitonal algebras [Cardelli et al. 03] BioAmbients, Brane calculi [Cardelli et al. 03]