<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Robustness: A natural Definition based on Nets-within-Nets</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Michael</forename><surname>Köhler-Bussmeier</surname></persName>
							<email>michael.koehler-bussmeier@haw-hamburg.de</email>
							<affiliation key="aff0">
								<orgName type="institution">Hamburg University of Applied Sciences</orgName>
								<address>
									<addrLine>Berliner Tor 7</addrLine>
									<postCode>D-20099</postCode>
									<settlement>Hamburg</settlement>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Lorenzo</forename><surname>Capra</surname></persName>
							<email>capra@di.unimi.it</email>
							<affiliation key="aff1">
								<orgName type="department">Dipartimento di Informatica</orgName>
								<orgName type="institution">Università degli Studi di Milano -Italy</orgName>
							</affiliation>
						</author>
						<title level="a" type="main">Robustness: A natural Definition based on Nets-within-Nets</title>
					</analytic>
					<monogr>
						<idno type="ISSN">1613-0073</idno>
					</monogr>
					<idno type="MD5">C03B099E6B530A44CF65C441CDE043B9</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-12-29T07:27+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<textClass>
				<keywords>
					<term>Robustness</term>
					<term>nets within nets</term>
					<term>nets as tokens</term>
					<term>multi-agent systems</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>In modern distributed systems robustness is a major requirement. In previous work on availability, the analysis required an additional model part that specifies the assumptions about where in the model there are areas of unreliability. So, there are two models: the system itself and the error model. The error model usually requires specific domain knowledge. Therefore, the approach is not applicable outof-the-box.</p><p>Instead, we like to derive an error model directly from the system model. We will show that for Elementary Object Systems we have a natural candidate to describe such a localised area of failure: the net-tokens. They are clearly localised and can be understood as computational entities (like containers in Kubernetes).</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>In distributed systems (like e.g. applications based on micro services or multi-agent system) robustness is a major research topic <ref type="bibr" target="#b0">[1]</ref>. In some of our previous work on availability <ref type="bibr" target="#b1">[2,</ref><ref type="bibr" target="#b2">3,</ref><ref type="bibr" target="#b3">4]</ref>, we observed that the analysis required an additional model part where we have to specify our assumptions about 'sources' of unreliability. So, there are two models: the system itself and the error model. The error model usually requires specific domain knowledge. Therefore, the approach is not applicable out-of-the-box.</p><p>As a rule of thumb, in micro service or container-based architectures we assume that the unit of failure is a service/container. More generally, we assume that each 'computational unit' is a source of failure. Here, we follow the let it crash approach -as popularised by the programming language Erlang -and assume that our computational units are either operational or completely crashed, i.e., we have a crash failure model opposed to a Byzantine error model <ref type="bibr" target="#b4">[5]</ref>.</p><p>Petri nets <ref type="bibr" target="#b5">[6]</ref> are a standard model for distributed systems. For traditional Petri net models, including coloured variants, it is hard to identify such computational units since any subnet of the net could represent one of them. Therefore, we need additional domain knowledge to identify these sub-nets as the whole structure does not provide clear hints to identify them. <ref type="foot" target="#foot_0">1</ref>Our main goal is to derive the computational units directly from the system model -without the use of domain knowledge. For Nets-within-Nets as proposed by Valk <ref type="bibr" target="#b6">[7]</ref> we have a natural candidate to describe such a localised service: the net-tokens. They are clearly localized and can be understood as computational entities. This idea is also applicable to other models having an explicit notion of computational context, like the Ambient Calculus <ref type="bibr" target="#b7">[8]</ref> or the 𝜋-calculus <ref type="bibr" target="#b8">[9]</ref>. But, for most formalisms the borderlines of computational contexts are not that obvious and usually have to be identified with the modeller's help.</p><p>After we have identified net-tokens as computational units it is straightforward to define robustness: Robustness means that the system still provides its service even when one or more units are malfunctioning. Here, we model a malfunction by a complete deactivation of a net-token, which provides no observable inner activity any more. To formally express the crash-failure of computational units we define a state space extension where we have so called crash or break-down events.</p><p>Our main application area are multi-agent systems (MAS). The first author uses nets-withinnets to specify adaptivity of agents in the context MAS-organisations <ref type="bibr" target="#b9">[10]</ref> where one considers large-scale and and agent-independent aspects of MAS, like roles, norms, positions, interaction protocols etc. His MAS-organisation framework Sonar <ref type="bibr" target="#b10">[11]</ref> is based on Petri nets, which facilitates the definition of the semantics as well as the analysis. For these Sonar-MAS the agents are modelled as net-tokens within the overall MAS organisation net. The natural unit to break-down is an agent (i.e. a net-token), so our concept of robustness fits well here.</p><p>We like to mention some limitations of our idea: Obviously, our let it crash assumption is not fulfilled in general; but it matches with our main research area, i.e., adaptive agents, where agent is any active computational entity, like services, containers, mobile devices, etc. Additionally, we admit that for a quantitative analysis, like in <ref type="bibr" target="#b11">[12]</ref>, a fault-model is still needed.</p><p>The paper has the following structure. Section 2 introduces base nets-within-nets (Eos). Section 3 defines the concept of robustness for Eos: The definition extends the reachability graph with additional events that model a break-down. In Section 4 we show that this semantic extension can be characterized syntactically by a slight modification of the Eos structure. The work closes with a conclusion and outlook.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.">Nets-within-Nets, EOS</head><p>Object nets <ref type="bibr" target="#b12">[13,</ref><ref type="bibr" target="#b13">14,</ref><ref type="bibr" target="#b14">15]</ref>, follow the nets-within-nets paradigm as proposed by Valk <ref type="bibr" target="#b6">[7]</ref>. Other approaches adapting the nets-within-nets approach are nested nets <ref type="bibr" target="#b15">[16]</ref>, mobile predicate/transition nets <ref type="bibr" target="#b16">[17]</ref>, Reference nets <ref type="bibr" target="#b17">[18]</ref>, PN 2 <ref type="bibr" target="#b18">[19]</ref>, hypernets <ref type="bibr" target="#b19">[20]</ref>, and adaptive workflow nets <ref type="bibr" target="#b20">[21]</ref>. There are relationships to Rewritable Petri nets <ref type="bibr" target="#b21">[22]</ref> and Reconfigurable Petri Nets <ref type="bibr" target="#b22">[23]</ref>. Object Nets can be seen as the Petri net perspective on contextual change, in contrast to the Ambient Calculus <ref type="bibr" target="#b7">[8]</ref> or the 𝜋-calculus <ref type="bibr" target="#b8">[9]</ref>, which form the process algebra perspective. With nets-within-nets we study Petri nets where tokens are Petri nets in turn, i.e., we have nested markings. For the class of elementary object net systems (Eos), we restrict the nesting to two levels <ref type="bibr" target="#b12">[13,</ref><ref type="bibr" target="#b14">15]</ref>. Events are also nested: We have three different kinds of events -as illustrated by the example given in Figure <ref type="figure" target="#fig_0">1:</ref> 1. System-autonomous: The system net transition ̂︀ 𝑡 fires autonomously, which moves the net-token from ̂︀ 𝑝 1 to ̂︀ 𝑝 2 without changing its marking.</p><p>2. Object autonomous: The object net fires transition 𝑡 1 by "moving" the black token from 𝑞 1 to 𝑞 2 . The object net remains at its location ̂︀ 𝑝 1 .</p><p>3. Synchronisation: Whenever we add matching synchronisation inscriptions at the system net transition ̂︀ 𝑡 and the object net transition 𝑡 1 , then both must fire synchronously: The object net is moved to ̂︀ 𝑝 2 whereas the black token moves from 𝑞 1 to 𝑞 2 inside. Whenever synchronisation is specified, autonomous actions are forbidden. An elementary object system (Eos) is composed of a system net, which is a p/t net ̂︀ 𝑁 = ( ̂︀ 𝑃 , ̂︀ 𝑇 , pre, post), and a set of object nets 𝒩 = {𝑁 1 , . . . , 𝑁 𝑛 }, which are p/t nets given as 𝑁 = (𝑃 𝑁 , 𝑇 𝑁 , pre 𝑁 , post 𝑁 ), where 𝑁 ∈ 𝒩 . We assume ̂︀ 𝑁 ̸ ∈ 𝒩 and the existence of the empty object net • ∈ 𝒩 , which models black tokens. The system net places are typed by the mapping 𝑑 : ̂︀ 𝑃 → 𝒩 meaning that a place ̂︀ 𝑝 ∈ ̂︀ 𝑃 of the system net may only contain net-tokens of the object net type 𝑑(̂︀ 𝑝) = 𝑁 . No place of the system net is mapped to the system net itself since ̂︀ 𝑁 ̸ ∈ 𝒩 . Since the tokens of an Eos are instances of object nets, a marking of an Eos is a nested multiset. A marking of an Eos OS is denoted 𝜇 = ∑︀ 𝑛 𝑘=1 (̂︀ 𝑝 𝑘 , 𝑀 𝑘 ), where ̂︀ 𝑝 𝑘 is a place of the system net and 𝑀 𝑘 is the marking of a net-token with type 𝑑(̂︀ 𝑝 𝑘 ). To emphasise the nesting, markings are also denoted as 𝜇 = ∑︀ 𝑛 𝑘=1 ̂︀ 𝑝 𝑘 [𝑀 𝑘 ]. For example, the marking show in Fig. <ref type="figure" target="#fig_0">1</ref> is</p><formula xml:id="formula_0">𝜇 = ̂︀ 𝑝 1 [𝑞 1 ]</formula><p>. The set of all markings which are syntactically consistent with the typing 𝑑 is denoted ℳ, where 𝑑 −1 (𝑁 ) ⊆ ̂︀ 𝑃 is the set of system net places of the type 𝑁 :</p><formula xml:id="formula_1">ℳ := MS (︁ ⋃︁ 𝑁 ∈𝒩 (︀ 𝑑 −1 (𝑁 ) × MS (𝑃 𝑁 ) )︀ )︁<label>(1)</label></formula><p>Analogously to markings, which are nested multisets 𝜇, the events of an Eos are also nested. An Eos allows three different kinds of events: system-autonomous, synchronous, and objectautonomous events. The set of events is denoted Θ (cf. the appendix for details).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Definition 1 (Elementary Object System, EOS</head><p>). An elementary object system (Eos) is a tuple OS = ( ̂︀ 𝑁 , 𝒩 , 𝑑, Θ, 𝜇 0 ), where:</p><p>1. ̂︀ 𝑁 is a p/t net, called the system net.</p><p>2. 𝒩 is a finite set of p/t nets, called object nets, with disjoint set of nodes.</p><p>3. 𝑑 : ̂︀ 𝑃 → 𝒩 is the typing of the system net places. 4. Θ is the set of events. 5. 𝜇 0 ∈ ℳ is the initial marking.</p><p>More details -e.g. the firing rule 𝜇 𝜃 − − → OS 𝜇 ′ -are given in the appendix. For a in-depth presentation of Eos cf. <ref type="bibr" target="#b14">[15]</ref>. Most problems for safe Eos (in which place markings [𝑀 𝑘 ] are sets) are PSpace-complete <ref type="bibr" target="#b23">[24,</ref><ref type="bibr" target="#b24">25,</ref><ref type="bibr" target="#b14">15]</ref>. More precisely: All problems that are expressible in LTL or CTL, which includes reachability and liveness, are PSpace-complete. This means that with respect to these problems safe Eos are no more complex than P/T nets.</p><p>For Hornets we extend object nets with algebraic concepts that allow to modify the structure of the net-tokens as a result of a firing transition. The complexity for safe, elementary Hornets is beyond PSpace: We have shown that "the reachability problem requires exponential space" for safe, elementary Hornets <ref type="bibr" target="#b25">[26]</ref>. In <ref type="bibr" target="#b26">[27]</ref> we give an algorithm that needs at most exponential space, which shows that lower and upper bound coincide.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.">Defining Robustness for EOS</head><p>We have a very simple idea: The most natural unit of computation in a Eos is easy to identifyit is a net-token. We assume that each computational unit may fail during the execution. This idea also applies to other models having an explicit notion of computational context, like the Ambient Calculus <ref type="bibr" target="#b7">[8]</ref> or the 𝜋-calculus <ref type="bibr" target="#b8">[9]</ref>. For other formalism the borderlines of computational contexts are not that obvious and usually have to be identified with the modeller's help.</p><p>Assume a given Eos OS = ( ̂︀ 𝑁 , 𝒩 , 𝑑, Θ, 𝜇 0 ). Its reachability graph RG(OS ) defines the behaviour in the absence of failures, i.e. the reachability graph is the state space for 𝑘 = 0 break-downs.</p><p>In the following we assume break-downs. We tag markings 𝜇 with the number 𝑘 of breakdowns and denote this as the pair ⟨𝜇, 𝑘⟩.</p><p>For technical convenience, we assume that transitions in object nets have a non-empty preset, so, the empty marking disables object-autonomous events and synchronisations. As a consequence, a break-down is like an enforced deadlock in the net-token. <ref type="foot" target="#foot_1">2</ref>We have additional break-down edges that connect the level 𝑘 with 𝑘 + 1; a break down edge models the fact that we have one more break-down in the system. A break-down picks some net-token ̂︀ 𝑝[𝑀 ] and disables it by setting the net-token's marking to 0:</p><formula xml:id="formula_2">𝐵𝐷 𝑘+1 := {(⟨𝜇, 𝑘⟩, ⟨𝜇 ′ , 𝑘 + 1⟩) | ∃𝜇 ′′ : 𝜇 = ̂︀ 𝑝[𝑀 ] + 𝜇 ′′ ∧ 𝑀 ̸ = 0 ∧ 𝜇 ′ = ̂︀ 𝑝[0] + 𝜇 ′′ }</formula><p>For technical convenience we define 𝐵𝐷 0 := ∅. We define 𝑉 𝑘 as the nodes of level 𝑘. For 𝑘 = 0 we have the reachable markings. For 𝑘 &gt; 0 we have all markings reachable from a marking after the last break-down:</p><formula xml:id="formula_3">𝑉 0 = {⟨𝜇, 0⟩ | 𝜇 0 * − → 𝜇}<label>(2)</label></formula><p>70-87</p><formula xml:id="formula_4">𝑉 𝑘+1 = {⟨𝜇 ′′ , 𝑘 + 1⟩ | (⟨𝜇, 𝑘⟩, ⟨𝜇 ′ , 𝑘 + 1⟩) ∈ 𝐵𝐷 𝑘+1 ∧ 𝜇 ′ * − → 𝜇 ′′ } (3)</formula><p>We define the edges of level 𝑘 as:</p><formula xml:id="formula_5">𝐸 𝑘 := {(⟨𝜇, 𝑘⟩, ⟨𝜇 ′ , 𝑘⟩) | 𝜇 𝜃 − → 𝜇 ′ }<label>(4)</label></formula><p>Each sub-graph (𝑉 𝑖 , 𝐸 𝑖 ) contains all the node of the same level 𝑖 and these sub-graphs are disjoint, since there are no edges from a higher level to a lower level, i.e. the level is increased monotonously.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Definition 2. The graph RG</head><formula xml:id="formula_6">𝑘 (OS ) = (︁ ⋃︀ 𝑘 𝑖=0 𝑉 𝑖 , ⋃︀ 𝑘 𝑖=0 (𝐸 𝑖 ∪ 𝐵𝐷 𝑖 )</formula><p>)︁ is called the failure extension of OS up to level 𝑘 or the 𝑘-failure extension.</p><p>The graph RG * (OS ) := (𝑉 * , 𝐸 * ) where</p><formula xml:id="formula_7">𝑉 * := ⋃︀ 𝑖≥0 𝑉 𝑖 and 𝐸 * = ⋃︀ 𝑖≥0 (𝐸 𝑖 ∪ 𝐵𝐷 𝑖 ) is called the *-failure extension.</formula><p>Note, that RG(OS ) is isomorphic to RG 0 (OS ) as we only have to remove the tag 0 from the nodes.</p><p>Due to the explicit notion of levels in the marking ⟨𝜇, 𝑘⟩ the structure of RG 𝑘 (OS ) is a chain of sub-graphs (𝑉 𝑖 , 𝐸 𝑖 ); these sub-graphs are linked by the breakdown edges 𝐵𝐷 𝑖 . Schematically:</p><formula xml:id="formula_8">(𝑉 0 , 𝐸 0 ) 𝐵𝐷 1 − −− → (𝑉 1 , 𝐸 1 ) 𝐵𝐷 2 − −− → • • • 𝐵𝐷 𝑘 − −− → (𝑉 𝑘 , 𝐸 𝑘 ) Proposition 1. Whenever a firing sequence that is enabled within the sub-graph (𝑉 𝑖+1 , 𝐸 𝑖+1 ) it is enabled within (𝑉 𝑖 , 𝐸 𝑖 ), too.</formula><p>Proof The central observation is that we must have a break-down connection between the two sub-graph (𝑉 𝑖 , 𝐸 𝑖 ) and (𝑉 𝑖+1 , 𝐸 𝑖+1 ). In this case, we modify the marking 𝜇 = ̂︀ 𝑝[𝑀 𝑖 ] + 𝜇 ′′ into 𝜇 ′ = ̂︀ 𝑝[0] + 𝜇 ′′ , i.e. by a break-down of the net-token ̂︀ 𝑝[𝑀 ]. We use the following partial-order 𝛼 ⪯ 𝛽 on nested multi-sets:</p><formula xml:id="formula_9">∑︀ 𝑚 𝑖=1 ̂︀ 𝑎 𝑖 [𝐴 𝑖 ] ⪯ ∑︀ 𝑛 𝑗=1 ̂︀ 𝑏 𝑗 [𝐵 𝑗 ] ⇐⇒ ∃ injection 𝑓 : {1, ..., 𝑚} → {1, ..., 𝑛} : ∀1 ≤ 𝑖 ≤ 𝑚 : ̂︀ 𝑎 𝑖 = ̂︀ 𝑏 𝑓 (𝑖) ∧ 𝐴 𝑖 ≤ 𝐵 𝑓 (𝑖)</formula><p>As we have shown in <ref type="bibr" target="#b14">[15,</ref><ref type="bibr">Lemma 5</ref>.1] that he firing rule is monotonous w.r.t. the order ⪯. Obviously, we have 𝜇 ∈ 𝑉 𝑘 , 𝜇 ′ ∈ 𝑉 𝑘+1 and 𝜇 ′ ⪯ 𝜇 for the markings given above. Whenever 𝜇 ′ enables a sequence in (𝑉 𝑖+1 , 𝐸 𝑖+1 ) then 𝜇 enables this sequence in (𝑉 𝑖+1 , 𝐸 𝑖+1 ), too. Since we have obtained (𝑉 𝑖+1 , 𝐸 𝑖+1 ) from (𝑉 𝑖 , 𝐸 𝑖 ) by setting some net-token's marking to 0, the sequence is enabled in (𝑉 𝑖 , 𝐸 𝑖 ), too.</p><p>qed.</p><p>We can also describe the behaviour in the limit, i.e. for 𝑘 → ∞: For each increase of the level we have one more break-down. So, if we consider the sub-graph (𝐸 𝑘 , 𝑉 𝑘 ) for very large 𝑘, we usually have that all net-tokens are down. In this case the net-tokens do not enable object-autonomous events any more and also no synchronous events are possible; only systemautonomous events are possible. Thus, in the limit the Eos behaves like the system net ̂︀ 𝑁 when considered as a p/t net. Technically we obtain this behaviour by the projection Π 1 , which maps a marking 𝜇 to the multiset of system net places.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.1.">The semantic definition of robustness</head><p>The semantic definition of robustness uses our definition of the reachability graph extended with break-downs. We introduce a hierarchy for satisfiability by restricting the numbers of break-down events: The usual satisfiability of a property 𝜑 considers the normal reachability graph RG 0 (OS ); whenever we extend the reachability graph towards RG 1 (OS ) we check whether the property can withstand a break-down of at most one net-token. We can generalise this idea to an arbitrary number 𝑘 of break-down events. In general, a property 𝜑 that is satisfied 𝑘-robustly will not be satisfied 𝑘 + 1-robustly. Especially, a property 𝜑 that is satisfied by an Eos (0-robustly) is not satisfied 1-robustly, i.e., in general even one break-down destroys the property 𝜑. Liveness of the Eos is a typical example. In other words: robustness does not come for free. Usually the Eos model has to take care to satisfy a property 𝑘-robustly, e.g., by having model parts that will restart crashed net-tokens in a well-defined state.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Definition 3 (Robustness</head><p>An example for a property 𝜑 that is satisfied even *-robustly is safeness <ref type="bibr" target="#b23">[24]</ref>, i.e., the property that there is at most one net-token on each place in the system net. This is due to the fact that a break-down modifies the marking 𝜇 in a way that does not change the projection Π 1 (𝜇) to the system net and, consequently, does not enable any 'unseen' transition of the system net.</p><p>In our context of organisational multi-agent systems the notion of robustness allows us to specify two central classes of properties:</p><p>• Flexibility/Adaptivity: The MAS has the possibility to react to changes in the environment (here: break-downs of other agents) to re-establish a desired property 𝜑 is expressed as OS , 𝜇 0 |= * AGEF𝜑 -the usual liveness property in CTL <ref type="bibr" target="#b27">[28]</ref>.</p><p>• Resilience: The system always stays in a 'safe' region of the state space -even in the presence of break-downs of other agents -is expressed as OS , 𝜇 0 |= * AG𝜑 -a classical invariant property (aka as a safety property).</p><p>A structural property for the system net is derived from the net topology only. The classical example are net-invariants. A structural invariant holds for any initial marking and not only a given one (cf. <ref type="bibr" target="#b28">[29]</ref> for the discussion between invariants and structural invariants). Fact 2. A structural property is independent from the net-tokens' markings and therefore *robust.</p><p>Another interesting question is whether we can tolerate break-downs using redundancy, i.e., multiple copies of the net-tokens. This question is closely related to the Petri net concept of monotonicity. A property is monotonous if it holds also for any greater initial marking. It is well known that reachability is monotonous, while deadlock-freedom or liveness are -in general -not (However, for the structural sub-class of free-choice nets liveness is monotonous).</p><p>For monotonous properties redundancy is useful, i.e. we can add additional net-tokens to survive knock-outs of net-tokens. Here we simply multiply the initial marking and consider 𝜇 0 + 𝑘 • 𝜇 0 . Proposition 2. Let 𝜑 be a monotonous property. When 𝜑 holds in the initial marking 𝜇 0 , then 𝜑 is 𝑘-robust in the initial marking 𝜇 0 + 𝑘 • 𝜇 0 :</p><formula xml:id="formula_10">𝜇 0 |= 𝜑 =⇒ (𝜇 0 + 𝑘 • 𝜇 0 ) |= 𝑘 𝜑 Proof (Sketch)</formula><p>We can execute at most 𝑘 break-downs. So any marking 𝜇 reachable from (𝜇 0 + 𝑘 • 𝜇 0 ) is still greater than some marking reachable from 𝜇 0 only. Since the property holds in 𝜇 0 and is monotonous it holds in RG 𝑘 (OS ).</p><p>qed.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.">The Syntactical Characterisation of Robustness</head><p>Our characterisation of robustness has the drawback that it is based on an extension of the usual Petri net semantics as we extend the reachability graph. In the following, we like to show that we can express this extension on a purely syntactical level, i.e., we modify the EosOS into another Eos OS * with the property that the 'normal' reachability graph of OS * is isomorphic to the break-down extension RG * (OS ). In this case, we can reduce the specialised analysis of OS to an 'normal' analysis of OS * using existing standard tools. The main idea is quite simple (cf. Fig. <ref type="figure" target="#fig_1">2</ref>): We apply the following construction to the Eos OS .</p><p>• We add a run-place to each object net and this run-place is attached as a side condition to each transition 𝑡. • The run-place is initially marked with one token.</p><p>• We add a new transition 𝑡 𝑘𝑖𝑙𝑙 to each object net that synchronises with the environment (via the channel ⟨off⟩) and removes the token of the run-place. • In the system net we add for each place ̂︀ 𝑝 a new side transition ̂︀ 𝑡 ̂︀ 𝑝,𝑘𝑖𝑙𝑙 which synchronises with 𝑡 𝑘𝑖𝑙𝑙 .</p><p>The effect of the synchronous kill-event is that the net-token is dead afterwards (but usually contains useless tokens on the places other than the run-place). We like to establish that an empty run-place always indicates that the net-token has broken down. In this case we could drop the explicit tag 𝑘 from the state because it is implicitly given by the number of net-tokens with an empty run-place. However, this is not true, since the Eos firing rule 'collects' the net-tokens markings from all incoming arcs and 'distributes' this sum over all net-tokens generated on the outgoing arcs. For a system net transition that has, e.g., one incoming arc and two outgoing arcs, one of the generated net-tokens must have an empty run-place. However, the net-token should not be regarded as a break-down. We can 'repair' this problem in the following way: We replace each system net transition ̂︀ 𝑡 by a simple subnet (cf. Fig. <ref type="figure" target="#fig_2">3</ref>) that removes the tokens from the 𝑚 incoming places ̂︀ 𝑝 𝑖 (using the synchronisation channel ⟨off⟩ 𝑚 times) and individually re-creates one token on each run-place in each net-token on the 𝑛 outgoing places ̂︀ 𝑝 ′ 𝑖 (using the synchronisation channel ⟨on⟩ at the internal transitions ̂︀ 𝑡 𝑖 ). We replace each system net transition with such a subnet. <ref type="foot" target="#foot_2">3</ref> The resulting Eos is denoted as OS * .</p><p>Due to this construction, an empty run-place in a net-token (except for those net-tokens in the intermediate place ̂︀ 𝑝 ′′ 𝑖 of the subnet) is equivalent to a break-down. When we consider the 𝑛 intermediate transitions ̂︀ 𝑡 𝑖 as 'silent' events, then the constructed net OS * is bisimilar to the original state space OS . Proposition 3. The extended Eos OS * is the syntactical representation of the *-failure extension of OS , i.e. both state spaces are bisimilar: RG * (OS ) ≈ RG(OS * ) With a small modification of the extended Eos OS * we can also describe the 𝑘-failure extension of OS :</p><p>• We add a global pool-place to the system net that contains exactly 𝑘 black tokens.</p><p>• Each kill-transition removes one token from the global pool-place.</p><p>We denote this modification of the Eos as OS 𝑘 .</p><p>Note that after 𝑘 kill-events the pool place is empty and further kill-events are disabled. The behaviour of OS 𝑘 is similar to the extension OS * except that we restrict the number of break-downs to 𝑘. Proposition 4. The extended Eos OS 𝑘 is the syntactical representation of the 𝑘-failure extension of OS , i.e. both state spaces are bisimilar: RG 𝑘 (OS ) ≈ RG(OS 𝑘 )</p><p>In the absence of break-downs, i.e., for 𝑘 = 0, the normal semantics coincides with the extended semantics and the given Eos coincides with its extension: Fact 3. For 𝑘 = 0 we obtain that all systems coincide: RG(OS ) ≃ RG 0 (OS ) ≈ RG(OS 0 ).</p><p>With these constructions we have reduced checking properties w.r.t. robustness to a usual state space based query.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5.">Conclusion</head><p>In this paper, we have shown that Nets-within-Nets have an intuitive representation of the concept of a 'computational unit': the net-tokens. Based on this, we could define a break-down of net-tokens and define the satisfiability of properties in the context of break-downs.</p><p>Our concept of robustness relies on an extension of the state space. We provided a reduction of this semantical definition (which extends the Petri net semantics) to a syntactical one (where we use the usual semantics): We transformed the Eos OS into the Eos OS * such that the 'normal' reachability graph of OS * is bisimilar to the break-down extension RG * (OS ). Therefore, we could still use existing tools to investigate robustness.</p><p>We plan to extend the simple -though popularlet it crash-based model, e.g., by allowing the computational units (net-tokens) to gracefully degrade.</p><p>In future work, we will apply this notion of robustness to our multi-agent system Sonar <ref type="bibr" target="#b10">[11]</ref>, especially with a focus on the analysis of adaptivity as we have started with our previous work on the analysis of adaption processes <ref type="bibr" target="#b29">[30]</ref> and adapting agent architectures <ref type="bibr" target="#b30">[31]</ref>. In <ref type="bibr" target="#b29">[30]</ref> we used the set of different types of net-tokens that occur in the current marking to define the system's gene-pool. Our current research hypothesis is that a more diverse gene-pool in adapting agent architectures <ref type="bibr" target="#b30">[31]</ref> leads to more robust systems in general.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Petri Nets</head><p>The definition of Petri nets relies on the notion of multisets. A multiset m on the set 𝐷 is a mapping m : 𝐷 → N. Multisets are generalisations of sets in the sense that every subset of 𝐷 corresponds to a multiset m with m(𝑑) ≤ 1 for all 𝑑 ∈ 𝐷. The empty multiset 0 is defined as 0(𝑑) = 0 for all 𝑑 ∈ 𝐷. Multiset addition for m 1 , m 2 : 𝐷 → N is defined component-wise:</p><formula xml:id="formula_11">(m 1 + m 2 )(𝑑) := m 1 (𝑑) + m 2 (𝑑). Multiset-difference m 1 − m 2 is defined by (m 1 − m 2 )(𝑑) := max(m 1 (𝑑) − m 2 (</formula><p>𝑑), 0). We use common notations for the cardinality of a multiset |m| := ∑︀ 𝑑∈𝐷 m(𝑑) and multiset ordering m 1 ≤ m 2 , where the partial order ≤ is defined by</p><formula xml:id="formula_12">m 1 ≤ m 2 ⇐⇒ ∀𝑑 ∈ 𝐷 : m 1 (𝑑) ≤ m 2 (𝑑). A multiset m is finite if |m| &lt; ∞.</formula><p>The set of all finite multisets over the set 𝐷 is denoted MS (𝐷). The set MS (𝐷) naturally forms a monoid with multiset addition + and the empty multiset 0. Multisets can be identified with the commutative monoid structure (MS (𝐷), +, 0). Multisets are the free commutative monoid over 𝐷 since every multiset has the unique representation in the form m = ∑︀ 𝑑∈𝐷 m(𝑑) • 𝑑, where m(𝑑) denotes the multiplicity of 𝑑. Multisets can also be represented as a formal sum in the form m = ∑︀ 𝑛 𝑖=1 𝑥 𝑖 , where 𝑥 𝑖 ∈ 𝐷. Any mapping 𝑓 : 𝐷 → 𝐷 ′ is extended to a multiset homomorphism 𝑓 ♯ : MS (𝐷) → MS (𝐷 ′ ):</p><formula xml:id="formula_13">𝑓 ♯ ( ∑︀ 𝑛 𝑖=1 𝑥 𝑖 ) = ∑︀ 𝑛 𝑖=1 𝑓 (𝑥 𝑖 )</formula><p>. This includes the special case 𝑓 ♯ (0) = 0. We simply write 𝑓 to denote the mapping 𝑓 ♯ . The notation is in accordance with the set-theoretic notation </p><formula xml:id="formula_14">𝑓 (𝐴) = {𝑓 (𝑎) | 𝑎 ∈ 𝐴}.</formula></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. Elementary Object Systems</head><p>An elementary object system (Eos) is composed of a system net, which is a p/t net ̂︀ 𝑁 = ( ̂︀ 𝑃 , ̂︀ 𝑇 , pre, post) and a set of object nets 𝒩 = {𝑁 1 , . . . , 𝑁 𝑛 }, which are p/t nets given as 𝑁 = (𝑃 𝑁 , 𝑇 𝑁 , pre 𝑁 , post 𝑁 ), where 𝑁 ∈ 𝒩 . In extension we assume that all sets of nodes (places and transitions) are pairwise disjoint. Moreover we assume ̂︀ 𝑁 ̸ ∈ 𝒩 and the existence of the object net • ∈ 𝒩 , which has no places and no transitions and is used to model anonymous, so called black tokens.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Typing</head><p>The system net places are typed by the mapping 𝑑 : ̂︀ 𝑃 → 𝒩 with the meaning, that a place ̂︀ 𝑝 ∈ ̂︀ 𝑃 of the system net with 𝑑(̂︀ 𝑝) = 𝑁 may contain only net-tokens of the object net type 𝑁 . <ref type="foot" target="#foot_3">4</ref> No place of the system net is mapped to the system net itself since ̂︀ 𝑁 ̸ ∈ 𝒩 . A typing is called conservative iff for each place ̂︀ 𝑝 in the preset of a system net transition ̂︀ 𝑡 such that 𝑑(̂︀ 𝑝) ̸ = • there is place in the postset being of the same type:</p><formula xml:id="formula_15">(𝑑( • ̂︀ 𝑡)∪{•}) ⊆ (𝑑( ̂︀ 𝑡 • )∪{•}). An Eos is conservative iff its typing 𝑑 is.</formula><p>An Eos is p/t-like iff it has only places for black tokens:</p><formula xml:id="formula_16">𝑑( ̂︀ 𝑃 ) = {•}.</formula><p>Nested Markings Since the tokens of an Eos are instances of object nets, a marking of an Eos is a nested multiset. A marking of an Eos OS is denoted 𝜇 = ∑︀ |𝜇| 𝑘=1 (̂︀ 𝑝 𝑘 , 𝑀 𝑘 ), where ̂︀ 𝑝 𝑘 is a place of the system net and 𝑀 𝑘 is the marking of a net-token with type 𝑑(̂︀ 𝑝 𝑘 ). To emphasise the nesting, markings are also denoted as</p><formula xml:id="formula_17">𝜇 = ∑︀ |𝜇| 𝑘=1 ̂︀ 𝑝 𝑘 [𝑀 𝑘 ]. Markings of the form ̂︀ 𝑝[0] with 𝑑(̂︀ 𝑝) = • are abbreviated as ̂︀ 𝑝[].</formula><p>The set of all markings which are syntactically consistent with the typing 𝑑 is denoted ℳ, where 𝑑 −1 (𝑁 ) ⊆ ̂︀ 𝑃 is the set of system net places of the type 𝑁 :</p><formula xml:id="formula_18">ℳ := MS (︁ ⋃︁ 𝑁 ∈𝒩 (︀ 𝑑 −1 (𝑁 ) × MS (𝑃 𝑁 ) )︀ )︁<label>(5)</label></formula><p>We define the partial order ⊑ on nested multisets by setting 𝜇 1 ⊑ 𝜇 2 iff ∃𝜇 :</p><formula xml:id="formula_19">𝜇 2 = 𝜇 1 + 𝜇.</formula><p>A more liberal variant is the order ⪯ defined by:</p><formula xml:id="formula_20">𝛼 ⪯ 𝛽 ⇐⇒ 𝛼 = ∑︀ 𝑚 𝑖=1 ̂︀ 𝑎 𝑖 [𝐴 𝑖 ] ∧ 𝛽 = ∑︀ 𝑛 𝑗=1 ̂︀ 𝑏 𝑗 [𝐵 𝑗 ] ∧ ∃ injection 𝑓 : {1, ..., 𝑚} → {1, ..., 𝑛} : ∀1 ≤ 𝑖 ≤ 𝑚 : ̂︀ 𝑎 𝑖 = ̂︀ 𝑏 𝑓 (𝑖) ∧ 𝐴 𝑖 ≤ 𝐵 𝑓 (𝑖)<label>(6)</label></formula><p>For 𝛼 ⪯ 𝛽 the injection 𝑓 generates a sub-marking of 𝛽 which is denoted</p><formula xml:id="formula_21">𝑓 (𝛼) = ∑︀ 𝑚 𝑖=1 ̂︀ 𝑎 𝑓 (𝑖) [𝐴 𝑓 (𝑖) ]. Note that 𝛼 ⊑ 𝛽 is a special case of 𝛼 ⪯ 𝛽, where 𝐴 𝑖 ≤ 𝐵 𝑓 (𝑖) is restricted to 𝐴 𝑖 = 𝐵 𝑓 (𝑖) .</formula><p>Events Analogously to markings, which are nested multisets 𝜇, the events of an Eos are also nested. An Eos allows three different kinds of events -as illustrated by the following Eos:</p><p>1. System-autonomous: The system net transition 𝑡 fires autonomously which moves the net-token from 𝑝 1 to 𝑝 2 without changing its marking. 2. Object-autonomous: The object net fires transition 𝑡 1 , which "moves" the black token from 𝑞 1 to 𝑞 2 . The object net itself remains at its location 𝑝 1 . 3. Synchronisation: The system net transition 𝑡 fires synchronously with 𝑡 1 in the object net. Whenever synchronisation is demanded, autonomous actions are forbidden.</p><p>The set of events is denoted Θ. Events are formalised as a pair ̂︀ 𝜏 [𝜗], where ̂︀ 𝜏 is either the transition that fires in the system net or a special "idle" transition id ̂︀ 𝑝 (cf. below); and 𝜗 is a function such that 𝜗(𝑁 ) is the multiset of transitions, which have to fire synchronously with ̂︀ 𝜏 , (i.e. for each object net 𝑁 ∈ 𝒩 we have 𝜗(𝑁 ) ∈ MS (𝑇 𝑁 )). 5  In general ̂︀ 𝜏 [𝜗] describes a synchronisation, but autonomous events are special subcases: Obviously, a system-autonomous events is the special case, where 𝜗 = 0 with 0(𝑁 ) = 0 for all object nets 𝑁 . To describe an object-autonomous event we assume the set of idle transitions {id 1. ̂︀ 𝑁 is a p/t net, called the system net.</p><p>2. 𝒩 is a finite set of disjoint p/t nets, called object nets.</p><p>3. 𝑑 : ̂︀ 𝑃 → 𝒩 is the typing of the system net places.</p><p>4. Θ is the set of events. 5. 𝜇 0 ∈ ℳ is the initial marking.</p><p>Example Figure <ref type="figure" target="#fig_3">4</ref> shows an Eos with the system net ̂︀ 𝑁 and the object nets 𝒩 = {𝑁 1 , 𝑁 2 }. The system has four net-tokens: two on place ̂︀ 𝑝 1 and one on ̂︀ 𝑝 2 and ̂︀ 𝑝 3 each. The net-tokens on ︀ 𝑝 1 and ̂︀ 𝑝 2 share the same net structure, but have independent markings. 5 In the graphical representation the events are generated by transition inscriptions. For each object net 𝑁 ∈ 𝒩 a system net transition ̂︀ 𝑡 is labelled with a multiset of channels ̂︀ 𝑙( ̂︀ 𝑡)(𝑁 ) = ch1 + • • • + ch𝑛, depicted as ⟨𝑁 :ch1, 𝑁 :ch2, . . .⟩. Similarily, an object net transition 𝑡 may be labelled with a channel 𝑙𝑁 (𝑡) = ch -depicted as ⟨:ch⟩ whenver there is such a label. We obtain an event ̂︀   </p><formula xml:id="formula_22">= (𝑃 1 , 𝑇 1 , pre 1 , post 1 ) with 𝑃 1 = {𝑎 1 , 𝑏 1 } and 𝑇 1 = {𝑡 1 }. Another object net is 𝑁 2 = (𝑃 2 , 𝑇 2 , pre 2 , post 2 ) with 𝑃 2 = {𝑎 2 , 𝑏 2 , 𝑐 2 } and 𝑇 2 = {𝑡 2 }. The typing is 𝑑(̂︀ 𝑝 1 ) = 𝑑(̂︀ 𝑝 2 ) = 𝑑(̂︀ 𝑝 4 ) = 𝑁 1 and 𝑑(̂︀ 𝑝 3 ) = 𝑑(̂︀ 𝑝 5 ) = 𝑑(̂︀ 𝑝 6 ) = 𝑁 2 .</formula><p>The labelling generates one event:</p><formula xml:id="formula_23">Θ = { ̂︀ 𝑡[𝑁 1 ↦ → 𝑡 1 , 𝑁 2 ↦ → 𝑡 2 ]}.</formula><p>The initial marking has two net-tokens on ̂︀ 𝑝 1 , one on ̂︀ 𝑝 2 , and one on ̂︀ 𝑝 3 :</p><formula xml:id="formula_24">𝜇 = ̂︀ 𝑝 1 [𝑎 1 + 𝑏 1 ] + ̂︀ 𝑝 1 [0] + ̂︀ 𝑝 2 [𝑎 1 ] + ̂︀ 𝑝 3 [𝑎 2 + 𝑏 2 ]</formula><p>Note that for Figure <ref type="figure" target="#fig_3">4</ref> the structure is the same for the three net-tokens on ̂︀ 𝑝 1 and ̂︀ 𝑝 2 but the net-token markings are different.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B.1. Firing Rule</head><p>The projection Π 1 on the first component abstracts from the substructure of all net-tokens for a marking of an Eos:</p><formula xml:id="formula_25">Π 1 (︁ ∑︁ 𝑛 𝑘=1 ̂︀ 𝑝 𝑘 [𝑀 𝑘 ] )︁ := ∑︁ 𝑛 𝑘=1 ̂︀ 𝑝 𝑘<label>(7)</label></formula><p>The projection Π 2 𝑁 on the second component is the sum of all net-token markings 𝑀 𝑘 of the type 𝑁 ∈ 𝒩 , ignoring their local distribution within the system net:</p><formula xml:id="formula_26">Π 2 𝑁 (︁ ∑︁ 𝑛 𝑘=1 ̂︀ 𝑝 𝑘 [𝑀 𝑘 ] )︁ := ∑︁ 𝑛 𝑘=1 1 𝑁 (̂︀ 𝑝 𝑘 ) • 𝑀 𝑘<label>(8)</label></formula><p>where the indicator function</p><formula xml:id="formula_27">1 𝑁 : ̂︀ 𝑃 → {0, 1} is 1 𝑁 (̂︀ 𝑝) = 1 iff 𝑑(̂︀ 𝑝) = 𝑁 . Note that Π 2 𝑁<label>(</label></formula><p>𝜇) results in a marking of the object net 𝑁 .</p><p>A system event ̂︀ 𝜏 [𝜗] removes net-tokens together with their individual internal markings. Firing the event replaces a nested multiset 𝜆 ∈ ℳ that is part of the current marking 𝜇, i.e. 𝜆 ⊑ 𝜇, by the nested multiset 𝜌. Therefore the successor marking is 𝜇 ′ := (𝜇 − 𝜆) + 𝜌. The enabling condition is expressed by the enabling predicate 𝜑 OS (or just 𝜑 whenever OS is clear from the context):</p><formula xml:id="formula_28">𝜑(̂︀ 𝜏 [𝜗], 𝜆, 𝜌) ⇐⇒ Π 1 (𝜆) = pre(̂︀ 𝜏 ) ∧ Π 1 (𝜌) = post(̂︀ 𝜏 ) ∧ ∀𝑁 ∈ 𝒩 : Π 2 𝑁 (𝜆) ≥ pre 𝑁 (𝜗(𝑁 )) ∧ ∀𝑁 ∈ 𝒩 : Π 2 𝑁 (𝜌) = Π 2 𝑁 (𝜆) − pre 𝑁 (𝜗(𝑁 )) + post 𝑁 (𝜗(𝑁 ))<label>(9)</label></formula><p>With ̂︁ 𝑀 = Π 1 (𝜆) and ̂︁ 𝑀 ′ = Π 1 (𝜌) as well as 𝑀 𝑁 = Π 2 𝑁 (𝜆) and 𝑀 ′ 𝑁 = Π 2 𝑁 (𝜌) for all 𝑁 ∈ 𝒩 the predicate 𝜑 has the following meaning:</p><p>1. The first conjunct expresses that the system net multiset ̂︁ 𝑀 corresponds to the precondition of the system net transition ̂︀ 𝜏 , i.e. ̂︁ 𝑀 = pre(̂︀ 𝜏 ).</p><p>2. In turn, a multiset ̂︁ 𝑀 ′ is produced, that corresponds to the post-set of ̂︀ 𝜏 .</p><p>3. A multi-set 𝜗(𝑁 ) of object net transitions is enabled if the sum 𝑀 𝑁 of the net-token markings (of type 𝑁 ) enable it, i.e. 𝑀 𝑁 ≥ pre 𝑁 (𝜗(𝑁 )).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.">The firing of ̂︀</head><p>𝜏 [𝜗] must also obey the object marking distribution condition: 𝑀 ′ 𝑁 = 𝑀 𝑁 − pre 𝑁 (𝜗(𝑁 )) + post 𝑁 (𝜗(𝑁 )), where post 𝑁 (𝜗(𝑁 )) − pre 𝑁 (𝜗(𝑁 )) is the effect of the object net's transitions on the net-tokens.</p><p>Note that conditions 1. and 2. assure that only net-tokens relevant for the firing are included in 𝜆 and 𝜌. Conditions 3. and 4. allow for additional tokens in the net-tokens.</p><p>For system-autonomous events ̂︀ 𝑡[0] the enabling predicate 𝜑 can be simplified further. We have pre 𝑁 (0(𝑁 )) = post 𝑁 (0(𝑁 )) = 0. This ensures Π 2 𝑁 (𝜆) = Π 2 𝑁 (𝜌), i.e. the sum of markings in the copies of a net-token is preserved w.r.t. each type 𝑁 . This condition ensures the existence of linear invariance properties Analogously, for an object-autonomous event we have an idle-transition ̂︀ 𝜏 = id ̂︀ 𝑝 for the system net and the first and the second conjunct is: Π 1 (𝜆) = pre(id Note that the firing rule makes no a-priori assumptions about how to distribute the object net markings onto the generated net-tokens. Therefore we need the mode (𝜆, 𝜌) to formulate the firing of ̂︀ 𝜏 [𝜗] in a functional way.</p><p>Example Consider the Eos of Figure <ref type="figure" target="#fig_3">4</ref>   The net-token markings are added by the projections Π 2 𝑁 resulting in the markings Π 2 𝑁 (𝜆). The sub-synchronisation generates Π 2 𝑁 (𝜌). (The results are shown above and below the transition ̂︀ 𝑡.) After the synchronisation we obtain the successor marking 𝜇 ′ with net-tokens on ̂︀ 𝑝 4 , ︀ 𝑝 5 , and ̂︀ 𝑝 6 as shown in Figure <ref type="figure" target="#fig_8">5</ref>:</p><formula xml:id="formula_29">𝜇 ′ = (𝜇 − 𝜆) + 𝜌 = ̂︀ 𝑝 1 [0] + 𝜌 = ̂︀ 𝑝 1 [0] + ̂︀ 𝑝 4 [𝑎 1 + 𝑏 1 + 𝑏 1 ] + ̂︀ 𝑝 5 [0] + ̂︀ 𝑝 6 [𝑐 2 ]</formula><p>Note, that we have only presented one mode (𝜆, 𝜌) and that other modes are possible, too.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B.2. Properties of the Firing Rule</head><p>In the following we relate those nested multisets, that coincide in their projections. The projection of a marking 𝜇 is defined as follows:</p><p>Π(𝜇) := (Π 1 (𝜇), (Π 2 𝑁 (𝜇)) 𝑁 ∈𝒩 )</p><p>Obviously, there are several markings 𝜇 with the same projection, i.e. 𝜇 is not uniquely defined by Π(𝜇). The nested multisets, that coincide in their projections give rise to the equivalence ∼ = ⊆ ℳ 2 , called projection equivalence defined by:</p><formula xml:id="formula_31">𝛼 ∼ = 𝛽 : ⇐⇒ Π(𝛼) = Π(𝛽) ⇐⇒ Π 1 (𝛼) = Π 1 (𝛽) ∧ ∀𝑁 ∈ 𝒩 : Π 2 𝑁 (𝛼) = Π 2 𝑁 (𝛽)<label>(11)</label></formula><p>The relation 𝛼 ∼ = 𝛽 abstracts from the location, i.e. the concrete net-token, in which a object net's place 𝑝 is marked as long as it is present in 𝛼 and 𝛽. For example, for 𝑑(̂︀ 𝑝) = 𝑑(̂︀ 𝑝 ′ ) we have</p><formula xml:id="formula_32">̂︀ 𝑝[𝑝 1 + 𝑝 2 ] + ̂︀ 𝑝 ′ [𝑝 3 ] ∼ = ̂︀ 𝑝[𝑝 3 + 𝑝 2 ] + ̂︀ 𝑝 ′ [𝑝 1 ]</formula><p>which means that ∼ = allows the tokens 𝑝 1 and 𝑝 3 to change their locations (i.e. between ̂︀ 𝑝 and ︀ 𝑝 ′ ).</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Figure 1 :</head><label>1</label><figDesc>Figure 1: An Elementary Object Net System (Eos)</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Figure 2 :</head><label>2</label><figDesc>Figure 2: Construction of the Eos OS * .</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Figure 3 :</head><label>3</label><figDesc>Figure 3: Construction for Run-Places in the Eos OS * .</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head>Definition 4 .</head><label>4</label><figDesc>A p/t net 𝑁 is a tuple 𝑁 = (𝑃, 𝑇, pre, post), such that 𝑃 is a set of places, 𝑇 is a set of transitions, with 𝑃 ∩ 𝑇 = ∅, and pre, post : 𝑇 → MS (𝑃 ) are the pre-and post-condition functions. A marking of 𝑁 is a multiset of places: m ∈ MS (𝑃 ). A p/t net with initial marking m 0 is denoted 𝑁 = (𝑃, 𝑇, pre, post, m 0 ).We use the usual notations for nets like • 𝑥 for the set of predecessors and 𝑥 • for the set of successors for a node 𝑥 ∈ (𝑃 ∪ 𝑇 ). For 𝑡 ∈ 𝑇 we have• 𝑡 = {𝑝 ∈ 𝑃 | pre(𝑡)(𝑝) &gt; 0} and 𝑡 • = {𝑝 ∈ 𝑃 | post(𝑡)(𝑝) &gt; 0}.For 𝑝 ∈ 𝑃 we have • 𝑝 = {𝑡 ∈ 𝑇 | post(𝑡)(𝑝) &gt; 0} and 𝑝 • = {𝑡 ∈ 𝑇 | pre(𝑡)(𝑝) &gt; 0}. A transition 𝑡 ∈ 𝑇 of a p/t net 𝑁 is enabled in marking m iff ∀𝑝 ∈ 𝑃 : m(𝑝) ≥ pre(𝑡)(𝑝) holds. The successor marking when firing 𝑡 is m ′ (𝑝) = m(𝑝) − pre(𝑡)(𝑝) + post(𝑡)(𝑝) for all 𝑝 ∈ 𝑃 . Using multiset notation enabling is expressed by m ≥ pre(𝑡) and the successor marking is m ′ = m − pre(𝑡) + post(𝑡). We denote the enabling of 𝑡 in marking m by m 𝑡 − → 𝑁 . Firing of 𝑡 is denoted by m 𝑡 − → 𝑁 m ′ . The net 𝑁 is omitted if it is clear from the context. Firing is extended to sequences 𝑤 ∈ 𝑇 * in the obvious way: (i) m 𝜖 − → m; (ii) If m 𝑤 − → m ′ and m ′ 𝑡 − → m ′′ hold, then we have m 𝑤𝑡 − → m ′′ . We write m * − → m ′ whenever there is some 𝑤 ∈ 𝑇 * such that m 𝑤 − → m ′ holds. The set of reachable markings is RS (m 0 ) := {m | ∃𝑤 ∈ 𝑇 * : m 0 𝑤 − → m}.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_4"><head>̂︀ 1 . 2 .Definition 5 (</head><label>125</label><figDesc>𝑝 | ̂︀ 𝑝 ∈ ̂︀ 𝑃 }, where id ̂︀ 𝑝 formalises object-autonomous firing on the place ̂︀ 𝑝: Each idle transition id ̂︀ 𝑝 has ̂︀ 𝑝 as a side condition: pre(id ̂︀ 𝑝 ) = post(id ̂︀ 𝑝 ) := ̂︀ 𝑝. Each idle transition id ̂︀ 𝑝 synchronises only with transitions from 𝑁 = 𝑑(̂︀ 𝑝): ∀̂︀ 𝜏 [𝜗] ∈ Θ : ̂︀ 𝜏 = id ̂︀ 𝑝 =⇒ ∀𝑁 ∈ 𝒩 : (𝜗(𝑁 ) ̸ = 0 ⇐⇒ 𝑁 = 𝑑(̂︀ 𝑝)) Elementary Object System, EOS). An elementary object system (Eos) is a tuple OS = ( ̂︀ 𝑁 , 𝒩 , 𝑑, Θ, 𝜇 0 ), where:</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_5"><head></head><label></label><figDesc>𝑡[𝜗] by setting 𝜗(𝑁 ) := 𝑡1 + • • • + 𝑡𝑛 to be any transition multiset such that the labels match: 𝑙𝑁 (𝑡1) + • • • + 𝑙𝑁 (𝑡𝑛) = ̂︀ 𝑙( ̂︀ 𝑡)(𝑁 ).</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_6"><head>Figure 4 :</head><label>4</label><figDesc>Figure 4: An Elementary Object Net System</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_7"><head>̂︀Definition 6 (</head><label>6</label><figDesc>𝑝 ) = ̂︀ 𝑝 = post(id ̂︀ 𝑝 ) = Π 1 (𝜌). So, there is an addend 𝜆 = ̂︀ 𝑝[𝑀 ] in 𝜇 with 𝑑(̂︀ 𝑝) = 𝑁 and 𝑀 enables 𝜗(𝑁 ). Firing Rule). Let OS be an Eos and 𝜇, 𝜇 ′ ∈ ℳ markings. The event ̂︀ 𝜏 [𝜗] is enabled in 𝜇 for the mode (𝜆, 𝜌) ∈ ℳ 2 iff 𝜆 ⊑ 𝜇 ∧ 𝜑(̂︀ 𝜏 [𝜗], 𝜆, 𝜌) holds. An event ̂︀ 𝜏 [𝜗] that is enabled in 𝜇 for the mode (𝜆, 𝜌) can fire: 𝜇 ̂︀ 𝜏 [𝜗](𝜆,𝜌) − −−−− → OS 𝜇 ′ . The resulting successor marking is defined as 𝜇 ′ = 𝜇 − 𝜆 + 𝜌. We write 𝜇 ̂︀ 𝜏 [𝜗] − − → OS 𝜇 ′ whenever 𝜇 ̂︀ 𝜏 [𝜗](𝜆,𝜌) − −−−− → OS 𝜇 ′ for some mode (𝜆, 𝜌).</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_8"><head>Figure 5 :</head><label>5</label><figDesc>Figure 5: The EOS of Figure 4 illustrating the firing of ̂︀ 𝑡[𝑁 1 ↦ → 𝑡 1 , 𝑁 2 ↦ → 𝑡 2 ] in the mode (𝜆, 𝜌)</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head></head><label></label><figDesc>). A property 𝜑 is satisfied 𝑘-robustly by the Eos OS iff 𝜑 holds in RG 𝑘 (OS ). This is denoted by OS , 𝜇 0 |= 𝑘 𝜑, or short: 𝜇 0 |= 𝑘 𝜑 wheneverOS is clear from the context. A property 𝜑 is satisfied *-robustly by the Eos OS iff 𝜑 holds in RG * (OS ). This is denoted by 𝜇 0 |= * 𝜑. Note, that a property 𝜑 holds for an Eos OS iff 𝜑 is 0-robust, since RG(OS ) ≃ RG 0 .</figDesc><table><row><cell>Fact 1.</cell></row></table></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_1"><head></head><label></label><figDesc>The system net is ̂︀ 𝑁 = ( ̂︀ 𝑃 , ̂︀ 𝑇 , pre, post), where ̂︀ 𝑃 = {̂︀ 𝑝 1 , . . . , ̂︀ 𝑝 6 } and ̂︀ 𝑇 = { ̂︀ 𝑡}. One object net is 𝑁 1</figDesc><table /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_2"><head></head><label></label><figDesc>again. The current marking 𝜇 of the Eos enables︀ 𝑡[𝑁 1 ↦ → 𝑡 1 , 𝑁 2 ↦ → 𝑡 2 ] in the mode (𝜆, 𝜌), where 𝜇 = ̂︀ 𝑝 1 [0] + ̂︀ 𝑝 1 [𝑎 1 + 𝑏 1 ] + ̂︀ 𝑝 2 [𝑎 1 ] + ̂︀ 𝑝 3 [𝑎 2 + 𝑏 2 ] = ̂︀ 𝑝 1 [0] + 𝜆 𝜆 = ̂︀ 𝑝 1 [𝑎 1 + 𝑏 1 ] + ̂︀ 𝑝 2 [𝑎 1 ] + ̂︀ 𝑝 3 [𝑎 2 + 𝑏 2 ] 𝜌 = ̂︀ 𝑝 4 [𝑎 1 + 𝑏 1 + 𝑏 1 ] + ̂︀ 𝑝 5 [0] + ̂︀ 𝑝 6 [𝑐 2 ]</figDesc><table /></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_0">Sometimes we consider Petri nets that have a compositional structure, like workflows with AND-splits or OR-choices; or we can identify an refinement structure. In these cases we can identify at least sub-structures, which are candidates for these computational units. However, there is no one-to-one correspondence between the sub-structures and the concept of a computational unit.</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="2" xml:id="foot_1">If one wishes to distinguish between a deadlock and a break-down, we have to ensure that net-tokens do not deadlock unless they are unmarked. We can guarantee this by adding a side-transition to each place in the object net.</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="3" xml:id="foot_2">We could skip this construction for system net transitions which have exactly one place in the preset and one in the postset.</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="4" xml:id="foot_3">In some sense, net-tokens are object nets with its own marking. However, net-tokens should not be considered as instances of an object net (as in object-oriented programming), since net-tokens do not have an identity. This is reflected by the fact that the firing rule joins and distributes the net-tokens' markings.Instead, all net-tokes of an object net act as a collective entity, like a group. This group can be considered as an object with identy -an object with its state distributed over the net-tokens. For in in-depth discussion of this semantics cf.<ref type="bibr" target="#b6">[7]</ref>.</note>
		</body>
		<back>
			<div type="annex">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Since an event collects all relevant object nets of the firing mode and combines them to one "virtual object net" that is only present at the moment of firing, the location of the object nets' tokens is irrelevant and can be ignored. These virtual object nets Π 2 𝑁 (𝜆) are also shown in the example of Figure <ref type="figure">4</ref>. This invariance can be expressed as follows:</p><p>Lemma 1. The enabling predicate is invariant with respect to the relation ∼ =:</p><p>Proof From the definition of 𝜑 one can see that the firing mode (𝜆, 𝜌) is used only via its projection by Π. Since 𝜆 ′ ∼ = 𝜆, 𝜌 ′ ∼ = 𝜌 expresses equality modulo projection, the predicate 𝜑 cannot distinguish between 𝜆 ′ and 𝜆, resp. 𝜌 ′ and 𝜌.</p><p>□ qed.</p><p>As for p/t nets the firing rule has several nice properties • Let OS be an Eos and 𝜇 a marking. The event ̂︀ 𝜏 [𝜗] is enabled in the mode (𝜆, 𝜌) iff it is enabled in the mode (𝜆 ′ , 𝜌 ′ ) such that 𝜆 ′ ∼ = 𝜆 ∧ 𝜌 ′ ∼ = 𝜌. This is an immediate consequence of Lemma 1. • Firing is reversible, i.e. for each Eos OS we obtain OS 𝑟𝑒𝑣 by inverting the arcs and have:</p><p>• The behaviour of an Eos is a conservative extension of p/t nets in the following sense:</p><p>When one abstract from the net-tokens by the projection Π 1 , then the behaviour of the system net in the Eos cannot be distinguished from the system net ̂︀ 𝑁 regarded as a p/t net, i.e.</p><p>• The invariance calculus for p/t nets can be extended to Eos in a compositional way, i.e. invariance equations can be obtained from the invariance equations of the constituent components separately.</p></div>			</div>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Fragility and robustness in multiagent systems</title>
		<author>
			<persName><forename type="first">M</forename><surname>Baldoni</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Baroglio</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Micalizio</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Engineering Multi-Agent Systems. EMAS 2020</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>
			<persName><forename type="first">C</forename><surname>Baroglio</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">J</forename><surname>Hubner</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">M</forename><surname>Winikoff</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<date type="published" when="2020">2020</date>
			<biblScope unit="volume">12589</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">Availability analysis of the ONOS architecture</title>
		<author>
			<persName><forename type="first">M</forename><surname>Müller</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Köhler-Bußmeier</surname></persName>
		</author>
		<ptr target="http://ceur-ws.org/Vol-2907/" />
	</analytic>
	<monogr>
		<title level="m">International Workshop on Petri Nets and Software Engineering 2021</title>
		<title level="s">CEUR Workshop Proceedings</title>
		<editor>
			<persName><forename type="first">E</forename><surname>Kindler</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">M</forename><surname>Köhler-Bußmeier</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">H</forename><surname>Rölke</surname></persName>
		</editor>
		<meeting><address><addrLine>Aachen</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2021">2907. 2021</date>
			<biblScope unit="page" from="41" to="64" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">A Maude formalization of object nets</title>
		<author>
			<persName><forename type="first">L</forename><surname>Capra</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Köhler-Bußmeier</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">6th International Workshop on Formal Approaches for Advanced Computing Systems, FAACS&apos;22</title>
				<editor>
			<persName><forename type="first">S</forename><surname>Bonfanti</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">T</forename><surname>Kobayashi</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">D</forename><surname>Perez-Palacin</surname></persName>
		</editor>
		<imprint>
			<date type="published" when="2022">2022</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Modelling adaptive systems with nets-within-nets in maude</title>
		<author>
			<persName><forename type="first">L</forename><surname>Capra</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Köhler-Bußmeier</surname></persName>
		</author>
		<idno type="DOI">10.5220/0011860000003464</idno>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 18th International Conference on Evaluation of Novel Approaches to Software Engineering -ENASE</title>
				<meeting>the 18th International Conference on Evaluation of Novel Approaches to Software Engineering -ENASE</meeting>
		<imprint>
			<publisher>SciTePress</publisher>
			<date type="published" when="2023">2023</date>
			<biblScope unit="page" from="487" to="496" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">The byzantine generals problem</title>
		<author>
			<persName><forename type="first">L</forename><surname>Lamport</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Shostak</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Pease</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Transactions on Programming Languages and Systems</title>
		<imprint>
			<biblScope unit="page" from="382" to="401" />
			<date type="published" when="1982">1982</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<monogr>
		<author>
			<persName><forename type="first">W</forename><surname>Reisig</surname></persName>
		</author>
		<title level="m">Petri Nets: An Introduction</title>
				<meeting><address><addrLine>Heidelberg</addrLine></address></meeting>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<date type="published" when="1985">1985</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Object Petri nets: Using the nets-within-nets paradigm</title>
		<author>
			<persName><forename type="first">R</forename><surname>Valk</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Advanced Course on Petri Nets 2003</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>
			<persName><forename type="first">J</forename><surname>Desel</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">W</forename><surname>Reisig</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">G</forename><surname>Rozenberg</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<date type="published" when="2003">2003</date>
			<biblScope unit="volume">3098</biblScope>
			<biblScope unit="page" from="819" to="848" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">Mobility types for mobile ambients</title>
		<author>
			<persName><forename type="first">L</forename><surname>Cardelli</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">D</forename><surname>Gordon</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Ghelli</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the Conference on Automata, Languages, and Programming (ICALP&apos;99)</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<meeting>the Conference on Automata, Languages, and Programming (ICALP&apos;99)</meeting>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<date type="published" when="1999">1999</date>
			<biblScope unit="volume">1644</biblScope>
			<biblScope unit="page" from="230" to="239" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">A calculus of mobile processes, parts 1-2</title>
		<author>
			<persName><forename type="first">R</forename><surname>Milner</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Parrow</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Walker</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Information and computation</title>
		<imprint>
			<biblScope unit="volume">100</biblScope>
			<biblScope unit="page" from="1" to="77" />
			<date type="published" when="1992">1992</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Multiagent organizations</title>
		<author>
			<persName><forename type="first">V</forename><surname>Dignum</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Padget</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Intelligent Robotics; Autonomous Agents Series</title>
				<editor>
			<persName><forename type="first">G</forename><surname>Weiss</surname></persName>
		</editor>
		<imprint>
			<publisher>MIT Press</publisher>
			<date type="published" when="2013">2013</date>
			<biblScope unit="page" from="51" to="98" />
		</imprint>
	</monogr>
	<note>Multiagent Systems</note>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">A formal model for organisational structures behind process-aware information systems, Transactions on Petri Nets and Other Models of Concurrency</title>
		<author>
			<persName><forename type="first">M</forename><surname>Köhler-Bußmeier</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Wester-Ebbinghaus</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Moldt</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Special Issue on Concurrency in Process-Aware Information Systems</title>
		<imprint>
			<biblScope unit="volume">5460</biblScope>
			<biblScope unit="page" from="98" to="114" />
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">Modelling with Generalized Stochastic Petri Nets</title>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">A</forename><surname>Marsan</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Balbo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Conte</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Donatelli</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Franceschinis</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Wiley Series in Parallel Computing</title>
				<imprint>
			<publisher>John Wiley and Sons</publisher>
			<date type="published" when="1995">1995</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">Properties of Object Petri Nets</title>
		<author>
			<persName><forename type="first">M</forename><surname>Köhler</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Rölke</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">International Conference on Application and Theory of Petri Nets 2004</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>
			<persName><forename type="first">J</forename><surname>Cortadella</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">W</forename><surname>Reisig</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<date type="published" when="2004">2004</date>
			<biblScope unit="volume">3099</biblScope>
			<biblScope unit="page" from="278" to="297" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
		<title level="a" type="main">On the expressiveness of communication channels for object nets</title>
		<author>
			<persName><forename type="first">M</forename><surname>Köhler-Bußmeier</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Heitmann</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Fundamenta Informaticae</title>
		<imprint>
			<biblScope unit="volume">93</biblScope>
			<biblScope unit="page" from="205" to="219" />
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b14">
	<analytic>
		<title level="a" type="main">A survey on decidability results for elementary object systems</title>
		<author>
			<persName><forename type="first">M</forename><surname>Köhler-Bußmeier</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Fundamenta Informaticae</title>
		<imprint>
			<biblScope unit="volume">130</biblScope>
			<biblScope unit="page" from="99" to="123" />
			<date type="published" when="2014">2014</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b15">
	<analytic>
		<title level="a" type="main">Nested Petri nets -a formalism for specification of multi-agent distributed systems</title>
		<author>
			<persName><forename type="first">I</forename><forename type="middle">A</forename><surname>Lomazova</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Fundamenta Informaticae</title>
		<imprint>
			<biblScope unit="volume">43</biblScope>
			<biblScope unit="page" from="195" to="214" />
			<date type="published" when="2000">2000</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b16">
	<analytic>
		<title level="a" type="main">Modeling mobile agent systems with high level Petri nets</title>
		<author>
			<persName><forename type="first">D</forename><surname>Xu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Y</forename><surname>Deng</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">IEEE International Conference on Systems, Man, and Cybernetics&apos;</title>
				<imprint>
			<date type="published" when="2000">2000. 2000</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b17">
	<monogr>
		<title/>
		<author>
			<persName><forename type="first">O</forename><surname>Kummer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Referenznetze</forename></persName>
		</author>
		<imprint>
			<date type="published" when="2002">2002</date>
			<publisher>Logos Verlag</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b18">
	<analytic>
		<title level="a" type="main">PN 2 : An elementary model for design and analysis of multi-agent systems</title>
		<author>
			<persName><forename type="first">K</forename><surname>Hiraishi</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Coordination Models and Languages, COORDINATION 2002</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>
			<persName><forename type="first">F</forename><surname>Arbab</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">C</forename><forename type="middle">L</forename><surname>Talcott</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<date type="published" when="2002">2002</date>
			<biblScope unit="volume">2315</biblScope>
			<biblScope unit="page" from="220" to="235" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b19">
	<analytic>
		<title level="a" type="main">Modelling mobility with Petri hypernets</title>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">A</forename><surname>Bednarczyk</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Bernardinello</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Pawlowski</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Pomello</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Recent Trends in Algebraic Development Techniques</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>
			<persName><forename type="first">J</forename><forename type="middle">L</forename><surname>Fiadeiro</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">P</forename><forename type="middle">D</forename><surname>Mosses</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">F</forename><surname>Orejas</surname></persName>
		</editor>
		<meeting><address><addrLine>WADT</addrLine></address></meeting>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<date type="published" when="2004">2004. 2004</date>
			<biblScope unit="volume">3423</biblScope>
			<biblScope unit="page" from="28" to="44" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b20">
	<analytic>
		<title level="a" type="main">Nested nets for adaptive systems</title>
		<author>
			<persName><forename type="first">I</forename><forename type="middle">A</forename><surname>Lomazova</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><forename type="middle">M</forename><surname>Van Hee</surname></persName>
		</author>
		<author>
			<persName><forename type="first">O</forename><surname>Oanea</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Serebrenik</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Sidorova</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Voorhoeve</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Application and Theory of Petri Nets and Other Models of Concurrency</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<date type="published" when="2006">2006</date>
			<biblScope unit="page" from="241" to="260" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b21">
	<analytic>
		<title level="a" type="main">A maude implementation of rewritable petri nets: a feasible model for dynamically reconfigurable systems</title>
		<author>
			<persName><forename type="first">L</forename><surname>Capra</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">First Workshop on Applicable Formal Methods 2021</title>
				<editor>
			<persName><forename type="first">M</forename><surname>Gleirscher</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">J</forename><forename type="middle">V D</forename><surname>Pol</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">J</forename><surname>Woodcock</surname></persName>
		</editor>
		<imprint>
			<date type="published" when="2021">2021</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b22">
	<analytic>
		<title level="a" type="main">Overview of reconfigurable petri nets</title>
		<author>
			<persName><forename type="first">J</forename><surname>Padberg</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Kahloul</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Graph Transformation, Specifications, and Nets</title>
				<editor>
			<persName><forename type="first">R</forename><surname>Heckel</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">G</forename><surname>Taentzer</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<date type="published" when="2018">2018</date>
			<biblScope unit="volume">10800</biblScope>
			<biblScope unit="page" from="201" to="222" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b23">
	<analytic>
		<title level="a" type="main">Safeness for object nets</title>
		<author>
			<persName><forename type="first">M</forename><surname>Köhler-Bußmeier</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Heitmann</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Fundamenta Informaticae</title>
		<imprint>
			<biblScope unit="volume">101</biblScope>
			<biblScope unit="page" from="29" to="43" />
			<date type="published" when="2010">2010</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b24">
	<analytic>
		<title level="a" type="main">Liveness of safe object nets</title>
		<author>
			<persName><forename type="first">M</forename><surname>Köhler-Bußmeier</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Heitmann</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Fundamenta Informaticae</title>
		<imprint>
			<biblScope unit="volume">112</biblScope>
			<biblScope unit="page" from="73" to="87" />
			<date type="published" when="2011">2011</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b25">
	<analytic>
		<title level="a" type="main">On the complexity of the reachability problem for safe, elementary Hornets</title>
		<author>
			<persName><forename type="first">M</forename><surname>Köhler-Bußmeier</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Fundamenta Informaticae</title>
		<imprint>
			<biblScope unit="volume">129</biblScope>
			<biblScope unit="page" from="101" to="116" />
			<date type="published" when="2014">2014</date>
			<publisher>of Professor Manfred Kudlek</publisher>
		</imprint>
	</monogr>
	<note>Dedicated to the Memory</note>
</biblStruct>

<biblStruct xml:id="b26">
	<analytic>
		<title level="a" type="main">An upper bound for the reachability problem of safe, elementary hornets</title>
		<author>
			<persName><forename type="first">M</forename><surname>Köhler-Bußmeier</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Heitmann</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Fundamenta Informaticae</title>
		<imprint>
			<biblScope unit="volume">143</biblScope>
			<biblScope unit="page" from="89" to="100" />
			<date type="published" when="2016">2016</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b27">
	<monogr>
		<title level="m" type="main">Temporal and modal logic, volume B</title>
		<author>
			<persName><forename type="first">A</forename><surname>Emerson</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1990">1990</date>
			<publisher>MIT press</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b28">
	<analytic>
		<title level="a" type="main">Invariants, composition, and substitution</title>
		<author>
			<persName><forename type="first">E</forename><surname>Kindler</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Acta Informatica</title>
		<imprint>
			<biblScope unit="volume">32</biblScope>
			<biblScope unit="page" from="299" to="312" />
			<date type="published" when="1995">1995</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b29">
	<analytic>
		<title level="a" type="main">Analysing adaption processes of Hornets</title>
		<author>
			<persName><forename type="first">M</forename><surname>Köhler-Bußmeier</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Rölke</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Petri Nets and Software Engineering 2022, PNSE&apos;22</title>
				<editor>
			<persName><forename type="first">M</forename><surname>Köhler-Bußmeier</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">D</forename><surname>Moldt</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">H</forename><surname>Rölke</surname></persName>
		</editor>
		<imprint>
			<date type="published" when="2022">2022</date>
			<biblScope unit="volume">3170</biblScope>
			<biblScope unit="page" from="80" to="98" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b30">
	<analytic>
		<title level="a" type="main">vs. contingency: Adaption measures for organizational multi-agent systems</title>
		<author>
			<persName><forename type="first">M</forename><surname>Köhler-Bußmeier</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Sudeikat</surname></persName>
		</author>
		<author>
			<persName><surname>Balance</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">15th International Symposium on Intelligent Distributed Computing (IDC&apos;22)</title>
		<title level="s">Studies in Computational Intelligence</title>
		<editor>
			<persName><forename type="first">K</forename><surname>Jander</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">L</forename><surname>Braubach</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">C</forename><surname>Badica</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer-Verlag</publisher>
			<date type="published" when="2023">2023</date>
			<biblScope unit="volume">1089</biblScope>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
