A Logic Programming Approach to Reaction Systems

Authors Moreno Falaschi , Giulia Palma

Thumbnail PDF


  • Filesize: 0.5 MB
  • 15 pages

Document Identifiers

Author Details

Moreno Falaschi
  • Department of Information Engineering and Mathematics, University of Siena, Italy
Giulia Palma
  • Department of Computer Science, University of Pisa, Italy


We thank the anonymous reviewers for their detailed and very useful criticisms and recommendations that helped us to improve our paper.

Cite AsGet BibTex

Moreno Falaschi and Giulia Palma. A Logic Programming Approach to Reaction Systems. In Recent Developments in the Design and Implementation of Programming Languages. Open Access Series in Informatics (OASIcs), Volume 86, pp. 6:1-6:15, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2020)


Reaction systems (RS) are a computational framework inspired by the functioning of living cells, suitable to model the main mechanisms of biochemical reactions. RS have shown to be useful also for computer science applications, e.g. to model circuits or transition systems. Since their introduction about 10 years ago, RS matured into a fruitful and dynamically evolving research area. They have become a popular novel model of interactive computation. RS can be seen as a rewriting system interacting with the environment represented by the context. RS pose some problems of implementation, as it is a relatively recent computation model, and several extensions of the basic model have been designed. In this paper we present some preliminary work on how to implement this formalism in a logic programming language (Prolog). To the best of our knowledge this is the first approach to RS in logic programming. Our prototypical implementation does not aim to be highly performing, but has the advantage of being high level and easily modifiable. So it is suitable as a rapid prototyping tool for implementing several extensions of reaction systems in the literature as well as new ones. We also make a preliminary implementation of a kind of memoization mechanism for stopping potentially infinite and repetitive computations. Then we show how to implement in our interpreter an extension of RS for modeling a nondeterministic context and interaction between components of a (biological) system. We then present an extension of the interpreter for implementing the recently introduced networks of RS.

Subject Classification

ACM Subject Classification
  • Theory of computation → Semantics and reasoning
  • Computing methodologies → Symbolic calculus algorithms
  • Software and its engineering → Interpreters
  • reaction systems
  • logic programming
  • non deterministic context


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. S. Azimi, C. Gratie, S. Ivanov, and I. Petre. Dependency graphs and mass conservation in reaction systems. Theoretical Computer Science, 598:23–-39, 2015. URL: https://doi.org/10.1016/j.tcs.2015.02.014.
  2. R. Barbuti, R. Gori, F. Levi, and P. Milazzo. Investigating dynamic causalities in reaction systems. Theor. Comput. Sci., 623:114-145, 2016. URL: https://doi.org/10.1016/j.tcs.2015.11.041.
  3. A. Bernini, L. Brodo, P. Degano, M. Falaschi, and D. Hermith. Process calculi for biological processes. Natural Computing, 17(2):345-373, 2018. URL: https://doi.org/10.1007/s11047-018-9673-2.
  4. C. Bodei, L. Brodo, and R. Focardi. Static evidences for attack reconstruction. In Proc. of Programming Languages with Applications to Biology and Security, volume 9465 of Lecture Notes in Computer Science, pages 162-182. Springer, 2015. URL: https://doi.org/10.1007/978-3-319-25527-9_12.
  5. C. Bodei, L. Brodo, R. Gori, F. Levi, A. Bernini, and D. Hermith. A static analysis for brane calculi providing global occurrence counting information. Theor. Comput. Sci, 696:11-51, 2017. URL: https://doi.org/10.1016/j.tcs.2017.07.008.
  6. P. Bottoni, A. Labella, and G. Rozenberg. Networks of reaction systems. International Journal of Foundations of Computer Science, 31:53-71, 2020. URL: https://doi.org/10.1142/S0129054120400043.
  7. R. Brijder, A. Ehrenfeucht, M. Main, and G. Rozenberg. A tour of reaction systems. International Journal of Foundations of Computer Science, 22(07):1499-1517, 2011. URL: https://doi.org/10.1142/S0129054111008842.
  8. L. Brodo. On the expressiveness of pi-calculus for encoding mobile ambients. Mathematical Structures in Computer Science, 28(2):202-240, 2018. URL: https://doi.org/10.1017/S0960129516000256.
  9. L. Brodo, R. Bruni, and M. Falaschi. Enhancing reaction systems: a process algebraic approach. In M. Alvim, K. Chatzikokolakis, C. Olarte, and F. Valencia, editors, The Art of Modelling Computational Systems: A Journey from Logic and Concurrency to Security and Privacy, volume 11760 of Lecture Notes in Computer Science, pages 68-85. Springer Berlin, 2019. URL: https://doi.org/10.1007/978-3-030-31175-9_5.
  10. L. Brodo, R. Bruni, and M. Falaschi. SOS rules for equivalences of reaction systems. In Pre-proceedings of the 28th Int. workshop on Functional and Logic Programming (WFLP 2020), 2020. URL: http://arxiv.org/abs/2009.01001.
  11. L. Brodo and C. Olarte. Symbolic semantics for multiparty interactions in the link-calculus. In Proc. of SOFSEM'17, volume 10139 of Lecture Notes in Computer Science, pages 62-75. Springer, 2017. URL: https://doi.org/10.1007/978-3-319-51963-0_6.
  12. L. Corolli, C. Maj, F. Marinia, D. Besozzi, and G. Mauri. An excursion in reaction systems: From computer science to biology. Theoretical Computer Science, 454:95-108, 2012. URL: https://doi.org/10.1016/j.tcs.2012.04.003.
  13. J. Demongeot, M. Noual, and S. Sené. On the number of attractors of positive and negative boolean automata circuits. In 2010 IEEE 24th International Conference on Advanced Information Networking and Applications Workshops, pages 782-789, 2010. URL: https://doi.org/10.1109/WAINA.2010.141.
  14. A. Dovier, C. Piazza, E. Pontelli, and G. Rossi. Sets and constraint logic programming. ACM Transactions on Programming Languages and Systems, 22(5):861-931, 2000. URL: https://doi.org/10.1145/365151.365169.
  15. A. Ehrenfeucht, J. Kleijn, M. Koutny, and G. Rozenberg. Qualitative and quantitative aspects of a model for processes inspired by the functioning of the living cell. In Evgeny Katz, editor, Biomolecular Information Processing: From Logic Systems to Smart Sensors and Actuators, pages 323-331. Wiley, 2012. URL: https://doi.org/10.1002/9783527645480.ch16.
  16. A. Ehrenfeucht and G. Rozenberg. Reaction systems. Fundamenta Informaticae, 76:1-18, 2006. URL: https://content.iospress.com/articles/fundamenta-informaticae/fi75-1-4-15.
  17. A. Ehrenfeucht and G. Rozenberg. Reaction systems: a formal framework for processes based on biochemical interactions. Electronic Communications of the EASST, 26:1-10, 2010. URL: https://doi.org/10.1007/978-3-642-02424-5_3.
  18. C. Ferretti, A. Leporati, and L. Manzoni. The many roads to the simulation of reaction systems. Fundamenta Informaticae, 171(1-4):175-188, 2020. URL: https://doi.org/10.3233/FI-2020-1878.
  19. J. Kari. Theory of cellular automata: A survey. Theoretical Computer Science, 334(1-3):3-33, 2005. URL: https://doi.org/10.1016/j.tcs.2004.11.021.
  20. H-J. Kreowski and G. Rozenberg. Graph surfing by reaction systems. In Lambers L. and Weber J., editors, Graph Transformation. ICGT 2018., volume 10887 of Lecture Notes in Computer Science, pages 45-62. Springer Berlin, 2018. URL: https://doi.org/10.1007/978-3-319-92991-0_4.
  21. H-J. Kreowski and G. Rozenberg. Graph transformation through graph surfing in reaction systems. Journal of Logical and Algebraic Methods in Programming, 109, 2019. URL: https://doi.org/10.1016/j.jlamp.2019.100481.
  22. A. Mȩski, W. Penczek, and G. Rozenberg. Model checking temporal properties of reaction systems. Information Sciences, 313:22-42, 2015. URL: https://doi.org/10.1016/j.ins.2015.03.048.
  23. M.S. Nobile, A.E. Porreca, S. Spolaor, L. Manzoni, P. Cazzaniga, G. Mauri, and D. Besozzi. Efficient simulation of reaction systems on graphics processing units. Fundamenta Informaticae, 154(1-4):307-–321, 2017. URL: https://doi.org/10.3233/FI-2017-1568.
  24. E. Shapiro. The family of concurrent logic languages. ACM Computing Surveys, 21(3):412-510, September 1989. URL: https://doi.org/10.1145/72551.72555.
Questions / Remarks / Feedback

Feedback for Dagstuhl Publishing

Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail