AlgebraicPetri.jl

AlgebraicPetri.jl is a Julia package for building Petri Net models compositionally. This package depends on Catlab.jl which provides a framework for applied category theory (ACT) in Julia, and is part of the AlgebraicJulia organization, which develops ACT-based software to improve scientific and technical computing.

AlgebraicPetri.jl defines the category of open Petri nets as described in [Baez 2018], and implements composition and stratification methods for such Petri nets from [Libkind 2022].

Getting started

Please visit the documentation to learn more about how to use the package. For more details on the underlying theory, please consult [Baez 2018] or [Libkind 2022], with the latter being more oriented towards applied practitioners.

Tutorials are organized by theme. Currently examples from epidemiology are the most developed. The basic tutorial introduces the main themes of compositional modeling with open Petri nets, followed by a detailed tutorial on model stratification, and a detailed example of developing a complex model with multiple strains of a directly-transmitted disease with vaccines.