1 / 28

Joint work with :

Formal Languages in the Biochemical Abstract Machine BIOCHAM François Fages, INRIA Rocquencourt http://contraintes.inria.fr/. Joint work with : Nathalie Sylvain Laurence

daryl
Download Presentation

Joint work with :

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Formal Languages in theBiochemical Abstract Machine BIOCHAMFrançois Fages, INRIA Rocquencourthttp://contraintes.inria.fr/ • Joint work with: • Nathalie Sylvain Laurence • Chabrier-Rivier Soliman Calzone

  2. The Thesis • Biological model = Transition system • Biological property = Temporal Logic formula • Biological validation = Model-checking • [Lincoln et al. 02] [Chabrier Fages et al. 03] [Alon et al. 04] [Bernot et al. 04] … • Model: BIOCHAM Biological Properties: • - Boolean - simulation - CTL • - Concentration - query evaluation - LTL with constraints • - Population - rule search - PCTL with constraints • - parameter search

  3. The Thesis • Biological model = Transition system • Biological property = Temporal Logic formula • Biological validation = Model-checking • [Lincoln et al. 02] [Chabrier et al. 03] [Alon et al. 04] [Bernot et al. 04] … • Model: BIOCHAM Biological Properties: • - Boolean - simulation - CTL • - Concentration - query evaluation - LTL with constraints • - Population - rule search - PCTL with constraints • - parameter search

  4. Plan of the Presentation • Rule-based Language for Modeling Biochemical Systems • Syntax of objects and reactions • Semantics at 3 abstraction levels: Boolean, concentrations, populations • Temporal Logic Language for Formalizing Biological Properties • Computation Tree Logic for the Boolean semantics • Constraint Linear Time Logic for the concentration semantics • Machine Learning Rules from Temporal Properties • Learning kinetic parameter values • Learning reaction rules • Conclusion on modeling issues of modularity and compositionality

  5. 1. BIOCHAM Syntax of Objects • O == E | E::location • E == compound | E-E | E~{p1,…,pn} | (E) • S == _ | O+S • Location: symbolic compartment: nucleus, cytoplasm, membrane, celli • Compound: molecule, #gene binding site, abstract @process… • - : binding operator for protein complexes, gene binding sites, … • Associative and commutative. • ~{…}: modification operator for phosphorylated sites, … • Set of modified sites (Associative, Commutative, Idempotent). • + : solution operator (Associative, Commutative, Neutral _)

  6. Syntax of Rules • N ::= kinetic for R • R ::= S=>S abbrev. A=[C]=>B stands for A+C=>B+C • A<=>B stands for A=>B and B=>A • Seven main rule schemas: • Complexation A + B => A-B Decomplexation A-B => A + B • Phosphorylation A =[C]=> A~{p} Dephosphorylation A~{p} =[C]=> A • Synthesis _ =[C]=> A Degradation A =[C]=> _ • Transport A::L1 => A::L2

  7. Syntax of Rules • N ::= kinetic for R • R ::= S=>S abbrev. A=[C]=>B stands for A+C=>B+C • A<=>B stands for A=>B and B=>A • Seven main rule schemas: • Complexation A + B => A-B Decomplexation A-B => A + B • Phosphorylation A =[C]=> A~{p} Dephosphorylation A~{p} =[C]=> A • Synthesis _ =[C]=> A Degradation A =[C]=> _ • Transport A::L1 => A::L2 • Type inference: C is a kinase / phosphatase / activated gene • Type inference: topology of locations L1, L2

  8. Syntax of Rules • N ::= kinetic for R • R ::= S=>S abbrev. A=[C]=>B stands for A+C=>B+C • A<=>B stands for A=>B and B=>A • Seven main rule schemas: • Complexation A + B => A-B Decomplexation A-B => A + B • Phosphorylation A =[C]=> A~{p} Dephosphorylation A~{p} =[C]=> A • Synthesis _ =[C]=> A Degradation A =[C]=> _ • Transport A::L1 => A::L2 • Type inference: C is a kinase / phosphatase / activated gene • Type inference: topology of locations L1, L2 … • Easy import/export SBML format

  9. BIOCHAM Semantics of a Rule Set {ei for Si => S’i} • Petri net semantics at three abstraction levels: • Boolean Semantics: presence-absence of molecules • Concurrent Transition System (asynchronous, non-deterministic)

  10. BIOCHAM Semantics of a Rule Set {ei for Si => S’i} • Petri net semantics at three abstraction levels: • Boolean Semantics: presence-absence of molecules • Concurrent Transition System (asynchronous, non-deterministic) • 2. Concentration Semantics: number / volume • Ordinary Differential Equations or hybrid automaton (deterministic) • dxk/dt = ΣXi=1n ri(xk) * ei − ΣXj=1n lj(xk) * ej • where ri (resp. lj) is the stochiometric coefficient of xk in S’i (resp. Si) multiplied by the volume ratio of the location of xk.

  11. BIOCHAM Semantics of a Rule Set {ei for Si => S’i} • Petri net semantics at three abstraction levels: • Boolean Semantics: presence-absence of molecules • Concurrent Transition System (asynchronous, non-deterministic) • 2. Concentration Semantics: number / volume • Ordinary Differential Equations or hybrid automaton (deterministic) • dxk/dt = ΣXi=1n ri(xk) * ei − ΣXj=1n lj(xk) * ej • where ri (resp. lj) is the stochiometric coefficient of xk in S’i (resp. Si) multiplied by the volume ratio of the location of xk. • 3. Population of molecules: number of molecules • Continuous time Markov chain the ei’s giving transition probabilities

  12. Example: Cell Cycle Control Model [Tyson 91] • k1 for _=>Cyclin. • k2*[Cyclin] for Cyclin=>_. • k3*[Cyclin]*[Cdc2~{p1}] for Cyclin+Cdc2~{p1}=>Cdc2~{p1}-Cyclin~{p1}. • k4p*[Cdc2~{p1}-Cyclin~{p1}] for • Cdc2~{p1}-Cyclin~{p1}=>Cdc2-Cyclin~{p1}. • k4*[Cdc2-Cyclin~{p1}]^2*[Cdc2~{p1}-Cyclin~{p1}] for • Cdc2~{p1}-Cyclin~{p1}=[Cdc2-Cyclin~{p1}]=>Cdc2-Cyclin~{p1}. • k5*[Cdc2-Cyclin~{p1}] for Cdc2-Cyclin~{p1}=>Cdc2~{p1}-Cyclin~{p1}. • k6*[Cdc2-Cyclin~{p1}] for Cdc2-Cyclin~{p1}=>Cdc2+Cyclin~{p1}. • k7*[Cyclin~{p1}] for Cyclin~{p1}=>_. • k8*[Cdc2] for Cdc2=>Cdc2~{p1}. • k9*[Cdc2~{p1}] for Cdc2~{p1}=>Cdc2.

  13. Interaction Graph

  14. Boolean Simulation

  15. Concentration Simulation

  16. E, A Non-determinism AG EU EF F,G,U Time 2. Formalizing Biological Properties in Temporal Logics • 2.1 Boolean Semantics: Computation Tree Logic CTL

  17. Biological Properties formalized in CTL • Initial state: biological conditions of experiment, mutants etc. • Aboutreachability: • Can the cell produce some protein P? reachable(P)==EF(P) • Aboutpathways: • Is state s2 a necessary checkpoint for reaching state s? • checkpoint(s2,s)== E(s2U s) • Aboutstationnarity: • Is a (partially described) state s a stable state? stable(s)== AG(s) • Is s a steady state (with possibility of escaping) ? steady(s)==EG(s) • Aboutoscillations: • Can the system exhibit a cyclic behavior w.r.t. the presence of P ? oscil(P)== EG((P  EF P) ^ (P  EF P))

  18. CTL Properties Satisfied in the Cell Cycle Model • reachable(Cdc2~{p1}) • reachable(Cyclin) • reachable(Cyclin~{p1}) • reachable(Cdc2-Cyclin~{p1}) • reachable(Cdc2~{p1}-Cyclin~{p1}) • oscil(Cdc2) • oscil(Cdc2~{p1}) • oscil(Cdc2~{p1}-Cyclin~{p1}) • oscil(Cyclin) • AG((!(Cdc2-Cyclin~{p1}))->checkpoint(Cdc2~{p1}-Cyclin~{p1},Cdc2-Cyclin~{p1})) • … • Automatically checked / generated by model-checking techniques (NuSMV BDD)

  19. Temporal Properties with Numerical Constraints • Constraints over concentrations and derivatives as FOL formulae over the reals: • [M] > 0.2 • [M]+[P] > [Q] • d([M])/dt < 0 • Constraint LTL operators for time X, F, U, G (no non-determinism). • F([M]>0.2) • FG([M]>0.2) • F ([M]>2 & F (d([M])/dt<0 & F ([M]<2 & d([M])/dt>0 & F(d([M])/dt<0)))) • oscil(M,n) • Period(A,75)= t v F(T = t & [A] = v & d([A])/dt > 0 & X(d([A])/dt < 0) & F(T = t + 75 & [A] = v & d([A])/dt > 0 & X(d([A])/dt < 0))) • Model checker and numerical integration implemented in Prolog

  20. 3. Searching Parameters from Temporal Properties • biocham: learn_parameter([k3,k4],[(0,200),(0,200)],20, • oscil(Cdc2-Cyclin~{p1},3),150).

  21. 3. Searching Parameters from Temporal Properties • biocham: learn_parameter([k3,k4],[(0,200),(0,200)],20, • oscil(Cdc2-Cyclin~{p1},3),150). • First values found : • parameter(k3,10). • parameter(k4,70).

  22. Searching Parameters from Temporal Properties • biocham: learn_parameter([k3,k4],[(0,200),(0,200)],20, • oscil(Cdc2-Cyclin~{p1},3) & F([Cdc2-Cyclin~{p1}]>0.15), 150). • First values found : • parameter(k3,10). • parameter(k4,120).

  23. Learning Rules from CTL Properties • Theory Revision Algorithm: • ACTL formulae contain only A quantifiers: checkpoint,… • If false, remains false after adding a rule  delete rule • Remove a rule on the path given by the model checker (why command) • ECTL formulae contain only E quantifiers: reachability, oscillation, … • If false, remain false after deleting a rule  add rule • Unclassified CTL formulae • Mixed E and A quantifiers • Correct, terminating but incomplete algorithm • (only one rule is searched to satisfy ECTL and UCTL formulas)

  24. Learning Reaction Rules from CTL Specification • Suppose that the MPF activation rule is missing in the model • biocham: delete_rule(MPF~{p}=[cdc25C~{p1,p2}]=>MPF). • Rules can be searched to correct the model w.r.t. specification: • biocham: learn_one_rule(all_elementary_interaction_rules).

  25. Learning Reaction Rules from CTL Specification • Suppose that the MPF activation rule is missing in the model • biocham: delete_rule(MPF~{p}=[cdc25C~{p1,p2}]=>MPF). • Rules can be searched to correct the model w.r.t. specification: • biocham: learn_one_rule(all_elementary_interaction_rules). • _=[cdc25C~{p1,p2}]=>MPF • MPF~{p}=[cdc25C~{p1,p2}]=>MPF • CKI+MPF~{p}=[cdc25C~{p1,p2}]=>CKI-MPF

  26. Learning Reaction Rules from CTL Specification • Example: finding an intermediary step between MPF and APC activation • biocham: absent(X). add_rule(_=>X). add_rule(X=>_). • biocham: add_specs({ Ei(reachable(X)), Ai(oscil(X)), • Ai(AG(!APC->checkpoint(X,APC))), • Ai(AG(!X->checkpoint(MPF,X))) }). • biocham: check_all. • False. First formula not verified: Ai(AG(!APC->!(E(!X U APC)))) • Biocham searches for revisions of the model satisfying the specification • biocham: revise_model.

  27. Learning Reaction Rules from CTL Specification • Example: finding an intermediary step between MPF and APC activation • biocham: absent(X). add_rule(_=>X). add_rule(X=>_). • biocham: add_specs({ Ei(reachable(X)), Ai(oscil(X)), • Ai(AG(!APC->checkpoint(X,APC))), • Ai(AG(!X->checkpoint(MPF,X))) }). • biocham: check_all. • False. First formula not verified: Ai(AG(!APC->!(E(!X U APC)))) • Biocham searches for revisions of the model satisfying the specification • biocham: revise_model. • Deletion(s): _=[MPF]=>APC. _=>X. • Addition(s): _=[X]=>APC. _=[MPF]=>X.

  28. Conclusion • Formal languages in BIOCHAM: • Rule language  modeling biochemical systems • Temporal logic  modeling their biological properties • Automated reasoning tools in BIOCHAM: • Checking temporal logic properties  model validation • Finding parameter values satisfying temporal properties • Finding reaction rules • Modeling issues of: • Modularity-compositionality  model re-use in different contexts • Abstraction  model simplification • Refinement  model decomposition

More Related