Abstract
SNAKES (SNAKES is the Net Algebra Kit for Editors and Simulators) is a general purpose Petri nets library, primarily for the Python programming language but portable to other ones. It defines a very general variant of Python-coloured Petri nets that can be created and manipulated through the library, as well as executed to explore state spaces. Thanks to a variety of plugins, SNAKES can handle extensions of Petri nets, in particular algebras of Petri nets [4, 26]. SNAKES ships with a compiler for the ABCD language that is precisely such an algebra. Finally, one can use the companion tool Neco [14] that compiles a Petri net into an optimised library allowing to compute efficiently its state space or perform LTL model-checking thanks to library SPOT [8, 13]. This paper describes SNAKES’ structure and features.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
References
Beazley, D.M., Fulton, W.: SWIG – Simplified Wrapper and Interface Generator. http://www.swig.org
Behnel, S., Bradshaw, R., Dalcín, L., Florisson, M., Makarov, V., Seljebotn, D.S.: Cython – C-extensions for Python. http://cython.org
Berthomieu, B., Vernadat, F.: Time Petri nets analysis with TINA. In: Proc. of QEST 2006. IEEE Computer Society (2006)
Best, E., Devillers, R., Koutny, M.: Petri net algebra. Springer (2001)
Bilgin, A., Ellson, J., Gansner, E., Hu, Y., North, S.: Graphviz – Graph Visualization Software. http://graphviz.org
Chaou, S., Utard, G., Pommereau, F.: Evaluating a peer-to-peer storage system in presence of malicious peers. In: Proceedings of HPCS 2011. IEEE Computer Society (2011)
Di Guisto, C., Klaudel, H., Delaplace, F.: Systemic approach for toxicity analysis. In: Proc. of BioPPN 2014. Workshop Proceedings, vol. 1159. CEUR (2014)
Duret-Lutz, A.: LTL translation improvements in Spot. In: Proc. of VECoS 2011. Electronic Workshops in Computing, British Computer Society (2011)
Evangeliste, S.: HELENA, a high level net analyzer. http://lipn.univ-paris13.fr/evangelista/helena
Free Software Foundation: GNU Lesser General Public License. http://www.gnu.org/licenses/lgpl.html
Fronc, Ł.: Neco net compiler. http://code.google.com/p/neco-net-compiler
Fronc, Ł.: Effective marking equivalence checking in systems with dynamic process creation. In: Proc. of Infinity 2012. Electronic Proceedings in Theoretical Computer Science (2012)
Fronc, Ł., Duret-Lutz, A.: LTL model checking with neco. In: Van Hung, D., Ogawa, M. (eds.) ATVA 2013. LNCS, vol. 8172, pp. 451–454. Springer, Heidelberg (2013)
Fronc, Ł., Pommereau, F.: Building Petri nets tools around Neco compiler. In: Proc. of PNSE 2013 (2013)
Gava, F., Pommereau, F., Guedj, M.: A BSP algorithm for on-the-fly checking CTL* formulas on security protocols. The Journal of Supercomputing (2014)
Group, T.C.: CPN tools. http://cpntools.org
Haddad, S., Kordon, F., Petruci, L.: CosyVerif. http://cosyverif.org
Jensen, K., Kristensen, L.M.: Coloured Petri Nets, Monographs in Theoretical Computer Science, vol. 2. Springer (1997)
Kindler, E., Weber, M.: The Petri Net Kernel: An infrastructure for building Petri net tools. Software Tools for Technology Transfer 3 (1999)
Klaudel, H., Koutny, M., Pelz, E., Pommereau, F.: State space reduction for dynamic process creation. Scientific Annals of Computer Science 20 (2010)
Mohamed, M., Amziani, M., Belaïd, D., Tata, S., Melliti, T.: An autonomic approach to manage elasticity of business processes in the Cloud. Future Generation Computer Systems (2014) (To appear)
Pommereau, F.: SNAKES out of Python. http://www.ibisc.univ-evry.fr/fpommereau/SNAKES/snakes-out-of-python.html
Pommereau, F.: Quickly prototyping Petri nets tools with SNAKES. Petri net newsletter 10 (2008)
Pommereau, F.: Quickly prototyping Petri nets tools with SNAKES. In: Proc. of PNTAP 2008. ACM Digital Library. ACM (2008)
Pommereau, F.: Nets in nets with SNAKES. In: Proc. of MOCA 2009. Universität Hamburg, Dept. Informatik, Hamburg (2009)
Pommereau, F.: Algebras of coloured Petri nets. Lambert Academic Publishing (2010)
Python Software Foundation: Alternative Python implementations. http://www.python.org/download/alternatives
Reinke, C.: Haskell-coloured petri nets. In: Koopman, P., Clack, C. (eds.) IFL 1999. LNCS, vol. 1868, pp. 165–180. Springer, Heidelberg (2000)
Sanjabi, S., Pommereau, F.: Modelling, verification, and formal analysis of security properties in a P2P system. In: Proceedings of COLSEC 2010. IEEE Digital Library. IEEE Computer Society (2010)
Van Pham, V.: Modelling and analysing open reconfigurable systems. Ph.D. thesis, Univ. Évry / Paris-Saclay (2014)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Pommereau, F. (2015). SNAKES: A Flexible High-Level Petri Nets Library (Tool Paper). In: Devillers, R., Valmari, A. (eds) Application and Theory of Petri Nets and Concurrency. PETRI NETS 2015. Lecture Notes in Computer Science(), vol 9115. Springer, Cham. https://doi.org/10.1007/978-3-319-19488-2_13
Download citation
DOI: https://doi.org/10.1007/978-3-319-19488-2_13
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-19487-5
Online ISBN: 978-3-319-19488-2
eBook Packages: Computer ScienceComputer Science (R0)