1 / 21

Overview of the Lectures

Formal Biology of the Cell Modeling, Computing and Reasoning with Constraints 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.

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 CellModeling, Computing and Reasoning with ConstraintsFranç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. • …

  3. Cell Cycle Control [Qu et al. 03] • 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). make_absent_not_present.

  4. Cell Cycle Control [Qu et al. 2003]

  5. Linear Time Logic with Constraints • Constraints over concentrations and derivatives as FOL formulae over the reals: • [M] > 0.2 • [M]+[P] > [Q] • d([M])/dt < 0

  6. Linear Time Logic with Constraints • Constraints over concentrations and derivatives as FOL formulae over the reals: • [M] > 0.2 • [M]+[P] > [Q] • d([M])/dt < 0 • Linear Time Logic LTL operators for time X, F, U, G • 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) defined as at least n alternances of sign of the derivative

  7. Linear Time Logic with Constraints • Constraints over concentrations and derivatives as FOL formulae over the reals: • [M] > 0.2 • [M]+[P] > [Q] • d([M])/dt < 0 • Linear Time Logic LTL operators for time X, F, U, G • 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) defined as at least n alternances of sign of the derivative • 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)))

  8. How to Evaluate a Constraint LTL Formula ? • Consider the ODE’s of the concentration semantics dX/dt = f(X)

  9. How to Evaluate a Constraint LTL Formula ? • Consider the ODE’s of the concentration semantics dX/dt = f(X) • Numerical integration methods produce a (clever) discretization of time (adaptive step size Runge-Kutta or Rosenbrock method for stiff syst.)

  10. How to Evaluate a Constraint LTL Formula ? • Consider the ODE’s of the concentration semantics dX/dt = f(X) • 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: • (t0,X0,dX0/dt), (t1,X1,dX1/dt), …, (tn,Xn,dXn/dt). • over concentrations and their derivatives at discrete time points • Evaluate the formula on that Kripke structure with a model checking alg.

  11. 1. Simulation based Forward Model Checking • Hypothesis 1: the initial state is completely known • Hypothesis 2: the formula can be checked over a finite period of time [0,T] • Run the numerical integration from 0 to T producing values at a finite sequence of time points • Iteratively label the time points with the sub-formulae of f that are true: • Add f to the time points where a FOL formula f is true, • Add F f(X f) to the (immediate) previous time points labeled by f, • Add f1 U f2to the predecessor time points of f2 while they satisfy f1, • (Add G f to the states satisfying f until T) • Model checker and numerical integration methods implemented in Prolog

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

  13. Learning 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).

  14. Learning 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).

  15. Learning Parameters from LTL Specification • 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).

  16. 3. Backward Constraint-based Model Checking • Reason backward from the set of states satisfying a formula • to the set of initial states for which the formula is true. • Makes it possible to reason with a partially know initial state. • Approximate set of states with constraints: polyhedrons defined by linear constraints.

  17. Hybrid (Continuous-Discrete) Dynamics • Gene X activates gene Y but above some threshold gene Y inhibits X. • 0.1*[X] for • _ =[X]=> Y. • if [Y]<0.8 then 0.1 for • _ => X. • 0.2*[X] for • X => _. • absent(X). absent(Y).

  18. Translation to Constraint Logic Programs over Reals • Hybrid Differential Equation System: • dx/dt = 0.1 – 0.2*x if y < 0.8 dx/dt = – 0.2*x if y ≥ 0.8 • dy/dt = 0.1*x • (Concurrent) transition system of the trace using Euler’s method: • y < 0.8  x’ = x + dt*(0.1-0.2*x) , y’ = y + dt*0.1*x • y ≥ 0.8  x’ = x + dt*(0.1-0.2*x) , y’ = y + dt*0.1*x • Initial condition: x=0, y=0. • Translation into a Constraint Logic Program over the reals (dt=1): • Init :- X=0, Y=0, p(X,Y). • p(X,Y):- X>=0, Y>=0, Y<0.8, X1=X-02*X+01, Y1=Y+0.1*X, p(X1,Y1). • p(X,Y):- X>=0, Y>=0, Y>=0.8, X1=X-02*X, Y1=Y+0.1*X, p(X1,Y1).

  19. Constraint-based CTL Backward Model Checking Theorem [Delzanno Podelski 99] EF(f)=lfp(TP{p(x):-f}), EG(f)=gfp(TPf). Safety property AG(f) iff EF(f) iff initlfp(TP{f}) Liveness property AG(f1AF(f2)) iff initlfp(TPf1gfp(T P{f2} ) ) Deductive Model Checking DMC system [Delzanno 00] Implemented in Sicstus-Prolog CLP(Herbrand,Real,Boolean) Fourier-Motzkin elimination and Simplex algorithm.

  20. Constraint-based Backward Reasoning in DMC • r(init, p(s_s,A,B), {A=0,B=0}). • r(p(s_s,A,B), p(s_s,C,D), {A>=0,B>=0.8,C=A-02*A,D=B+01*A}). • r(p(s_s,A,B), p(s_s,C,D), {A>=0,B>=0,B<0.8, • C=A-02*A+01,D=B+01*A}). • ? prop(P,S). • P = unsafe, S = p:s*(x>=0.6) • ? ti. • Property satisfied. Execution time 0 • ? ls. • s(0, p(s_s,A,_), {A>=0.6}, 1, (0,0)).

  21. Constraint-based Backward Simulation in DMC • ? prop(P,S). • P = unsafe, S = p:s*(x>=0.2) ? • ? ti. • Property NOT satisfied. Execution time 1.5 • ? ls. • s(0, p(s_s,A,_), {A>=0.2}, 1, (0,0)). • s(1, p(s_s,A,B), {B<0.8,B>=-0,A>=0.19387755102040816}, 2, (2,1)). • … • s(26, p(s_s,A,B), {B>=0,A>=0, • B+0.1982676351105516*A<0.7741338175552753}, 27, (2,26)). • s(27, init, {}, 28, (1,27)).

More Related