Analysis of Petri Nets with Context-Free Structure Changes


Electronic Communications of the EASST
Volume 71 (2015)

Graph Computation Models
Selected Revised Papers from GCM 2014

Analysis of Petri Nets with
Context-Free Structure Changes

Nils Erik Flick and Björn Engelmann

20 pages

Guest Editors: Rachid Echahed, Annegret Habel, Mohamed Mosbah
Managing Editors: Tiziana Margaria, Julia Padberg, Gabriele Taentzer
ECEASST Home Page: http://www.easst.org/eceasst/ ISSN 1863-2122

http://www.easst.org/eceasst/


ECEASST

Analysis of Petri Nets with
Context-Free Structure Changes

Nils Erik Flick and Björn Engelmann∗

{flick,engelmann}@informatik.uni-oldenburg.de,
https://scare.informatik.uni-oldenburg.de

Carl-von-Ossietzky-Universität, D-26111 Oldenburg

Abstract: Structure-changing Petri nets are Petri nets with transition replacement
rules. In this paper, we investigate the restricted class of structure-changing work-
flow nets and show that two different reachability properties (concrete and abstract
reachability) and word membership in the language of labelled firing sequences are
decidable, while a language-based notion of correctness (containment of the lan-
guage of labelled firing sequences in a regular language) is undecidable.

Keywords: Petri nets, transition replacement, correctness

1 Introduction

Petri nets or place/transition nets [DR98] are system models where resource tokens are moved
around on an immutable underlying structure. They originally lack a notion of structure change
or reconfiguration, but several structure-changing extensions have been formulated. In this paper,
we define Petri nets together with transition replacement rules similar to graph replacement rules
[EEPT06].

Petri nets are popular in the context of workflow modelling [van97], where labelled transitions
correspond to tasks to be executed. An important property of workflow nets is soundness, which
is decidable (in the absence of extra features such as reset arcs), and intuitively means the work-
flow can always terminate correctly and there are no useless transitions. Plain workflow nets,
however, lack the ability of representing dynamic evolution [van01, WRR08].

Structure-changing Petri nets offer a potential solution for dealing with dynamic change in
workflows by combining some advantages of Petri nets and graph grammars. In a structure-
changing Petri net, structure-changing rules interfere with the behaviour of a Petri net. Recon-
figurations occur unpredictably, modelling the influence of an uncontrolled environment, such as
the dynamic addition of a component, or the unexpected complication or iteration of a task.

In detail, the results are decision procedures for

• the firing word problem for 1-safe structure-changing workflow nets

• reachability in structure-changing Petri nets

• abstract reachability in 1-safe structure-changing workflow nets

∗ The work of both authors is supported by the German Research Foundation (DFG), grant GRK 1765 (Research
Training Group System Correctness under Adverse Conditions)

1 / 20 Volume 71 (2015)

mailto:\protect \T1\textbraceleft flick,engelmann\protect \T1\textbraceright @informatik.uni-oldenburg.de
https://scare.informatik.uni-oldenburg.de


Analysis of Petri Nets with Context-Free Structure Changes

and undecidability of the containment of a structure-changing workflow net (labelled firing se-
quence) language in a regular language.

The paper is structured as follows: in Section 2, we introduce structure-changing Petri nets and
workflow nets. In Section 3 we state our decidability and undecidability results. Section 4 draws
parallels to existing work and Section 5 concludes with an outlook.

2 Structure-Changing Petri nets

In this section, we introduce Petri nets in the sense of [DR98, PW02] and extend them to struc-
ture-changing Petri nets as special graph grammars.

Notation. We use −−− and +++ to denote set difference and disjoint set union, respectively, and NNN
for the set of natural numbers including 0. The cardinality of a set X is denoted by |X||X||X|, the length
of a sequence w is also denoted |w||w||w|, and |w|Y|w|Y|w|Y denotes the number of occurrences in w ∈ X∗ of
symbols from Y ⊆ X . The symbol εεε denotes the empty word.

Assumption 1. There are two disjoint alphabets Σ and R of transition labels and rule names,
respectively.

In the following, we introduce structure-changing Petri nets with coloured places. This type
of nets will be used in Section 3.

Definition 1 A net is a tuple (P,T,F−,F+,l,c) where P is a finite set of places, T is a finite
set of transitions with P∩T = /0, F−,F+ : T ×P →N are functions assigning preset and postset
arc multiplicities, respectively, l : T → Σ is the labelling function, c : P → N is the colouring
function. A marked net is a pair N = (N,M), where N is a net and M : P → N is called the
marking of N.

Places and transitions are collectively called items. A net is said to be (strongly) connected,
resp. acyclic, if it is (strongly) connected, resp. acyclic, as a graph, regarding arcs as directed
edges. Isomorphism, denoted N ∼=∼=∼= N′ (resp. N ∼=∼=∼= N′) of (marked) nets means that there are
bijections between the respective place and transition sets that preserve F±, l and c (and M). The
size of a net is |P|+|T|. A connected net with a single transition is a 1-net.

Notation. when F−(t, p) = k, one says there is an arc of weight k from p to t. Likewise, when
F+(t, p) = k, there is an arc of weight k from t to p. We write •t for {p ∈ P | F−(t, p) > 0} and
t• for {p ∈ P | F+(t, p) > 0}. When M(p) = k, it means that p is marked with k tokens. When
c(p) = k, we say that p has colour k. The components of a net named Nx will likewise be named
Px and so on. If there is no subscript, they will be referenced as P and so on. Likewise, the
marked net (Nx,Mx) is usually referred to as Nx. The pictorial representation of nets as graph-
like diagrams is well known, and a translation to graph grammars has been formalised in [Kre81]
and [Cor95].

Selected Revised Papers from GCM 2014 2 / 20



ECEASST

Example 1 (Graphical representation of a marked net; a 1-net:)

a
t0

p0 p1
b
t1

1 1

12
a

Let N be a net. The transition t ∈T is enabled by the marking M iff for all places p, F−(t, p)≤
M(p). The successor marking Mt of M via t is then defined by ∀p ∈ P, (Mt)(p) = M(p)−
F−(t, p)+ F+(t, p), and (N,M)

t⇒ (N,Mt) is called a firing step.
For a sequence u ∈ T∗, the marking Mu is defined recursively as Mε := M and Mau := (Ma)u.

The sequence u is said to be enabled in M iff Mu is defined.

Example 2 (A firing step:)

a a
a

a a

Throughout this paper, all replacement rules are of a simple context-free kind that replace
a single transition by an unmarked net. The adjective context-free is understood in the sense
of hyperedge replacement [Hab92], which is also called context-free replacement. In our case,
transitions correspond to hyperedges.

Definition 2 A (context-free) rule is a tuple (ρ,Nl,Nr) where ρ ∈ R is the rule name, Nl is a
1-net, and Nr is a net with Pl ⊆ Pr, and ∀p ∈ Pl,cl(p) = cr(p) Nl is the left hand side and Nr the
right hand side of the rule.

A match of the 1-net Nl in the net N is a mapping m : Pl ∪{tl}→ P∪T such that m maps the
sole transition tl of Nl to a transition such that ll(m(tl)) = l(tl) and the places pl ∈ Pl to places
in P such that ∀p ∈ Pl,cl(m(p)) = c(p). The notion is extended to matches in marked nets: a
match of Nl in (N,M) is a match of Nl in N. A match of the rule (ρ,Nl,Nr) on a marked net
N is a match of Nl in N. An abstract application, with match m, of ρ to a marked net N is a
pair (N,N′) such that if tl is the transition in Nl , T ′ = T −{m(tl)}+ Tr, P′ = P + (Pr −Pl), M′
coincides with M on the places from P and has value 0 otherwise. The place colours are as in N
and Nr, and

F′±(t, p) =




F±(t, p) t ∈ T, p ∈ P
F±r (t, p) t ∈ Tr, p ∈ (Pr −Pl)
F±r (t, p

′) t ∈ Tr, p = m(p′)
0 otherwise.

N
ρ
⇒N′ or N

ρ,m
⇒ N′ is a replacement step.

Note that we always assume Pr ∪Tr to be disjoint from P∪T in a replacement step (hence
the notation “+” instead of “∪” in the above definition). Formally, in a replacement step Nl and
Nr are replaced with isomorphic copies whose items do not occur in P∪T , and these copies are

3 / 20 Volume 71 (2015)



Analysis of Petri Nets with Context-Free Structure Changes

used in the rule application.1

Remark 1 Given N, ρ and a m, the resulting net N′ is uniquely determined.

Example 3 (A replacement step induced by a rule ρ and a match m:)

0
a

1

c

( )

a
0 1

c

( )

a
0 1

c

( c )

( )

a
0 1

ρ

m

A step is either a firing step or a replacement step. We define four functions for extracting
the information from a step: for a firing step e, let τ(e) := t, λ (e) := l(t), from(e) := (N,M)
and to(e) := (N,M′). For a replacement step, let τ(e) := m(tl), λ (e) := ρ , from(e) := N and
to(e) := N′. The functions to, from, τ and λ canonically extend to sequences.

Definition 3 A structure-changing Petri net is a tuple S = (N,R), where N is a marked net and
R is a finite set of rules.

Remark 2 Every marked net N may be seen as a structure-changing Petri net (N, /0) with empty
rule set, which will be called a static net and by abuse of notation also denoted N. We will not
distinguish between N and (N, /0).

A derivation of length n ∈ N in a structure-changing Petri net S = (N,R) is a pair (ξ ,σ) of
a sequence ξ0...ξn−1 of steps and a sequence σ0...σn of marked nets such that to(ξi) = σi+1,

from(ξi) = σi for all i ∈{1,...,n−1} and N = σ0. We write σ0
ξ
⇒R σn and say that (ξ ,σ) starts

in N = σ0 and ends in σn.

Example 4 (A structure-changing Petri net derivation. The small numbers serve to track places
through the derivation:)

0
a

1

ρ,m

0
a

2
a

1

a

0
a

2
a

1

1 As this causes little confusion in our paper, we will not stress this issue further.

Selected Revised Papers from GCM 2014 4 / 20



ECEASST

Example 5 (Rules for a vending machine which either returns 50 cent pieces or smaller change.
Place colours represent denominations of coins:)

50¢
0 1 0 1

20¢
0 1 0 1

10¢
0 1 0 1

50¢
0 1

)

20¢

20¢

10¢

(
0 1

A marked net N′ is said to be reachable in S from N iff there is a derivation in S that starts in
N and ends in N′. The marked nets reachable in S are also called (reachable) states of S. We
write RS(S) for the set of all reachable states of S. In a static net, instead of derivations one
considers transition sequences, as they uniquely determine derivations. A net, rule or structure-
changing Petri net is k-coloured if the highest colour assigned to any place does not exceed k−1.
A marked net is k-safe if any reachable marking has at most k tokens per place.

Remark 3 Note that the place colouring does not affect the behaviour of the net at all. It will
be used in Section 3 to specify abstract markings.

In the following, we introduce workflow nets [van97], extended by structure-changing rules,
as a special case of structure-changing Petri nets.

Definition 4 A workflow net is a tuple (N, pin, pout) consisting of a net N and a pair of dis-
tinguished places pin, pout ∈ P, the input and output place which have no input respectively no
output arcs, subject to the requirement that adding an extra transition from pout to pin would
render the net strongly connected.

The data (pin, pout) need not be made explicit, since these places are easily seen to be uniquely
determined in a workflow net. Thus we are justified in treating a workflow net as a special net.
The start marking of a workflow net N, i.e. the marking where only pin is marked with one
token and all other places are not marked, is denoted by •N. The end marking where only pout
is marked with exactly one token is denoted by N•. A workflow net N is sound iff from any
marking reachable from •N, N• is reachable, and for each transition t there is some marking M
reachable from •N such that t is enabled in M.

5 / 20 Volume 71 (2015)



Analysis of Petri Nets with Context-Free Structure Changes

Definition 5 A structure-changing workflow net is a structure-changing Petri net S = (N,R)
such that

(1) N is a sound workflow net marked with its start marking.
(2) for every rule (ρ,Nl,Nr) ∈ R, Nl and Nr are sound workflow nets; Nl has two places, one

transition, arc weights 1.
(3) ∑t∈Tr F

+
r (t, pout) = ∑t∈Tr F

−
r (t, pin) =1 and the input (resp. output) place of Nr is pin ( pout ).

Condition (2) implies that only single-input, single-output 1-nets are permitted as left hand
sides. The role of condition (3), which in our opinion does not unduly impact modelling capacity,
is to avoid certain complications that otherwise arise in the analysis. Although the restrictions
rule out markings with multiplicities, it is now possible to create more instances of a subnet
by replacing transitions. Structure-changing workflow nets can still capture situations such as
workflows that undergo complications as they are executed, as in Example 5.

Every reachable state of a structure-changing workflow net is a reachable state of some work-
flow net. A structure-changing workflow net is called acyclic if every reachable state is an acyclic
net. It is called 1-safe if every reachable state is marked with at most one token per place.

3 Analysis of Structure-Changing Workflow Nets

In this section, we define and investigate some decision problems for structure-changing work-
flow nets. We define the derivation language of a structure-changing Petri net and show that
while language containment in a regular language is undecidable, two reachability problems are
decidable, and the firing word problem is decidable at least for structure-changing workflow nets.

We prove a series of lemmata, corresponding to a local Church-Rosser property for graph
grammars [EEPT06], that allow us to equivalently re-arrange derivations, which will be conve-
nient in later proofs.

Lemma 1 (Independence) Given a structure-changing Petri net (N,R), a firing step (N,M) t⇒
(N,M′′) and a replacement step (N,M)

ρ,m
⇒ (N′,M′) for some (ρ,Nl,Nr) ∈ R and match m with

t 6= m(tl), then there is a firing step (N′,M′)
t⇒ (N′,M′′′) and a replacement step (N,M′′)

ρ
⇒

(N′,M′′′) where M′′′(p) takes the value M′′(p) for p ∈ P and 0 for p 6∈ P.

(N,M)

(N′,M′) (N,M′′)

(N′,M′′′)

ρ t

t ρ

Proof. Immediate from Definition 2 and the definition of transition firing.

The result (N′,M′′′) is the same only up to an isomorphism, but this will not really impact
any of the results. In the scope of this section, two derivations (ξ ,σ) and (ξ ′,σ ′) are equivalent
if they are of the same length n and the marked nets σn and σ ′n are isomorphic. Two transition
sequences are said to be equivalent if they are equivalent as derivations. Transition sequences

Selected Revised Papers from GCM 2014 6 / 20



ECEASST

which only differ by a permutation of the steps are easily seen to be equivalent. In a sound
workflow net N, a transition sequence u is said to be terminal when (•N)u = N•.

Lemma 2 (Permuting Steps) If S is a structure-changing Petri net, for every derivation (ξ ,σ)
of length n in S, under any of the conditions given below there is a derivation (ξπ ,σπ ) also
of length n such that σn and (σπ )n are isomorphic, and λ (ξ ) = uabv and λ (ξπ ) = ubav for
some u,v ∈ (R∪Σ)∗ and a,b ∈ (R∪Σ). If λ (ξi) = a and λ (ξi+1) = b, ta = τ(ξi), tb = τ(ξi+1),
from(ξi) = N, to(ξi) = from(ξi+1) = N′ and to(ξi+1) = N′′,

Situation Sufficient condition for transposition
a ∈ Σ,b ∈ Σ •tb ∩ta• = /0
a ∈ Σ,b ∈ R ta 6∈ T −T ′
a ∈ R,b ∈ Σ tb 6∈ T ′−T
a ∈ R,b ∈ R tb 6∈ T ′−T

Proof. a,b ∈ Σ: transitions meeting the requirement can be transposed in an enabled sequence:
in a net N, if Mt1t2 exists and •t2 ∩ t1• = /0, then t2 is enabled in M: all places in •t2 hold at
least as many tokens as in Mt1, and t1 is enabled in Mt2 because ∀p ∈ •t1 ∩•t2 have M(p) ≥
F−(p,t1)+F−(p,t2). By commutativity of addition Mt1t2 = Mt2t1 and hence σ|u|+2 = (σπ )|u|+2.

a ∈ Σ,b ∈ R: b can be applied to σ|u| because rule applicability is independent of the mark-
ing, and by Lemma 1 the same state σ|u|+2 is reached. The condition is necessary to meet the
requirements of Lemma 1: otherwise, ta is not available after the replacement step.

a ∈ R,b ∈ Σ is similar: since the preset of the transition tb is unchanged by the application of
R, tb is enabled in the state σ|u| and Lemma 1 applies.

a,b ∈ R: since only the matched transition is replaced and all others remain unchanged, the
rules can be swapped, yielding an isomorphic result. In this case and the previous one, the
condition is necessary because otherwise the transition tb is not present prior to the event σi.

The homomorphism t 7→ (if t ∈ A then 0 else 1) defines a pre-order wA,BwA,BwA,B on sequences of
(A + B)∗ by comparing the images of sequences under the lexicographic order induced by 0 < 1
on {0,1}∗.

Lemma 3 Given a transition sequence u in a marked net with T = T ′+T ′′, and T ′×T ′′ contains
only pairs (t′,t′′) where •t′′∩ t′• = /0, then any transition sequence that is equivalent to u and
minimal with respect to wT ′,T ′′ is in T ′∗T ′′∗.

Proof. A strictly decreasing step along the lexicographic order is possible as long as Lemma 2
can still be applied to a contiguous subsequence t′′t′, yielding another equivalent transition se-
quence.

Definition 6 A step ei of a derivation (ξ ,σ) causally precedes another step e j, i < j, if either
λ (ξi),λ (ξ j) ∈ Σ and τ(ξi)•∩•τ(ξ j) 6= /0, or λ (ξi) ∈ R,λ (ξ j) ∈ Σ and τ(ξ ) j ∈ codomain(mi) or
λ (ξi),λ (ξ j) ∈ R and τ(ξ ) j ∈ from(ei). The causal dependency relation is the transitive closure
of the causal precedence relation.

Lemma 4 Any derivation (ξ ,σ) equivalent to a given one and minimal with respect to wΣ,R

7 / 20 Volume 71 (2015)



Analysis of Petri Nets with Context-Free Structure Changes

has λ (ξ ) = r0s0...snrn+1 where ∀i,si ∈ Σ,ri ∈ R∗ and if ξi,0...ξi,n = ri, then ξi, j causally precedes
ξi, j+1, and ξi,n causally precedes si+1.

Proof. Analogous to Lemma 3. As long as there is a contiguous subsequence ξiζ ξ j where
λ (ξi) ∈ R, λ (ζ ) ∈ R∗, λ (ξi+1) ∈ Σ and ξi does not causally precede any of ζ ξ j, by induction
over the length of ζ and using Lemma 1, an equivalent but strictly wΣ,R-smaller derivation with
...ζ ξ jξi... can be constructed.

3.1 Firing Word Problem

Definition 7 The firing language of a structure-changing Petri net (N,R) is

F(S) :={ f (w)∈ (Σ∪R)∗ | ∃N′ : N w⇒R N′}

where f is the homomorphism that deletes all letters of R and leaves transition labels Σ un-
changed.

Due to the deleting homomorphism, it is not trivial to see whether a given word w occurs in
the firing language of S.

Problem 1 (Firing word problem).

Given: a structure-changing Petri net S and a word w ∈ Σ∗
Question: w ∈F(S)? Is w contained in the firing language of S?

We leave Problem 1 open and treat the firing word problem for 1-safe structure-changing
workflow nets instead.

Problem 2 (Problem 1 for 1-safe structure-changing workflow nets).

Given: a 1-safe structure-changing workflow net S and a word w ∈ Σ∗
Question: w ∈F(S)? Is w contained in the firing language of S?

The question is decidable for 1-safe structure-changing workflow nets by the following means:
while applying rules, one keeps track of the minimum length of any word in which each transi-
tion could occur (the minimum word length defined below). Rule matches on transitions that can
only be used in words longer than w need not be explored, because under the postulated assump-
tions the minimum word length is non-decreasing under replacement. Rules are only applied
to enabled transitions. The creation of redundant transitions is limited by condition (3) of the
definition of a structure-changing workflow net.

In a static net N = (N,M), let ‖·‖N : T ⇀ N be the partial function assigning to each transition
t of the net the minimum length of any derivation using t. It is undefined if there is no such
derivation, otherwise ‖t‖N = min({|ut| | ut ∈ T∗,∃M′ = Mut}). We call ut with |ut| = ‖t‖N a
minimum-length t-word of N. It contains t exactly once at the end, or a proper prefix would
suffice. Note also that sequences in T∗ rather than label words in Σ∗, are considered. Calculating
‖t‖N might in general not be efficient, but it is in principle possible for all nets.

Selected Revised Papers from GCM 2014 8 / 20



ECEASST

Lemma 5 Let S = (N,R) be a 1-safe structure-changing workflow net. If N ∗⇒N′, and N′
ρ,m
⇒

N′′ is a replacement step using rule (ρ,Nl,Nr), and let t = m(tl). Then each transition t ∈ T ′′−T ′
has ‖t‖N′′ =‖t‖N′−1 +‖t‖(Nr,•Nr) ≥‖t‖N′, and each transition ť ∈ T −{t} has ‖ť‖N′′ ≥‖ť‖N′.

Proof. Let ut be a minimum-length t-word in N and vt a minimum-length t-word in (Nr,•Nr).
Then uvt is a minimum-length t-word in N′.

A transition sequence v ∈ T∗r is enabled in some marking in Nr precisely when it is in the
corresponding marking (mapping the places via m) in N′′ and has the same effect on the places
of Pr −Pl + m(Pl) and no effect on all other places. If u is a transition sequence enabled in M′,
then Lemma 3 guarantees the existence of a transition sequence ũ that can be decomposed as
ũ = uv, where u ∈ T ′∗ and v ∈ (T ′′−T ′)∗. For any such uv, because Mu exists and enables t, ut
is also a possible transition sequence, and furthermore the shortest one containing t.

As to the second statement, let uť be a minimum-length ť-word of N′′. Decomposing u as
u0t0u1...tnun+1 with ui ∈ T ′∗ and ti ∈ T ′′−T ′, there is an equivalent wT ′′−T ′,T ′-minimal enabled
transition sequence ũ = ũ′0s0ũ

′
1s1...ũ

′
m+1 with ũ

′
i ∈ T

′∗, sk ∈ (T ′′−T ′)∗ and s0 ·...·sm = t0 ·...·tn,
and ũ′0 ·...·ũ

′
m+1 = u0 ·...·un+1, and sk is terminal in Nr: assuming the contrary would imply that

any equivalent transition sequence of the form ũ′0s0ũ
′
1s1...ũ

′
m has some sk such that the condition

(•Nr)sk = Nr• is violated. Every transition ti added in the replacement step falls into one of
three sets, which we call start, middle and end. A start transition is one enabled in •Nr. A
end transition is one that has the end place of Nr in its postset. A middle transition is any other
transition of Nr. So if ũ′0s0ũ

′
1s1...ũ

′
m is such a sequence where for some k ∈{0.....m}, (•Nr)sk

differs from Nr• then the first transition of sk+1 (if k < m−1) can neither be a start, nor middle,
nor end transition. The latter two lead to a contradiction with wT ′′−T ′,T ′-minimality, while the
former would contradict 1-safety.

Therefore one can construct a ť-word of N′, namely ˜̃u′′ = ũ′0tũ
′
1...ũ

′
mť, which is in any case at

most as long as uť, thus ‖ť‖N′ ≤‖ť‖N′′

Proposition 1 It is decidable for any 1-safe structure-changing workflow net S and word w∈Σ∗
whether w ∈F(S).

Proof. The idea of the proof was described in the text following the problem description. The
following algorithm decides the question:

1: procedure WORD(N,w)
2: k := |w|
3: St :={N}
4: while w 6= ε do
5: St := EXPLORE(St,k−|w|)
6: aw := w ; a was the first letter, w now contains the rest
7: St :={(N,Ma) | (N,M)∈ St} ; try successor by firing, if defined
8: return St 6= /0
9: procedure EXPLORE(St, j)

10: repeat
11: for all N ∈ St do ; gather relevant successors by replacement

9 / 20 Volume 71 (2015)



Analysis of Petri Nets with Context-Free Structure Changes

12: for all enabled transitions t of N do
13: for all matches m of rules ρ on t do
14: N′ := result of replacement step ; N

ρ,m
⇒ N′

15: if 6 ∃N′′ ∈ St : N′ ∼= j N′′ then
16: add N′ to St
17: until no new states found
18: return St

We prove that the algorithm terminates and outputs the correct answer.
The procedure WORD iterates over w. It is correct, by induction on the length of w: the

induction basis is witnessed by the trivial case of the empty word. Induction hypothesis: for any
j ≤ k ∈ N, the prefix u of w of length j is in the language iff St is not empty. Induction step:
for any derivation (ξ ,σ) with f (λ (ξ )) = au, Lemma 4 yields another derivation (ξ ′,σ ′), with
λ (ξ ′) = zau′, z ∈ R∗ and f (u′) = u, and each step ei (i ≤|z|) causally preceded by the previous.

z1 a1 z2 a2︸ ︷︷ ︸
∈R∗

∈

Σ

︸︷︷︸
∈R∗

∈

Σ

...

...

Each of the replacement steps ei whose corresponding rule names form the z prefix causally
precedes the next; unless |z| = 0, the first transition to be fired, labelled a, is created in the step
e|z|−1. In any of the first |z| steps, the matched transition is enabled. This makes it unnecessary
to ever directly explore the replacement of disabled transitions.

It remains to be seen that the subset of reachable states of S that actually need to be explored
further for the word u is finite: it is always the case that |z|, which may well be 0, can be bounded
from above by a constant depending only on the rules. The reason why the EXPLORE procedure
terminates rests with the comparison that decides whether states are added to St. The comparison
is done according to an equivalence relation ∼= j ( j ∈ N): a pair of marked nets is in ∼= j if they
have the same subnet induced by considering only the transitions that can contribute to words
of length up to j, and the places attached to these. By Lemma 5, minimum word lengths only
increase and therefore all transitions with minimum word length exceeding j can be ignored in
the exploration.

Only a finite number of equivalence classes of ∼= j occur in the application of replacement
steps from R. Let n be the maximum number of items in a right hand side of any rule of R.
Regarding each state as a directed graph whose nodes are the places and transitions, and whose
arcs are directed edges, let d be the function assigning to each item it the length of the shortest
directed path from the place pin to it. Then by induction on the length of the derivation, no rule
application leads to a state which, as a graph, has any node with more than n successors. The
number of items with d up to 2 j is bounded by n2 j. There is a finite number of 1-safe nets with
these properties.

The set of items of N with d up to 2 j clearly includes all transitions t with ‖t‖N ≤ j. Firing
may reduce the minimum word length of any transition by at most 1. This makes it safe to
compare states by ∼= j−1 at the next iteration.

Selected Revised Papers from GCM 2014 10 / 20



ECEASST

3.2 Reachability Problems

In this subsection, before defining abstract reachability we first show that concrete reachability
(without using any abstraction) of a given marked net is decidable. Our construction for deciding
concrete reachability is similar to the unfolding construction used in [BCKK04] in a different
context. The idea is to unfold all possible rule applications until the size of the smallest net
obtained using a new match exceeds the queried N, since the size of the net grows monotonically
with each rule application and the set of rules is finite.

In the construction, for each possible match, the net is extended the same way as in a rule ap-
plication but the matched transitions are preserved. To control the simulation, the rule transitions
and control places take care of disabling or enabling net transitions according to the simulated
rule applications.

Let matchρ (N) ⊆ T × P∗ be the set of all matches of rule ρ on net N, each match being
uniquely determined by target transition and place mapping (we assume here that every left hand
side is equipped with an arbitrary total order on the place set, inducing a bijection between place
mappings and sequences over P).

Construction 1 (k-unfolding). Given a n-coloured structure-changing Petri net (N,R), let N0 be
the net obtained from N by adding new places {pt | t ∈ T} and arcs of weight 1 from each t to its
respective pt and back. The new colour n is chosen for all the pt places. To each item created in
the construction, we assign a history, which is a sequence of steps. All transitions t of N0 have
hist(t) = ε . Items added in a rule application eµ,ρ matching t ∈ Ti will have history hist(t)·eµ,ρ .

For i ≤ k, the set Ti+1 is computed from Ti by disjointly adding, for every match µ of any rule
(ρ,Nl,Nr) ∈ R, the transitions Tr −Tl , and one transition for each match, which we call match
transition: {thist(t)·eµ,ρ | µ ∈ matchρ (Ni)} where eµ,ρ is the replacement step determined by ρ , µ
and Ni.

The set Pi+1 is computed from Pi by disjointly adding, for every match µ of any rule (ρ,Nl,Nr)∈
R, the places of Pr −Pl , and one control place for every right hand side transition: Pctrl = {pt |
t ∈ Ti+1 −Ti,l(t)∈ Σ}.

The arc weights in Ni+1 are as follows:

F±i+1(t, p) =




F±i (t, p) t ∈ Ti, p ∈ Pi
F±r (t, p) t ∈ Tr, p ∈ (Pr −Pl) (∗)
F±r (t, p

′) t ∈ Tr, p = m(p′) (∗)
1 t ∈ Ti + Tr, p = pt
1 t = tx, c(p) = n, hist(p) = xe (F+only)
1 t = txe, c(p) = n, hist(p) = x (F−only)
0 otherwise,

where (∗) applies to items obtained from the same match of a rule (ρ,Nl,Nr), x is any sequence
of steps and e is any step. The pt places are always assigned colour n and the tx transitions are
labelled with the corresponding rule name from R. The marking Mk agrees with M on the places
of N0, has 1 on each pt place and 0 elsewhere. Nk = (Nk,Mk) is the k-unfolding of (N,R).

11 / 20 Volume 71 (2015)



Analysis of Petri Nets with Context-Free Structure Changes

Example 6 (A structure-changing workflow net S = (N,R):)


a

a
,


ρ, a0 1 cb0 1






Example 7 (The 0-unfolding N0 and the 1-unfolding N1 of S, where µ indicates match transitions:)

a

a

a

a

µ µ

cb cb

Let κ′ = κ′(S,NQ) ∈ N be the smallest number such that every marked net N reachable in
any derivation (ξ ,σ) without state cycles (i.e. repetition-free σ ) and with |λ (ξ )|R ≥ κ′ has no
derivation N

∗⇒R (NQ,M) for any M. The number κ′ is well-defined because net size increases
monotonically along any derivation, and only finitely many nets of any given size are reachable.
For the same reason, κ′ can be effectively over-approximated by considering all derivations with
|λ (ξ )|Σ = 0 that produce nets of size at most |PQ|+|TQ|.

Proposition 2 It is decidable whether a given marked net NQ is reachable in a given structure-
changing Petri net S = (N,R).

Proof. The idea is to determine the number κ′(S,NQ) and reduce the question to reachability in
a κ -unfolding Nκ of S for κ ≥ κ′(S,NQ), the Petri net reachability problem being well-known
to be decidable [PW02].

(N̂,M̂) (Nκ ,M)

(N̂′,M̂′) (Nκ ,M′)

strip

ρ or t

strip

tµ or t

We prove a mutual simulation of S and Nκ for any derivation ξ with up to κ rule applications
by induction on the length of ξ . As argued in the definition of κ(S,NQ), no derivation with
|λ (ξ )|R > κ yields NQ. If |λ (ξ )|R ≤ κ , by induction on the length of the derivation, Nκ and S
simulate each other via a mapping strip, defined as follows: the image of (Nκ ,M) is the marked
net N̂ with transitions T̂ ={t ∈ T | M(pt) > 0}, places P̂ = (P−Pctrl)−{p ∈ P |∀t ∈ •p∪ p•,t 6∈
T̂} and F̂−, F̂+, l̂, ĉ are F−, F+, l, c with their domains restricted to P̂, T̂ .

If N̂
x⇒R N̂′, if x ∈ R, and by hypothesis, N̂ = strip(N′′) for N′′ = (Nκ ,M) for some marking,

then Mtx = M′ such that strip(Nκ ,M′) = N̂′: there is a transition tx because all rule matches
for derivations of up to κ rule applications are represented as transitions in Nκ ; the preset of tx
contains exactly the matched transition τ(x) = strip(t̂) for some t̂ ∈ T̂ . This transition is not in T̂ ′.

Selected Revised Papers from GCM 2014 12 / 20



ECEASST

Instead, the items of the right hand side are present in strip(Nκ ,M′), according to the replacement
step x. If x ∈ Σ, then the step is also simulated in strip(N).

If in Nκ , Mtx = M′, then it is easy to see that the images under strip of (Nκ ,M) and (Nκ ,M′)
are related by the replacement step with match µ . If Mt = M′ for a non-match transition, this
corresponds via strip to a firing of that transition.

The simulation faithfully preserves all events in derivations of length up to κ .

Let us now turn our attention to a different notion of reachability, namely reachability of
abstract markings. Since the state space of a structure-changing Petri net can be infinite, to
specify interesting state properties it is insufficient to specify the number of tokens on specific
concrete places. Instead, we fix a finite set of colours and state constraints generically, for all
places of a given colour. The place colours may carry a model-specific meaning, or just encode
structural information about the net. We will therefore introduce a notion of abstract marking: a
multiset that counts the total number of tokens on places of each colour in a structure-changing
Petri net.

A multiset over a finite set S, or S-multiset, is a function S → N. The set of S-multisets is
denoted NS. The singleton multiset mapping a to 1 and everything else to 0 is also written a.
The size |m| of a multiset m is the sum of the values. Multiset addition is component-wise. A
sum ∑x∈m f (x) over a multiset m ∈ NS is defined with multiplicities, ∑x∈S m(x) f (x). Multisets
are compared using the product order, i.e. m ≤ m′ iff ∀s∈S, m(s) ≤ m′(s). In marked nets,
we redefine •t and t• to mean the P-multisets p 7→ F±(t, p) for ± = +,−, respectively. The
definition of enabledness canonically extends to multisets of transitions. For any marked net
N = (N,M), we define the colour abstraction α : N → N to be the function i 7→ ∑p∈c−1(i) M(p).
For k-coloured nets, we restrict the domain of α to 0,...,k−1. The set of images under α of the
reachable states of S is denoted by ARS(S), for abstract reachability set.

If N = (N,M) is a marked net, define a set of multisets over {0,...,k − 1}+ T , the ex-
tended reachability set ER(N), as ER(N) = ARS(N) +{α(m−∑t∈s •t) + s | m ∈ RS(N), s ∈
NT enabled by m}. The set ER(N) is finite if N is a sound workflow net with its start mark-
ing. Intuitively, it represents all snapshots of the net’s state before, after and during possibly
concurrent firing events.

Problem 3 (Abstract reachability).

Given:
a k-coloured structure-changing Petri net S for some k ∈N
q : {0,...,k−1}→N

Question: q ∈RS(S)? Is the abstract marking q reachable?

Given a structure-changing Petri net S = (N,R), we let A(S)A(S)A(S) denote the set that comprises N
and the right hand sides of all rules in R. Let T(S)T(S)T(S) =

⊎
Nw∈A(S) Tw be the set of all transitions

occurring in any right hand side or in the start net. (
⊎

stands for a disjoint union of multiple
sets). For the intuition behind the following proposition, we would like to refer to Figure 1 on
the following page:

Proposition 3 The abstract reachability problem is decidable for 1-safe structure-changing
workflow nets.

13 / 20 Volume 71 (2015)



Analysis of Petri Nets with Context-Free Structure Changes

ER(S)

ER(R0)

x0 + t0

t0 ⇒ R0 x1 + t1

tk ⇒ Rk

...

xk + tk

ER(Rk)

1 2

2 0

3 1 6 3 7 3≤

α

α

xk+1 + tk+1 0 1 6 4 7 36≤
α

sum

α

target

Figure 1: The abstract reachability procedure visualised

Proof. We present an algorithm that, given a structure-changing workflow net S and q ∈ Nk,
decides whether there is any reachable state N ∈RS(S) such that α(N) = q. Let T = T(S).

1: procedure ABSTRREACH(S,q)
2: Queue := ER(N); Visited := /0
3: while Queue not empty do
4: m := pop(Queue)
5: if m = q then
6: return true
7: else
8: if not (|m|> |q| or m|P 6≤ q or m ∈ Visited) then
9: for all t,m′ such that m = t + m′ do

10: for all {µ ∈ matchρ (t) | (ρ,Nl,Nr)∈R} do
11: append(Queue,{m′+ m | m ∈ER(Nr,•Nr}))
12: Visited := Visited∪{m}
13: return false

To explain the algorithm, let us define a multi-rooted directed graph W, in general infinite. Its
nodes are multisets over {0,...,k−1}+ T. The elements of ER(N) are the roots of W. Each
node t + m with t ∈ T has successors x + m where x ∈ ER(Nr) and Nr is the right hand side of a
rule that matches t. Whether a rule can match t can be checked directly from A(S).

Multiset size increases monotonically along the edges due to the fact that the empty marking
cannot be reachable in a sound workflow net. Hence to check for the abstract reachability of q, it
suffices to explore a spanning tree of the prefix of W induced by the nodes of size not exceeding
|q|, of which there are finitely many. Branching is finite due to the finite ER sets of the right
hand side nets. By Kőnig’s Lemma such a tree is finite, hence the search terminates.

Selected Revised Papers from GCM 2014 14 / 20



ECEASST

Besides those with at least one transition, W contains only colour abstractions of reachable
markings: a derivation leading to a suitable marked net can simply be read off a path in W,
because in the case of 1-safe structure-changing workflow net it is immaterial which transition is
replaced, so the abstraction preserves all information needed to construct a suitable derivation.

Also, W contains the colour abstractions of all reachable states, by induction on the number
of replacement steps in a wΣ,R-minimal derivation. As long as no rule is applied, the statement
clearly holds. Suppose that the property holds for any derivation (ξ ,σ) up to a certain length.
Any new replacement step N

ρ
⇒ N′ using a rule ρ must match an activated transition t by the

assumption on the derivation. Any state obtained by replacing t and executing a non-terminal
sequence of transitions in the right hand side has an abstract marking m + m′′, where m + t ∈
ER(N), and m′′ is in the subset of the abstract reachability set of (N′,R) accessible with fewer
replacement steps, by induction hypothesis.

It follows that the algorithm is correct since it explores W until reaching nodes whose size
exceeds |q|, and checks whether q is obtained.

The complexity of the abstract reachability problem is inherited from the corresponding class
of static 1-safe nets. For 1-safe nets in general, reachability is PSPACE-complete whereas it is
just NP-complete for acyclic 1-safe nets [Esp96].

Proposition 4 The abstract reachability problem for acyclic 1-safe structure-changing work-
flow nets is NP-complete.
Proof. It follows from the proof of Proposition 3 that the problem is not only decidable, but
in NP: the answer is positive iff there exists a certain easily checked polynomial-length object,
namely the path through W at most O(|R| · |q|) nodes of length O(|q|) each. NP-hardness is
straightforwardly shown by a reduction from the corresponding problem for acyclic 1-safe nets.
The reachability problem of 1-safe nets can be reduced to the reachability problem of 1-safe
workflow nets (see Figure 2). This reduction goes as follows: for every place in the 1-safe
marked net (N,M0), a complementary place is added; start end place and 2 + 3|P| extra items
are added; the simulation is initialised by filling in the start marking and its complement, and it
can be aborted without producing erroneous runs by emptying the net. Reachability of M from
M0 becomes reachability of the corresponding marking from the start marking of the workflow
net. The workflow net can be seen to be sound. To preserve acyclicity, one removes the com-
plementary places. The reduction of the reachability problem for 1-safe workflow nets to an
abstract reachability problem for the corresponding static 1-safe structure-changing workflow
net is trivial: places are coloured bijectively.

Proposition 5 The abstract reachability problem for 1-safe structure-changing workflow nets
is PSPACE-complete.

Proof. PSPACE-hardness again follows from the corresponding problem for 1-safe nets, the
reduction using the same construction presented above. The procedure proposed in the proof of
Proposition 3 is also easily seen to be in PSPACE because the upper bound on κ is polynomial
in |q| and |R|.

15 / 20 Volume 71 (2015)



Analysis of Petri Nets with Context-Free Structure Changes

pin pout︸ ︷︷ ︸
initialisation of M0

(complementary places)

︷ ︸︸ ︷
simulation of N

(complementary places)︸︷︷︸p1 ︸︷︷︸p2 ︸︷︷︸p3

Figure 2: Reduction from 1-safe nets to 1-safe workflow nets.

As a bonus, W can be used to decide coverability of an abstract marking q, i.e. the question
whether any state N with α(N)≥ q can be reached.

Proposition 6 Coverability of an abstract marking is decidable for 1-safe structure-changing
workflow nets.

Proof. W is the reachability graph of a net with place set {0,...,k −1}+ T and appropriate
transitions that have as preset t ∈ T and postset m, for every m ∈ ER(Nr,•Nr), where Nr is the
right hand side of a rule matching t. Hence coverability is reduced to Petri net coverability, which
is decidable [PW02].

3.3 Containment Problems

In this subsection, we study the inclusion of the firing language of a structure-changing work-
flow net in a given regular language. The motivation is that the regular language can specify all
desirable net behaviour, and the problem is to check whether any undesirable firing sequences
exist or not.

Problem 4 (Containment in Regular Language).

Given:
a regular language L ⊆ Σ∗
a 1-safe structure-changing Petri net S

Question: f (L(S))⊆ L?

It is well known that the emptiness of the intersection of two context-free languages is unde-
cidable.

Proposition 7 (Undecidability of abstract language compliance) Containment of a structure-
changing workflow net language in a regular language is undecidable even when restricted to
acyclic 1-safe structure-changing workflow nets with at most 2 tokens in every reachable state.

Selected Revised Papers from GCM 2014 16 / 20



ECEASST

Proof. By reduction from the emptiness problem for the intersection of two context-free lan-
guages. Let G1 = (V1,T,P1,S1) and G2 = (V2,T,P2,S2) be two context-free grammars in Greibach
normal form. We assume their non-terminal alphabets disjoint w.l.o.g. (V1 ∩V2 = /0).

To distinguish the words from the two grammars, we introduce a second terminal alphabet
T̂ :={â | a ∈ T} and a function dup(ε) := ε,dup(aw) := aâ ·dup(w).

We construct the structure-changing workflow net S(G1,G2) = (N,R1 ∪R2). N is as shown:

S2

s S1 e

For every production X → aX1...Xn in G1, we add a rule replacing a transition labelled X
with a linear sequence of transitions labelled a,X1,...,Xn to R1. For productions in G2, we do
the same, but replace the terminal label a with â and add the rules to R2. Disjointness of non-
terminal alphabets ensures that the rules in Ri are only applicable in the subnet resulting from Si
(for i ∈{1,2}). The words accepted in these subnets hence correspond to those generated by the
respective grammars. Let L be s{aâ | a ∈ T}∗e with {s,e} 6⊆ T . Now,

L(G1)∩L(G2) = /0 ⇔ F(S(G1,G2))⊆ L
L(G1)∩L(G2) = /0 ⇔ F(S(G1,G2))∩L = /0
∃w ∈L(G1)∩L(G2) ⇔ ∃w ∈F(S(G1,G2))∩L

⇒: if w is generated from both G1 and G2, then a derivation for it exists in both grammars. Since
context-free derivations in G1 and G2 can be translated into sequences of rule applications in the
corresponding subnet, there obviously is a reachable net in S(G1,G2) able to accept s·dup(w)e ∈
L.
⇐: All words in L can be written as sdup(w)e for some w ∈ T∗. To also be accepted by

S(G1,G2), there must be a derivation (ξ ,σ) with f (λ (ξ )) = s·dup(w)e. Now, w ∈L(G1), since
w = f (λ (ξ )) and the subsequence of R1-steps in ξ directly corresponds to a derivation in G1. A
symmetric argument holds for G2.
S(G1,G2) is a 1-safe structure-changing workflow net easily seen to have as reachable states

only acyclic nets marked with one or two tokens.

4 Related Work

Petri nets can be extended with structure changes via graph replacement rules, as in [MGH11].
Graph grammars [EEPT06] define replacement steps according to rules that serve to reconfig-
ure the Petri net dynamically and can be mixed with transition firings. Their work, and ours,
is closely related to graph grammars and results from graph replacement such as local Church-
Rosser and concurrency theorems can be adapted, see [EHP+07, MGH11]. We have concen-
trated on Petri net specific aspects such as reachability of markings in this paper. [BCKK04]
uses similar concepts for model checking graph grammars.
Further noteworthy work includes the box calculus [BDH92], recursive Petri nets [HP99], re-
configurable nets [BLO03], open nets [BCE+07]. These extensions are much more general and

17 / 20 Volume 71 (2015)



Analysis of Petri Nets with Context-Free Structure Changes

allow structure changes beyond dynamic transition refinement. Safe nets-in-nets [KH10] and
Hypernets [Mas11] represent a different kind of dynamic structure. With unbounded nesting of
net tokens, it is possible to simulate a 2-counter machine with zero-tests. The notion of activated
transitions and transition refinement are also found in [KR07]. Finally, in [vSV03], a notion of
refinement for workflow nets was investigated, but with different aims.

5 Conclusion

We have introduced structure-changing Petri nets with context-free transition replacement rules
based on graph replacement, and studied a number of decision problems that arose. Suitably
translated, our results apply to many formalisms that add structure changes to Petri nets.

An overview of the results follows. The columns stand for structure-changing Petri nets (scpn)
and structure-changing workflow nets (general, 1-safe, acyclic 1-safe scwn) respectively, “yes”
means decidable, “no” undecidable, “?” unknown):

scpn scwn 1-safe acyclic 1-safe
concrete reachability yes yes yes yes Proposition 2
abstract reachability ? ? yes yes Proposition 3
firing word problem ? ? yes yes Proposition 1
regular specification no no no no Proposition 7

The firing word problem turned out to be nontrivial. Proposition 7 places severe limitations
on the algorithmic analysis of structure-changing Petri nets. Even for systems with a simple
structure and a globally bounded token number, language containment questions are undecidable
due to the possibility of imposing synchronisation on concurrent context-free processes.

Further Topics

(1) Structure-changing nets with arbitrary replacement rules hardly seem to offer promising
analysis methods. It seems most fruitful to investigate classes of nets that behave sufficiently
like the “simple” ones presented here, and on the other hand to apply general analysis methods
known from graph replacement.

(2) Decidable problems for relatively simple subclasses of structure-changing Petri nets and
case studies to evaluate which features are still lacking in order to model real dynamic workflows.
We suspect that not all restrictions are necessary and are working to determine the decidability
boundary more accurately.

(3) In the spirit of system correctness under adverse conditions, would be to turn the reacha-
bility problems into game problems by considering some nontrivial scheduling between the two
kinds of steps, and universal quantification for replacement steps: until now, rule application and
firing cooperate.

Acknowledgements: We would like to thank Annegret Habel and several other SCARE mem-
bers for constructive discussions, and the reviewers for their very constructive remarks.

Selected Revised Papers from GCM 2014 18 / 20



ECEASST

Bibliography

[BCE+07] P. Baldan, A. Corradini, H. Ehrig, R. Heckel, B. König. Bisimilarity and Behaviour-
Preserving Reconfigurations of Open Petri Nets. In Algebra and Coalgebra in Com-
puter Science. LNCS 4624, pp. 126–142. 2007.

[BCKK04] P. Baldan, A. Corradini, B. König, B. König. Verifying a Behavioural Logic for
Graph Transformation Systems. ENTCS 104:5–24, 2004.

[BDH92] E. Best, R. Devillers, J. Hall. The box calculus: A new causal algebra with multi-
label communication. In Advances in Petri Nets. LNCS 609, pp. 21–69. 1992.

[BLO03] E. Badouel, M. Llorens, J. Oliver. Modeling concurrent systems: Reconfigurable
nets. In Proceedings of Int. Conf. on Parallel and Distributed Processing Techniques
and Applications. CSREA Press, 2003.

[Cor95] A. Corradini. Concurrent Computing: from Petri Nets to Graph Grammars.
ENTCS 2, pp. 56–70. Elsevier, 1995.

[DR98] J. Desel, W. Reisig. Place/transition Petri nets. In Lectures on Petri Nets I: Basic
Models. LNCS 1491, pp. 122–173. 1998.

[EEPT06] H. Ehrig, K. Ehrig, U. Prange, G. Taentzer. Fundamentals of Algebraic Graph Trans-
formation. Monographs in Theoretical Computer Science. Springer, 2006.

[EHP+07] H. Ehrig, K. Hoffmann, J. Padberg, U. Prange, C. Ermel. Concurrency in Reconfig-
urable P/T Systems: Independence of net transformations and token firing in recon-
figurable P/T systems. In Proceedings ICATPN. Pp. 104–123. 2007.

[Esp96] J. Esparza. Decidability and Complexity of Petri Net Problems - An Introduction. In
Lectures on Petri Nets I: Basic Models. LNCS 1491, pp. 374–428. 1996.

[Hab92] A. Habel. Hyperedge Replacement: Grammars and Languages. LNCS 643. 1992.

[HP99] S. Haddad, D. Poitrenaud. Theoretical Aspects of Recursive Petri Nets. In Applica-
tion and Theory of Petri Nets. LNCS 1639, pp. 228–247. 1999.

[KH10] M. Köhler-Bußmeier, F. Heitmann. Safeness for object nets. Fundamenta Informat-
icae 101(1):29–43, 2010.

[KR07] M. Köhler, H. Rölke. Web Service Orchestration with Super-Dual Object Nets. In
ICATPN. LNCS 4546, pp. 263–280. 2007.

[Kre81] H.-J. Kreowski. A comparison between Petri-nets and graph grammars. In Graph-
theoretic Concepts in Computer Science. LNCS 100, pp. 306–317. 1981.

[Mas11] M. Mascheroni. Hypernets: a class of hierarchical Petri nets. PhD thesis, Università
degli Studi di Milano-Bicocca, 2011.

19 / 20 Volume 71 (2015)



Analysis of Petri Nets with Context-Free Structure Changes

[MGH11] T. Modica, K. Gabriel, K. Hoffmann. Formalization of Petri Nets with Individual To-
kens as Basis for DPO Net Transformations. In Proceedings PNGT 2010. Electronic
Communications of the EASST 40. 2011.

[PW02] L. Priese, H. Wimmel. Petri-Netze. Springer, 2002.

[van97] W. M. P. van der Aalst. Verification of workflow nets. In Applications and Theory of
Petri Nets. LNCS 1248, pp. 407–426. 1997.

[van01] W. M. P. van der Aalst. Exterminating the Dynamic Change Bug: A Concrete
Approach to Support Workflow Change. Information Sys. Frontiers 3(3):297–317,
2001.

[vSV03] K. van Hee, N. Sidorova, M. Voorhoeve. Soundness and Separability of Workflow
Nets in the Stepwise Refinement Approach. In Applications and Theory of Petri
Nets. LNCS 2679, pp. 337–356. 2003.

[WRR08] B. Weber, M. Reichert, S. Rinderle-Ma. Change Patterns and Change Support Fea-
tures - Enhancing Flexibility in Process-Aware Information Systems. Data and
Knowledge Engineering 66(3):438–466, 2008.

Selected Revised Papers from GCM 2014 20 / 20


	Introduction
	Structure-Changing Petri nets
	Analysis of Structure-Changing Workflow Nets
	Firing Word Problem
	Reachability Problems
	Containment Problems

	Related Work
	Conclusion