<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Some Simple Extensions of Petri's Cycloids?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Bjarne Jessen</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Daniel Moldt</string-name>
          <email>moldtg@informatik.uni-hamburg.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Hamburg, Department of Informatics</institution>
        </aff>
      </contrib-group>
      <fpage>194</fpage>
      <lpage>213</lpage>
      <abstract>
        <p>Within the general system theory of Petri some means for modelling concurrent systems are provided. Cycloids belong to the fundamental building blocks to understand basic properties of systems. Up to now cycloids have a very limited scope with respect to general system properties. Valk's modelling proposals of circular tra c queues are rst valuable attempts to overcome these restrictions. In this contribution we extend the modelling in several ways. First of all we introduce con icts and other concepts to the modelling with cycloids. Second we use reference nets to increase expressibility of the modelling formalism, what eases the way to cover relevant system properties within the models while keeping relevant properties of the underlying processes of these models. As a result of both extensions we can express more interesting behaviour of concurrent systems. At the same time our construction of extended cycloids is designed in such a way that we can map our extended cycloid models to a set of cycloid models. In future work the transformation of Valk's formal results of the last years should be transferred to our extended versions.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Based on Minkowski's ideas about space and time [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] with the notion of
Weltlinie Petri introduces the Lebenslinie of entities for his general system theory
[
        <xref ref-type="bibr" rid="ref25 ref26">25,26</xref>
        ]. Kummer and Stehr discussed in [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] the axiomatic theory of concurrency
and causality, especially for the notion of cycloids as one of the fundamental
building blocks of Petri's system theory. During the last years Valk developed
some closed formulas to describe cycloid models [
        <xref ref-type="bibr" rid="ref32 ref34 ref35">32,34,35</xref>
        ]. Expressibility,
however, is rather low, since these models do not cover general con icts. Overall
cycloids cover cyclic behaviour with no choices but with concurrency. The resulting
net (process) of an initially marked cycloid model can therefore be characterised
by a closed formula [
        <xref ref-type="bibr" rid="ref32">32</xref>
        ]. Such a net preserves all kinds of behaviours even under
true concurrency semantics.
      </p>
      <p>
        The unit theory we sketched during the last years [
        <xref ref-type="bibr" rid="ref19 ref20 ref31 ref38 ref39 ref5 ref6">19,20,31,39,6,5,38</xref>
        ]
proposes to identify any kind of modelling entity on the basis of its behaviour.
Coming from Minkowski's Weltlinie and Petri's Lebenslinie for each entity an
? Copyright c 2020 for this paper by its authors. Use permitted under Creative
Commons License Attribution 4.0 International (CC BY 4.0).
appropriate Petri net model can found: Behaviour of an entity is described as an
in nite Petri net as described in Petri's general system theory. The same holds
for a set of entities. Nothing within one system can be lost, so Lebenslinien can
be joined and split, however, no cycles exist in the possibly in nite net model.
In this contribution all places, transitions, arcs and tokens that are related to
the subset of the (possibly) in nite net then describe this entity. In general the
unit theory addresses the question of how to model concurrent systems
combining the ideas from Petri's concurrency theory and modelling in informatics in
general. For this contribution details of the unit theory are not necessary, since
the proposal formulated in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] starts from the same basis as all cycloid models.
The relevant part of the unit theory is that we strive for a formal basis of the
basic modelling concepts of distributed and concurrent systems.
      </p>
      <p>
        The extensions proposed here are still restricted with respect to general
systems of informatics. However, in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] a rst elaborated proposal for extensions of
the cycloids is made, extending proposals in [
        <xref ref-type="bibr" rid="ref33">33</xref>
        ]. Some motivation can be found
in embedding the restricted set of modelling concepts into our agent-oriented
systems modelling [
        <xref ref-type="bibr" rid="ref3 ref30">30,3</xref>
        ]. Multi-agent systems (MAS) are one prominent kind of
distributed and concurrent systems [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], which we cover in our Mulan framework
[
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. Agent protocols, describing a xed set of repeatable behaviour of
distributed concurrent entities, can cover (potentially) in nite behaviour. Interpreting
agent systems as a set of (possibly nested) entities directly leads to
corresponding cycloid models. An observed entity repeats its modeled behaviour over and
over again. Due to the missing con icts, which describe alternative behaviour
for an entity, due to some interaction with another entity, cannot be modelled
by traditional cycloids. Therefore in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] extensions are described that where
discussed during the last years for the unit theory.
      </p>
      <p>In section 2 we discuss what kind of systems are covered by cycloids so far.
Section 3 describes the kind of requirements we have for our intended cycloid
applications. Section 4 contains a table of our currently covered extensions.
Section 5 provides examples of the previous section. Section 6 covers ideas of our
formal mapping of entities to cycloid models and the mapping of sets of cycloids
to our extended cycloids. Section 7 relates our models to other kinds of
modelling approaches like work ows, MAS and our unit theory. Section 8 summarises
our results and sketches an outlook of further topics.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Cycloids and their Models so far</title>
      <p>To illustrate what cycloids are and where their limits are we introduce some
examples, formal de nitions and some descriptions.
2.1</p>
      <sec id="sec-2-1">
        <title>Traditional Cycloid Examples</title>
        <p>
          Some prominent examples of cycloids by Petri are [
          <xref ref-type="bibr" rid="ref22 ref26">26,22</xref>
          ]:
{ The four seasons as a basic example for fundamental system properties and
minimal illustrations about certain concurrency modelling issues [
          <xref ref-type="bibr" rid="ref23 ref24">24,23</xref>
          ].
While several basic properties can be studied here, the cycloids are trivial
due to strongly sequential behaviour.
{ The set of cars that drive within a xed set of driving slots for an in nite
time [
          <xref ref-type="bibr" rid="ref32">32</xref>
          ].
        </p>
        <p>
          Based on this very symmetric model most discussions of cycloid behaviour
are made. However, already here the high symmetry of the model is
important.
{ The remen example where a group of remen extinguishes a re (and
repeats this in nitely often) (see example set of [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ]). On the left some water
supply exists and on the right a re exists that needs to be extinguished.
Full buckets of water are then moved by a reman to the right and given to
his neighbor in exchange with the empty bucket.
        </p>
        <p>
          This kind of model is e.g. still an observable process. However, a reman
can move forward and backward exchanging full and empty buckets with a
neighbor. The gaps are xed, while the usage by the reman is not. This can
lead to di erent kinds of behaviour that are not covered in the formulas of
Valk [
          <xref ref-type="bibr" rid="ref32 ref33 ref35">32,33,35</xref>
          ].
        </p>
        <p>Given ve (or more) gaps and two reman, one reman can be slow and
move only between the rst two gaps while the second reman move very
fast, performing all remaining movements over the remaining three (or more)
gaps.</p>
        <p>Furthermore, the reason for the reman is to exchange the full and empty
buckets. This process of exchange is usually also not covered by the cycloid,
since it is modelled implicitly.</p>
        <p>Starting from these examples we provide our extensions. Before that we
brie y sketch what cycloids are.
2.2</p>
      </sec>
      <sec id="sec-2-2">
        <title>Cycloids</title>
        <p>Cycloids are special Petri nets, more precisely the nets that can be expressed
as a folding of a certain in nite Petri net. For the example of remen or cars
that move through space and time Petri considered an in nite causal net that
models the movement through space and time and the conditions of causality
and concurrency. The in nite causal net is called Petri Space.</p>
        <p>
          A concrete model can then be derived from the in nite net by folding it
with respect to four particular parameters ; ; and [
          <xref ref-type="bibr" rid="ref32">32</xref>
          ]. These parameters
characterise the net pattern, which can be folded / repeated in nitely often to
build the net systems, which then can generate all possible runs within such a
system. In some way they describe the time and space ranges in discrete values.
The folding of the Petri space generates a nite net with cyclic behaviour. For
the car example also used in [
          <xref ref-type="bibr" rid="ref32">32</xref>
          ] an underlying assumption is that only a certain
xed set of cars moves within a xed set of gaps. This implies that the rst and
the last car have a maximal distance with respect to the in nite behaviour. For
the remen example this is natural assumption when considering the remen
standing / moving between the water supply and the re, since this distance is
nite and there is a discrete number of places assumed. Even with these strong
restrictions di erent kinds of behaviour are possible: The distances between the
cars may vary only within a smaller limit than what would generally be possible
considering the set of gaps of the in nite Petri Space, e.g. when they move in
column.
        </p>
        <p>Figure 1 shows a cutout of the Petri space. The advance of time is depicted
vertically and the advance of space is depicted horizontally. One can see that the
cars travel forward in time and space whereas the gaps travel forward in time
but backward in space.</p>
        <p>
          To calculate cycloids the Petri space is folded by de ning an equivalence
relation. The quotient set of the equivalence relation on the Petri space will be
the set of net elements of the respective cycloid. The cycloid will have a nite
set of net elements since there is a nite number of equivalence classes for the
chosen model. Petri space elements in the same equivalence class will collapse
which can be seen as the literal folding of the in nite net. For a detailed coverage
of these notions we refer to [
          <xref ref-type="bibr" rid="ref33">33</xref>
          ].
2.3
        </p>
      </sec>
      <sec id="sec-2-3">
        <title>Sets of driving Cars</title>
        <p>The set of cars that drive within a xed set of driving slots is an example
for a system that exhibits causality and concurrency. In the models that were
considered so far it is only possible for a car to move forward if the driving
slot in front of it is currently empty. We refer to these slots as gaps. In the real
world it is possible for a car to move forward even if the slot in front of it is
occupied if itself and the adjacent car accelerate simultaneously. However, this is
not covered in cycloids, due to the concept of contact in the originally underlying
Condition/Event-Nets (C/E-Nets).</p>
        <p>Cycloids cover in nite behaviour with a nite set of actions. In our considered
models we look at the behaviour as the possible actions of c cars and g gaps
within c + g driving slots. These driving slots represent the sliding window that
is currently looked at in a possibly bigger modelled world. Thus in our models
the maximum distance between two cars is c + g 1. Another illustration is that
the cars drive in a circuit of length c + g where they cannot overtake one another.
If two cars are adjacent to each other the movement of the car in front (meaning
that it has to leave the gap, hence releasing it for the next car, indicated by
the marked gap place) is the condition for the car behind to be able to drive
(causality). If two di erent cars have each a gap in front of them, they can drive
forward independently (concurrency). A Petri net example which portrays a rst
simple cycloid is shown in Figure 2. It is isomorphic to the net that is created by
folding the Petri space with the parameters (2; 3; 1; 1) for ( ; ; ; ). The idea
of cars and gaps will play a central role in providing examples for our simple
extensions of cycloids which we will do in following sections.</p>
        <p>
          Our considered models have got cyclic net structures. To avoid long and
possibly crossing edges in the straight depiction of the lanes we use virtual places
which are a feature of our Renew tool [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ]. Virtual places enable to create copies
of places. In Coloured Petri Nets they are called compound places of fusion sets
or fusion place for short [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]. The copies have got a doubled outline and behave
semantically identical to the original place. Thus drawing of (preferably) better
readable nets becomes possible by putting a copy of some place at the desired
location. We use colours in our net drawings to further highlight places and their
corresponding virtual copies (virtual places). In Figure 2 places that represent
cars are drawn in shades of blue colour, whereas places that represent gaps are
drawn in shades of grey colour. Virtual places are drawn in the same colour
as their corresponding places. The colour of a place that has got virtual places
will only be used once for the place and its copies to maintain a distinct colour
scheme. The distinction of transitions is not as important for our considered
models so we use a green tone that is set as default in Renew. The initial
marking of places is only drawn in the original places but not in the related
virtual places.
3
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Modelling Requirements for Cycloid Extensions</title>
      <p>In the above sections we described what cycloids can do and already mentioned
some limitations. This section addresses requirements for the extended cycloids.</p>
      <p>
        First of all we want to decrease the size of the models when modelling
cycloids. A similar approach is presented by Valk [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ] where he introduces coloured
Petri nets for a more compact representation, for which he also provides some
Model
m cars, n gaps, one lane
multiple independent lanes, no crossing of lanes
additional overtaking bay of length one, one car overtakes m cars
additional overtaking lane of length l, one car overtakes m cars
guaranteed cut in
forced overtaking
guaranteed cut in + forced overtaking
multiple cars can overtake
multiple cars must overtake
multiple cars on a driving slot
overtake can begin on di erent driving slots (Sliding Window)
free crossing of lanes
coloured cars
coloured cars + coloured gaps
additional lane with oncoming tra c
simultaneous action of cars
representation as a work ow
      </p>
      <p>
        Table 1. A table of our considered extensions
Expresses
Concurrency
Concurrency
Con ict
Con ict
Con ict
Con ict
Con ict
Con ict
Con ict
Coarsening
Con ict
Con ict
Distinctness
Distinctness
Con ict
Synchronization
Work ow
formulas as characterisations. Since we concentrate on the applicability of
cycloids for modelling we propose a subset of reference nets [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
      </p>
      <p>
        Second, we want to cover more concepts used in modelling. Therefore,
conicts are added. However, the idea is to restrict using them more or less as a
consistent extension of cycloids. In which ways this is possible and in which not
is discussed in the following sections. In the same context we introduce a
special variant of loops, motivated by work ow nets [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] and multi-agent protocols
[
        <xref ref-type="bibr" rid="ref11 ref3 ref30">30,3,11</xref>
        ].
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>First Results of Extensions</title>
      <p>Table 1 contains our currently covered extensions. We will discuss examples for
a selection of our extensions in section 5.</p>
      <p>The model with m cars and n gaps on one lane is a simple example that
can be expressed as a cycloid. It aids the intuitive understanding of causality
and concurrency in distributed systems. Multiple independent lanes without the
crossing of lanes increase the complexity of the model but since there are no
conicts it can still be expressed as a cycloid. In our considered models we introduce
con icts in di erent ways. For example, we add an overtaking bay of length one
to the model of cars and gaps. This enables a particular car to overtake other
cars which is not possible in traditional cycloid models. An overtaking lane of
some length l allows for additional types of behaviour. In models that have an
overtaking lane the cut in of the overtaking car can be prevented by another
car if it stays in the driving slot intented for cut in. This will be ruled out in
a model with guaranteed cut in. The overtaking lane can be unused if the cars
do not decide to overtake other cars. We prevent this in a model with forced
overtaking. Guaranteed cut in and forced overtaking can also be combined. One
can also consider that multiple cars are able to move onto the overtaking lane
or even are forced to do so. To describe a coarsened model one can de ne that
multiple cars are able to be located at one driving slot. We model a scenario
where an overtaking can begin on di erent driving slots but has always got a
xed length. This will be called a sliding window. In a model with looser
conditions the cars can freely switch between the lanes while they are moving forward.
By modelling cars and/or gaps as coloured tokens, we are able to examine the
properties of systems containing distinct cars and/or gaps. In the rst simple
applications of cycloids the cars and gaps are indistinguishable. To further increase
the complexity of the system and their models we introduce oncoming tra c on
the additional driving lanes. Through the use of synchronous channels provided
by the RENEW reference net formalism we model simultaneous actions of cars.
Here the actions happen simultaneously in one simulation step. We also consider
the presentation as a work ow by unwinding the conditions that regulate the
behaviour of the net.
5
5.1</p>
    </sec>
    <sec id="sec-5">
      <title>Examples for some Extensions</title>
      <sec id="sec-5-1">
        <title>Con icts: Overtaking of Cars</title>
        <p>At rst we introduce a simple con ict by adding another lane to the model
which is shown in Figure 3. Please note that the introduced con ict is modelled
by virtual places. The lower part of the gure depicts the rst lane of driving
slots. The upper part of the gure depicts the second lane which we will call the
overtaking lane. The net model of each lane contains a row of place pairs which
represent the driving slots. In the respective upper row places that represent cars
are located, whereas the places the represent gaps are located in the lower rows.
If a place representing a car is marked with a token it means that this driving
slot is currently occupied by a car. If a place representing a gap is marked it
means that this driving slot is not occupied. It makes sense that for each driving
slot exactly one of the two places is marked. This is achieved by rst choosing
an according initial marking of the net (which marks exactly one of the places).
Futhermore, the two places for each driving slot are complementary places. This
means that each transition that puts a token onto one of the places removes the
token from the other one and vice versa. This property also ensures that for all
reachable markings each place is marked with at most one token.</p>
        <p>The initial marking of the net shows that there are four cars which are located
in the rst four slots of the rst lane. There also is a gap in the fth slot. Remark
that the overtaking lane has only got three driving slots since the places for the
rst and last slot are virtual places of places that represent slots of the rst lane.
There are no cars in the overtaking lane which is indicated by the three marked
places representing the gaps.</p>
        <p>There is cyclic behaviour in the system. For example the cars can drive behind
each other in the rst lane. The introduced con ict shows when there is a car
in the rst slot of the rst lane and also the second slot of the rst lane and the
rst slot of the overtaking lane are currently empty. In this case the respective
rst transitions of both lanes (rows) are activated. This means that the car in
the rst slot of the rst lane can decide to either drive forward on the rst lane
or to sheer out onto the overtaking lane. Having sheered out it can then overtake
cars by moving forward on the overtaking lane. The fth slot of the rst lane is
also used for cutting in from the overtaking lane which shows another con ict.
In this model is it possible that multiple cars decide to move onto the overtaking
lane.
5.2</p>
      </sec>
      <sec id="sec-5-2">
        <title>Con ict: Overtaking with Guaranteed Cut In</title>
        <p>One can imagine that the con ict at cutting in can be problematic in scenarios
of the real world. For example, there can exist compulsive behaviour where one
car is not letting another car cut in by blocking the slot used for cutting in.
One motivation for modelling with cycloids is seeing them as a speci cation
method for distributed systems. Here the behaviour of systems is described and
speci ed with models that have got cyclic and also live behaviour. Liveness of
system means that a continuous possibility of carrying out all the actions of
the systems exists. This is a desired system property in many cases. Inspired
by the MAS (multi agent system) context, it looks sensible to use cycloids for
the speci cation of protocols that de ne the interaction of agents with other
agents. The rules of a protocol ensure that the interaction of the agents leads
to constructive behaviour. In the considered example of compulsive behaviour
our rules should ensure that it will always be possible for a car to cut in after
having sheered out. A reason for this condition in the real world can be that the
overtaking lane ends because a section of no passing follows. If the cars on the
rst lane block the overtaking car from cutting in it will have to wait on its lane.
This will mean a loss of e ciency which should be prevented by specifying that
only constructive behaviour should happen. We adapt the simple model shown
in Figure 3 to prevent the unwanted compulsive behaviour and guarantee the
cut in.</p>
        <p>The Petri net model for guaranteed cut in is shown in Figure 4. The graphical
representation is similar to Figure 3. The net contains a new place named 'mutex'
which regulates a condition of mutual exclusion. The idea of the introduced
condition is that cars are simply not allowed to move onto the slot used for
cutting in while a car is currently located on the overtaking lane. If a car is
currently located at the cut in slot, it is also not allowed for cars to enter the
overtaking lane. In the net this is realized by making the mutex available initially
which means that it is possible that either a car moves onto the cut in slot or a
car moves onto the overtaking lane. In both cases the mutex is made unavailable
by consuming the token in order to prevent the other action from happening.
After a car leaves the cut in slot the mutex should be made available again. This
is done by letting the transition responsible for leaving the cut in slot create a
token on the mutex place. This construction leads to only one car being able to
be located on the overtaking lane at the same time.
5.3</p>
      </sec>
      <sec id="sec-5-3">
        <title>Con ict: Forced Overtaking</title>
        <p>In Figure 3 we have seen that the cars can ignore the option to sheer out and
drive forever on the rst lane which leaves the overtaking lane empty. This is not
quite the behaviour that the modeller intended. We make another change to the
net to change its behaviour. We want to achieve that in the case of an empty
overtaking lane the rst car that is being able to sheer out onto the overtaking
lane must do so and is not allowed to drive forward on the rst lane. We call
this forced overtaking. We also want to enforce that if a car is currently located
on the overtaking lane it is not possible for another car to enter the overtaking
lane.</p>
        <p>The Petri net model for forced overtaking is shown in Figure 5. In essence
we still use the familiar color scheme. We introduce two new places that
represent new conditions for regulating the overtaking behaviour of the cars. The
place 'guard1' und its virtual places are drawn in yellow colour whereas the
place 'guard2' and its copies are drawn in red colour. Initially the place 'guard2'
(second guard) is marked whereas the place 'guard1' ( rst guard) is not. The
rst lane initially has got four cars that are distributed on the rst four driving
slots. The overtaking lane has got no cars initially. The two guards manipulate
the behaviour of the two transitions that are in the postset of the place that
models the car in the rst slot of the rst lane.</p>
        <p>For this car to drive forward on the rst lane it is necessary that the rst
guard is marked. This is the case if and only if a car is currently located on the
overtaking lane. So for an empty overtaking lane it is forbidden to drive forward
on the rst lane. If there is a car currently located on the overtaking lane and the
rst guard is marked it will be allowed for the car to drive forward one the rst
lane. In this case the token of the rst guard is consumed and created right after
because the condition of the overtaking lane being not empty does not change.
For a car on the rst slot of the rst lane to sheer out onto the overtaking lane
it is necessary that the second guard is marked. This is the case if and only
if no car is currently located on the overtaking lane. When sheering out, the
corresponding transition consumes the token of the second guard and creates a
token on the rst guard to update the current state of the conditions. When
cutting in, the reverse actions happen. The token of the rst guard is consumed
so cars on the rst slot of the rst lane are no longer able to drive forward on
the rst lane and must sheer out again. Also a token is created on the second
guard so cars are able to sheer out again. We see that there are three types of
using the guards: Consuming the condition (removing the token), providing the
condition (creating a token) or claiming the condition (needing but preserving
the token).
5.4</p>
      </sec>
      <sec id="sec-5-4">
        <title>Synchronous Actions</title>
        <p>
          So far, concurrent actions in our models can happen simultaneously in one
simulation step but can also happen after one another. We introduce further changes
to create a type of behaviour where it is forced that particular actions
happen in one simulation step. For this we use another concept of Renew, namely
synchronous channels. Synchronous channels consist of uplinks and downlinks.
Downlinks can be seen as transitions that are calling other transitions whereas
uplinks are the transitions being called. However, this metaphor is not exactly
correct since the transitions are carried out simultaneously which should not be
compared to a method call in programming. We will also use coloured tokens
which are supported by Renew as well. We remark here that it is also
possible to use multiple tokens on one place in other examples to portray coarsened
representations of bigger nets. We refer to [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ].
        </p>
        <p>
          Figure 6 shows a Petri net model with synchronized actions. We use the
metaphor that the fuel of the cars is running out as they drive. They have to
be refueled simultaneously. While the gaps in our model are still represented by
black tokens ([]), we use coloured tokens to model the cars. For futher information
concerning the use of coloured tokens in our modelling context we refer to [
          <xref ref-type="bibr" rid="ref33">33</xref>
          ]
and [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]. We use two types of tokens, a token named 'fuelfull' for a car that has
got enough fuel to drive and a token named 'fuelempty' for a car that has not
got enough fuel to drive.
        </p>
        <p>The net has got no con icts and only one lane with ve driving slots. Initially
there is a 'fuelfull' token on the two places representing the cars on the third
and fourth driving slot, respectively. That means that initially there are cars
with su cient fuel on the third and fourth driving slot. There are gaps on the
other slots. When moving from the fth to the rst driving slot the type of
the respective token changes from 'fuelfull' to 'fuelempty' by the corresponding
action inscription. This is done by removing the 'fuelfull' token from the fth slot
and creating a new 'fuelempty' token on the rst slot. In other cases 'fuelfull'
tokens travel as 'fuelfull' tokens and 'fuelempty' tokens travel as 'fuelempty'
tokens. A car that has not enough fuel to drive should not be able to move from
the second to the third driving slot. In the net this is realized by adding the guard
inscription 'guard x.equals("fuelfull")' to the 'b' transition. The guard states
that the variable 'x' which is used for the transfer of tokens must be bound to a
token of type 'fuelfull'. To continue driving the cars can get refueled by the two
transitions depicted at the upper left hand area of the gure. These transitions
carry the uplink inscriptions ':refuelA()' and ':refuelB()'. They each consume a
'fuelempty' token from the places that represent the rst two cars and create
a 'fuelfull' token on them, respectively. This models the refueling of the cars.
These two transitions are synchronized by the transition depicted above them
which carries the two downlink inscriptions 'this:refuelA()' and 'this:refuelB()'.
The inscriptions mean that of the current net instance which is referenced by
the keyword 'this' the channels 'refuelA' and 'refuelB' are synchronized. After
the cars have been refueled synchronously they can continue to drive.</p>
        <p>In Figure 3 we see that the action of overtaking always begins at a xed slot
and has got a xed length. We want to keep its xed length but let it begin at
arbitrary slots. We call this idea sliding window. Figure 7 shows a model for a
sliding window overtaking process. The model has got two lanes with ve slots
each. Initially there are four cars on the rst four slots of the rst lane, whereas
there are no cars located on the second lane. In essence the cars can freely
switch between the two lanes if a corresponding gap exists at the moment. This
is controlled by the ten transitions depicted at the middle of the gure. To enforce
that a car cuts in at a certain slot after having sheered out we introduce ve new
conditions that are represented by the places depicted in yellow, violet, orange,
red and light color. These are unmarked initially. The conditions are provided
when sheering out and consumed when cutting in. We choose a constellation in
which a token is created on the place that needs to be marked for the respective
car to cut in right after having sheered out. This leads to the sliding window
having an overtaking length of one. However, unwanted behaviour still exists in
the model. For example, if multiple cars switch to the overtaking lane the cut
in slot to be enforced is not mapped to the sheered out car which enables one
of the cars to use the cut in slot being enforced for the other one. Also the cars
can stay on the overtaking lane forever and choose to never cut in the rst lane
again.
5.5</p>
      </sec>
      <sec id="sec-5-5">
        <title>Presentation as a Work ow</title>
        <p>We also show a presentation as a work ow by rst unwinding the conditions of
the Petri net model and then transforming the emerging net into a work ow
Petri net. We consider a example wherein the maximum distance of two driving
cars is ve which means that there are six driving slots. In this example we have
got two cars. Initially the two cars are located on two arbitrary slots that are
adjacent to each other (so they have got a distance of one unit).</p>
        <p>The Figure 8 shows a cutout of the causal net that emerges from unwinding
the following conditions. Again we use the colour scheme of blue and grey. In
order to get a work ow Petri net we add a start place and an end place together
with the respective forking and joining transitions. This is depicted in Figure 9.</p>
        <p>First of all the car in front needs to move forward to enable the car behind it
to move as well. This is modelled by the six gaps that are next to each other in
the graphical depiction. Secondly, since the maximum distance must not exceed
the value of ve slots the car behind needs to move forward before the movement
of the car in front would cause the distance between them to exceed ve driving
slots. This is modelled by the two gaps located at the upper area of the graphical
depiction. It is worth to see that the maximal distance can in some circumstances
be larger in Figure 8, when the car behind has proceeded by two gaps. Then
the car in front can move until it has to wait again for the car behind. This
behaviour is not possible in Figure 9. Start and end places restrict the possible
behaviours. Since e.g. in our MAS models we require to have such starting and
ending condition for one of the conversations of two agents, this is not always
problematic. What is gained by the restriction is a better understandability of
behaviours. One has to start in a single precisely de ned initial state and then,
after the synchronisation via the end place can restart.</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Discussion of Mapping of Entities to Extended Cycloids to Traditional Cycloids</title>
      <p>After the discussion of extension options above we now discuss the mapping of
modelling entities to extended cycloids and of extended cycloids to traditional
cycloids. In this section we restrict ourselves to the informal motivation of the
mappings. These mappings are most often straight forward, so that we do not
provide a formalization. First of all the extension by the use of reference nets
needs to be discussed. Second the additional concepts of con ict (and (for-)loops)
are treated.</p>
      <p>
        Using virtual places is well known from other formalisms like Coloured Petri
Nets [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Here also this is treated as a shortcut for modelling. With respect to
modelling in general virtual places can be considered as a kind of goto. However,
when used in a disciplined manner readability increases. At the same time one
has to confess that e.g. the visibility of con icts may be not so obvious for the
uninformed reader, see Figures 2 and 3. The problem of crossing arcs can be
seen in the net models of Valk [
        <xref ref-type="bibr" rid="ref32 ref35">32,35</xref>
        ]. The larger the models become the more
di cult is to read the net model.
      </p>
      <p>
        Other shortcuts like the colouring of tokens and the use of variable is nicely
demonstrated by the results of Valk in [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ]. When modelling complex systems
nowadays high-level modelling languages are necessary and wide spread. We use
these to cover the mapping of application entities / units to a net. Real world
examples often have generalised descriptions and require therefore appropriate
models. This becomes possible when we use sets or classes of cars to describe a
system. Looking at all entities as individual entities directly leads to C/E-Net
models. Each entity like a car is moving through space and time. When classes
of cars exist, then we do not want model new kinds of behaviours. In Petri's
approach there exists only one kind of car or all cars are reduced / mapped to
the class car. This ne if all cars are always treated equally.
      </p>
      <p>When cars need di erent treatment, e.g. a police car that must have to option
to overtake and enforce its cut in, than we need to re ect this in the model. This
is covered by the di erent version we show in Section 5.</p>
      <p>Another scenario not discussed before here is that the overtaking of
autonomous driving cars can be speci ed as a kind of required behaviour. Interpreting
the overtaking model a speci cation and ensuring that only correct and
complete overtaking scenarios are allowed by the (extended) cycloid, we can ensure
that the action of overtaking is safe (if no breakdown of the hardware occurs).
An overtaking car can bypass a certain number of cars and then sheer in again
before cars on the other lane can collide with them.</p>
      <p>Actually when modelling the car on the other lane that approaches a convoy
from the opposite direction there is a certain number of free gaps for the
overtaking actions. If and only if the speed and the number of gaps is su cient a car
may overtake the other cars.</p>
      <p>
        Modelling extended cycloids to (traditional) cycloids like those used by Petri
or in [
        <xref ref-type="bibr" rid="ref32">32</xref>
        ] requires a solution for the di erent concepts (con ict, synchronous
channel, colour, loop etc.). The main motivation to e.g. add con icts to the
modelling concepts is to reach a higher expressability of the modelling language.
Con icts are actually one of the basic concepts in general Petri nets [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ]. In
a scenario not only concurrency and causality need to be covered. Alternative
actions also need to be covered by models.
      </p>
      <p>Following the nite set of actions of a modelled system this implies that if
the number of actions within a given scenario at least one action must be used
more than once. For in nite scenarios this is obvious. Good systems (designed
following the ideas of being a correct work ows for each work ow of a system)
should react to an external stimuli like a message and then remain in a state until
the next external event occurs. This is an ideal scenario, but it allows to specify
a reaction of a system more easily. Interference of several concurrent events that
have con icts with respect to actions of resources are explicitly prohibited in our
kinds of system models. This restricts the systems that can be modelled, but due
to the inclusion of con icts it still can cover more processes than a traditional
cycloid.</p>
      <p>However, one can consider the extended cycloid as a kind of description of
several cycloids. Each cycloid has an initial marking from which it can perform
a certain set of actions until it starts in the beginning again.1</p>
      <p>Now, if there is exactly a single place with two transitions in con ict within
a model then this only describes two di erent cycloid structures that may be
used. Given that one alternative is never used than exactly the normal cycloid
could be used for its description. The same holds for the other alternative. Both
cycloids can be considered to describe the behaviour of a system or unit. The
only di erence lies in that part of the process that re ects the selection of the
alternative. When considering a cycloid model as the blueprint for a unit then
the cyclic behaviour can be seen as a composition of processes of this unit.
What needs to be seen here is, that the possible behaviours can change, since
the possible distances between tokens can be increased due to the larger model
structure.</p>
      <p>In the case that there is an alternative in the system structure then for each
alternative there is di erent unit that can be used to generate the corresponding
process. In some way we have used this technique when we developed the Petri
net protocols for our Petri net based multi-agent systems. First models just
described a concurrent behaviour of two or more agents interacting. This exactly
re ects a cycloid structure. When agents repeat this behaviour then this results
in the cycloid process.</p>
      <p>To increase the modelling power of our agent protocol modelling technique
we introduced alternative. The same was added by the AUML approach of James
1 This is a simpli cation, however, the number of variants is strictly limited due to the
fact that there is a maximal possible distance between the rst and the last token
within a cycloid.</p>
      <p>
        When using the idea of work ows with a single initial marking and a single end
marking place, then this is easy to see. Nevertheless this is not so simple in the
general case for cycloids, since the initial marking is normally larger than a single
token.
Odell et al [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]. In both approaches the idea of a set of di erent, but highly related
behaviour of a set of entities describe the behaviour of the overall system unit.
Each agent can again be considered to be a unit, being described by cycloids,
but this is not deepened here.
      </p>
      <p>For this contribution it is important to notice that we can either assume
that we describe a net structure without alternatives to form a basic unit of
behaviour. The concatenation of the structure, the unfolding with respect to a
given initial marking, results in uniform behaviour that can be described by a
cycloid. Adding alternatives within the structure can be seen as the option to
concatenate some variants units to form the behaviour.</p>
      <p>
        The other modelling perspective is to look at process and fold these process
to structures, as it is done by Petri with his Petri space. The folding can be done
for the simple model of cars and gaps for the dimension of space of time. Folding
both results in the cycloid. More complex models that have more than two
dimensions. These kind of models have been considered in the thesis of Fenske
[
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. In the context of the thesis a modelling tool was developed to visualise and
to simulate the models. Experiments with these models illustrated that a more
compact notion was necessary, what we discussed here.
      </p>
      <p>
        An interesting perspective is to not use process and fold them to cycloids, but
to use branching process and fold them to our extended cycloids. For a restricted
set of branching process (with a nite set of regular behaviour patterns) this
should be no problem using our proposed mapping. The composition as already
used by Valk in [
        <xref ref-type="bibr" rid="ref33">33</xref>
        ] illustrates how such a construction is possible. Folding and
composition of cycloid( structure)s therefore needs more investigation.
7
      </p>
    </sec>
    <sec id="sec-7">
      <title>Related Modelling Approaches</title>
      <p>Compared to the above proposals some modelling approaches were motivating
the extensions. In general repetitive behaviour is assumed. This can be found in
may application areas of informatics.</p>
      <p>
        Building applications is normally designed for certain scenarios [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ].
Embedding the scenario models in an environment to restart a nished scenario the
repeated behaviour becomes obvious. In our own models we used this idea for
workow modelling (see e.g. [
        <xref ref-type="bibr" rid="ref16 ref28 ref36 ref37 ref7">7,28,37,16,36</xref>
        ]), software engineering (see e.g. [
        <xref ref-type="bibr" rid="ref17 ref3">17,3</xref>
        ]),
multi-agent systems (see e.g. [
        <xref ref-type="bibr" rid="ref12 ref3">3,12</xref>
        ]) or general modelling by units (see e.g. [
        <xref ref-type="bibr" rid="ref19 ref31">19,31</xref>
        ]
[
        <xref ref-type="bibr" rid="ref38 ref5">5,38</xref>
        ]). Often in these models the rst assumption is to have a limited number of
behaviours to ease the modelling process. With some simple but powerful
generalisations/extensions potentially in nite numbers of behaviours are covered (due
to turing completeness by the extensions). These are obviously not covered in
the proposed extensions for the cycloids here.
      </p>
      <p>
        Our proposals of some bounded set of possible behaviours is of course also
followed in many other modelling approaches. UML (Uni ed Modeling
Language) with its various modelling techniques, BPMN (Business Process Model
and Notation) or other Petri net formalisms and restrictions of Petri nets like
work ows use in their methods the idea of simple behaviours that can be
executed repetitively. The same holds for multi-agent systems where agents inherit
some kinds of behaviour. Usually this behaviour is triggered from the outside
and should terminate after the external stimulus or message has been processed.
In our Mulan framework this is nicely covered. Due to the usage of higher
inscriptions languages like Java again the MAS modelling becomes turing
complete. Especially the possibility of self-adaptation (see e.g. [
        <xref ref-type="bibr" rid="ref12 ref3">3,12</xref>
        ]) is an important
feature here. However, to still build controllable systems each single behaviour
model should be restricted.
      </p>
      <p>
        Cycloids provide the means for a single scenario with in fact certain basic
blocks of repeated behaviours. There is always a nite number of di erent
marking in a cycloid. Only the variations of such markings provided the possibly
in nite number of process that can be build from an initially marked cycloid.
Correct work ows [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] without loops are a special case of our cycloid extensions.
Even work ow with for loops (for a given model (using coloured Petri nets to
model the conditions)) can be considered as extended cycloids, however, we do
not deepen the discussion here, since this requires some further investigations
for the mappings for easier understandability.
      </p>
      <p>Our extensions more or less adds some further kinds of markings of a set of
places. However, the modellers can use con icts or for loops, what ensures that
the number of possible markings remain nite. In addition to the cycloids now
not all transitions within an extended cycloid will re when an initial marking
is reached. Obviously alternatives hinder such rings. The same holds if a loop
is skipped due to a possibly false condition from the beginning onwards.</p>
      <p>
        With respect to the unit theory a unit describes a any kind of system (see
e.g. [
        <xref ref-type="bibr" rid="ref19 ref31 ref38 ref5">19,31,5,38</xref>
        ]). This system can contain several actions. Repeated behaviour
of such a unit with no alternative but with internal concurrency can be directly
described by a cycloid, if the unit can restart from its initial marking once it
has reached an end marking. This initial marking and the end marking may be
sets of markings, since the shortcut of the model may lead to di erent kinds of
markings of the cycloids and these marking may not exactly match the initial
marking. Due to the limited number of markings reachable with a cycloid the
options for the initial marking and end marking sets is nite.
8
      </p>
    </sec>
    <sec id="sec-8">
      <title>Conclusion</title>
      <p>Modelling repeated behaviour is demanding. As a simple solution cycloids were
developed. Restrictions with respect to the modelling power inspired us to extend
the cycloids.</p>
      <p>The extension were done in two di erent directions. First new concepts were
added to the model more complex systems. Especially con icts need to be
mentioned here. Second reference nets are used to build the models. Using reference
nets allows to build more complex models. Applying restrictions on the usage
of colours, synchronous channels and other constructs leads to the possibility to
map the coloured models to the extended cycloids which again can be somehow
described by sets of cycloids.</p>
      <p>Future work needs to address the provision of closed formulas as this was
done during the last years by Valk. Relations to work ow modelling and other
modelling areas like MAS are highly promising. Overall we are sure that the
results can be used to provide a formal basis for some parts of the unit theory.</p>
      <p>
        Starting from [
        <xref ref-type="bibr" rid="ref22 ref23">22,23</xref>
        ], nally, for the fundamental assumptions of a system
theoretical perspective of the unit theory, we have to look at the fundamental
assumption of Petri that \. . . if we base our models on the combinatorial concepts
of signal ow suggested by informatics, and insist on continuity (as Zuse did),
we end up inevitably with a model of a nite universe. " [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]. Following the
principle idea of the general system theory we consider it nevertheless necessary
for people modelling for informatics to cover open systems which directly leads to
somehow in nite processes. At the same time embedding nite open systems into
a nite universe can still impose a kind of understanding of a non-deterministic
(in nite?) environment.
      </p>
      <p>Computer scientists, software engineers and other people of informatics
urgently need better modelling techniques. Extended cycloids are one option to
provide a solid basis on the ground of concurrency theory for more expressive
modelling techniques for application areas where a xed set of scenarios need to
be covered in formal manner.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>van der Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          :
          <article-title>Veri cation of Work ow Nets</article-title>
          . In: Azema,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>Balbo</surname>
          </string-name>
          ,
          <string-name>
            <surname>G</surname>
          </string-name>
          . (eds.)
          <source>Application and Theory of Petri Nets</source>
          <year>1997</year>
          . pp.
          <volume>407</volume>
          {
          <fpage>426</fpage>
          . Springer Berlin Heidelberg, Berlin, Heidelberg (
          <year>1997</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Brauer</surname>
          </string-name>
          , W. (ed.):
          <source>Net Theory and Applications</source>
          ,
          <source>Proceedings of the Advanced Course on General Net Theory of Processes and Systems, Hamburg, October</source>
          <volume>8</volume>
          -
          <issue>19</issue>
          ,
          <year>1979</year>
          , LNCS, vol.
          <volume>84</volume>
          . Springer, Berlin Heidelberg New York (
          <year>1980</year>
          ), https: //doi.org/10.1007/3-540-100016
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Cabac</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Modeling Petri Net-Based Multi-Agent Applications</article-title>
          . Dissertation, University of Hamburg, Department of Informatics, Vogt-Kolln Str. 30,
          <string-name>
            <given-names>D</given-names>
            <surname>-</surname>
          </string-name>
          22527
          <string-name>
            <surname>Hamburg</surname>
          </string-name>
          (Apr
          <year>2010</year>
          ), http://www.sub.uni-hamburg.de/opus/volltexte/2010/4666/
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Fenske</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>Petris Zykloide und Uberlegungen zur Verallgemeinerung</article-title>
          .
          <source>Diploma thesis</source>
          , University of Hamburg, Vogt-Kolln Str. 30,
          <string-name>
            <given-names>D</given-names>
            <surname>-</surname>
          </string-name>
          22527
          <string-name>
            <surname>Hamburg</surname>
          </string-name>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Hewelt</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Grundlegende Konstrukte einer einheitentheoretischen Modellierungstechnik</article-title>
          .
          <source>Diploma thesis</source>
          , University of Hamburg, Department of Informatics,
          <source>VogtKolln Str</source>
          . 30,
          <string-name>
            <given-names>D</given-names>
            <surname>-</surname>
          </string-name>
          22527
          <string-name>
            <surname>Hamburg</surname>
          </string-name>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Hewelt</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wester-Ebbinghaus</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>United { a Petri net based framework for modeling complex and adaptive systems</article-title>
          . In: Moldt,
          <string-name>
            <surname>D</surname>
          </string-name>
          . (ed.)
          <article-title>Petri Nets</article-title>
          and Software Engineering, International Workshop, PNSE'
          <fpage>09</fpage>
          .
          <string-name>
            <surname>Proceedings</surname>
          </string-name>
          . pp.
          <volume>207</volume>
          {
          <fpage>226</fpage>
          . Technical Reports Universite Paris 13, Universite Paris 13, 99,
          <string-name>
            <surname>avenue</surname>
            <given-names>Jean-Baptiste</given-names>
          </string-name>
          <string-name>
            <surname>Clement</surname>
          </string-name>
          ,
          <volume>93</volume>
          430 Villetaneuse (Jun
          <year>2009</year>
          ), http://www.informatik.uni-hamburg. de/TGI/events/pnse09/
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Jacob</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kummer</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Moldt</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ultes-Nitsche</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>Implementation of workow systems using reference nets { security and operability aspects</article-title>
          . In: Jensen,
          <string-name>
            <surname>K</surname>
          </string-name>
          . (ed.)
          <source>Fourth Workshop and Tutorial on Practical Use of Coloured Petri Nets and the CPN Tools</source>
          . University of Aarhus, Department of Computer Science, Ny Munkegade, Bldg. 540, DK-8000
          <string-name>
            <surname>Aarhus</surname>
            <given-names>C</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Denmark</surname>
          </string-name>
          (Aug
          <year>2002</year>
          ),
          <source>dAIMI PB: Aarhus, Denmark, August</source>
          <volume>28</volume>
          {
          <fpage>30</fpage>
          , number
          <issue>560</issue>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Jennings</surname>
            ,
            <given-names>N.R.</given-names>
          </string-name>
          :
          <article-title>On agent-based software engineering</article-title>
          .
          <source>Arti cial Intelligence</source>
          <volume>117</volume>
          (
          <issue>2</issue>
          ),
          <volume>277</volume>
          {
          <fpage>296</fpage>
          (
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Jensen</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kristensen</surname>
            ,
            <given-names>L.M.</given-names>
          </string-name>
          :
          <source>Coloured Petri Nets: Modelling and Validation of Concurrent Systems</source>
          . Springer-Verlag (
          <year>Jul 2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Jessen</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Untersuchungen zur konzeptionellen Erweiterung von Zykloiden</article-title>
          .
          <source>Bachelor thesis</source>
          , University of Hamburg, Department of Informatics, Vogt-Kolln Str. 30,
          <string-name>
            <given-names>D</given-names>
            <surname>-</surname>
          </string-name>
          22527
          <string-name>
            <surname>Hamburg</surname>
          </string-name>
          (
          <year>2020</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11. Kohler,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Moldt</surname>
          </string-name>
          ,
          <string-name>
            <surname>D.</surname>
          </string-name>
          , Rolke, H.:
          <article-title>Modelling mobility and mobile agents using nets within nets</article-title>
          . In: van der Aalst, W.,
          <string-name>
            <surname>Best</surname>
          </string-name>
          , E. (eds.)
          <source>Proceedings of the 24th International Conference on Application and Theory of Petri Nets</source>
          <year>2003</year>
          (
          <article-title>ICATPN 2003)</article-title>
          . LNCS, vol.
          <volume>2679</volume>
          , pp.
          <volume>121</volume>
          {
          <fpage>139</fpage>
          . Springer-Verlag (
          <year>2003</year>
          ), http: //www.springerlink.com/link.asp?id=xf5vqh9cn0q1nukw
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12. K
          <string-name>
            <surname>ohler-Bu</surname>
            <given-names>meier</given-names>
          </string-name>
          , M.:
          <article-title>Koordinierte Selbstorganisation und selbstorganisierte Koordination: Eine formale Spezi kation re exiver Selbstorganisation in Multiagentensystemen unter spezieller Berucksichtigung der sozialwissenschaftlichen Perspektive</article-title>
          . Habilitationsschrift, University of Hamburg (
          <year>2009</year>
          ), http://epub.sub. uni-hamburg.de/informatik/volltexte/2010/144/
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Kummer</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Referenznetze</surname>
          </string-name>
          . Logos Verlag, Berlin (
          <year>2002</year>
          ), http://www. logos-verlag.de/cgi-bin/engbuchmid?isbn=0035&amp;lng=eng&amp;id=
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Kummer</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stehr</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Petri's axioms of concurrency- A selection of recent results</article-title>
          . In: Azema,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>Balbo</surname>
          </string-name>
          ,
          <string-name>
            <surname>G</surname>
          </string-name>
          . (eds.)
          <source>Application and Theory of Petri Nets</source>
          <year>1997</year>
          . pp.
          <volume>195</volume>
          {
          <fpage>214</fpage>
          . No. 1248
          <string-name>
            <surname>in</surname>
            <given-names>LNCS</given-names>
          </string-name>
          , Springer-Verlag, Berlin Heidelberg New York (
          <year>1997</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Kummer</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wienberg</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Duvigneau</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cabac</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Haustermann</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mosteller</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          : Renew { the Reference Net Workshop (
          <year>Jun 2016</year>
          ), http://www.renew. de/, release 2.
          <fpage>5</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Markwardt</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Strukturierung petrinetzbasierter Multiagentenanwendungen am Beispiel verteilter Softwareentwicklungsprozesse</article-title>
          .
          <source>Ph.D. thesis</source>
          , University of Hamburg, Department of Informatics, Vogt-Kolln Str. 30,
          <string-name>
            <given-names>D</given-names>
            <surname>-</surname>
          </string-name>
          22527
          <string-name>
            <surname>Hamburg</surname>
          </string-name>
          (
          <year>2013</year>
          ), http://ediss.sub.uni-hamburg.de/volltexte/2013/6027
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Markwardt</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Moldt</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          , O ermann, S.,
          <string-name>
            <surname>Reese</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Using multi-agent systems for change management processes in the context of distributed software development processes</article-title>
          . In: Sadiq,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Reichert</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Schulz</surname>
          </string-name>
          ,
          <string-name>
            <surname>K</surname>
          </string-name>
          . (eds.)
          <source>The 1st International Workshop on Technologies for Collaborative Business Process Management (TCoB</source>
          <year>2006</year>
          ). pp.
          <volume>56</volume>
          {
          <issue>66</issue>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Minkowski</surname>
          </string-name>
          , H.:
          <article-title>Raum und Zeit</article-title>
          .
          <source>Physikalische Zeitschrift</source>
          <volume>10</volume>
          ,
          <issue>104</issue>
          {
          <fpage>111</fpage>
          (
          <year>1909</year>
          ), also in: Jahresbericht der Deutschen Mathematiker-Vereinigung,
          <volume>18</volume>
          , 75{
          <fpage>88</fpage>
          (
          <year>1909</year>
          )
          <article-title>; talk at 80</article-title>
          . Naturforscherversammlung zu Koln, 21. September 1908
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Moldt</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Petrinetze als Denkzeug</article-title>
          . In: Farwer,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Moldt</surname>
          </string-name>
          ,
          <string-name>
            <surname>D</surname>
          </string-name>
          . (eds.) Object Petri Nets, Processes, and Object Calculi. pp.
          <volume>51</volume>
          {
          <fpage>70</fpage>
          . No.
          <string-name>
            <surname>FBI-HH-</surname>
          </string-name>
          B-
          <volume>265</volume>
          /05 in Informatics Report, University of Hamburg, Vogt-Kolln Str. 30,
          <string-name>
            <given-names>D</given-names>
            <surname>-</surname>
          </string-name>
          22527
          <string-name>
            <surname>Hamburg</surname>
          </string-name>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Moldt</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>PAOSE: A way to develop distributed software systems based on Petri nets and agents</article-title>
          . In: Barjis,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Ultes-Nitsche</surname>
          </string-name>
          ,
          <string-name>
            <given-names>U.</given-names>
            ,
            <surname>Augusto</surname>
          </string-name>
          , J.C. (eds.)
          <source>Proceedings of The Fourth International Workshop on Modelling, Simulation, Veri cation and Validation of Enterprise Information Systems (MSVVEIS'06)</source>
          ,
          <source>May 23-24</source>
          ,
          <year>2006</year>
          { Paphos,
          <string-name>
            <surname>Cyprus</surname>
          </string-name>
          <year>2006</year>
          . pp.
          <volume>1</volume>
          {
          <issue>2</issue>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Odell</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parunak</surname>
            ,
            <given-names>H.V.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bauer</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Representing agent interaction protocols in UML</article-title>
          . In: Ciancarini,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>Wooldridge</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.J</given-names>
            . (eds.)
            <surname>Agent-Oriented Software</surname>
          </string-name>
          <string-name>
            <surname>Engineering</surname>
          </string-name>
          , First International Workshop, AOSE 2000, Limerick, Ireland, June 10,
          <year>2000</year>
          ,
          <string-name>
            <given-names>Revised</given-names>
            <surname>Papers</surname>
          </string-name>
          .
          <source>LNCS</source>
          , vol.
          <year>1957</year>
          , pp.
          <volume>121</volume>
          {
          <fpage>140</fpage>
          . Springer (
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Petri</surname>
            ,
            <given-names>C.A.</given-names>
          </string-name>
          :
          <article-title>Cultural aspects of net theory</article-title>
          .
          <source>Soft Comput</source>
          .
          <volume>5</volume>
          (
          <issue>2</issue>
          ),
          <volume>141</volume>
          {
          <fpage>145</fpage>
          (
          <year>2001</year>
          ), https://doi.org/10.1007/s005000000070
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Petri</surname>
            ,
            <given-names>C.A.</given-names>
          </string-name>
          :
          <article-title>Mathematical aspects of net theory</article-title>
          .
          <source>Soft Comput</source>
          .
          <volume>5</volume>
          (
          <issue>2</issue>
          ),
          <volume>146</volume>
          {
          <fpage>151</fpage>
          (
          <year>2001</year>
          ), https://doi.org/10.1007/s005000170001
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Petri</surname>
            ,
            <given-names>C.A.</given-names>
          </string-name>
          : Concurrency. In: Brauer [2], pp.
          <volume>251</volume>
          {
          <issue>260</issue>
          , https://doi.org/10.1007/ 3-540-100016
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Petri</surname>
            ,
            <given-names>C.A.</given-names>
          </string-name>
          :
          <article-title>Introduction to general net theory</article-title>
          .
          <source>In: Brauer [2]</source>
          , pp.
          <volume>1</volume>
          {
          <issue>19</issue>
          , https: //doi.org/10.1007/3-540-100016
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Petri</surname>
            ,
            <given-names>C.A.</given-names>
          </string-name>
          :
          <article-title>Nets, time and space</article-title>
          .
          <source>Theoretical Computer Science</source>
          <volume>153</volume>
          (
          <issue>1</issue>
          {2),
          <volume>3</volume>
          {
          <fpage>48</fpage>
          (
          <year>1996</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Petri</surname>
            ,
            <given-names>C.A.</given-names>
          </string-name>
          :
          <article-title>On the physical basics of information ow</article-title>
          . In: van Hee,
          <string-name>
            <given-names>K.M.</given-names>
            ,
            <surname>Valk</surname>
          </string-name>
          ,
          <string-name>
            <surname>R</surname>
          </string-name>
          . (eds.) Applications and Theory of Petri Nets, 29th International Conference,
          <source>PETRI NETS</source>
          <year>2008</year>
          ,
          <article-title>Xi'an, China</article-title>
          , June 23-27,
          <year>2008</year>
          . Proceedings. LNCS, vol.
          <volume>5062</volume>
          , p.
          <fpage>12</fpage>
          . Springer (
          <year>2008</year>
          ), https://doi.org/10.1007/978-3-
          <fpage>540</fpage>
          -68746-
          <issue>7</issue>
          _
          <fpage>5</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <surname>Reese</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Prozess-Infrastruktur</surname>
            <given-names>fu</given-names>
          </string-name>
          r Agentenanwendungen,
          <source>Agent Technology { Theory and Applications</source>
          , vol.
          <volume>3</volume>
          . Logos Verlag, Berlin (
          <year>2010</year>
          ),
          <article-title>dissertation</article-title>
          . Pdf: http://www.sub.uni-hamburg.de/opus/volltexte/2010/4497/
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29.
          <string-name>
            <surname>Reisig</surname>
          </string-name>
          , W.:
          <string-name>
            <surname>Understanding Petri Nets - Modeling Techniques</surname>
          </string-name>
          ,
          <source>Analysis Methods, Case Studies. Springer</source>
          , Berlin Heidelberg (
          <year>2013</year>
          ), http://dx.doi.org/10.1007/ 978-3-
          <fpage>642</fpage>
          -33278-4
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30. Rolke, H.:
          <article-title>Modellierung von Agenten und Multiagentensystemen { Grundlagen und Anwendungen</article-title>
          ,
          <source>Agent Technology { Theory and Applications</source>
          , vol.
          <volume>2</volume>
          . Logos Verlag, Berlin (
          <year>2004</year>
          ), http://logos-verlag.de/cgi-bin/engbuchmid?isbn= 0768&amp;lng=eng&amp;id=
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          31.
          <string-name>
            <surname>Tell</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Moldt</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Ein Petrinetzsystem zur Modellierung selbstmodi zierender Petrinetze</article-title>
          . In: Schmidt,
          <string-name>
            <given-names>K.</given-names>
            ,
            <surname>Stahl</surname>
          </string-name>
          , C. (eds.)
          <source>Proceedings of the 12th Workshop on Algorithms and Tools for Petri Nets (AWPN 05)</source>
          . pp.
          <volume>36</volume>
          {
          <fpage>41</fpage>
          . Humboldt Universitat zu Berlin, Fachbereich Informatik (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          32.
          <string-name>
            <surname>Valk</surname>
          </string-name>
          , R.:
          <article-title>On the structure of cycloids introduced by Carl Adam Petri</article-title>
          . In: Khomenko,
          <string-name>
            <given-names>V.</given-names>
            ,
            <surname>Roux</surname>
          </string-name>
          ,
          <string-name>
            <surname>O.H</surname>
          </string-name>
          . (eds.) 39th
          <source>PETRI NETS</source>
          <year>2018</year>
          , Bratislava, Slovakia, June 24-29,
          <year>2018</year>
          , Proceedings. LNCS, vol.
          <volume>10877</volume>
          , pp.
          <volume>294</volume>
          {
          <fpage>314</fpage>
          . Springer (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          33.
          <string-name>
            <surname>Valk</surname>
          </string-name>
          , R.:
          <article-title>Formal properties of circular tra c queues and cycloids (</article-title>
          <year>2019</year>
          ), http: //uhh.de/inf-valk-traffic
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          34.
          <string-name>
            <surname>Valk</surname>
          </string-name>
          , R.:
          <article-title>Formal properties of petri's cycloid systems</article-title>
          .
          <source>Fundam. Inform</source>
          .
          <volume>169</volume>
          (
          <issue>1-2</issue>
          ),
          <volume>85</volume>
          {
          <fpage>121</fpage>
          (
          <year>2019</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref35">
        <mixed-citation>
          35.
          <string-name>
            <surname>Valk</surname>
          </string-name>
          , R.:
          <article-title>Circular tra c queues and Petris cycloids</article-title>
          . In: tienne Andr, Petrucci,
          <string-name>
            <surname>L</surname>
          </string-name>
          . (eds.) 41st International Conference,
          <source>PETRI NETS</source>
          <year>2020</year>
          , Paris, France, June 21-26,
          <year>2020</year>
          , Proceedings. LNCS, vol. accepted, pp.
          <source>xxx{xxx</source>
          . Springer (
          <year>2020</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref36">
        <mixed-citation>
          36.
          <string-name>
            <surname>Wagner</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Petri Net-based Combination and Integration of Agents and Workows</article-title>
          .
          <source>Ph.D. thesis</source>
          , University of Hamburg, Department of Informatics, Vogt-Kolln Str. 30,
          <string-name>
            <given-names>D</given-names>
            <surname>-</surname>
          </string-name>
          22527
          <string-name>
            <surname>Hamburg</surname>
          </string-name>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref37">
        <mixed-citation>
          37.
          <string-name>
            <surname>Wester-Ebbinghaus</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Von Multiagentensystemen zu Multiorganisationssystemen { Modellierung auf Basis von Petrinetzen</article-title>
          . Dissertation, University of Hamburg, Department of Informatics, Vogt-Kolln Str. 30,
          <string-name>
            <given-names>D</given-names>
            <surname>-</surname>
          </string-name>
          22527
          <string-name>
            <surname>Hamburg</surname>
          </string-name>
          (12
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref38">
        <mixed-citation>
          38.
          <string-name>
            <surname>Wester-Ebbinghaus</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Moldt</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Abstractions in actor and activity modeling</article-title>
          . In: Nuttgens, M.,
          <string-name>
            <surname>Thomas</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weber</surname>
            ,
            <given-names>B</given-names>
          </string-name>
          . (eds.)
          <source>EMISA. LNI</source>
          , vol.
          <volume>190</volume>
          , pp.
          <volume>195</volume>
          {
          <fpage>200</fpage>
          .
          <string-name>
            <surname>GI</surname>
          </string-name>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref39">
        <mixed-citation>
          39.
          <string-name>
            <surname>Wester-Ebbinghaus</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Moldt</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Reese</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Markwardt</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Towards organization{oriented software engineering</article-title>
          . In: Zullighoven, H. (ed.)
          <source>Software Engineering Konferenz 2007 in Hamburg: SE'07 Proceedings. LNI</source>
          , vol.
          <volume>105</volume>
          , pp.
          <volume>205</volume>
          {
          <fpage>217</fpage>
          .
          <string-name>
            <surname>GI</surname>
          </string-name>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>