, Volume 21, Issue 2, pp 251–276 | Cite as

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

  • Faten Nabli
  • Thierry Martinez
  • François FagesEmail author
  • Sylvain Soliman


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.


Petri nets Siphons Systems biology SAT Constraint logic programming 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 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.CrossRefGoogle Scholar
  2. 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).Google Scholar
  3. 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.Google Scholar
  4. 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).Google Scholar
  5. 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.CrossRefMathSciNetzbMATHGoogle Scholar
  6. 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.CrossRefGoogle Scholar
  7. 7.
    Commoner, F. (1972). Deadlocks in petri nets. Wakefield: Applied Data Research Inc.Google Scholar
  8. 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.CrossRefGoogle Scholar
  9. 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).Google Scholar
  10. 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.Google Scholar
  11. 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.CrossRefGoogle Scholar
  12. 12.
    Courcelle, B. (1990). The monadic second-order logic of graphs i. recognizable sets of finite graphs. Information and computation.Google Scholar
  13. 13.
    Courcelle, B., & Durand, I. (2012). Automata for the verification of monadic second-order graph properties. Journal of applied logic.Google Scholar
  14. 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.Google Scholar
  15. 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.CrossRefGoogle Scholar
  16. 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.CrossRefGoogle Scholar
  17. 17.
    Diaz, D., & Codognet, P. (2001). Design and implementation of the GNU Prolog system. Journal of functional and logic programming.Google Scholar
  18. 18.
    Dittrich, P., & di Fenizio, P. (2007). Chemical organisation theory. Bulletin of Mathematical Biology, 69(4), 1199–1231.CrossRefMathSciNetzbMATHGoogle Scholar
  19. 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. 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.Google Scholar
  21. 21.
    Gottlob, G., Leone, N., & Scarcello, F. (2000). A comparison of structural CSP decomposition methods. Artificial Intelligence, 124, 2000.CrossRefMathSciNetGoogle Scholar
  22. 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.Google Scholar
  23. 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.Google Scholar
  24. 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.CrossRefGoogle Scholar
  25. 25.
    Kaleta, C., Richter, S., & Dittrich, P. (2009). Using chemical organization theory for model checking. Bioinformatics, 25(15), 1915–1922.CrossRefGoogle Scholar
  26. 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.Google Scholar
  27. 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).Google Scholar
  28. 28.
    Kneis, J., Langer, A., & Rossmanith, P. (2011). Courcelle’s theorem - a game-theoretic approach. Discrete Optimization, 8(4), 568–594.CrossRefMathSciNetzbMATHGoogle Scholar
  29. 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.CrossRefGoogle Scholar
  30. 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.CrossRefMathSciNetzbMATHGoogle Scholar
  31. 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.Google Scholar
  32. 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.CrossRefGoogle Scholar
  33. 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.CrossRefMathSciNetzbMATHGoogle Scholar
  34. 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.Google Scholar
  35. 35.
    Murata, T. (1989). Petri nets: properties, analysis and applications. Proceedings of the IEEE, 77(4), 541–579.CrossRefGoogle Scholar
  36. 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).Google Scholar
  37. 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.Google Scholar
  38. 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.Google Scholar
  39. 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.Google Scholar
  40. 40.
    Peterson, J.L. (1981). Petri net theory and the modeling of systems. New Jersey: Prentice Hall.Google Scholar
  41. 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.Google Scholar
  42. 42.
    Robertson, N., & Seymour, P. (1986). Graph minors. II. algorithmic aspects of tree-width. Journal of Algorithms, 7(3), 309–322.CrossRefMathSciNetzbMATHGoogle Scholar
  43. 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.CrossRefGoogle Scholar
  44. 44.
    Soliman, S. (2012). Invariants and other structural properties of biochemical models as a constraint satisfaction problem. Algorithms for Molecular Biology, 7(15).Google Scholar
  45. 45.
    Stryer, L. (1995). Biochemistry. New York: Freeman.Google Scholar
  46. 46.
    Tanimoto, S., Yamauchi, M., & Watanabe, T. (1996). Finding minimal siphons in general petri nets.Google Scholar
  47. 47.
    von Kamp, A., & Schuster, S. (2006). Metatool 5.0: fast and flexible elementary modes analysis. Bioinformatics, 22(15), 1930–1931.CrossRefGoogle Scholar
  48. 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).Google Scholar
  49. 49.
    Zevedei-Oancea, I., & Schuster, S. (2003). Topological analysis of metabolic networks based on petri net theory. In Silico Biology, 3(29).Google Scholar

Copyright information

© Springer Science+Business Media New York 2015

Authors and Affiliations

  • Faten Nabli
    • 1
  • Thierry Martinez
    • 1
  • François Fages
    • 1
    Email author
  • Sylvain Soliman
    • 1
  1. 1.EPI LifewareInria Paris-RocquencourtRocquencourtFrance

Personalised recommendations