Home

Petrinets

Petrinets, also known as Petri nets, are a graphical and mathematical modelling language for distributed systems that evolve by discrete events. They consist of places, transitions, and directed arcs forming a bipartite graph. Tokens residing in places represent the system state, collectively called a marking.

Formally, a Petri net is a tuple (P, T, F, M0) where P is a finite set

Extensions include colored Petri nets, which add data values to tokens to model complex synchronization; timed,

Petri nets are used to study properties such as reachability, liveness, and boundedness, and to analyze deadlocks

They were introduced by Carl Adam Petri in 1962 to model chemical processes and have since found

of
places,
T
a
finite
set
of
transitions,
F
⊆
(P
×
T)
∪
(T
×
P)
the
arc
relation,
and
M0
a
marking
giving
a
nonnegative
integer
to
each
place.
For
a
transition
t,
the
input
places
Pre(p,
t)
are
the
number
of
arcs
from
p
to
t;
the
output
places
Post(p,
t)
are
the
number
of
arcs
from
t
to
p.
A
transition
t
is
enabled
in
marking
M
if
M(p)
≥
Pre(p,
t)
for
all
p
in
P.
When
t
fires,
M
updates
to
M'
with
M'(p)
=
M(p)
-
Pre(p,
t)
+
Post(p,
t).
stochastic,
and
continuous
variants
for
performance
analysis;
and
hierarchical
Petri
nets
for
large
systems.
and
resource
contention.
State
space
exploration,
incidence
matrices,
and
coverability
trees
are
common
analysis
techniques.
applications
in
manufacturing,
workflow
management,
communication
protocols,
and
software
verification.