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.
Similar content being viewed by others
References
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.
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).
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.
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).
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.
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.
Commoner, F. (1972). Deadlocks in petri nets. Wakefield: Applied Data Research Inc.
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.
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).
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.
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.
Courcelle, B. (1990). The monadic second-order logic of graphs i. recognizable sets of finite graphs. Information and computation.
Courcelle, B., & Durand, I. (2012). Automata for the verification of monadic second-order graph properties. Journal of applied logic.
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.
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.
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.
Diaz, D., & Codognet, P. (2001). Design and implementation of the GNU Prolog system. Journal of functional and logic programming.
Dittrich, P., & di Fenizio, P. (2007). Chemical organisation theory. Bulletin of Mathematical Biology, 69(4), 1199–1231.
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.
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.
Gottlob, G., Leone, N., & Scarcello, F. (2000). A comparison of structural CSP decomposition methods. Artificial Intelligence, 124, 2000.
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.
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.
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.
Kaleta, C., Richter, S., & Dittrich, P. (2009). Using chemical organization theory for model checking. Bioinformatics, 25(15), 1915–1922.
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.
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).
Kneis, J., Langer, A., & Rossmanith, P. (2011). Courcelle’s theorem - a game-theoretic approach. Discrete Optimization, 8(4), 568–594.
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.
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.
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.
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.
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.
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.
Murata, T. (1989). Petri nets: properties, analysis and applications. Proceedings of the IEEE, 77(4), 541–579.
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).
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.
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.
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.
Peterson, J.L. (1981). Petri net theory and the modeling of systems. New Jersey: Prentice Hall.
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.
Robertson, N., & Seymour, P. (1986). Graph minors. II. algorithmic aspects of tree-width. Journal of Algorithms, 7(3), 309–322.
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.
Soliman, S. (2012). Invariants and other structural properties of biochemical models as a constraint satisfaction problem. Algorithms for Molecular Biology, 7(15).
Stryer, L. (1995). Biochemistry. New York: Freeman.
Tanimoto, S., Yamauchi, M., & Watanabe, T. (1996). Finding minimal siphons in general petri nets.
von Kamp, A., & Schuster, S. (2006). Metatool 5.0: fast and flexible elementary modes analysis. Bioinformatics, 22(15), 1930–1931.
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).
Zevedei-Oancea, I., & Schuster, S. (2003). Topological analysis of metabolic networks based on petri net theory. In Silico Biology, 3(29).
Author information
Authors and Affiliations
Corresponding author
Additional information
This paper is an extended version of a paper presented at CP 2012 [37].
Rights and permissions
About this article
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
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10601-015-9190-1