Presentation is loading. Please wait.

Presentation is loading. Please wait.

François Fages MPRI Bio-info 2006 Formal Biology of the Cell Modeling, Computing and Reasoning with Constraints François Fages, Constraints Group, INRIA.

Similar presentations


Presentation on theme: "François Fages MPRI Bio-info 2006 Formal Biology of the Cell Modeling, Computing and Reasoning with Constraints François Fages, Constraints Group, INRIA."— Presentation transcript:

1 François Fages MPRI Bio-info 2006 Formal Biology of the Cell Modeling, Computing and Reasoning with Constraints François Fages, Constraints Group, INRIA Rocquencourt

2 François Fages MPRI Bio-info 2006 Overview of the Lectures 1.Introduction. Formal molecules and reactions in BIOCHAM. 2.Formal biological properties in temporal logic. Symbolic model-checking. 3.Continuous dynamics. Kinetics models. 4.Computational models of the cell cycle control. 5.Abstract interpretation of biochemical models. 6.Machine learning reaction rules from temporal properties. 7.Constraint-based model checking. Learning kinetic parameter values. 8.Constraint Logic Programming approach to protein structure prediction.

3 François Fages MPRI Bio-info 2006 Map of Course 2 1. Temporal logic CTL as a language for formalizing biological properties CTL formulas: syntax and semantics Biological properties formalized in CTL Example of the cell cycle control Symbolic Model checking algorithm Computational results About oscillations

4 François Fages MPRI Bio-info 2006 Computation Tree Logic CTL CTL [Clarke & al. 99] extends classical logic with modal operators: Non-det. Time E exists A always X next time EX(  )AX(  ) F finally EF(  )  AG(  ) AF(  ) liveness G globally EG(  )  AF(   ) AG(  ) safety U until E (    U   )A (    U   )

5 François Fages MPRI Bio-info 2006 Biological Properties formalized in CTL (1/3) About reachability: Can the cell produce some protein P? reachable(P)==EF(P)

6 François Fages MPRI Bio-info 2006 Biological Properties formalized in CTL (1/3) About reachability: Can the cell produce some protein P? reachable(P)==EF(P) Can the cell produce P, Q and not R? reachable(P^Q^  R)

7 François Fages MPRI Bio-info 2006 Biological Properties formalized in CTL (1/3) About reachability: Can the cell produce some protein P? reachable(P)==EF(P) Can the cell produce P, Q and not R? reachable(P^Q^  R) Can the cell always produce P? AG(reachable(P))

8 François Fages MPRI Bio-info 2006 Biological Properties formalized in CTL (1/3) About reachability: Can the cell produce some protein P? reachable(P)==EF(P) Can the cell produce P, Q and not R? reachable(P^Q^  R) Can the cell always produce P? AG(reachable(P)) About pathways: Can the cell reach a (partially described) set of states s while passing by another set of states s 2 ? EF(s 2 ^EFs)

9 François Fages MPRI Bio-info 2006 Biological Properties formalized in CTL (1/3) About reachability: Can the cell produce some protein P? reachable(P)==EF(P) Can the cell produce P, Q and not R? reachable(P^Q^  R) Can the cell always produce P? AG(reachable(P)) About pathways: Can the cell reach a (partially described) set of states s while passing by another set of states s 2 ? EF(s 2 ^EFs) Is it possible to produce P without Q? E(  Q U P)

10 François Fages MPRI Bio-info 2006 Biological Properties formalized in CTL (1/3) About reachability: Can the cell produce some protein P? reachable(P)==EF(P) Can the cell produce P, Q and not R? reachable(P^Q^  R) Can the cell always produce P? AG(reachable(P)) About pathways: Can the cell reach a (partially described) set of states s while passing by another set of states s 2 ? EF(s 2 ^EFs) Is it possible to produce P without Q? E(  Q U P) Is (set of) state s 2 a necessary checkpoint for reaching (set of) state s? checkpoint(s 2,s)==  E(  s 2 U s)

11 François Fages MPRI Bio-info 2006 Biological Properties formalized in CTL (1/3) About reachability: Can the cell produce some protein P? reachable(P)==EF(P) Can the cell produce P, Q and not R? reachable(P^Q^  R) Can the cell always produce P? AG(reachable(P)) About pathways: Can the cell reach a (partially described) set of states s while passing by another set of states s 2 ? EF(s 2 ^EFs) Is it possible to produce P without Q? E(  Q U P) Is (set of) state s 2 a necessary checkpoint for reaching (set of) state s? checkpoint(s 2,s)==  E(  s 2 U s) Is s 2 always a checkpoint for s? AG(  s -> checkpoint(s 2,s))

12 François Fages MPRI Bio-info 2006 Biological Properties formalized in CTL (2/3) About stationarity: Is a (set of) state s a stable state? stable(s)== AG(s)

13 François Fages MPRI Bio-info 2006 Biological Properties formalized in CTL (2/3) About stationarity: Is a (set of) state s a stable state? stable(s)== AG(s) Is s a steady state (with possibility of escaping) ? steady(s)==EG(s)

14 François Fages MPRI Bio-info 2006 Biological Properties formalized in CTL (2/3) About stationarity: Is a (set of) state s a stable state? stable(s)== AG(s) Is s a steady state (with possibility of escaping) ? steady(s)==EG(s) Can the cell reach a stable state s? EF(stable(s)) not in LTL

15 François Fages MPRI Bio-info 2006 Biological Properties formalized in CTL (2/3) About stationarity: Is a (set of) state s a stable state? stable(s)== AG(s) Is s a steady state (with possibility of escaping) ? steady(s)==EG(s) Can the cell reach a stable state s? EF(stable(s)) not in LTL Must the cell reach a stable state s? AG(stable(s))

16 François Fages MPRI Bio-info 2006 Biological Properties formalized in CTL (2/3) About stationarity: Is a (set of) state s a stable state? stable(s)== AG(s) Is s a steady state (with possibility of escaping) ? steady(s)==EG(s) Can the cell reach a stable state s? EF(stable(s)) not in LTL Must the cell reach a stable state s? AG(stable(s)) What are the stable states? Not expressible in CTL. Needs to combine CTL with search [Chan 00, Calzone-Chabrier-Fages-Soliman 05, Fages-Rizk 07].

17 François Fages MPRI Bio-info 2006 Biological Properties formalized in CTL (3/3) 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 FOL by adding numerical constraints for start times and durations. About oscillations: Can the system exhibit a cyclic behavior w.r.t. the presence of P ? oscil(P)== EG((P  EF  P) ^ (  P  EF P)) (necessary but not sufficient condition without strong fairness) Can the system loops between states s and s2 ? loop(P,Q)== EG((s  EF s2) ^ (s2  EF s))

18 François Fages MPRI Bio-info 2006 Oscillations in CTL ? EG((P  EF  P) ^ (  P  EF P)) Necessary but not sufficient condition for oscillations without fairness: Same with weak fairness: (no rule staying continuously fireable without being fired) Needs strong fairness: no rule is infinitely often fireable without being fired

19 François Fages MPRI Bio-info 2006 Oscillations in CTL ? EG((P  EF  P) ^ (  P  EF P)) Necessary but not sufficient condition for oscillations without fairness: P  P Same with weak fairness: no rule stays continuously fireable without being fired Needs strong fairness: no rule is infinitely often fireable without being fired

20 François Fages MPRI Bio-info 2006 Oscillations in CTL ? EG((P  EF  P) ^ (  P  EF P)) Necessary but not sufficient condition for oscillations without fairness: P  P Same with weak fairness: no rule stays continuously fireable without being fired P  P P,Q Needs strong fairness: no rule is infinitely often fireable without being fired

21 François Fages MPRI Bio-info 2006 Oscillations in CTL* EG((F  P) ^ (F P))

22 François Fages MPRI Bio-info 2006 MAPK Signaling Pathway in BIOCHAM RAF + RAFK RAF-RAFK. RAF-RAFK => RAFK + RAF~{p1}. RAF~{p1} + RAFPH RAF~{p1}-RAFPH. RAF~{p1}-RAFPH => RAF + RAFPH. MEK~$P + RAF~{p1} MEK~$P-RAF~{p1} where p2 not in $P. MEK~{p1}-RAF~{p1} => MEK~{p1,p2} + RAF~{p1}. MEK-RAF~{p1} => MEK~{p1} + RAF~{p1}. MEKPH + MEK~{p1}~$P MEK~{p1}~$P-MEKPH. MEK~{p1}-MEKPH => MEK + MEKPH. MEK~{p1,p2}-MEKPH => MEK~{p1} + MEKPH. MAPK~$P + MEK~{p1,p2} MAPK~$P-MEK~{p1,p2} where p2 not in $P. MAPKPH + MAPK~{p1}~$P MAPK~{p1}~$P-MAPKPH. MAPK~{p1}-MAPKPH => MAPK + MAPKPH. MAPK~{p1,p2}-MAPKPH => MAPK~{p1} + MAPKPH. MAPK-MEK~{p1,p2} => MAPK~{p1} + MEK~{p1,p2}. MAPK~{p1}-MEK~{p1,p2} => MAPK~{p1,p2}+MEK~{p1,p2}.

23 François Fages MPRI Bio-info 2006 Temporal Logic Querying of MAPK Signaling Pathway MEK~{p1} is a checkpoint for the cascade, i.e. producing MAPK~{p1,p2} biocham: checkpoint(MEK~{p1}, MAPK~{p1,p2}) !E(!MEK~{p1} U MAPK~{p1,p2}) is True The PH complexes are not checkpoints biocham: checpoint(MEK~{p1}-MEKPH, MAPK~{p1,p2}) !E(!MEK~{p1}-MEKPH U MAPK~{p1,p2}) is false Step 1 rule 15 Step 2 rule 1 RAF-RAFK present Step 3 rule 21 RAF~{p1} present Step 4 rule 5 MEK-RAF~{p1} present Step 5 rule 24 MEK~{p1} present Step 6 rule 7 MEK~{p1}-RAF~{p1} present Step 7 rule 23 MEK~{p1,p2} present Step 8 rule 13 MAPK-MEK~{p1,p2} present Step 9 rule 27 MAPK~{p1} present Step 10 rule 15 MAPK~{p1}-MEK~{p1,p2} present Step 11 rule 28 MAPK~{p1,p2} present

24 François Fages MPRI Bio-info 2006 Bipartite Proteins-Reactions Graph of MAPK GraphViz

25 François Fages MPRI Bio-info 2006 Semantics of CTL: Kripke structures A Kripke structure K is a triple (S,R) where S is a set of states, and R  SxS is a total relation. s |=  if propositional formula  is true in s, Following [Emerson 90] we identify a formula  to the set of states which satisfy it  ~ {s  S : s |=  }.

26 François Fages MPRI Bio-info 2006 Kripke Semantics of CTL A Kripke structure K is a triple (S,R) where S is a set of states, and R  SxS is a total relation. s |=  if propositional formula  is true in s, s |= E  if there is a path  from s such that  |= , Following [Emerson 90] we identify a formula  to the set of states which satisfy it  ~ {s  S : s |=  }.

27 François Fages MPRI Bio-info 2006 Kripke Semantics of CTL A Kripke structure K is a triple (S,R) where S is a set of states, and R  SxS is a total relation. s |=  if propositional formula  is true in s, s |= E  if there is a path  from s such that  |= , s |= A  if for every path  from s,  |= , Following [Emerson 90] we identify a formula  to the set of states which satisfy it  ~ {s  S : s |=  }.

28 François Fages MPRI Bio-info 2006 Kripke Semantics of CTL A Kripke structure K is a triple (S,R) where S is a set of states, and R  SxS is a total relation. s |=  if propositional formula  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 , Following [Emerson 90] we identify a formula  to the set of states which satisfy it  ~ {s  S : s |=  }.

29 François Fages MPRI Bio-info 2006 Kripke Semantics of CTL A Kripke structure K is a triple (S,R) where S is a set of states, and R  SxS is a total relation. s |=  if propositional formula  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 |= , Following [Emerson 90] we identify a formula  to the set of states which satisfy it  ~ {s  S : s |=  }.

30 François Fages MPRI Bio-info 2006 Kripke Semantics of CTL A Kripke structure K is a triple (S,R) where S is a set of states, and R  SxS is a total relation. s |=  if propositional formula  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 |= , Following [Emerson 90] we identify a formula  to the set of states which satisfy it  ~ {s  S : s |=  }.

31 François Fages MPRI Bio-info 2006 Kripke Semantics of CTL A Kripke structure K is a triple (S,R) where S is a set of states, and R  SxS is a total relation. s |=  if propositional formula  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 |= , Following [Emerson 90] we identify a formula  to the set of states which satisfy it  ~ {s  S : s |=  }.

32 François Fages MPRI Bio-info 2006 Kripke Semantics of CTL A Kripke structure K is a triple (S,R) where S is a set of states, and R  SxS is a total relation. s |=  if propositional formula  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 CTL formula  to the set of states which satisfy it  ~ {s  S : s |=  }.

33 François Fages MPRI Bio-info 2006 Basic Model-Checking Algorithm Model Checking is an algorithm for computing, in a given finite Kripke structure K the set of states satisfying a CTL formula: {s  S : s |=  }. Represent K as a (finite) graph and iteratively label the nodes with the subformulas of  which are true in that node. Add  to the states satisfying 

34 François Fages MPRI Bio-info 2006 Basic Model-Checking Algorithm Model Checking is an algorithm for computing, in a given finite Kripke structure K the set of states satisfying a CTL formula: {s  S : s |=  }. Represent K as a (finite) 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 

35 François Fages MPRI Bio-info 2006 Basic Model-Checking Algorithm Model Checking is an algorithm for computing, in a given finite Kripke structure K the set of states satisfying a CTL formula: {s  S : s |=  }. Represent K as a (finite) 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 

36 François Fages MPRI Bio-info 2006 Basic Model-Checking Algorithm Model Checking is an algorithm for computing, in a given finite Kripke structure K the set of states satisfying a CTL formula: {s  S : s |=  }. Represent K as a (finite) 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 

37 François Fages MPRI Bio-info 2006 Basic Model-Checking Algorithm Model Checking is an algorithm for computing, in a given finite Kripke structure K the set of states satisfying a CTL formula: {s  S : s |=  }. Represent K as a (finite) 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  Thm. CTL model checking is P-complete, model checking alg in O(|K|*|  |).

38 François Fages MPRI Bio-info 2006 Symbolic Model-Checking Still for finite Kripke structures, use boolean constraints to represent 1.sets of states as a boolean constraint c(V) 2.the transition relation as a boolean constraint r(V,V’) Binary Decision Diagrams BDD [Bryant 85] provide canonical forms to Boolean formulas (decide Boolean equivalence, TAUT is co-NP) (x ⋁ ¬y) ⋀ (y ⋁ ¬z) ⋀ (z ⋁ ¬x) and (x ⋁ ¬z) ⋀ (z ⋁ ¬y) ⋀ (y ⋁ ¬x) are equivalent, they have the same BDD(x,y,z)

39 François Fages MPRI Bio-info 2006 Cell Cycle: G1  DNA Synthesis  G2  Mitosis G1: CdK4-CycD S: Cdk2-CycA G2,M: Cdk1-CycA Cdk6-CycD Cdk1-CycB (MPF) Cdk2-CycE

40 François Fages MPRI Bio-info 2006

41 François Fages MPRI Bio-info 2006 Mammalian Cell Cycle Control Map [Kohn 99]

42 François Fages MPRI Bio-info 2006 Kohn’s map detail for Cdk2 Complexation with CycA and CycE Biocham Rules: cdk2~$P + cycA-$C => cdk2~$P-cycA-$C where $C in {_,cks1}. cdk2~$P + cycE~$Q-$C => cdk2~$P-cycE~$Q-$C where $C in {_,cks1}. p57 + cdk2~$P-cycA-$C => p57-cdk2~$P-cycA-$C where $C in {_, cks1}. cycE-$C =[cdk2~{p2}-cycE-$S]=> cycE~{T380}-$C where $S in {_, cks1} and $C in {_, cdk2~?, cdk2~?-cks1} Total: 147 rule patterns 2733 expanded rules [Chiaverini Danos 03]

43 François Fages MPRI Bio-info 2006 Mammalian Cell Cycle Control Benchmark rules, 165 proteins and genes, 500 variables, states. BIOCHAM NuSMV model-checker time in seconds: Initial state G2Query:Time: compiling29 Reachability G1EF CycE2 Reachability G1EF CycD1.9 Reachability G1EF PCNA-CycD1.7 Checkpoint for mitosis complex  EF (  Cdc25~{Nterm} U Cdk1~{Thr161}-CycB) 2.2 Cycle EG ( (CycA  EF  CycA)  (  CycA  EF CycA)) 31.8


Download ppt "François Fages MPRI Bio-info 2006 Formal Biology of the Cell Modeling, Computing and Reasoning with Constraints François Fages, Constraints Group, INRIA."

Similar presentations


Ads by Google