×

Stochastic simulation of multiple process calculi for biology. (English) Zbl 1251.68158

Summary: Numerous programming languages based on process calculi have been developed for biological modelling, many of which can generate potentially unbounded numbers of molecular species and reactions. As a result, such languages cannot rely on standard reaction-based simulation methods, and are generally implemented using custom stochastic simulation algorithms. As an alternative, this paper proposes a generic abstract machine that can be instantiated to simulate a range of process calculi using a range of simulation methods. The abstract machine functions as a just-in-time compiler, which dynamically updates the set of possible reactions and chooses the next reaction in an iterative cycle. We instantiate the generic abstract machine with two Markovian simulation methods and provide encodings for four process calculi: the agent-based pi-calculus, the compartment-based bioambient calculus, the rule-based kappa calculus and the domain-specific DNA strand displacement calculus. We present a generic method for proving that the encoding of an arbitrary process calculus into the abstract machine is correct, and we use this method to prove the correctness of all four calculus encodings. Finally, we demonstrate how the generic abstract machine can be used to simulate heterogeneous models in which discrete communicating sub-models are written using different domain-specific languages and then simulated together. Our approach forms the basis of a multi-language environment for the simulation of heterogeneous biological models.

MSC:

68Q85 Models and methods for concurrent and distributed computing (process algebras, bisimulation, transition nets, etc.)
92B05 General biology and biomathematics
92C42 Systems biology, networks

Software:

BlenX; LBS
PDFBibTeX XMLCite
Full Text: DOI

References:

[1] Benenson, Y.; Gil, B.; Ben-Dor, U.; Adar, R.; Shapiro, E., An autonomous molecular computer for logical control of gene expression, Nature, 429, 6990, 423-429 (2004)
[2] Bratsun, D.; Volfson, D.; Tsimring, L. S.; Hasty, J., Delay-induced stochastic oscillations in gene regulation, Proceedings of the National Academy of Sciences of the United States of America, 102, 41, 14593-14598 (2005)
[3] Cardelli, L., Brane calculi, (Computational Methods in Systems Biology (2004)), 257-278 · Zbl 1088.68657
[4] Cardelli, L., On process rate semantics, Theoretical Computer Science, 391, 3, 190-215 (2008) · Zbl 1133.68054
[5] V. Danos, J. Feret, W. Fontana, R. Harmer, J. Krivine, CONCUR 2007—Concurrency Theory, chapter Rule-Based Modelling of Cellular Signalling, 2007, pp. 17-41.; V. Danos, J. Feret, W. Fontana, R. Harmer, J. Krivine, CONCUR 2007—Concurrency Theory, chapter Rule-Based Modelling of Cellular Signalling, 2007, pp. 17-41. · Zbl 1151.68723
[6] Danos, V.; Feret, J.; Fontana, W.; Krivine, J., Scalable simulation of cellular signaling networks, invited paper, (Shao, Z., Proceedings of the Fifth Asian Symposium on Programming Systems, APLAS’2007, Singapore. Proceedings of the Fifth Asian Symposium on Programming Systems, APLAS’2007, Singapore, Lecture Notes in Computer Science, vol. 4807 (2007), Springer: Springer Singapore), 139-157, Berlin, Germany
[7] Danos, V.; Feret, J.; Fontana, W.; Krivine, J., Abstract interpretation of cellular signalling networks, (Logozzo, F.; Peled, D.; Zuck, L., Verification, Model Checking, and Abstract Interpretation. Verification, Model Checking, and Abstract Interpretation, Lecture Notes in Computer Science, vol. 4905 (2008), Springer: Springer Berlin, Heidelberg), 83-97 · Zbl 1138.68650
[8] Dematté, L.; Priami, C.; Romanel, A., Modelling and simulation of biological processes in BlenX, SIGMETRICS Performance Evaluation Review, 35, 4, 32-39 (2008) · Zbl 1160.68678
[9] Ewald, R.; Himmelspach, J.; Jeschke, M.; Leye, S.; Uhrmacher, A. M., Flexible experimentation in the modeling and simulation framework JAMES II — implications for computational systems biology, Brief Bioinform (2010)
[10] Gibson, M. A.; Bruck, J., Efficient exact stochastic simulation of chemical systems with many species and many channels, The Journal of Physical Chemistry A, 104, 9, 1876-1889 (2000)
[11] Gillespie, D. T., Exact stochastic simulation of coupled chemical reactions, Journal of Physical Chemistry, 81, 25, 2340-2361 (1977)
[12] Gillespie, D. T., Approximate accelerated stochastic simulation of chemically reacting systems, Journal of Chemical Physics, 115, 1716-1733 (2001)
[13] Harel, D., Statecharts: a visual formalism for complex systems, Sciience of Computer Programming, 8, 231-274 (1987) · Zbl 0637.68010
[14] Lakin, M. R.; Phillips, A., Modelling, simulating and verifying turing-powerful strand displacement systems, (Cardelli, L.; Shih, W. M., DNA. DNA, Lecture Notes in Computer Science, vol. 6937 (2011), Springer), 130-144 · Zbl 1347.68139
[15] Lakin, M. R.; Youssef, S.; Cardelli, L.; Phillips, A., Abstractions for DNA circuit design, Journal of the Royal Society Interface (2011), Published online
[16] Paulevé, L.; Youssef, S.; Lakin, M. R.; Phillips, A., A generic abstract machine for stochastic process calculi, (CMSB’10: Proceedings of the 8th International Conference on Computational Methods in Systems Biology (2010), ACM: ACM New York, NY, USA), 43-54
[17] Pedersen, M.; Phillips, A., Towards programming languages for genetic engineering of living cells, Journal of the Royal Society Interface, 6, S4, 437-450 (2009)
[18] Pedersen, M.; Plotkin, G., A language for biochemical systems, (Computational Methods in Systems Biology. Computational Methods in Systems Biology, LNCS, vol. 5307 (2008), Springer), 63-82
[19] Phillips, A., An abstract machine for the stochastic bioambient calculus, Electronic Notes in Theoretical Computer Science, 227, 143-159 (2009) · Zbl 1347.68143
[20] Phillips, A.; Cardelli, L., Efficient, correct simulation of biological processes in the stochastic pi-calculus, (Computational Methods in Systems Biology. Computational Methods in Systems Biology, LNCS, vol. 4695 (2007), Springer), 184-199
[21] Phillips, A.; Cardelli, L., A programming language for composable DNA circuits, Journal of the Royal Society Interface, 6, S4, 419-436 (2009)
[22] Phillips, A.; Lakin, M.; Paulevé, L., Stochastic simulation of process calculi for biology, (Ciobanu, G.; Koutny, M., MeCBIC. MeCBIC, EPTCS, vol. 40 (2010)), 1-5
[23] Priami, C.; Regev, A.; Shapiro, E.; Silverman, W., Application of a stochastic name-passing calculus to representation and simulation of molecular processes, Information Processing Letters, 80, 25-31 (2001) · Zbl 0997.92018
[24] Qian, L.; Winfree, E., Scaling up digital circuit computation with DNA strand displacement cascades, Science, 332, 6034, 1196-1201 (2011)
[25] Qian, L.; Winfree, E.; Bruck, J., Neural network computation with DNA strand displacement cascades, Nature, 475, 7356, 368-372 (2011)
[26] Regev, A.; Panina, E. M.; Silverman, W.; Cardelli, L.; Shapiro, E. Y., Bioambients: an abstraction for biological compartments, Theoretical Computer Science, 325, 1, 141-167 (2004) · Zbl 1069.68569
[27] Regev, A.; Silverman, W.; Shapiro, E., Representation and simulation of biochemical processes using the pi-calculus process algebra, (Pacific Symposium on Biocomputing, vol. 6 (2001), World Scientific Press: World Scientific Press Singapore), 459-470
[28] Tian, T.; Burrage, K., Binomial leap methods for simulating stochastic chemical kinetics, Journal of Chemical Physics, 121, 10356-10364 (2004)
[29] Wang, D. Y.; Cardelli, L.; Phillips, A.; Piterman, N.; Fisher, J., Computational modeling of the egfr network elucidates control mechanisms regulating signal dynamics, BMC Systems Biology, 3, 118 (2009)
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.