Skip to main content

Dynamic Slicing of Reaction Systems Based on Assertions and Monitors

  • Conference paper
  • First Online:
Practical Aspects of Declarative Languages (PADL 2023)

Abstract

Reaction Systems (RSs) are a successful computational framework inspired by biological systems. RSs can involve a large number of reactions and entities, which makes it difficult the debugging of quite long computations that traverses complex states. Slicing is a technique which is useful for simplifying a debugging process, by selecting a portion of the program containing the faulty code. We define the first dynamic slicer for RSs and show that it can help the user to detect the origins of bugs and also to inspect more closely the behavior of the model, highlighting the parts that need more investigation. Our slicer allows to select part of a (faulty) state and then eliminates from the computation the information which is not relevant for the selected items. We show how to use the slicer on some biological models in RSs. Our dynamic backward slicer is based on an SOS semantics of RSs. In order to automatize the slicing process we describe how to use monitors for identifying the states which violate a safety specification and hence are suitable to start the slicing. We have integrated our slicer in BioResolve, a prototype implementation in Prolog which provides also other features such as computations represented as colored graphs, and verification of properties.

Research supported by Università degli Studi di Sassari Fondi di Ateneo per la ricerca 2020, by MIUR Project Programma di Sviluppo - Dipartimenti di Eccellenza 2018–2022, by MIUR PRIN Project 201784YSZ5 ASPRA–Analysis of Program Analyses, and by the INdAM - GNCS Project CUP_E55F2200027001 Proprietà qualitative e quantitative di sistemi reversibili.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 64.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 84.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    http://www.di.unipi.it/~bruni/LTSRS/slicingBioReSolve.zip.

  2. 2.

    http://www.di.unipi.it/~bruni/LTSRS/.

  3. 3.

    http://www.di.unipi.it/~bruni/LTSRS/wrongspec.pl.

References

  1. Aceto, L., Achilleos, A., Francalanza, A., Ingófsdóttir, A., Kjartansson, S.: Determinizing monitors for HML with recursion. J. Log. Algebr. Methods Program. 111, 100515 (2020). https://doi.org/10.1016/j.jlamp.2019.100515

    Article  MathSciNet  MATH  Google Scholar 

  2. Aceto, L., Achilleos, A., Francalanza, A., Ingófsdóttir, A., Lehtinen, K.: The best a monitor can do. In: Proc. CSL 2021. LIPIcs, vol. 183, pp. 7:1–7:23 (2021). https://doi.org/10.4230/LIPIcs.CSL.2021.7

  3. Aceto, L., Achilleos, A., Francalanza, A., Ingólfsdóttir, A., Lehtinen, K.: An operational guide to monitorability with applications to regular properties. Softw. Syst. Model. 20(2), 335–361 (2021). https://doi.org/10.1007/s10270-020-00860-z

    Article  Google Scholar 

  4. Alpuente, M., Ballis, D., Espert, J., Romero, D.: Backward trace slicing for rewriting logic theories. In: Bjørner, N., Sofronie-Stokkermans, V. (eds.) CADE 2011. LNCS (LNAI), vol. 6803, pp. 34–48. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-22438-6_5

    Chapter  Google Scholar 

  5. Alpuente, M., Ballis, D., Frechina, F., Romero, D.: Using conditional trace slicing for improving Maude programs. Sci. Comput. Program. 80, 385–415 (2014). https://doi.org/10.1016/j.scico.2013.09.018

    Article  Google Scholar 

  6. Alpuente, M., Ballis, D., Frechina, F., Sapiña, J.: Debugging Maude programs via runtime assertion checking and trace slicing. J. Log. Algebr. Meth. Program. 85, 707–736 (2016). https://doi.org/10.1016/j.jlamp.2016.03.001

    Article  MathSciNet  MATH  Google Scholar 

  7. Azimi, S.: Steady states of constrained reaction systems. Theor. Comput. Sci. 701, 20–26 (2017). https://doi.org/10.1016/j.tcs.2017.03.047

    Article  MathSciNet  MATH  Google Scholar 

  8. Azimi, S., Gratie, C., Ivanov, S., Petre, I.: Dependency graphs and mass conservation in reaction systems. Theor. Comput. Sci. 598, 23–39 (2015). https://doi.org/10.1016/j.tcs.2015.02.014

    Article  MathSciNet  MATH  Google Scholar 

  9. Azimi, S., Iancu, B., Petre, I.: Reaction system models for the heat shock response. Fund. Inform. 131(3–4), 299–312 (2014). https://doi.org/10.3233/FI-2014-1016

    Article  MathSciNet  MATH  Google Scholar 

  10. Baggi, M., Ballis, D., Falaschi, M.: Quantitative pathway logic for computational biology. In: Degano, P., Gorrieri, R. (eds.) CMSB 2009. LNCS, vol. 5688, pp. 68–82. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-03845-7_5

    Chapter  Google Scholar 

  11. Barbuti, R., Gori, R., Levi, F., Milazzo, P.: Investigating dynamic causalities in reaction systems. Theor. Comput. Sci. 623, 114–145 (2016). https://doi.org/10.1016/j.tcs.2015.11.041

    Article  MathSciNet  MATH  Google Scholar 

  12. Barbuti, R., Gori, R., Milazzo, P.: Encoding Boolean networks into reaction systems for investigating causal dependencies in gene regulation. Theor. Comput. Sci. 881, 3–24 (2021). https://doi.org/10.1016/j.tcs.2020.07.031

    Article  MathSciNet  MATH  Google Scholar 

  13. Brijder, R., Ehrenfeucht, A., Main, M., Rozenberg, G.: A tour of reaction systems. Int. J. Found. Comput. Sci. 22(07), 1499–1517 (2011). https://doi.org/10.1142/S0129054111008842

    Article  MathSciNet  MATH  Google Scholar 

  14. Brodo, L., Bruni, R., Falaschi, M.: Enhancing reaction systems: a process algebraic approach. In: Alvim, M.S., Chatzikokolakis, K., Olarte, C., Valencia, F. (eds.) The Art of Modelling Computational Systems: A Journey from Logic and Concurrency to Security and Privacy. LNCS, vol. 11760, pp. 68–85. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-31175-9_5

    Chapter  Google Scholar 

  15. Brodo, L., Bruni, R., Falaschi, M.: A logical and graphical framework for reaction systems. Theoret. Comput. Sci. 875, 1–27 (2021). https://doi.org/10.1016/j.tcs.2021.03.024

    Article  MathSciNet  MATH  Google Scholar 

  16. Brodo, L., Bruni, R., Falaschi, M., Gori, R., Levi, F., Milazzo, P.: Exploiting modularity of SOS semantics to define quantitative extensions of reaction systems. In: Aranha, C., Martín-Vide, C., Vega-Rodríguez, M.A. (eds.) TPNC 2021. LNCS, vol. 13082, pp. 15–32. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-90425-8_2

    Chapter  Google Scholar 

  17. Corolli, L., Maj, C., Marinia, F., Besozzi, D., Mauri, G.: An excursion in reaction systems: from computer science to biology. Theor. Comput. Sci. 454, 95–108 (2012). https://doi.org/10.1016/j.tcs.2012.04.003

    Article  MathSciNet  MATH  Google Scholar 

  18. Falaschi, M., Gabbrielli, M., Olarte, C., Palamidessi, C.: Slicing concurrent constraint programs. In: Hermenegildo, M.V., Lopez-Garcia, P. (eds.) LOPSTR 2016. LNCS, vol. 10184, pp. 76–93. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-63139-4_5

    Chapter  Google Scholar 

  19. Falaschi, M., Gabbrielli, M., Olarte, C., Palamidessi, C.: Dynamic slicing for concurrent constraint languages. Fundam. Informaticae 177(3–4), 331–357 (2020). https://doi.org/10.3233/FI-2020-1992

    Article  MathSciNet  MATH  Google Scholar 

  20. Helikar, T., et al.: A comprehensive, multi-scale dynamical model of ErbB receptor signal transduction in human mammary epithelial cells. PLoS ONE 8(4), 1–9 (2013). https://doi.org/10.1371/journal.pone.0061757

    Article  Google Scholar 

  21. Korel, B., Laski, J.: Dynamic program slicing. Inf. Process. Lett. 29(3), 155–163 (1988). https://doi.org/10.1016/0020-0190(88)90054-3

    Article  MATH  Google Scholar 

  22. Milner, R. (ed.): A Calculus of Communicating Systems. LNCS, vol. 92, pp. 138–157. Springer, Heidelberg (1980). https://doi.org/10.1007/3-540-10235-3

  23. Nobile, M.S., et al.: Efficient simulation of reaction systems on graphics processing units. Fundam. Informaticae 154(1–4), 307–321 (2017). https://doi.org/10.3233/FI-2017-1568

    Article  MathSciNet  MATH  Google Scholar 

  24. Ochoa, C., Silva, J., Vidal, G.: Dynamic slicing of lazy functional programs based on redex trails. Higher Order Symbol. Comput. 21(1–2), 147–192 (2008). https://doi.org/10.1007/s10990-008-9023-7

    Article  MATH  Google Scholar 

  25. Okubo, F., Yokomori, T.: The computational capability of chemical reaction automata. Nat. Comput. 15(2), 215–224 (2015). https://doi.org/10.1007/s11047-015-9504-7

    Article  MathSciNet  MATH  Google Scholar 

  26. Silva, J.: A vocabulary of program slicing-based techniques. ACM Comput. Surv. 44(3), 1–41 (2012). https://doi.org/10.1145/2187671.2187674

    Article  MATH  Google Scholar 

  27. Weiser, M.: Program slicing. IEEE Trans. Softw. Eng. 10(4), 352–357 (1984). https://doi.org/10.1109/TSE.1984.5010248

    Article  MATH  Google Scholar 

Download references

Acknowledgment

We thank the anonymous reviewers for their comments and suggestions that helped us to improve our paper.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Moreno Falaschi .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Brodo, L., Bruni, R., Falaschi, M. (2023). Dynamic Slicing of Reaction Systems Based on Assertions and Monitors. In: Hanus, M., Inclezan, D. (eds) Practical Aspects of Declarative Languages. PADL 2023. Lecture Notes in Computer Science, vol 13880. Springer, Cham. https://doi.org/10.1007/978-3-031-24841-2_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-24841-2_8

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-24840-5

  • Online ISBN: 978-3-031-24841-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics