Download presentation
Presentation is loading. Please wait.
Published byLiana Washington Modified over 9 years ago
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 mailto:Francois.Fages@inria.fr http://contraintes.inria.fr/
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 http://www.research.att.co/sw/tools/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 147-2733 rules, 165 proteins and genes, 500 variables, 2 500 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
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.