<!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>
      <journal-title-group>
        <journal-title>F. Adobbati); lukasz.mikulski@mat.umk.pl (Ł. Mikulski)</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Analysing Multi-Agent Systems using 1-safe Petri Nets</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Federica Adobbati</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Łukasz Mikulski</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>DISCo Università degli Studi di Milano-Bicocca</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Faculty of Mathematics and Computer Science, Nicolaus Copernicus University</institution>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Institute of Computer Science, Polish Academy of Sciences</institution>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2022</year>
      </pub-date>
      <volume>000</volume>
      <fpage>0</fpage>
      <lpage>0002</lpage>
      <abstract>
        <p>In the modelling and analysis of large, real systems, the main problem in their eficient processing is the size of the global model. One of the popular approaches that address this issue is the decomposition of such global model into much smaller submodels and interaction between them. In this paper we discuss the translation of multi-agent systems with the common-action-based synchronization to 1-safe Petri nets. We prove that the composition in terms of transition systems is equivalent to the transition-based fusion of nets modelling diferent agents. We also address the issue of permanent disabling of some parts of the system by constraints implied by the synchronization and discuss the methods of solving it without the computation of the entire global model.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;1-safe</kwd>
        <kwd>Petri nets</kwd>
        <kwd>multi-agent systems</kwd>
        <kwd>composition</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        A multi-agent system (MAS) is composed of multiple decision-making agents interacting inside
some environment. They are highly distributed and concurrent systems. Each agent performs
actions aimed at reaching one’s goal, making decisions according to own strategy. Thus, when
the goal is common or beneficial for many agents, they cooperate to achieve it. On the other hand,
they compete when their goals are in conflict. Multi-agent systems originate from distributed
artificial intelligence field [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], and are also studied by the formal methods and model-checking
community.
      </p>
      <p>
        The main challenge related to the analysis of real-live MAS is the complexity. On one hand,
the global model of such system is usually very large. A simple voting model with four voters
and one coercer discussed in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] consists of almost 300 000 states and 7 000 000 transitions. On
the other hand, the price for expressiveness, which allows to express properties like Stackelberg
or Nash equilibria, is high computational complexity of model checking: from
2EXPTIMEcomplete in the case of ATL*, to non-elementary for SL [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. It is worth to note that ATL, being
less expressive, allows to model check strategic properties in polynomial time.
      </p>
      <p>
        There are many methods that address the issue of both memory and time complexity for the
analysis of MAS. The methods reducing state space range from partial order reductions [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ],
where the analysed model is much smaller, through on-the-fly techniques [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], hoping that the
small part of the model is suficient to verify the considered formula, ending with decomposition
methods and assume-guarantee techniques, where the local specification is checked on a small
part of the system immersed in the abstraction of the global model [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. In order to speed up
the computation, one can try to reason about the base of approximations related with less
expressive but more desirable models [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], or reduce the space of checked strategies by their
internal structure [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. The research reported in this paper fits in the decomposition methods
approach.
      </p>
      <p>
        Related work Synthesis and analysis of multi-agent systems is a well known topic in the
literature, also in the context of Petri nets. Pujari and Mukhopadhyay in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] discuss MAS
as a discrete-event dynamic system (DEDS), and use Petri nets as a modeling tool to assess
the structural properties of the system. Similarily, following DEDS concept, Lukomski and
Wilkosz [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] show rules of modeling and analyzing the considered multi-agent system with
use of Petri nets. Everdij et.al. [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] propose to use compositional specification power of Petri
nets in application to a multi-agent system. Highly distributed air trafic operations system
is considered and modelled using Stochastically and Dynamically Coloured Petri Nets. The
approach of Galan and Baker [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] focuses on specifying and analyzing the conversations in
a multi-agent system. Conversations are specified using an automata model and converted
into a Petri net representation. Using a Petri net analyzer, the conversations are checked for
consistency and coherency by testing liveness and safety of the resulting net. Hiraishi in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]
proposes   2 model, an extension of P/T nets, for the design and the analysis of multi-agent
systems.
      </p>
      <p>
        Another branch of the literature study shows a number of approaches using Petri nets to
coordinate, organize or plan MAS behaviors. In [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] a representation and execution framework
for high level multirobot plan design, called Petri Net Plans (PNP), is proposed. PNP is based
on Petri nets with a domain specific interpretation. Places and transitions are partitioned into
several classes of diferent interpretations. A special case is a Petri net that has at most one
token per place and edges of weight one. As a central feature, PNPs allow for a formal analysis
of plans based on standard Petri net tools. Scheduling by hierarchical structuring of the tasks
performed by agents is one of key ideas in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. They propose a multi-agent system that allows
the user to define a hierarchical structuring of the tasks that these agents perform, to plan
a schedule involving parallel and sequential calling of the agents. The agents are atomic or
complex. Atomic agents are simple Petri nets performing a task, while complex agents are used
to gather atomic (and/or other complex agents) to conglomerate their individual behaviour,
and arrange their working order. The authors of [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] propose a framework for specifying
multi-agent systems based on Synchronized Petri Nets. It is an extension of Recursive Petri
nets, facilitating multi-agent system specifications by concepts like: typed places, transitions
and tokens, synchronization points, synchronization conditions, synchronization relations and
binding functions.
      </p>
      <p>
        Finally, an approach that seems to be very close to ours uses Nested Unit Petri Nets (NUPN)[
        <xref ref-type="bibr" rid="ref17">17</xref>
        ].
One can see multi-agent systems as safe NUPNs of height 1 (taking every agent as a leaf unit
and the whole system as the root unit). The nets used in the examples and constructed with the
use of a naive solution (taking a single place for every state of considered transition system) are
even unit-safe. The considered problem of transitions disabled by synchronizations corresponds
to the usual weak-liveness check for such nets.
      </p>
      <p>
        Contribution The main contribution of this paper is the proof of the operational equivalence
between multi-agent systems and labelled 1-safe Petri nets. First we discuss how one can
synthesize a Petri net of desired behaviour (see [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] for comprehensive description) and utilize
it to prepare a model for each agent separately. Following the idea of splitting transitions in the
case of behaviour which cannot be covered by a 1-safe Petri net utilized in Petrify [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ], we first
provide a naive solution. Then we prove that the composition of the set of agents defined in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]
is equivalent to classical Petri net transition fusion [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ].
      </p>
      <p>
        As already noticed in [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ], asynchronous multi-agent systems with the composition based
on the synchronization on actions are prone to all sorts of unwanted side efects. Some actions
designed in the model of composed agents may be permanently disabled in the global model
of the system. Such an artifact can surely be seen as an unwanted side efect of building the
multi-agent system by the composition. As our second contribution, we address this issue
and provide a procedure to check whether a particular action is permanently disabled without
computing the entire global model of a considered multi-agent system. Although the proposed
procedure does not reduce the complexity of the considered problem, it allows to perform
calculations on a fragment of the considered model (which might be much smaller then the
global model).
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. The model</title>
      <sec id="sec-2-1">
        <title>2.1. Asynchronous multi-agent systems</title>
        <sec id="sec-2-1-1">
          <title>In this section we recall an asynchronous multi-agent system defined in [4].</title>
          <p>Definition 1. An asynchronous multi-agent system (AMAS) consists of n agents  = {1, . . . , }.
Each agent is associated with a tuple  = (,  , , PR, TR, , ), where
•  = {1, . . . ,  } is a set of local states;
•   ∈  is an initial state;
•  = { 1 , . . . ,   } is a set of events in which agent  can choose to participate;
• PR :  → 2 is a local protocol, which assigns events to states in which they are
available;
• TR :  ×  →  is a local transition function, such that TR(,  ) is defined
whenever  ∈ PR();
•  is a set of local propositions;
•  :  → 2 is the valuation of local propositions in local states.</p>
          <p>Since the model checking of AMAS is not in the scope of this paper, we are interested only in
transition systems which define the behaviour of AMAS, namely the tuples (, , TR,  ).</p>
          <p>Note, however, that local events of diferent agents may not be disjoint. Events which are
present in more than one event set  require participation of more than one agent, namely
those agents synchronize on such events.</p>
          <p>Example 1. Fig. 1 represents an AMAS with three agents. The events 1, 1, 2, 2 are shared
by two agents, and require the participation of both of them to occur, whereas the events 3 and
3 are local, and depends on a single agent.</p>
        </sec>
      </sec>
      <sec id="sec-2-2">
        <title>2.2. 1-safe Petri nets</title>
        <p>
          Petri nets were introduced by Carl Adam Petri in his PhD thesis [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ] as a formal graphical model
to represent and analyse concurrent systems. In this section we provide some basic definitions
that will be useful in the rest of the paper, for an extensive overview about Petri nets and their
applications we refer to [
          <xref ref-type="bibr" rid="ref23 ref24">23, 24</xref>
          ].
        </p>
        <p>A plain net is characterized by a set of places or conditions  , represented as circles, by a set of
transitions  , represented as squares, and by a flow relation between them  ⊆ ( ×  )∪( ×  ),
represented with arcs1.</p>
        <p>For each element  ∈  ∪  , its preset is ∙  = { ∈  ∪  : (, ) ∈  }, and its postset is
∙ = { ∈  ∪  : (, ) ∈  }. For each transition  ∈  , we assume that its preset and its
postset are non-empty, i.e. ∙  ̸= ∅ and ∙ ̸= ∅. The elements in ∙  are also called preconditions
of , and the elements in ∙ are also called postconditions.</p>
        <p>A net system is a quadruple Σ = ( , , , 0), where , ,  are the elements of the net,
and 0 :  → N is the initial marking. A transition  ∈  is enabled in a marking  if for each
 ∈ ∙ , () ≥ 0. If a transition is enabled, it can occur or fire , and its occurrence generates a
new marking ′ defined as follows.</p>
        <p>⎧⎪() − 1 for all  ∈ ∙  ∖ ∙
′() = ⎨() + 1 for all  ∈ ∙ ∖ ∙</p>
        <p>⎪⎩() in all other cases.</p>
        <p>In symbols, [⟩ denotes that  is enabled in , while [⟩′ denotes that ′ is the
marking produced from the occurrence of  in . A marking  is reachable in a net system</p>
        <sec id="sec-2-2-1">
          <title>1In more general definition one can define a weight function</title>
          <p>relation  .</p>
          <p>: ( ×  ) ∪ ( ×  ) → N instead of flow
Σ = ( , , , 0) if there is a sequence of transitions (called a firing sequence ) 1... such
that 0[1⟩1...− 1[⟩. The set of all the reachable markings is denoted with [0⟩. A
transition  ∈  is 1-live if there is a marking  ∈ [0⟩ such that [⟩.</p>
          <p>Let  be a reachable marking, and 1, 2 ∈  be two transitions enabled in : 1 and 2 are
in conflict in  if ∙ 1 ∩ ∙ 2 ̸= ∅; 1 and 2 are concurrent in  if ∙ 1 ∩ ∙ 2 = ∅ and ∙1 ∩ ∙2 = ∅.</p>
          <p>In this paper we work with the class of 1-safe net systems. A net system is 1-safe if, for each
 ∈ [0⟩ and for each  ∈  , () ≤ 1. In a 1-safe system, each marking can (and will) be
considered as a set of places, and each place can be interpreted as a proposition, that is true if
the place belongs to the marking, and false otherwise.</p>
          <p>A labelled Petri net Σ  = (Σ ,  ) is a 1-safe net system with a function  :  → Λ , where
Λ is a set of labels. Abusing the notation, for each  ′ ⊆  subset of  , we will denote with
 ( ′) = { ∈ Λ : ∃ ∈  ′ :  () =  } the set of labels of the elements in  ′. The set  ( ) is
the alphabet of Σ  .</p>
          <p>The sequential behaviour of a labelled Petri net can be described by an initialized labelled
transition system, where each state corresponds to a reachable marking, and each arc is labelled
by the label of the transition leading from the source marking to the target one.
Definition 2. Let Σ = ( , , , 0,  ) be a labelled Petri net, its marking graph is a quadruple
 (Σ) = ([ 0⟩,  ( ), , 0) where  = {(,  (), ′) | , ′ ∈ [0⟩,  ∈ , [⟩′}.</p>
        </sec>
      </sec>
      <sec id="sec-2-3">
        <title>2.3. Synthesis of 1-safe Petri nets from AMAS</title>
        <p>
          For each agent in an AMAS, we can always obtain a 1-safe labelled Petri net: the agent in the
AMAS can be considered as the marking graph of the net, therefore the net can be found through
a synthesis procedure. The classical techniques for the synthesis of 1-safe net systems are based
on the research of regions [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ]. Let  = (, , TR,  ) be a labelled transition system. A
region is a subset of states  ⊆  such that, for each  ∈ , one of the following conditions
holds: (1)  enters the region, i.e. for each arc labelled with  from 1 to 2, 1 ̸∈  ∧ 2 ∈ ; (2)
 leaves the region, i.e. for each arc labelled with  from 1 to 2, 1 ∈  ∧ 2 ̸∈ ; (3)  does not
cross the border of the region, i.e. for each arc labelled with  from 1 to 2, 1 ∈  ∧ 2 ∈ , or
1 ̸∈  ∧ 2 ̸∈ . In order to synthesize a 1-safe net system, every label in  is translated into
a transition of the net system, and every region into a place. The flow relation is determined
as follows: for each transition , for each place ,  is a precondition of  if  leaves  in , 
is a post-condition of  if  enters  in . If  does not cross the border of , and for each arc
labelled with  from 1 to 2, we have 1, 2 ∈ , then we can see  as both a precondition and
a postcondition of , and add a self loop to the net. Otherwise, there is no flow relation between
 and  in the net.
        </p>
        <p>Not every transition system can be synthesized into a 1-safe net. In particular, we can
synthesize a 1-safe net system from a transition system if, and only if, the set of regions of the
transition system satisfies the so called state separation property (SSP) and event-state separation
property (ESSP):</p>
        <p>∀, ′ ∈   ̸= ′ → ∃ ∈  : ( ∈  ∧ ′ ̸∈ ) ∨ ( ̸∈  ∧  ∈ ) ( )
∀ ∈ , ∀ ∈  :  is not outgoing from , → ∃ :  ̸∈  ∧  leaves  ( )</p>
        <p>Example 2. Consider the central transition system on the upper part of Fig. 4. Since there is an
outgoing transition labelled as 3 from all the states, the only regions in this system are trivial:
the empty set, and the set of all the states. These regions do not allow to separate any pair of
states, therefore SSP is not satisfied, and the transition system is not synthesizable with a 1-safe
net without labels.</p>
        <p>
          However, it is always possible to obtain a labelled 1-safe system, by allowing the net to have
more transitions with the same label. In this case, we can split the transitions of  with the
same label into subgroups, and look for regions as if each group had a diferent label. This
generates a set of diferent transitions in the net sharing the same label. To obtain such a net
is always possible, since we could consider subsets formed by single arcs: if each arc of the
transition system is considered as if it had diferent labels from the others, it is easy to verify
that the set of regions satisfies the separation properties SSP and ESSP. Furthermore, each state
of  is a region and therefore can be translated into a place of the synthesized net. As showed
in [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ], the minimal regions with respect to inclusion are suficient for the synthesis, therefore
we can consider the states of  as all and only the places of the net. In what follows we will
transform each agent of the AMAS in this way.
        </p>
        <p>For each , we can represent each agent as a labelled Petri net. In particular, for each agent
 = (, , TR,  ), the associated Petri net is defined as Σ  = (, , ,  ,  ), where:
•  is the set of places that coincides with the set of local states in ;
•  is the set of transitions, and there is one for each element in TR;
•  is the flow relation, fully determined by TR;
•   is the initial marking, that coincides with the initial state of  ;
•  :  →  is the labelling function, associating every transition of the net with the
label of the corresponding arc on the agent.</p>
        <p>
          Example 3. Consider the AMAS in Figure 1, described also in [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]. In Figure 2 the agents of the
AMAS are represented as Petri nets.
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Composition</title>
      <sec id="sec-3-1">
        <title>3.1. Composition of AMAS</title>
        <p>
          In this section we recall from [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] the definition of canonical interleaved interpreted system,
which is a composition of agents being parts of an asynchronous multi-agent system with
synchronizations on common events. Note that since we are not interested in model checking,
we would concentrate only on the behaviour of the multi-agent system (putting apart the
propositional variables).
        </p>
        <p>Definition 3. A canonical interleaved interpreted system (canonical IIS) is an AMAS extended
with a tuple (, , TR,  ) where:
•  ⊆ 1 × . . . ×  is a set of global states;
•  = ⋃︀∈{1,...,}  is a set of events;
• TR :  ×  →  is a (partial) global transition function, where TR((1, . . . , ),  ) =
(1′, . . . , ′) if TR(,  ) = ′ for all  where  ∈  and TR(,  ) =  otherwise;
•  = ( 1, . . . ,  ) is an initial state.</p>
        <p>Given a canonical IIS , some of its states may not be reachable through any execution, due
to the restrictions given by the synchronizations, and therefore also the transitions outgoing
from these states can never be executed. We will denote with  the canonical system where
these unreachable states and transitions have been pruned.</p>
        <p>By definition, the number of states in the IIS grows exponentially with the number of agents,
therefore limiting the number of compositions when studying the properties of the system may
help in the analysis.</p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2. Composition of 1-safe Petri nets</title>
        <p>Let Σ 1 = (1, 1, 1,  1,  ), ..., Σ  = (, , ,  ,  ) be the set of Petri net agents. We then
construct a global net Σ = ( , , , 0,  ), showing the interaction of the agents. The set of
places  of Σ is the union of the sets of places . For each label  ∈  (), for each agent Σ ,
let  = { ∈  :  () =  } be the set of transitions labelled with  . The set of transition
of Σ is defined as  = ⋃︀ ∈ () ⨂︀∈{1,...,}  . The flow relation is determined in this way:
for each transition  ∈  , and each place  ∈  there is an arc from  to  if there is a Σ  and
 ∈  such that  ∈ ,  is a component in , and (,  ) ∈ ; analogously for the arcs from
 ∈  to  ∈  . The initial marking 0 is the union of all the elements  , with  ∈ {1, ..., }.
The labelling function  associates every transition  ∈  to the label of all its component, that
is unique by construction. We denote the alphabet of Σ with  ( ).</p>
        <p>By construction, each place in Σ belongs at most to one agent, whereas the transitions can be
shared. Note that some of the transitions may be enabled in no reachable marking, and therefore
are not 1-live. As we discussed in the previous section, the same problem happens when we
consider the composition of AMAS, because some states may not be reachable from the initial
state  , due to the synchronization constraints. The problem of finding these transitions is
discussed in detail in Sec. 4.
Example 4. Fig. 3 represents the composition of the three agents from Fig. 2. In this model, for
each agent, each label appears only in one transitions, therefore in the global net in Fig. 3 each
transition has a diferent label.</p>
        <p>This is in general not the case, as we can see in Fig.4. In the latter case both the Petri net agents
and the global model have the same label shared between more transitions.</p>
        <p>Let  be the canonical IIS where all the unreachable states and transitions have been
removed. The following proposition shows that synthesis and composition are commutative,
i.e synthesizing Petri net agents from the AMAS and then composing them is equivalent to
construct the composition of AMAS and then synthesizing a Petri net.</p>
        <p>Proposition 1. Let  be an AMAS, Σ = ( , , , 0,  ) be global Petri net constructed as
described above, and  the canonical IIS of . The transition system of Σ is isomorphic to .
Proof. The initial marking of Σ is the initial state of  by the construction. Let  be any
reachable marking in Σ . By the construction,  is a set of  places, each of them from a
diferent set , with  ∈ {1, ..., }. For each  ∈ {1, ..., } we denote as  the element of 
in the set . Let  ∈  be a transition such that  () =  . By construction,  is enabled in 
if, for each agent Σ ,  ∈ {1, ..., } such that  ∈  (), there is a transition  ∈  such that
 () =  and  enabled in . This condition is equivalent to the one of the global transition
function defined for , therefore for each marking, the set of outgoing transitions and states
reachable in one step is the same. Hence the two models are isomorphic.</p>
        <p>Note that, for simplicity, in the above proposition we consider the specific 1-safe labelled
systems. One can easily repeat similar reasoning for any 1-safe labelled systems which are
synthesized from transition systems describing behaviours of particular agents and their
compositions.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. 1-liveness of transitions</title>
      <p>
        In this section we discuss how to find transitions that are not 1-live on the global net. This
is known to be a PSPACE-complete problem [
        <xref ref-type="bibr" rid="ref25 ref26">25, 26</xref>
        ]. We propose an algorithm that, in some
cases, does not need to construct the global net in order to verify whether a transition is 1-live,
but uses a smaller subnet. If this is possible, some computation is saved, since the complexity of
the problem depends on the dimension of the net. In the worse case, the algorithm reconstructs
the global system, and checks 1-liveness on it.
      </p>
      <p>Consider the net in Fig. 4. All the transitions labelled with 0 will never be enabled. A simple
way to find these transitions consists in computing the marking graph of the net and check its
labels. The transitions that do not appear in the marking graph will never be enabled. However,
this can be computationally very expensive, since having all the agents may increase the level
of concurrency, and therefore the size of the transition system.</p>
      <p>A first alternative idea could be to find some of the transitions that will never be enabled by
composing for each label all the agents sharing it. For example, the labels 1 and 0 are shared
by the first and third agent in Fig. 4. Fig. 5 shows the composition of the two agents, and the
marking graph of this reduced net. The part coloured in red shows the transitions that cannot
be enabled. If a transition cannot occur in the net obtained composing only the agents sharing
its label, then it cannot occur in the global net, since adding new components can only add the
number of constraints, due to the synchronization requirements.</p>
      <p>Unfortunately, this is only a necessary condition to identify transitions that cannot fire, but it
is not suficient. To see an example, consider the agents represented in Fig. 6. In the upper part
of the figure, we see three agents sharing some of their labels. Below it, there is the global net,
where the unreachable parts are coloured in red, and its transition system. At the bottom of the
ifgure, we find the composition of the second and third agent, and its transition system. The
label  is shared only by the second and third agent, and by composing only them, it seems to
be possible to fire it. However, this is not true, as we can see in the global transition system.
This happens because in the reduced composition for label ,  is considered as a label of the
third agent only, whereas in the global system, it must synchronize with the transition of the
ifrst agent. We can see from the reduced transition system that  must occur after  and , but
since  cannot fire in the global net, also  cannot be reached.</p>
      <p>This suggests us another element to check whether a transition can be enabled without
constructing the transition system of the global net, consisting in composing all the agents
sharing a certain label, and all the labels in a minimal path leading to it from the initial state.
Definition 4. Let  (Σ) be the marking graph of Σ . The firing sequence 1... is minimal if
for each ,  &lt; ,  ̸=  , where − 1[⟩.</p>
      <p>Let Λ ⊆  ( ) be any subset of labels in the global net Σ . We will denote with Σ Λ the net
obtained by composing all the agents with at least an element of Λ in their alphabet.</p>
      <p>Let  be any label on the system, and  = { ∈  :  ( ) =  }. Algorithm 1 shows how
to check that  ∈  is 1-live in Σ , without computing the entire system. By applying the
algorithm to each  ∈  , we can discover which transitions of Σ are not 1-live, and therefore
can be removed without changing the behaviour of the net.</p>
      <p>The algorithm takes as input  , the set of all the agents in the system, and a set of labels Λ ,
and returns true if there is a firing sequence of transitions that enable  , false otherwise. In
addition, if one exists, the algorithm returns the sequence  of transitions leading to  . In the
ifrst call Λ = { }.</p>
      <p>The algorithm has a recursive structure. The first step consists in computing the minimal
paths from the initial state of Σ Λ to  (this is done by the function comp_min_paths). If there
are no minimal paths in  (Σ Λ), then it returns false, since Σ Λ does not need to be further
explored. Otherwise, it selects a minimal path  , through the function select_path. Let  ( ) be
the set of labels of the transitions in  . If Σ  ( ) = Σ Λ, then the algorithm returns true, since
we found a path that can be executed on Σ and enables  . When this happens, there is no need
to look for alternative paths, and the computation can stop and return true. This is not the case
if a recursive call returns false, since the unreachability of  may be due to a wrong choice of
the path in one of the previous steps. Then, we need to check if, in previous calls, other paths
could have been chosen, leading to diferent subsystems, and check if  is reachable in them. If
 is not reachable from any path, then we can conclude that  is not 1-live.</p>
      <p>By construction, for each transition  in the sequence  returned by Algorithm 1, the set of
preconditions and the set of postconditions are the same in Σ and in Σ  ( ).</p>
      <p>Theorem 1. Algorithm 1 is correct, i.e. for each transition  ∈  , the algorithm returns true if
 is 1-live in Σ .
Proof. As the first step, we show that if the algorithm returns true, then  is executable in
Σ , and in particular the path  = 1... returned by the algorithm is a firing sequence of Σ .
We proceed by induction, starting to show that 1 is enabled in 0. By contradiction, let us
suppose that 1 is not enabled in 0. Then, there must be a precondition  ∈ ∙ 1, such that
 ̸∈ 0. By the construction, all the elements in ∙ 1 come from agents that have transitions
labelled with  (1), and all these agents are included in Σ  ( ); hence, if 1 is enabled in the
initial state of Σ  ( ), it must be enabled also in 0. Let   = 1...,  &lt; , be a prefix of the
Algorithm 1 Check if  is 1-live
procedure check_1liveness(, {Σ  :  ∈ {1, ..., }}, Λ) ∈ {true, false } × Π
Π = comp_min_paths( (Σ Λ), )
if Π == ∅</p>
      <p>return false, ∅
end if
while Π ̸= ∅
 =select_path(Π)
Π = Π ∖ { }
if Σ Λ == Σ  ( )
 ′ = 
return true, 
end if
,  ′ = check_1liveness(, {Σ  :  ∈ {1, ..., }},  ( ))
if  == true</p>
      <p>return true,  ′
end if
end while
return false, ∅
end procedure
ifring sequence  and  the state reached in Σ after executing  . We show that +1 is enabled
in . By contradiction, let us suppose that +1 is not enabled in . Then there must be a place
 ̸∈  and such that  ∈ ∙ +1. This place must be also in Σ  ( ), since, by the construction,
Σ  ( ) includes all the agents with transitions labelled  (+1), and the preconditions of +1
on Σ cannot belong to any other agent. Let 0( )11( )... ( ) the sequence of states and
 ( ), since +1 can fire after
transitions obtained by firing the sequence 1... in Σ  ( );  ∈ 
  in Σ  ( ), and there must be an index  ≤  such that  ∈  for each  ≥ . If  = 0, then
 ∈ 0, since 0( ) ⊆ 0, by the construction. If  &gt; 0, then  ∈ ∙, and  ∈ . Since the
 ( )
set of preconditions and postconditions of +1... is the same in Σ and Σ  ( ), if  ∈ 
after the execution of +1..., then  ∈  after firing the same sequence.</p>
      <p>As the second step, we need to prove that if the algorithm returns false, then  is not 1-live
in Σ . This follows from the observation that adding agents to the system can only restrict the
possibility of the transitions in Σ  to occur by adding synchronizations constraints. Therefore,
if  is a transition in Σ Λ, but there is no sequence in Σ Λ enabling , a fortiori there cannot be
any sequence in Σ .</p>
      <p>Proposition 2. Algorithm 1 terminates after a finite number of steps.</p>
      <p>Proof. The thesis follows from the finiteness of the number of agents in the system, and of the
number of minimal paths.</p>
      <p>Algorithm 1 does not guarantee that the system Σ  ( ) to check will be smaller than Σ , since
the two systems may coincide (for example in the systems in Fig. 4 and Fig. 6). However, in
distributed systems in which each agent interacts with a small subset of other agents of the
entire system, it may become a convenient technique. An example of such a system could be
represented by a social network, where the number of users is huge, but each of them has a
limited number of connections. A toy example is represented in Fig. 7. In this case concurrency
enlarges the size of the global transition system, while does not afect the reduced systems.</p>
      <p>The required computation can also be reduced by choosing proper heuristics for the function
select_path, so that the more convenient paths are selected to be analysed first. A possible
criterion could be to select first the paths requiring to add the minor number of new agents,
even when they are longer and with more labels than others. Consider for example the system
of agents in Fig. 8. The four agents are represented at the top of the figure, and two of their
compositions at the bottom. Transition  belongs only to agent 1 (the second from the left), and
there are two minimal sequences reaching it: , and . Although  is shorter, the label  is
shared by two more agents: agent 0 and agent 2, whereas  belongs only to agent 1, and  is
shared with agent 3 only. The two compositions of agents represented in Fig. 8 shows Σ {,}
(on the left), and Σ {,,} (on the right). It is easy to see that Σ {,,} has less reachable states
than Σ {,}, and it is suficient to decide the 1-liveness of the transition labelled with .</p>
      <p>
        Note that, for simplicity, once more we have considered only the specific 1-safe labelled
systems. If we restrict ourselves to such situation, most of the reasoning can be repeated without
using Petri nets. However, the real performance improvement is revealed when we utilize more
sophisticated synthesis algorithms based on region theory. One can expect that in such cases the
number of transitions with the same label appearing in a single local model would be smaller.
Moreover, such approach gives a chance to decompose local models into sequential components
(see [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]) and use them instead of entire modules.
      </p>
    </sec>
    <sec id="sec-5">
      <title>5. Summary</title>
      <p>In this paper we provided a 1-safe Petri net framework to support the reasoning about
multiagent systems. We have shown that it faithfully reflects the transition-based composition of the
agents and illustrates the usage in the case of checking 1-liveness of transitions. Continuing this
thread of research we plan to take a closer look to the ideas highlighted at the end of Section 4.
The mentioned semi-automatic decomposition of the agents’ behaviour into smaller subsystems
has a large potential not only in the case of checking 1-liveness, but also in preparing the
environment (formal assumption subsystem) for the assume-guarantee reasoning.</p>
      <p>
        Taking into account the similarity of labelled 1-safe Petri net models of AMAS described
in paper with Nested Unit Petri Nets, we would like to examine the efectiveness of proposed
algorithm comparing with the liveness checks in the existing tools for analysing NUPNs like
EVALUATOR [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ].
      </p>
      <p>However, in the future we would like to consider systems that are k-safe. The reason is
twofold, there are synthesis methods which work fine without the restriction of 1-safeness.
The resulting nets usually require less use of transition splitting, hence are smaller. Moreover,
such approach is much more natural in planned by us analysis of asynchronous systems, where
the synchronization is data-oriented (not action-oriented as in the approach presented in this
paper).</p>
      <p>
        Recently, an approach to automated synthesis of MAS based on satisfiability and model
checking tools, has been presented in [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ]. After specifying the constraints and the strategic
properties to be met, the tool, exploiting monotonic theory for ATL [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ], looks for the model
satisfying all requirements. To reason about strategic abilities of MASs variants of ATL* and SL
logic are considered [
        <xref ref-type="bibr" rid="ref3 ref31">3, 31</xref>
        ]. As a future work, we plan to utilize the described framework both
in direct model checking using 1-safe Petri nets, and in the synthesis of MAS satisfying desired
ATL formulas.
      </p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgments</title>
      <p>The first author was supported by the Italian MUR. The second author was supported by
the National Centre for Research and Development, Poland (NCBR), and by the Luxembourg
National Research Fund (FNR), under the PolLux/FNR-CORE project STV (POLLUX-VII/1/2019).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>J.</given-names>
            <surname>Ferber</surname>
          </string-name>
          ,
          <string-name>
            <surname>G.</surname>
          </string-name>
          <article-title>Weiss, Multi-agent systems: an introduction to distributed artificial intelligence</article-title>
          , volume
          <volume>1</volume>
          ,
          <string-name>
            <surname>Addison-Wesley</surname>
            <given-names>Reading</given-names>
          </string-name>
          ,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>D.</given-names>
            <surname>Kurpiewski</surname>
          </string-name>
          , Ł. Mikulski, W. Jamroga, STV+AGR:
          <article-title>towards practical verification of strategic ability using assume-guarantee reasoning</article-title>
          ,
          <source>CoRR abs/2203</source>
          .01033 (
          <year>2022</year>
          ). doi:
          <volume>10</volume>
          .48550/arXiv.2203.01033.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>F.</given-names>
            <surname>Belardinelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Jamroga</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Malvone</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Murano</surname>
          </string-name>
          ,
          <article-title>Strategy logic with simple goals: Tractable reasoning about strategies</article-title>
          ,
          <source>in: 28th International Joint Conference on Artificial Intelligence (IJCAI</source>
          <year>2019</year>
          ),
          <year>2019</year>
          , pp.
          <fpage>88</fpage>
          -
          <lpage>94</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>W.</given-names>
            <surname>Jamroga</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Penczek</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Sidoruk</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Dembinski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. W.</given-names>
            <surname>Mazurkiewicz</surname>
          </string-name>
          ,
          <article-title>Towards partial order reductions for strategic ability</article-title>
          ,
          <source>J. Artif. Intell. Res</source>
          .
          <volume>68</volume>
          (
          <year>2020</year>
          )
          <fpage>817</fpage>
          -
          <lpage>850</lpage>
          . URL: https: //doi.org/10.1613/jair.1.11936. doi:
          <volume>10</volume>
          .1613/jair.1.11936.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>F.</given-names>
            <surname>Raimondi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Lomuscio</surname>
          </string-name>
          ,
          <article-title>Model Checking ATL and its epistemic extensions</article-title>
          ,
          <source>Technical Report, Technical Report RN/05/01</source>
          , University College London,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>A.</given-names>
            <surname>Lomuscio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Strulo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Walker</surname>
          </string-name>
          , P. Wu,
          <article-title>Assume-guarantee reasoning with local specifications</article-title>
          ,
          <source>International Journal of Foundations of Computer Science</source>
          <volume>24</volume>
          (
          <year>2013</year>
          )
          <fpage>419</fpage>
          -
          <lpage>444</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>W.</given-names>
            <surname>Jamroga</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Knapik</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Kurpiewski</surname>
          </string-name>
          , Ł. Mikulski,
          <article-title>Approximate verification of strategic abilities under imperfect information</article-title>
          ,
          <source>Artif. Intell</source>
          .
          <volume>277</volume>
          (
          <year>2019</year>
          ). doi:
          <volume>10</volume>
          .1016/ j.artint.
          <year>2019</year>
          .
          <volume>103172</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>D.</given-names>
            <surname>Kurpiewski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Knapik</surname>
          </string-name>
          , W. Jamroga,
          <article-title>On domination and control in strategic ability</article-title>
          ,
          <source>in: Proceedings of AAMAS'19</source>
          ,
          <string-name>
            <surname>International</surname>
            <given-names>Foundation</given-names>
          </string-name>
          <source>for Autonomous Agents and Multiagent Systems</source>
          ,
          <year>2019</year>
          , pp.
          <fpage>197</fpage>
          -
          <lpage>205</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>S.</given-names>
            <surname>Pujari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Mukhopadhyay</surname>
          </string-name>
          ,
          <article-title>Petri net: A tool for modeling and analyze multi-agent oriented systems</article-title>
          ,
          <source>International Journal of Intelligent Systems and Applications</source>
          <volume>4</volume>
          (
          <year>2012</year>
          )
          <fpage>103</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>R.</given-names>
            <surname>Lukomski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Wilkosz</surname>
          </string-name>
          ,
          <article-title>Modeling of multi-agent system for power system topology verification with use of Petri nets</article-title>
          ,
          <source>in: 2010 Modern Electric Power Systems</source>
          , IEEE,
          <year>2010</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>6</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>M. H.</given-names>
            <surname>Everdij</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. B.</given-names>
            <surname>Klompstra</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H. A.</given-names>
            <surname>Blom</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B. Klein</given-names>
            <surname>Obbink</surname>
          </string-name>
          ,
          <article-title>Compositional specification of a multi-agent system by stochastically and dynamically coloured Petri nets</article-title>
          ,
          <source>in: Stochastic hybrid systems</source>
          , Springer,
          <year>2006</year>
          , pp.
          <fpage>325</fpage>
          -
          <lpage>350</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>A. K. Galan</surname>
            ,
            <given-names>A. D.</given-names>
          </string-name>
          <string-name>
            <surname>Baker</surname>
          </string-name>
          ,
          <article-title>Multi-agent communication in JAFMAS, Trans: Propose to Q3 5 (1999) S7</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>K.</given-names>
            <surname>Hiraishi</surname>
          </string-name>
          ,
          <article-title>A Petri-net-based model for the mathematical analysis of multi-agent systems</article-title>
          ,
          <source>IEICE Transactions on Fundamentals of Electronics, Communications and Computer Sciences</source>
          <volume>84</volume>
          (
          <year>2001</year>
          )
          <fpage>2829</fpage>
          -
          <lpage>2837</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>V. A.</given-names>
            <surname>Ziparo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Iocchi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. U.</given-names>
            <surname>Lima</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Nardi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. F.</given-names>
            <surname>Palamara</surname>
          </string-name>
          , Petri net plans,
          <source>Autonomous Agents and Multi-Agent Systems</source>
          <volume>23</volume>
          (
          <year>2011</year>
          )
          <fpage>344</fpage>
          -
          <lpage>383</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>C.</given-names>
            <surname>Molinero</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Núñez</surname>
          </string-name>
          ,
          <article-title>Planning of work schedules through the use of a hierarchical multi-agent system</article-title>
          ,
          <source>Automation in Construction</source>
          <volume>20</volume>
          (
          <year>2011</year>
          )
          <fpage>1227</fpage>
          -
          <lpage>1241</lpage>
          . URL: https:// www.sciencedirect.com/science/article/pii/S0926580511000793. doi:https://doi.org/ 10.1016/j.autcon.
          <year>2011</year>
          .
          <volume>05</volume>
          .006.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>S.</given-names>
            <surname>Kouah</surname>
          </string-name>
          , D.-E. Saïdouni,
          <string-name>
            <surname>J.-M. Ilié</surname>
          </string-name>
          ,
          <article-title>Synchronized Petri net: A formal specification model for multi agent systems</article-title>
          .,
          <source>J. Softw</source>
          .
          <volume>8</volume>
          (
          <year>2013</year>
          )
          <fpage>587</fpage>
          -
          <lpage>602</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>H.</given-names>
            <surname>Garavel</surname>
          </string-name>
          ,
          <article-title>Nested-unit Petri nets</article-title>
          ,
          <source>Journal of Logical and Algebraic Methods in Programming</source>
          <volume>104</volume>
          (
          <year>2019</year>
          )
          <fpage>60</fpage>
          -
          <lpage>85</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>E.</given-names>
            <surname>Badouel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Bernardinello</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Darondeau</surname>
          </string-name>
          , Petri net synthesis, Springer,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>J.</given-names>
            <surname>Cortadella</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Kishinevsky</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Kondratyev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Lavagno</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Yakovlev</surname>
          </string-name>
          ,
          <article-title>Petrify: a tool for manipulating concurrent specifications and synthesis of asynchronous controllers</article-title>
          ,
          <source>IEICE Transactions on information and Systems</source>
          <volume>80</volume>
          (
          <year>1997</year>
          )
          <fpage>315</fpage>
          -
          <lpage>325</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>L.</given-names>
            <surname>Gomes</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. P.</given-names>
            <surname>Barros</surname>
          </string-name>
          ,
          <article-title>Structuring and composability issues in Petri nets modeling</article-title>
          ,
          <source>IEEE Transactions on Industrial Informatics</source>
          <volume>1</volume>
          (
          <year>2005</year>
          )
          <fpage>112</fpage>
          -
          <lpage>123</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>W.</given-names>
            <surname>Jamroga</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Penczek</surname>
          </string-name>
          , T. Sidoruk,
          <article-title>Strategic abilities of asynchronous agents: Semantic side efects</article-title>
          ,
          <source>Proceedings of AAMAS</source>
          <year>2021</year>
          (
          <year>2021</year>
          )
          <fpage>1545</fpage>
          -
          <lpage>1547</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>C. A.</given-names>
            <surname>Petri</surname>
          </string-name>
          , Kommunikation mit Automaten,
          <source>Ph.D. thesis</source>
          , Hamburg Univ., Germany,
          <year>1962</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>T.</given-names>
            <surname>Murata</surname>
          </string-name>
          ,
          <article-title>Petri nets: Properties, analysis and applications</article-title>
          ,
          <source>Proceedings of the IEEE</source>
          <volume>77</volume>
          (
          <year>1989</year>
          )
          <fpage>541</fpage>
          -
          <lpage>580</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>J. L.</given-names>
            <surname>Peterson</surname>
          </string-name>
          ,
          <article-title>Petri nets</article-title>
          ,
          <source>ACM Computing Surveys (CSUR) 9</source>
          (
          <year>1977</year>
          )
          <fpage>223</fpage>
          -
          <lpage>252</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>N. D.</given-names>
            <surname>Jones</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. H.</given-names>
            <surname>Landweber</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y. E.</given-names>
            <surname>Lien</surname>
          </string-name>
          ,
          <article-title>Complexity of some problems in Petri nets</article-title>
          ,
          <source>Theoretical Computer Science</source>
          <volume>4</volume>
          (
          <year>1977</year>
          )
          <fpage>277</fpage>
          -
          <lpage>299</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>J.</given-names>
            <surname>Esparza</surname>
          </string-name>
          ,
          <article-title>Decidability and complexity of Petri net problems-an introduction</article-title>
          ,
          <source>in: Advanced Course on Petri Nets</source>
          , Springer,
          <year>1996</year>
          , pp.
          <fpage>374</fpage>
          -
          <lpage>428</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>G.</given-names>
            <surname>Rozenberg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Engelfriet</surname>
          </string-name>
          ,
          <article-title>Elementary net systems</article-title>
          ,
          <source>in: Advanced Course on Petri Nets</source>
          , Springer,
          <year>1996</year>
          , pp.
          <fpage>12</fpage>
          -
          <lpage>121</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>R.</given-names>
            <surname>Mateescu</surname>
          </string-name>
          ,
          <source>Specification and analysis of asynchronous systems using CADP</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <given-names>A.</given-names>
            <surname>Niewiadomski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Kacprzak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Kurpiewski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Knapik</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Penczek</surname>
          </string-name>
          , W. Jamroga,
          <article-title>MsATL: A tool for SAT-based ATL satisfiability checking</article-title>
          ,
          <source>in: Proceedings of 19th International Conference on Autonomous Agents and Multiagent Systems AAMAS</source>
          <year>2020</year>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          [30]
          <string-name>
            <given-names>M.</given-names>
            <surname>Kacprzak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Niewiadomski</surname>
          </string-name>
          , W. Penczek,
          <article-title>SAT-Based ATL Satisfiability Checking</article-title>
          ,
          <source>in: Proceedings of the 17th International Conference on Principles of Knowledge Representation and Reasoning</source>
          ,
          <year>2020</year>
          , pp.
          <fpage>539</fpage>
          -
          <lpage>549</lpage>
          . URL: https://doi.org/10.24963/kr.2020/54. doi:
          <volume>10</volume>
          .24963/kr.2020/54.
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          [31]
          <string-name>
            <given-names>M.</given-names>
            <surname>Kacprzak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Niewiadomski</surname>
          </string-name>
          , W. Penczek,
          <article-title>Satisfiability Checking of Strategy Logic with Simple Goals</article-title>
          ,
          <source>in: Proceedings of the 18th International Conference on Principles of Knowledge Representation and Reasoning</source>
          ,
          <year>2021</year>
          , pp.
          <fpage>400</fpage>
          -
          <lpage>410</lpage>
          . URL: https://doi.org/ 10.24963/kr.2021/38. doi:
          <volume>10</volume>
          .24963/kr.2021/38.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>