1 / 28

Overview of the Lectures

Formal Biology of the Cell Inferring Reaction Rules from Temporal Properties François Fages, Constraint Programming Group, INRIA Rocquencourt mailto:Francois.Fages@inria.fr http://contraintes.inria.fr/. Overview of the Lectures. Introduction. Formal molecules and reactions in BIOCHAM.

luann
Download Presentation

Overview of the Lectures

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 Biology of the Cell Inferring Reaction Rules from Temporal PropertiesFrançois Fages, Constraint Programming Group, INRIA Rocquencourtmailto:Francois.Fages@inria.frhttp://contraintes.inria.fr/

  2. Overview of the Lectures • Introduction. Formal molecules and reactions in BIOCHAM. • Formal biological properties in temporal logic. Symbolic model-checking. • Continuous dynamics. Kinetics models. • Learning kinetic parameter values. Constraint-based model checking. • Feedback loops, multistationnarity and oscillations [Sriram] • Locations, transport and extracellular signaling. • Inferring reaction rules from temporal properties • Abstract interpretation of biomolecular networks • Protein structure prediction in constraint logic programming

  3. A Logical Paradigm for Systems Biology • Biological property = Temporal Logic Formula • Biological validation = Model-checking • Initial state : experimental conditions, wild-life/mutated organisms,… • Boolean semantics (propositionnal-CTL) • reachable(P) = EF(P)checkpoint(s2,s) = E(s2U s) • stable(s) = AG(s) steady(s) = EG(s) • oscil(P) = EG(F P ^ F P) • Differential semantics (constraint-LTL) • Reach threshold concentration : F([M]>0.2) on derivative : F(d([M]/dt)>0.2) • Reach and stays above threshold : FG([M]>0.2) • oscil(P,n)=F(d([M])/dt>0 & F(d([M])/dt<0 & … )) n times

  4. Learning Model Revision from Temporal Properties • Theory T: BIOCHAM model • molecule declarations • reaction rules: complexation, phosphorylation, … • Examples φ: CTL specification of biological properties • Reachability • Checkpoints • Stable states • Oscillations • Bias R: Rule pattern • Kind of rules to add or delete • Find a revision T’ of T such that T’ |= φ

  5. Kripke Semantics of CTL* • Kripke structure K=(S,R) where S is a set of states and RSxS is total. • s |= f if propositional formula f is true in s, • s |= E f if there is a path  from s such that  |= f, • s |= A f if for every path  from s,  |= f, •  |= f if s |= f where s is the starting state of , •  |= X f if 1 |= f, •  |= f1 U f2 iff there exists k ≥ 0 such that k |= f2 for all j < k j |= f1. •  |= f1 W f2 iff j j |= f1 or  k ≥ 0 k |= f1 f2and j < k j |= f1. • F f = (true U f) |= F f if there exists k ≥ 0 such that k |= f, • G f = (f W false) |= G f if for every k ≥ 0, k |= f

  6. Duality in CTL* • E f = A f •  X f = X f •  (f1 U f2) = f2 W f1 •  F f = G f • CTL*(X) : fragment of CTL* without U, W, F, G • CTL*(U) : fragment of CTL* without X • CTL : fragment of CTL* with E, A immediately before X, F, G, U , W • f can be identified to the set of states where it is true f ~ {sS : s |= f} • LTL : fragment of CTL* without E, A • LTL(U) : fragment of LTL without X • LTL(F) : fragment of LTL without X, U, W

  7. Complexity of Model-checking and Satisfiability • Model-checkingSatisfiability • given an explicit Kripke structure K given a formula f, does there exist • and a formula f, does K,s |= f ? a structure K,s such that K,s |= f ? • LTL, LTL(U) : Pspace complete Pspace complete • LTL(F) : NP-complete NP-complete • CTL : Ptime DetExpTime complete • CTL* : Pspace complete DetExpExpTime complete

  8. CTL Equivalence of Boolean Models • For a class C of CTL formulae, and an initial state s, • two Kripke structures K=(S,R), K’=(S,R’) are equivalent • K ~C K’ iff {fC : K,s|=f} = {fC : K’,s|=f}

  9. CTL Equivalence of Boolean Models • For a class C of CTL formulae, and an initial state s, • two Kripke structures K=(S,R), K’=(S,R’) are equivalent • K ~C K’ iff {fC : K,s|=f} = {fC : K’,s|=f} • Which model transformations preserve a class of CTL properties? •  Model refinement or simplification preserving a CTL specification • Which model transformations can make a CTL property true? •  Learning of rules to add or to delete to satisfy a CTL specification

  10. CTL Equivalence for a Simple Enzymatic Reaction • Two Biocham models: M1= {A+B<=>D, D=>A+C}  M • M2 = {B =[A]=> C}  M • D having no occurrence in M nor in the initial state s.

  11. CTL Equivalence for a Simple Enzymatic Reaction • Two Biocham models: M1= {A+B<=>D, D=>A+C}  M • M2 = {B =[A]=> C}  M • D having no occurrence in M nor in the initial state s • Proposition If M2 ,s |= EF(f) then M1 ,s |= EF(f). • Proof In M2 the transitions A+BA+C (resp. A+BA+B+C) can be replaced in M1 by A+BDA+C (resp. A+BB+DB+A+C).

  12. CTL Equivalence for a Simple Enzymatic Reaction • Two Biocham models: M1= {A+B<=>D, D=>A+C}  M • M2 = {B =[A]=> C}  M • D having no occurrence in M nor in the initial state s • Proposition If M2 ,s |= EF(f) then M1 ,s |= EF(f). • Proof In M2 the transitions A+BA+C (resp. A+BA+B+C) can be replaced in M1 by A+BDA+C (resp. A+BB+DB+A+C). • Proposition If M1 ,s |= EF(f) then M2 ,s |= EF(f) whenever A and B do not appear negatively (i.e. under an odd number of negations) in f and D does not appear at all in f. • Proof Let  be a path in M1 such that k|= f. If kdoes not contain D then one can easily mimick  with ’ in M2 such that ’k’ = k for some k’≤k. Otherwise, the last transition on D is either DD+A+C and can be replaced by DA+C, or A+BD and can be erased. In both cases the path is mimicked in M2.

  13. CTL Equivalence for a Simple Enzymatic Reaction • Two Biocham models: M1= {A+B<=>D, D=>A+C}  M • M2 = {B =[A]=> C}  M • D having no occurrence in M nor in the initial state s. • Proposition If M2 ,s |= ¬E(¬fU ψ) then M1 ,s |= ¬E(¬fU ψ) whenever A and B do not appear negatively in ψ and D does not appear positively in ψ • Proposition If M1 ,s |= ¬E(¬fU ψ) implies M2 ,s |= ¬E(¬fU ψ) A and B do not appear negatively in f and D does not appear positively in f

  14. Positive and Negative CTL Formulae • Let K = (S,R,L) and K’ = (S,R’,L) be two Kripke structures such that RR’ • Def. An ECTL (positive) formula is a CTL formula with no occurrence of A (nor negative occurrence of E). • Ex. : reachability EF(f), steady EG(f) • Def. An ACTL (negative) formula is a CTL formula with no occurrence of E (nor negative occurrence of A). • Ex. : checkpoint E(f2U f), stable AG(f)

  15. Monotonicity of Positive ECTL Formulae • Let K = (S,R) and K’ = (S,R’) be two Kripke structures such that RR’. • Proposition For any ECTL formula f, if K’,s |≠ f then K,s |≠ f. • Proof We show that K,s |= f implies K’,s |= f by induction on the proof of f • If f is propositionnal, s |= f hence K’,s |= f ; • If f=f1&f2 (resp. f1|f2) then by induction K’,s|=f1 and (resp. or) K’,s|=f2. • If f=EX f1 then K, |= X f1 for some path  in K, hence in K’, so K,1|= f1 and by induction K’,1|= f1 hence K’,  |= X f1 • If f=E(f1 U f2) then K, |= f1 U f2 for some path  in K, hence in K’, so there exists k K,k|= f2 and for all j<k K,j|= f1. By induction K’,k|= f2 and for all j<k K’,j|= f1 hence K, |= f1 U f2.

  16. Anti-monotonicity of Negative ECTL Formulae • Let K = (S,R) and K’ = (S,R’) be two Kripke structures such that RR’. • Proposition For any ACTL formula f, if K,s |≠ f then K’,s |≠ f. • Proof If K,s |≠ f then K,s |= f where f is an ECTL formula. • By the previous proposition, K’,s |= f hence K’,s |≠ f.

  17. Theory Revision Algorithm • General idea of constraint programming: replace a generate-and-test algorithm by a constrain-and-generate algorithm. • Anticipate whether one has to add or remove a rule? • Positive ECTL formula: if false, remains false after removing a rule • Reachability, stability • Need to add rules • Negative ACTL formula: if false, remains false after adding a rule • Checkpoints • Need to remove a rule on the path given by the model checker • Unclassified CTL formulae • Loop(a)= AG((a  EFa)^(a  EFa))

  18. Theory Revision Algorithm Rules • Initial state: <(0, 0, 0), (E,U,A), R> • E transition: <(E,U,A), (E{e},U,A), R>  <(E{e},U,A), (E,U,A),R> if R |= e • E’ transition: <(E,U,A), (E {e},U,A), R>  <(E{e},U,A), (E,U,A),R  {r}> • if R |≠ e and  f {e} EUA, K  {r} |= f

  19. Theory Revision Algorithm Rules • Initial state: <(0, 0, 0), (E,U,A), R> • E transition: <(E,U,A), (E{e},U,A), R>  <(E{e},U,A), (E,U,A),R> if R |= e • E’ transition: <(E,U,A), (E {e},U,A), R>  <(E{e},U,A), (E,U,A),R  {r}> • if R |≠ e and  f {e} EUA, K  {r} |= f • U transition: <(E,U,A), (0,U {u},A), R >  <(E,U {u},A), (0,U,A),R> if R |= u • U’ transition: <(E,U,A), (0,U {u},A), R >  <(E,U{u},A), (0,U,A),R  {r}> • if R|≠u and  f  {u} EUA, R  {r} |= f • U” transition: <(E,U,A), (0,U  {u},A), R  Re >  <(E,U{u},A),(0,U,A), R> • if K,si|≠u and  f {u} EUA, R |= f

  20. Theory Revision Algorithm Rules • Initial state: <(0, 0, 0), (E,U,A), R> • E transition: <(E,U,A), (E{e},U,A), R>  <(E{e},U,A), (E,U,A),R> if R |= e • E’ transition: <(E,U,A), (E {e},U,A), R>  <(E{e},U,A), (E,U,A),R  {r}> • if R |≠ e and  f {e} EUA, K  {r} |= f • U transition: <(E,U,A), (0,U {u},A), R >  <(E,U {u},A), (0,U,A),R> if R |= u • U’ transition: <(E,U,A), (0,U {u},A), R >  <(E,U{u},A), (0,U,A),R  {r}> • if R|≠u and  f  {u} EUA, R  {r} |= f • U” transition: <(E,U,A), (0,U  {u},A), R  Re >  <(E,U{u},A),(0,U,A), R> • if K,si|≠u and  f {u} EUA, R |= f • A transition: <(E,U,A), (0, 0,A {a}), R >  <(E,U,A{a}), (Ep,Up,A),R> if R |= a • A’ transition: <(EEp,UUp,A),(0,0,A{a}), RRe><(E,U,A{a}),(Ep,Up,A),R> if R|≠ a,  f {u} [ E  U  A, R |= f and Ep  Up is the set of formulae no longer satisfied after the deletion of the rules in Re.

  21. Termination • Proposition The model revision algorithm terminates. • Proof • The termination of the algorithm is proved by considering the lexicographic • ordering over the couple < a, n > • where a is the number of unsatisfied ACTL formulae, • and n is the number of unsatisfied ECTL and UCTL formulae. • Each transition strictly decreases a, • or lets a unchanged and strictly decreases n.

  22. Correctness • Proposition If the terminal configuration is of the form < (E,U,A), (0,0,0), R > then the model R satisfies the initial CTL specification. • Proof • Each transition maintains only true formulae in the satisfied set, • and preserves the complete CTL specification • in the union of the satisfied set and the untreated set.

  23. Incompleteness • Two reasons: • The satisfaction of ECTL and UCTL formula is searched by adding only one rule to the model (transition E’ and U’) • The Kripke structure associated to a Biocham set of rules adds loops on terminal states. Hence adding or removing a rule may have an opposite deletion or addition of those loops.

  24. Rule Inference in Cell Cycle Control • [Tyson et al. 91] model over 6 variables, • initial state present(cdc2). • _=>Cyclin. • Cyclin=>_. • Cyclin+Cdc2~{p1}=>Cdc2-Cyclin~{p1,p2}.Cdc2-Cyclin~{p1,p2}=>Cdc2-Cyclin~{p1}.Cdc2-Cyclin~{p1,p2}=[Cdc2-Cyclin~{p1}]=>Cdc2-Cyclin~{p1}.Cdc2-Cyclin~{p1}=>Cdc2-Cyclin~{p1,p2}.Cdc2-Cyclin~{p1}=>Cyclin~{p1}+Cdc2.Cyclin~{p1}=>_.Cdc2=>Cdc2~{p1}.Cdc2~{p1}=>Cdc2.

  25. (Aut. Generated) CTL Specification of the Model • biocham: add_genCTL.Ei(EF(Cyclin)).Ei(EF(!(Cyclin))).Ai(AG(Cyclin->EF(!(Cyclin))&(!(Cyclin)->EF(Cyclin)))).Ei(EF(Cdc2~{p1})).Ei(EF(!(Cdc2~{p1}))).Ai(AG(!(Cdc2~{p1})->!(E(!(Cdc2) U Cdc2~{p1})))).… • Ai(AG(Cdc2->EF(!(Cdc2))&(!(Cdc2)->EF(Cdc2)))).Ei(EF(Cyclin~{p1})).Ei(EF(!(Cyclin~{p1}))) • Ai(AG(Cyclin~{p1}->EF(!(Cyclin~{p1})) • &(!(Cyclin~{p1})->EF(Cyclin~{p1})))).Ai(AG(!(Cyclin~{p1})->!(E(!(Cdc2-Cyclin~{p1}) U Cyclin~{p1})))).

  26. Model Compression • biocham: reduce_model.1: deleting Cyclin=>_2: deleting Cdc2-Cyclin~{p1,p2}=[Cdc2-Cyclin~{p1}]=>Cdc2-Cyclin~{p1}3: deleting Cdc2-Cyclin~{p1}=>Cdc2-Cyclin~{p1,p2}4: deleting Cdc2~{p1}=>Cdc2After reduction, 6 rules remain corresponding to the bias ? => ?Deletion(s):Cyclin=>_.Cdc2-Cyclin~{p1,p2}=[Cdc2-Cyclin~{p1}]=>Cdc2-Cyclin~{p1}.Cdc2-Cyclin~{p1}=>Cdc2-Cyclin~{p1,p2}.Cdc2~{p1}=>Cdc2.

  27. Theory Revision • biocham: delete_rules(Cdc2=>Cdc2~{p1}).Cdc2=>Cdc2~{p1} • biocham: revise_model.1: adding Cdc2-Cdc2~{p1}=>Cdc2+Cdc2~{p1}2: adding Cdc2=>_2: backtracking on previous add -> deleting Cdc2=>_2: adding Cdc2=[Cyclin]=>_2: backtracking on previous add -> deleting Cdc2=[Cyclin]=>_2: adding Cdc2=[Cdc2-Cdc2~{p1}]=>_3: adding Cdc2=>Cdc2~{p1}4: deleting Cdc2=[Cdc2-Cdc2~{p1}]=>_5: deleting Cdc2-Cdc2~{p1}=>Cdc2+Cdc2~{p1} • Modifications found:  Deletion(s):  Addition(s): Cdc2=>Cdc2~{p1}.

  28. Search for all Solutions • biocham: learn_one_addition(elementary_interaction_rules).Time: 5.00 sRules tested: 112Good rules to be added: 2Cdc2=>Cdc2~{p1}Cdc2=[Cyclin]=>Cdc2~{p1}

More Related