Skip to main content
Log in

On enumerating minimal siphons in Petri nets using CLP and SAT solvers: theoretical and practical complexity

  • Published:
Constraints Aims and scope Submit manuscript

Abstract

Petri nets are a simple formalism for modeling concurrent computation. They are also an interesting tool for modeling and analysing biochemical reaction systems, bridging the gap between purely qualitative and quantitative models. Biological networks can indeed be complex, large, and with many unknown kinetic parameters, which makes the development of quantitative models difficult. In this paper, we focus on the Petri net representation of biochemical reactions and on two structural properties of Petri nets, siphons and traps, that bring us information about the persistence of some molecular species, independently of the kinetics. We first study the theoretical time complexity of minimal siphon decision problems in general Petri nets, and present three new complexity results: first, we show that the existence of a siphon of a given cardinality is NP-complete; second, we prove that deciding the Siphon-Trap property is co-NP-complete; third, we prove that deciding the existence of a minimal siphon containing a given set of places, deciding the existence of a siphon of a given cardinality and deciding the Siphon-Trap property can be done in linear time in Petri nets of bounded tree-width. Then, we present a Boolean model of siphons and traps, and two method for enumerating all minimal siphons and traps of a Petri net, by using a SAT solver and a Constraint Logic Program (CLP) respectively. On a benchmark of 345 Petri nets of hundreds of places and transitions, extracted from biological models from the BioModels repository, as well as on a benchmark composed of 80 Petri nets from the Petriweb database of industrial processes, we show that both the SAT and CLP methods are overall faster by one or two orders of magnitude compared to the state-of-the-art algorithm from the Petri net community, and are in fact able to solve all the enumeration problems of our practical benchmarks. We investigate why these programs perform so well in practice, and provide some elements of explanation related to our theoretical complexity results.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Backofen, R., Will, S., & Bornberg-Bauer, E. (1999). Application of constraint programming techniques for structure prediction of lattice proteins with extended alphabets. Bioinformatics, 15(3), 234–242.

    Article  Google Scholar 

  2. Birtwistle, M.R., Hatakeyama, M., Yumoto, N., Ogunnaike, B.A., Hoek, J.B., & Kholodenko, B.N. (2007). Ligand-dependent responses of the ErbB signaling network: experimental and modeling analysis. Molecular Systems Biology, 3(144).

  3. Bockmayr, A., & Courtois, A. (2002). Using hybrid concurrent constraint programming to model dynamic biological systems. In: Proceedings of ICLP’02, International conference on logic programming of lecture notes in computer science, (Vol. 2401. pp. 85–99). Copenhagen: Springer.

  4. Calzone, L., Gelay, A., Zinovyev, A., Radvanyi, F., & Barillot, E. (2008). A comprehensive modular map of molecular interactions in RB/E2F pathway. Molecular Systems Biology, 4(173).

  5. Chabrier-Rivier, N., Chiaverini, M., Danos, V., Fages, F., & Schächter, V. (2004). Modeling and querying biochemical interaction networks. Theoretical Computer Science, 325(1), 25–44.

    Article  MathSciNet  MATH  Google Scholar 

  6. Chu, F., & Xie, X.-L. (1997). Deadlock analysis of petri nets using siphons and mathematical programming. IEEE Transactions on Robotics and Automation, 13(6), 793–804.

    Article  Google Scholar 

  7. Commoner, F. (1972). Deadlocks in petri nets. Wakefield: Applied Data Research Inc.

    Google Scholar 

  8. Corblin, F., Tripodi, S., Fanchon, E., Ropers, D., & Trilling, L. (2009). A declarative constraint-based method for analyzing discrete genetic regulatory networks. Biosystems, 98(2), 91–104.

    Article  Google Scholar 

  9. Cordone, R., Ferrarini, L., & Piroddi, L. (2002). Characterization of minimal and basis siphons with predicate logic and binary programming. In: Proceedings of IEEE international symposium on computer-aided control system design. (pp. 193–198).

  10. Cordone, R., Ferrarini, L., & Piroddi, L. (2003). Some results on the computation of minimal siphons in petri nets. In: Proceedings of the 42nd IEEE conference on decision and control. Maui.

  11. Cordone, R., Ferrarini, L., & Piroddi, L. (2005). Enumeration algorithms for minimal siphons in petri nets based on place constraints. IEEE Transactions on Systems, Man and Cybernetics. Part A, Systems and Humans, 35(6), 844–854.

    Article  Google Scholar 

  12. Courcelle, B. (1990). The monadic second-order logic of graphs i. recognizable sets of finite graphs. Information and computation.

  13. Courcelle, B., & Durand, I. (2012). Automata for the verification of monadic second-order graph properties. Journal of applied logic.

  14. Crawford, J.M., & Auton, L.D. (1993). Experimental results on the crossover point in satisfiability problems. In: Proceedings of the 11th National Conference on Artificial Intelligence. (pp. 21–27): AAAI press.

  15. de Figueiredo, L.F., Schuster, S., Kaleta, C., & Fell, D.A. (2009). Can sugars be produced from fatty acids? a test case for pathway analysis tools. Bioinformatics, 25(1), 152–158.

    Article  Google Scholar 

  16. Devloo, V., Hansen, P., & Labbe, M. (2003). Identification of all steady states in large biological systems by logical analysis. Bulletin of Mathematical Biology, 65, 1025–1051.

    Article  Google Scholar 

  17. Diaz, D., & Codognet, P. (2001). Design and implementation of the GNU Prolog system. Journal of functional and logic programming.

  18. Dittrich, P., & di Fenizio, P. (2007). Chemical organisation theory. Bulletin of Mathematical Biology, 69(4), 1199–1231.

    Article  MathSciNet  MATH  Google Scholar 

  19. Fages, F., Soliman, S., & Coolen, R. (2004). CLPGUI: a generic graphical user interface for constraint logic programming. Journal of Constraints, Special Issue on User-Interaction in Constraint Satisfaction, 9(4), 241–262.

    Google Scholar 

  20. Fanchon, E., Corblin, F., Trilling, L., Hermant, B., & Gulino, D. (2004). Modeling the molecular network controlling adhesion between human endothelial cells: Inference and simulation using constraint logic programming. In: CMSB’04: proceedings of the 20 international conference on computational methods in systems biology. (pp. 104–118): Springer.

  21. Gottlob, G., Leone, N., & Scarcello, F. (2000). A comparison of structural CSP decomposition methods. Artificial Intelligence, 124, 2000.

    Article  MathSciNet  Google Scholar 

  22. Goud, R., van Hee, K., Post, R., & van der Werf, J. (2006). Petriweb: A repository for petri nets. In S. Donatelli, & P. Thiagarajan (Eds.), Petri nets and other models of concurrency - ICATPN 2006 of lecture notes in computer science, (Vol. 4024. pp. 411–420): Springer.

  23. Heiner, M., Gilbert, D., & Donaldson, R. (2008). Petri nets for systems and synthetic biology. In M. Bernardo, P. Degano, & G. Zavattaro (Eds.), 8th int. school on formal methods for the design of computer, communication and software systems: computational systems biology SFM’08 of lecture notes in computer science, (Vol. 5016. pp. 215–264). Bertinoro: Springer.

  24. Helfert, S., Estevez, A., Bakker, B., Michels, P., & Clayton, C. (2001). Roles of triosephosphate isomerase and aerobic metabolism in trypanosoma brucei. Biochemical Journal, 357, 117– 125.

    Article  Google Scholar 

  25. Kaleta, C., Richter, S., & Dittrich, P. (2009). Using chemical organization theory for model checking. Bioinformatics, 25(15), 1915–1922.

    Article  Google Scholar 

  26. Karp, R.M. (1972). Reducibility among combinatorial problems. In R. E. Miller, & J. W. Thatcher (Eds.) Proceedings of a symposium on the complexity of computer computations. (pp. 85–103). New York: IBM Research Symposia Series, Plenum Press.

  27. Kinuyama, M., & Murata, T. (1986). Generating siphons and traps by petri net representation of logic equations. In: Proceedings of 2th conference of the net theory SIG-IECE. (pp. 93–100).

  28. Kneis, J., Langer, A., & Rossmanith, P. (2011). Courcelle’s theorem - a game-theoretic approach. Discrete Optimization, 8(4), 568–594.

    Article  MathSciNet  MATH  Google Scholar 

  29. Kohn, K.W. (1999). Molecular interaction map of the mammalian cell cycle control and DNA repair systems. Molecular Biology of the Cell, 10(8), 2703–2734.

    Article  Google Scholar 

  30. Larhlimi, A., & Bockmayr, A. (2009). A new constraint-based description of the steady-state flux cone of metabolic networks. Discrete Applied Mathematics, 157(10), 2257–2266. Networks in Computational Biology.

    Article  MathSciNet  MATH  Google Scholar 

  31. Lautenbach, K. (1987). Linear algebraic calculation of deadlocks and traps. In G. Voss, & Rozenberg (Eds.), Concurrency and nets advances in petri nets. (pp. 315–336). New York: Springer.

  32. le Novère, N., Bornstein, B., Broicher, A., Courtot, M., Donizelli, M., Dharuri, H., Li, L., Sauro, H., Schilstra, M., Shapiro, B., Snoep, J.L., & Hucka, M. (2006). BioModels Database: a free, centralized database of curated, published, quantitative kinetic models of biochemical and cellular systems. Nucleic Acid Research, 1(34), D689–D691.

    Article  Google Scholar 

  33. Minoux, M., & Barkaoui, K. (1990). Deadlocks and traps in petri nets as horn-satisfiability solutions and some related polynomially solvable problems. Discrete Applied Mathematics, 29, 195–210.

    Article  MathSciNet  MATH  Google Scholar 

  34. Mitchell, D., Selman, B., & Levesque, H. (1992). Hard and easy distributions of sat problems. In: Proceedings of the 10th national conference on artificial intelligence. (pp. 459–465): AAAI press.

  35. Murata, T. (1989). Petri nets: properties, analysis and applications. Proceedings of the IEEE, 77(4), 541–579.

    Article  Google Scholar 

  36. Nabli, F. (2011). Finding minimal siphons as a CSP. In: CP’11: the seventeenth international conference on principles and practice of constraint programming, doctoral program. (pp. 67–72).

  37. Nabli, F., Fages, F., Martinez, T., & Soliman, S. (2012). A boolean model for enumerating minimal siphons and traps in petri-nets. In: Proceedings of CP’2012, 18th international conference on principles and practice of constraint programming of lecture notes in computer science, (Vol. 7514. pp. 798–814): Springer.

  38. Nabli, F., & Soliman, S. (2010). Steady-state solution of biochemical systems, beyond S-systems via T-invariants. In P. Quaglia (Ed.) CMSB’10: proceedings of the 8th international conference on computational methods in systems biology. (pp. 14–22): ACM.

  39. Oanea, O., Wimmel, H., & Wolf, K. (2010). New algorithms for deciding the siphon-trap property. In: PETRI NETS’10 proceedings of the 31st international conference on applications and theory of petri nets. (pp. 267–286): Springer.

  40. Peterson, J.L. (1981). Petri net theory and the modeling of systems. New Jersey: Prentice Hall.

    Google Scholar 

  41. Reddy, V.N., Mavrovouniotis, M.L., & Liebman, M.N. (1993). Petri net representations in metabolic pathways. In L. Hunter, D. B. Searls, & J. W. Shavlik (Eds.), Proceedings of the 1st international conference on intelligent systems for molecular biology (ISMB). (pp. 328–336): AAAI Press.

  42. Robertson, N., & Seymour, P. (1986). Graph minors. II. algorithmic aspects of tree-width. Journal of Algorithms, 7(3), 309–322.

    Article  MathSciNet  MATH  Google Scholar 

  43. Schoeberl, B., Eichler-Jonsson, C., Gilles, E.D., & Muller, G. (2002). Computational modeling of the dynamics of the map kinase cascade activated by surface and internalized egf receptors. Nature Biotechnology, 20(4), 370–375.

    Article  Google Scholar 

  44. Soliman, S. (2012). Invariants and other structural properties of biochemical models as a constraint satisfaction problem. Algorithms for Molecular Biology, 7(15).

  45. Stryer, L. (1995). Biochemistry. New York: Freeman.

    Google Scholar 

  46. Tanimoto, S., Yamauchi, M., & Watanabe, T. (1996). Finding minimal siphons in general petri nets.

  47. von Kamp, A., & Schuster, S. (2006). Metatool 5.0: fast and flexible elementary modes analysis. Bioinformatics, 22(15), 1930–1931.

    Article  Google Scholar 

  48. Yamauchi, M., & Watanabe, T. (1999). Time complexity analysis of the minimal siphon extraction problem of petri nets, EICE trans. on fundamentals of electronics, communications and computer sciences. (pp. 2558–2565).

  49. Zevedei-Oancea, I., & Schuster, S. (2003). Topological analysis of metabolic networks based on petri net theory. In Silico Biology, 3(29).

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to François Fages.

Additional information

This paper is an extended version of a paper presented at CP 2012 [37].

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Nabli, F., Martinez, T., Fages, F. et al. On enumerating minimal siphons in Petri nets using CLP and SAT solvers: theoretical and practical complexity. Constraints 21, 251–276 (2016). https://doi.org/10.1007/s10601-015-9190-1

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10601-015-9190-1

Keywords

Navigation