Computational Methods for Systems Biology and Synthetic Biology - - PowerPoint PPT Presentation

computational methods for systems biology and synthetic
SMART_READER_LITE
LIVE PREVIEW

Computational Methods for Systems Biology and Synthetic Biology - - PowerPoint PPT Presentation

Computational Methods for Systems Biology and Synthetic Biology Franois Fages, Constraint Programming Group, INRIA Rocquencourt mailto:Francois.Fages@inria.fr http://contraintes.inria.fr/ 29/07/10 Franois Fages - Ecoles Jeunes


slide-1
SLIDE 1

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 1

Computational Methods for Systems Biology and Synthetic Biology

François Fages, Constraint Programming Group, INRIA Rocquencourt

mailto:Francois.Fages@inria.fr

http://contraintes.inria.fr/

slide-2
SLIDE 2

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 2

Overview of the Lectures

1. Introduction " Transposing concepts from programming to the analysis of living processes 2. Rule-based Modeling in Biocham " Macromolecules, compartments and elementary processes in the cell " Boolean, Differential and Stochastic interpretations of reaction rule models " Cell signaling, Gene expression, Retrovirus, Cell cycle 3. Temporal Logic constraints in Biocham " Qualitative properties in propositional Computation Tree Logic CTL " Quantitative properties in quantifier-free Linear Time Logic LTL(R) " Parameter optimization and robustness w.r.t. temporal logic properties " Conclusion " Killer lecture: abstract interpretation in Biocham

slide-3
SLIDE 3

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 3

Cell Cycle Control by Cyclins: G1SG2M

G1: CdK4-CycD S: Cdk2-CycA G2,M: Cdk1-CycA Cdk6-CycD Cdk1-CycB (MPF) Cdk2-CycE

Sir Paul Nurse Nobel prize 2001

slide-4
SLIDE 4

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 4

slide-5
SLIDE 5

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 5

Mammalian Cell Cycle Control Map [Kohn 99]

slide-6
SLIDE 6

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 6

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]

slide-7
SLIDE 7

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 7

Computation Tree Logic CTL

Temporal logics extend classical logic with modal operators for time & non-det. Introduced for program verification by [Pnueli 77]

Time Non-determinism E, A

F,G,U EFφ AGφ

A (ϕ1 U ϕ2) E (ϕ1 U ϕ2) U until AG() safety EG(ϕ) ¬ AF(¬ ϕ) G globally AF(ϕ) liveness EF(ϕ) ¬AG(¬ ϕ) F finally AX(ϕ) EX(ϕ) X next time A always E exists Non-det. Time

slide-8
SLIDE 8

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 8

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?

slide-9
SLIDE 9

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 9

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?

slide-10
SLIDE 10

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 10

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 set s of (partially described) states while passing by another set of states s2?

slide-11
SLIDE 11

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 11

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 set s of (partially described) states while passing by another set of states s2? EF(s2^EFs) " Is it possible to produce P without Q ?

slide-12
SLIDE 12

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 12

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 set s of (partially described) states while passing by another set of states s2? EF(s2^EFs) " Is it possible to produce P without Q ? E(¬Q U P) " Is set of state s2 a necessary checkpoint for reaching set of state s? checkpoint(s2,s)== ¬E(¬s2 U s)

slide-13
SLIDE 13

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 13

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 set s of (partially described) states while passing by another set of states s2? EF(s2^EFs) " Is it possible to produce P without Q ? E(¬Q U P) " Is set of state s2 a necessary checkpoint for reaching set of state s? checkpoint(s2,s)== ¬E(¬s2 U s) " Is s2 always a checkpoint for s? AG(¬s -> checkpoint(s2,s))

slide-14
SLIDE 14

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 14

Biological Properties formalized in CTL (2/3)

About stability: " Is a set of states s a stable state? stable(s)== AG(s)

slide-15
SLIDE 15

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 15

Biological Properties formalized in CTL (2/3)

About stability: " Is a set of states 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?

slide-16
SLIDE 16

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 16

Biological Properties formalized in CTL (2/3)

About stability: " Is a set of states 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)) alternance of path quantifiers EFAG φ, not in Linear Time Logic LTL (fragment without path quantifiers) FG φ is not in LTL " Must the cell reach a stable state s?

slide-17
SLIDE 17

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 17

Biological Properties formalized in CTL (2/3)

About stability: " Is a set of states 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)) alternance of path quantifiers EFAG φ, not in Linear Time Logic LTL (fragment without path quantifiers) FG φ is not in LTL " Must the cell reach a stable state s? AG(stable(s)) " What are the stable states?

slide-18
SLIDE 18

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 18

Biological Properties formalized in CTL (2/3)

About stability: " Is a set of states 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)) alternance of path quantifiers EFAG φ, not in Linear Time Logic LTL (fragment without path quantifiers) FG φ is 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].

slide-19
SLIDE 19

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 19

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?

slide-20
SLIDE 20

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 20

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.

slide-21
SLIDE 21

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 21

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 ?

  • scil(P)== EG((F ¬P) ^ (F P))

temporal operators not preceded by a path operator: CTL* formula approximation in CTL ? oscil(P)== EG((EF ¬P) ^ (EF P))

slide-22
SLIDE 22

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 22

Oscillations in CTL ?

EG((EF ¬P) ^ (EF P)) " Necessary but not sufficient condition for oscillations:

slide-23
SLIDE 23

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 23

Oscillations in CTL ?

EG((EF ¬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

slide-24
SLIDE 24

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 24

Oscillations in CTL ?

EG((EF ¬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

slide-25
SLIDE 25

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 25

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. The truth of a formula φ in K and in initial state s or on path π is defined by: s |= φ if φ is a propositional formula true in s, &

slide-26
SLIDE 26

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 26

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. The truth of a formula φ in K and in initial state s or on path π is defined by: s |= φ if φ is a propositional formula true in s, s |= E φ if there is a path π from s such that π |= φ, s |= A φ if for every path π from s, π |= φ, &

slide-27
SLIDE 27

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 27

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. The truth of a formula φ in K and in initial state s or on path π is defined by: s |= φ if φ is a propositional formula 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 |= φ, &

slide-28
SLIDE 28

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 28

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. The truth of a formula φ in K and in initial state s or on path π is defined by: s |= φ if φ is a propositional formula 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 ∃ k ≥ 0 such that πk |= φ, π |= G φ if ∀ k ≥ 0, πk |= φ, &

slide-29
SLIDE 29

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 29

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. The truth of a formula φ in K and in initial state s or on path π is defined by: s |= φ if φ is a propositional formula 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 ∃ k ≥ 0 such that πk |= φ, π |= G φ if ∀ k ≥ 0, πk |= φ, π |= φ1 U φ2 if ∃ k ≥ 0 such that πk |= φ2 φ2 and ∀ j < k πj |= φ1, &

slide-30
SLIDE 30

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 30

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. The truth of a formula φ in K and in initial state s or on path π is defined by: s |= φ if φ is a propositional formula 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 ∃ k ≥ 0 such that πk |= φ, π |= G φ if ∀ k ≥ 0, πk |= φ, π |= φ1 U φ2 if ∃ k ≥ 0 such that πk |= φ2 φ2 and ∀ j < k πj |= φ1, π |= φ1 R φ2 if ∀ k ≥ 0 πk |= φ2 or ∃i ≥ 0 πi |= φ1 and ∀ j ≤i πj |= φ2

slide-31
SLIDE 31

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 31

Basic CTL 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 |= φ }.

slide-32
SLIDE 32

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 32

Basic CTL 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

  • f φ which are true in that node.
slide-33
SLIDE 33

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 33

Basic CTL 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

  • f φ which are true in that node.

" Add φ to the states satisfying φ

slide-34
SLIDE 34

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 34

Basic CTL 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

  • f φ which are true in that node.

" Add φ to the states satisfying φ " Add EF φ (EX φ) to the (immediate) predecessors of states labeled by φ

slide-35
SLIDE 35

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 35

Basic CTL 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

  • f φ which are true in that node.

" Add φ to the states satisfying φ " Add EF φ (EX φ) to the (immediate) predecessors of states labeled by φ " Add E(φ1 U φ2 ) to the predecessor states of φ2 while they satisfy φ1

slide-36
SLIDE 36

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 36

Basic CTL 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

  • f φ which are true in that node.

" Add φ to the states satisfying φ " Add EF φ (EX φ) to the (immediate) predecessors of states labeled by φ " Add E(φ1 U φ2 ) to the predecessor states of φ2 while they satisfy φ1 " 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 φ.

slide-37
SLIDE 37

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 37

Basic CTL 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

  • f φ which are true in that node.

" Add φ to the states satisfying φ " Add EF φ (EX φ) to the (immediate) predecessors of states labeled by φ " Add E(φ1 U φ2 ) to the predecessor states of φ2 while they satisfy φ1 " 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 φ. Model-checking algorithm in O(|K|*|φ|). Complexity: CTL model-checking is Ptime-complete,

slide-38
SLIDE 38

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 38

Symbolic CTL Model-Checking Algorithm

Represent finite Kripke structures using Boolean constraints for " sets of states as a boolean constraint c(V) " the transition relation as a boolean constraint r(V,V )

slide-39
SLIDE 39

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 39

Symbolic CTL Model-Checking Algorithm

Represent finite Kripke structures using Boolean constraints for " sets of states as a boolean constraint c(V) " the transition relation as a boolean constraint r(V,V ) Ordered Binary Decision Diagrams OBDD [Bryant 85] provide canonical forms for Boolean formulas (decides SAT in NP, and 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)

slide-40
SLIDE 40

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 40

Mammalian Cell Cycle Control Map [Kohn 99]

slide-41
SLIDE 41

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 41

Mammalian Cell Cycle Control Benchmark

147-2733 rules, 165 proteins and genes, 500 variables, 2500 states. BIOCHAM NuSMV model-checker time in seconds:

31.8 EG ( (EF ¬ CycA)  (EF CycA)) Oscillations CycA 6 EG ( (EF ¬ CycB)  (EF CycB)) false ! Osciallations CycB 2.2 ¬ EF (¬ Cdc25~{Nterm} U Cdk1~{Thr161}-CycB) Checkpoint for mitosis complex 1.7 EF PCNA-CycD Reachability G1 1.9 EF CycD Reachability G1 2 EF CycE Reachability G1 29 compiling Time: Query: Initial state G2

slide-42
SLIDE 42

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 42

Linear Time Logic with Constraints LTL(R)

Constraints over concentrations and derivatives as formulae over the reals:

  • [M] > 0.2
  • [M]+[P] > [Q]
  • d([M])/dt < 0
slide-43
SLIDE 43

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 43

Linear Time Logic with Constraints LTL(R)

Constraints over concentrations and derivatives as formulae over the reals:

  • [M] > 0.2
  • [M]+[P] > [Q]
  • d([M])/dt < 0

LTL(R) formulae

  • F([M]>0.2)
  • FG([M]>0.2)
slide-44
SLIDE 44

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 44

Linear Time Logic with Constraints LTL(R)

Constraints over concentrations and derivatives as formulae over the reals:

  • [M] > 0.2
  • [M]+[P] > [Q]
  • d([M])/dt < 0

LTL(R) formulae

  • 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))))
slide-45
SLIDE 45

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 45

Linear Time Logic with Constraints LTL(R)

Constraints over concentrations and derivatives as formulae over the reals:

  • [M] > 0.2
  • [M]+[P] > [Q]
  • d([M])/dt < 0

LTL(R) formulae

  • 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))))
  • scil(M,n) defined as at least n alternances of sign of the derivative
slide-46
SLIDE 46

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 46

Real-time LTL(R)

Real-time variable T

  • Reachability of a threshold value with a minimum delay

F([M]>0.2) & G(Time<5 ⇒[M]<0.2)

  • Formalization of numerical data time series (experimental curve)

F(Time=1 & [M]=0.05 & F(Time=2 & [M]=0.12& F(Time=3 & [M]=0.25)))

  • Constraint of period

Period(A,75)= ∃ t ∃v F(Time = t & [A] = v & d([A])/dt > 0 & X(d([A])/dt < 0) & F(Time = t + 75 & [A] = v & d([A])/dt > 0 & X(d([A])/dt < 0)))

slide-47
SLIDE 47

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 47

How to Evaluate an LTL(R) Formula ?

Consider the ODE s of the concentration semantics dX/dt = f(X) Initial conditions X0 Numerical integration methods produce a (clever) discretization of time (adaptive step size Runge-Kutta or Rosenbrock method for stiff syst.)

slide-48
SLIDE 48

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 48

How to Evaluate a LTL(R) Formula ?

Consider the ODE s of the concentration semantics dX/dt = f(X) Initial conditions X0 Numerical integration methods produce a (clever) discretization of time (adaptive step size Runge-Kutta or Rosenbrock method for stiff syst.) The trace is a linear Kripke structure over concentrations and their derivatives at discrete time points (t0,X0,dX0/dt), (t1,X1,dX1/dt), …, (tn,Xn,dXn/dt),… Apply a model-checking algorithm on a finite prefix of that Kripke structure.

slide-49
SLIDE 49

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 49

LTL(R) Trace-based Model Checking Algo

Input: An ODE system M given with initial conditions, an LTL(R) formula φ Hypothesis: the formula can be checked over a finite period of time [0,T] Output: whether φ is true in M

slide-50
SLIDE 50

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 50

LTL(R) Trace-based Model Checking Algo

Input: An ODE system M given with initial conditions, an LTL(R) formula φ Hypothesis: the formula can be checked over a finite period of time [0,T] Output: whether φ is true in M " Compute a trace by numerical integration from 0 to T

slide-51
SLIDE 51

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 51

LTL(R) Trace-based Model Checking Algo

Input: An ODE system M given with initial conditions, an LTL(R) formula φ Hypothesis: the formula can be checked over a finite period of time [0,T] Output: whether φ is true in M " Compute a trace by numerical integration from 0 to T

  • Label each state of the trace with the formula s

constraints that are true,

slide-52
SLIDE 52

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 52

LTL(R) Trace-based Model Checking Algo

Input: An ODE system M given with initial conditions, an LTL(R) formula φ Hypothesis: the formula can be checked over a finite period of time [0,T] Output: whether φ is true in M " Compute a trace by numerical integration from 0 to T

  • Label each state of the trace with the formula s

constraints that are true, " Iteratively label the states with the sub-formulae that are true:

  • Add X φ1 to the immediate predecessors of states labeled by φ1,
slide-53
SLIDE 53

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 53

LTL(R) Trace-based Model Checking Algo

Input: An ODE system M given with initial conditions, an LTL(R) formula φ Hypothesis: the formula can be checked over a finite period of time [0,T] Output: whether φ is true in M " Compute a trace by numerical integration from 0 to T

  • Label each state of the trace with the formula s

constraints that are true, " Iteratively label the states with the sub-formulae that are true:

  • Add X φ1 to the immediate predecessors of states labeled by φ1,
  • Add φ1 U φ2 to the predecessors of states labelled by φ2 while they satisfy φ1,
slide-54
SLIDE 54

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 54

LTL(R) Trace-based Model Checking Algo

Input: An ODE system M given with initial conditions, an LTL(R) formula φ Hypothesis: the formula can be checked over a finite period of time [0,T] Output: whether φ is true in M " Compute a trace by numerical integration from 0 to T

  • Label each state of the trace with the formula s

constraints that are true, " Iteratively label the states with the sub-formulae that are true:

  • Add X φ1 to the immediate predecessors of states labeled by φ1,
  • Add φ1 U φ2 to the predecessors of states labelled by φ2 while they satisfy φ1,
  • Add φ1 W φ2 to the states labelled by φ1∧ φ2, to the last state if it is labelled by

φ1, and to the predecessors of states labelled by φ1 W φ2 while they satisfy φ1,

slide-55
SLIDE 55

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 55

LTL(R) Trace-based Model Checking Algo

Input: An ODE system M given with initial conditions, an LTL(R) formula φ Hypothesis: the formula can be checked over a finite period of time [0,T] Output: whether φ is true in M " Compute a trace by numerical integration from 0 to T

  • Label each state of the trace with the formula s

constraints that are true, " Iteratively label the states with the sub-formulae that are true:

  • Add X φ1 to the immediate predecessors of states labeled by φ1,
  • Add φ1 U φ2 to the predecessors of states labelled by φ2 while they satisfy φ1,
  • Add φ1 W φ2 to the states labelled by φ1∧ φ2, to the last state if it is labelled by

φ1, and to the predecessors of states labelled by φ1 W φ2 while they satisfy φ1, " Return true if the initial state is labelled by φ, and false otherwise

slide-56
SLIDE 56

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 56

Naïve Parameter Search Algorithm

Input: an ODE model M(p) with n parameters p in range [pmin,pmax], an LTL(R) specification φ Output: parameter values v such that M(v) |= φ

  • r fail if no such values
slide-57
SLIDE 57

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 57

Naïve Parameter Search Algorithm

Input: an ODE model M(p) with n parameters p in range [pmin,pmax], an LTL(R) specification φ Output: parameter values v such that M(v) |= φ

  • r fail if no such values
  • 6. Scan the parameter value space [pmin,pmax]^n with a fixed step
slide-58
SLIDE 58

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 58

Naïve Parameter Search Algorithm

Input: an ODE model M(p) with n parameters p in range [pmin,pmax], an LTL(R) specification φ Output: parameter values v such that M(v) |= φ

  • r fail if no such values

" Scan the parameter value space [pmin,pmax]^n with a fixed step " Test whether M(v) |= φ by trace-based model checking

slide-59
SLIDE 59

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 59

Naïve Parameter Search Algorithm

Input: an ODE model M(p) with n parameters p in range [pmin,pmax], an LTL(R) specification φ Output: parameter values v such that M(v) |= φ

  • r fail if no such values

" Scan the parameter value space [pmin,pmax]^n with a fixed step " Test whether M(v) |= φ by trace-based model checking " Return the first value set v which satisfies φ

slide-60
SLIDE 60

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 60

Naïve Parameter Search Algorithm

Input: an ODE model M(p) with n parameters p in range [pmin,pmax], an LTL(R) specification φ Output: parameter values v such that M(v) |= φ

  • r fail if no such values

" Scan the parameter value space [pmin,pmax]^n with a fixed step " Test whether M(v) |= φ by trace-based model checking " Return the first value set v which satisfies φ Exponential complexity in O(s^n) where s is the maximum number of tried values in a range Gradient-based methods need a satisfaction degree for LTL(R) formulae&

slide-61
SLIDE 61

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 61

Cell Cycle Control [Tyson 91]

slide-62
SLIDE 62

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 62

Quantitative Model of Cell Cycle Control [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. parameter(k1,0.015). parameter(k2,0.015). parameter(k3,200). parameter(k4p,0.018). parameter(k4,180). parameter(k5,0). parameter(k6,1). parameter(k7,0.6). parameter(k8,100).parameter(k9,100). present(Cdc2,1).

slide-63
SLIDE 63

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 63

Learning Parameters from Temporal Properties

biocham: learn_parameter([k3,k4],[(0,200),(0,200)],20,

  • scil(Cdc2-Cyclin~{p1},3),150).
slide-64
SLIDE 64

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 64

Learning Parameters from Temporal Properties

biocham: learn_parameter([k3,k4],[(0,200),(0,200)],20,

  • scil(Cdc2-Cyclin~{p1},3),150).

First values found : parameter(k3,10). parameter(k4,70).

slide-65
SLIDE 65

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 65

Learning Parameters from Temporal Properties

biocham: learn_parameter([k3,k4],[(0,200),(0,200)],20,

  • scil(Cdc2-Cyclin~{p1},3) & F([Cdc2-Cyclin~{p1}]>0.15), 150).

First values found : parameter(k3,10). parameter(k4,120).

slide-66
SLIDE 66

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 66

Learning Parameters from Temporal Properties

biocham: learn_parameter([k3,k4],[(0,200),(0,200)],20, period(Cdc2-Cyclin~{p1},35), 150). First values found: parameter(k3,10). parameter(k4,280).

slide-67
SLIDE 67

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 67 Leloup and Goldbeter (1999) MPF preMPF Wee1 Wee1P Cdc25 Cdc25P A P C APC .. .. .. .. .. .. .. .. Cell cycle

Coupling Cell and Circadian Cycles through Wee1

BMAL1/CLOCK PER/CRY Circadian cycle Wee1 mRNA

L

[L. Calzone, S. Soliman 2006]

slide-68
SLIDE 68

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 68 PCN Wee1m Wee1 MPF BN Cdc25

slide-69
SLIDE 69

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 69

entrainment

entrainment

Condition of Entrainment in Period

  • n Wee1/Cdc25

Entrainment in period constraint expressed in LTL with the period formula

slide-70
SLIDE 70

29/07/10 François Fages - Ecoles Jeunes Chercheurs - Porquerolles 70

Continuous Satisfaction Degree for LTL(R) ?

Satisfaction degree of LTL(R) formulas Bifurcation diagram on k4, k6 for oscillation with amplitude constraint [Tyson 91]