A Petri net is a mathematical representation of discrete parallel systems. They were defined in the 1960s by Carl Adam Petri. Because of their ability to express concurrent events, Petri nets are a generalization of automata theory.

A petri net consists of places, transitions and directed arcss. Arcs connect a place to a transition and vice versa. There can be no arc between two places or between two transitions. Places may contain any number of tokens. Transitions fire, that is consume tokens from input positions and produce tokens in output positions. A transition is enabled if there are tokens in every input position.

In its most basic form, tokens in a Petri net are indistinguishable from each other. More complex Petri nets add token coloring, activation time and hierarchy to the network.

Application areas

External links