model checking up to multidimensional multilevel models
play

Model checking : Up to multidimensional / multilevel models David - PowerPoint PPT Presentation

Model checking : Up to multidimensional / multilevel models David Gilbert Computational Design Group Synthetic Biology Brunel University London, UK david.gilbert@brunel.ac.uk www.brunel.ac.uk/people/david-gilbert Collaborative work with


  1. Model checking : Up to multidimensional / multilevel models David Gilbert Computational Design Group Synthetic Biology Brunel University London, UK david.gilbert@brunel.ac.uk www.brunel.ac.uk/people/david-gilbert Collaborative work with Monika Heiner , Brandenburg Technical University, Cottbus, Germany 1 david.gilbert@brunel.ac.uk Dagstuhl 17452

  2. Model Checking “Formally check whether a model of a biochemical system does what we want it to” Components : model • the current description of a biochemical system of interest property • a property which we think the system should have model checker • a program to test whether the model has the property 2 david.gilbert@brunel.ac.uk Dagstuhl 17452

  3. We We could also check (a (and attempt to [automatically] repair…) • Syntactic properties of models • Although this is normally done as part of reading in a model into a mechanised proof system or simulator • Checking soundness of the chemical reactions (balance etc) • Typos / spelling mistakes of component names, etc… • Siphon / trap properties (even in very large networks) 3 david.gilbert@brunel.ac.uk Dagstuhl 17452

  4. To formally express time properties we use a temporal logic • " I am hungry .” • " I am always hungry ", " I will eventually be hungry ", • "I will be hungry until I eat something ”. Linear time logics restricted to single time line. Branching logics can reason about multiple time lines. “ There is a possibility that I will stay hungry forever .” “ There is a possibility that eventually I am no longer hungry .” Various logics each with different expressivity: • Computational Tree Logic (CTL) • Continuous Stochastic Logic (CSL) • Linear-time Temporal Logic (LTL) 4 david.gilbert@brunel.ac.uk Dagstuhl 17452

  5. Model Checking Biochemical Pathway Models Property Eg, “Order of peaks is; RafP, MEKPP, ERKPP Yes/no or Model Checker probability Pathway Model Formalising wetlab understanding experiments observed behaviour model natural (knowledge) biosystem predicted analysis behaviour model-based experiment design 5 david.gilbert@brunel.ac.uk Dagstuhl 17452

  6. Properties… Effectively checking over time series behaviour Examples: • After 100 seconds the concentration of Protein1 is stable • Protein1 peaks and falls • Protein1 peaks and stays constant • Protein1 peaks before Protein2 • Protein1 oscillates 4 times in 5,000 seconds • Molecules of Protein2 are required for molecules of Protein1 to be created 6 david.gilbert@brunel.ac.uk Dagstuhl 17452

  7. Analytical vs Simulative Model Checking Analytical : • Exact probabilities & prove properties • A model state is an association of #molecules/levels to each of the species • Protein1 has 10 molecules & Protein2 has 20 molecules • Analytical assesses every state that the model can be in (reachable states) • State space can grow even worse than exponentially with increasing molecules, or even be infinite! Simulative : Instead of analysing the constructed state space : • analyse simulation outputs • Simulate the model X times and check these simulations • Simulation run = finite path through the state space • Can’t prove probabilities 7 david.gilbert@brunel.ac.uk Dagstuhl 17452

  8. Si Simulative: How/when to check? In-line: check the observations as they arrive > Requires complex computational machinery: ‘combine’ simulator & model checker > Good for biochemical observations > Don’t always need to finish the experimental run Off-line: check observations after all have been generated > Easier to implement computationally (simulate then check) > Need to always define when to ‘stop’ generating observations 8 david.gilbert@brunel.ac.uk Dagstuhl 17452

  9. Simulation-based Model Checking ‘Behaviour checking’ Property Eg, “Order of peaks is RafP, MEKPP, ERKPP” Yes/no or Behaviour Checker Model Checker probability Model Time series data construction design synthetic model biosystem (blueprint) verification desired behaviour Model Lab predicted validation observed behaviour behaviour validation 9 david.gilbert@brunel.ac.uk Dagstuhl 17452

  10. (P (P)L )LTL L Li Linear r Temporal Lo Logic • G (φ ) φ always happens • F (φ ) φ happens at some time • X (φ ) φ happens in the next time point • φ 1 U φ 2 φ 1 happens until φ 2 happens • Protein stability: P =? [ time >= 100 à ([Protein] >= 4 ^ [Protein] <= 6) ] • Protein concentration rises to a maximum value and then remains constant: P =? [(d[Protein]> 0) U ( G([Protein] >= 0.99*max[Protein]) ) ] 10 david.gilbert@brunel.ac.uk Dagstuhl 17452

  11. MC2 with ODE Output P =? [ F( X > 5 ) ] => P = 1 5 X david.gilber t@brunel.a 11 david.gilbert@brunel.ac.uk Dagstuhl 17452 c.uk

  12. MC2 with Gillespie Output P =? [ F( X > 5 ) ] => P = 4/6 5 X david.gilber t@brunel.a 12 david.gilbert@brunel.ac.uk Dagstuhl 17452 c.uk Systems & Synthetic Biology

  13. Qu Qualit litativ ive to quantit itativ ive desc scrip iptio ions s in in PLTL • Qualitative : Protein rises then falls • P=? [ ( d(Protein) > 0 ) U ( G( d(Protein) < 0 ) ) ] • Semi-qualitative : Protein rises then falls to less than 50% of peak concentration • P=? [ ( d(Protein) > 0 ) U ( G( d(Protein) < 0 ) ∧ F ( [Protein] < 0.5 ∗ max[Protein] ) ) ] • Semi-quantitative : Protein rises then falls to less than 50% of peak concentration by 60 minutes • P=? [ ( d(Protein) > 0 ) U ( G( d(Protein) < 0 ) ∧ F ( time = 60 ∧ Protein < 0.5 ∗ max(Protein) ) ) ] • Quantitative : Protein rises then falls to less than 100µMol by 60 minutes • P=? [ ( d(Protein) > 0 ) U ( G( d(Protein) < 0 ) ∧ F ( time = 60 ∧ Protein < 100 ) ) ] 13 david.gilbert@brunel.ac.uk Dagstuhl 17452

  14. Mo Model del (b (behaviour) r) se searching Peaks at least once (rises then falls below 50% max concentration) P >=1 [ ErkPP <= 0.50*max(ErkPP) ∧ d(ErkPP) > 0 U ( ErkPP = max(ErkPP) ∧ F( ErkPP <= 0.50*max(ErkPP) ) ) ] • Brown • Kholodenko • Schoeberl Rises and remains constant (99% max concentration) P >=1 [ErkPP <= 0.50*max(ErkPP) ∧ ( d(ErkPP) > 0 ) U ( G(ErkPP >= 0.99*max(ErkPP)) ) ] • Levchenko Oscillates at least 4 times P >=1 [ F( d(ErkPP) > 0 ∧ F( d(ErkPP) < 0 ∧ … ) ) ] • Kholodenko 14 david.gilbert@brunel.ac.uk Dagstuhl 17452

  15. Mo Model del c chec hecking ng o over er l lar arge amo e amoun unt o t of da data Wh Whol ole genom ome metab abol olic mod odel ( E.c E.coli) à Search by behavioural template libraries 15 david.gilbert@brunel.ac.uk Dagstuhl 17452

  16. PL PLTL pr proper perty ty libr library - me metabo bolit lites es P>=1 [ G ( [$x] = 0 ) ] always_steadystate_zero P>=1 [ G ( d[$x] = 0 ^ [$x]>0 ) ] always_steadystate_above_zero P>=1 [ G ( d[$x] = 0 ) ] always_steadystate_any_value P>=1 [ F ( G ( [$x]=0 ^ d[$x]=0 ) ) ^ F (d[$x] != 0) ] changing_and_finally_steadystate_of_zero P>=1 [ F ( G ( [$x]>0 ^ d[$x]=0 ) ) ^ F (d[$x] != 0) ] changing_and_finally_steadystate_above_zero P>=1 [ G (d[$x] < 0 ) ] decreasing P>=1 [ G (d[$x] > 0 ) ] Increasing P>=1 [ F( d[$x]>0 ) ^ ( d[$x]>0 U ( G d[$x] < 0 )) ] peaks_and_falls P>=1 [ F( d[$x]<0 ) ^ ( d[$x]<0 U ( G d[$x] > 0 )) ] falls_and_rises P>=1 [ (F ( d[$x] != 0)) ^ ¬( F( G( [$x]=0 ^ d[$x]=0 ) )) ] activity_and_not_finally_steadystate_of_zero P>=1 [ G ( [$x] <= 0.0001 ) ^ ¬ G ( [$x] = 0 ) ] always_low_concentrations_0.0001 16

  17. PL PLTL pr proper perty ty libr library - re reactions P>=1 [ G ( [$x] = 0 ) ] never_active P>=1 [ F ( [$x] > 0 ) ] sometime_active P>=1 [ G ( d[$x] = 0 ) ] always_steadystate_active_any_value P>=1 [ F ( G ( [$x] > 0 ) ) ] finally_active P>=1 [ F ( G ( [$x] > 0 ^ d[$x]=0 ) ) ] finally_active_steadystate P>=1 [ G ( F ( [$x] > 0 ) ) ] always_active_again P>=1 [ F ( G ( [$x] = 0 ) ) ] finally_inactive P>=1 [ G (d[$x] < 0 ) ] always_decreasing_activity P>=1 [ G (d[$x] > 0 ) ] always_increasing_activity P>=1 [ F( d[$x]>0 ) ^ ( d[$x]>0 U ( G d[$x] < 0 )) ] activity_peaks_and_falls P>=1 [ F( d[$x]<0 ) ^ ( d[$x]<0 U ( G d[$x] > 0 )) ] activity_falls_and_rises P>=1 [ G ( [$x] <= 0.0001 ) ^ ¬ G ( [$x] = 0 ) ] rare_events 17

  18. Se Searching by by behavioural template libraries 18

  19. Su Subnets property subnets defined by sets of entities sharing a certain temporal logical property, the composition of which can vary over time functional subnets (subsystems) statically defined by sets of reactions contributing to the same biological function. dead subnets , exhibit no activity from the current time point onwards. Can be an indication of • modelling fault, • missing information in the network structure (e.g. gaps due to unidentified genes), • unused parts of the network due to the set of environment conditions imposed (e.g. the growth conditions). 19 david.gilbert@brunel.ac.uk Computational Synthetic Biology

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend