<!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>WOA</journal-title>
      </journal-title-group>
      <issn pub-type="ppub">1613-0073</issn>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Compositional Tool for Model Checking of Multi-Agent Systems</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Angelo Ferrando</string-name>
          <email>angelo.ferrando@unimore.it</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Vadim Malvone</string-name>
          <email>vadim.malvone@telecom-paris.fr</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="editor">
          <string-name>Model Checking, Multi-Agent Systems, Verification Tools</string-name>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Télécom Paris, Institut Polytechnique de Paris</institution>
          ,
          <country country="FR">France</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Modena and Reggio Emilia</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2024</year>
      </pub-date>
      <volume>25</volume>
      <fpage>8</fpage>
      <lpage>10</lpage>
      <abstract>
        <p>Verifying software and hardware systems is challenging due to their complexity, often making exhaustive verification impractical. Transitioning from monolithic systems to Multi-Agent Systems (MAS) exacerbates these challenges, requiring advanced tools for efective verification. Existing tools like MCMAS and STV face limitations in modularity, flexibility, and usability. This paper is based on VITAMIN (VerIfica Tion of A MultI-ageNt system), a formal verification framework designed to support various logic and model formalisms while providing a user-friendly experience. Specifically, we apply VITAMIN to a case study in the robotics domain, focusing on an extension of Alternating-time Temporal Logic with resource bounds (RB-ATL). Through this case study, we demonstrate VITAMIN's ability to guide end-users in the formal verification process and report experimental results to showcase its usability and feasibility.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>CEUR
ceur-ws.org</p>
    </sec>
    <sec id="sec-2">
      <title>1. Introduction</title>
      <p>
        Verifying software and hardware systems is challenging due to their complexity and size, often
making exhaustive verification impractical without abstraction or optimisation. This
complexity demands deep expertise in formal methods, limiting the usability of formal verification
techniques in real-world development. One of the most representative approaches to achieve
exhaustive formal verification is Model Checking (MC) [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>
        Transitioning from monolithic systems to Multi-Agent Systems (MAS) exacerbates these
challenges. In fact, as monoloithic systems, MAS face similar verification challenges but with
added complexity due to agents’ rationality and their interactions. Formal verification for MAS
relies heavily on tools like MCMAS [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] and STV [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. MCMAS is widely used for strategic
verification of MAS due to its early development and foundational role in research. However,
it has issues hindering broader adoption, including a hard-coded verification process and a
lack of modularity, which afects the separation of diferent logics and models. Despite various
extensions, MCMAS lacks transparent extension capabilities for new logics and models, causing
maintainability issues. Additionally, its execution can be challenging as it requires additional
tools like Eclipse for installation and lacks comprehensive external documentation. These
limitations stem from its primary function as a research tool. STV is designed for specific
verification goals but lacks the compositional nature and flexibility to support diferent logics
or models for MAS verification. It also lacks comprehensive documentation to assist users and
developers. Both MCMAS and STV require a strong background in formal methods, making
them challenging for non-expert users. In summary, both tools lack modularity and usability.
      </p>
      <p>
        These challenges are tackled by VITAMIN (VerIfica Tion of A MultI-ageNt system) [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], a new
formal verification framework for MAS. VITAMIN aims to be highly compositional, supporting
various logic and model formalisms, while also providing a user-friendly experience for both
developers and end-users. VITAMIN aims to generalise MAS verification without being tied to
specific logic or model formalisms. It achieves compositionality through its design, minimising
assumptions about the types of logics and models used. The user experience is enhanced to
guide the entire verification process. VITAMIN is still under development, but its compositional
nature allows for straightforward extension of its components by external developers.
      </p>
      <p>
        While [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] discusses the architecture and engineering of VITAMIN, this paper focuses on
applying VITAMIN to a interesting case study in the robotics domain. Specifically, we aim to
demonstrate how VITAMIN can guide the end-user in the formal verification of a MAS. Although
VITAMIN is general and supports various formal logics, to improve readability and better explain
its process, we focus on an extension of Alternating-time Temporal Logic (ATL) [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] with resource
bounds, called RB-ATL [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Using this logic, we present step-by-step how VITAMIN can assist
the end-user in verifying an extension of the Curiosity [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] rover case study against formal
specifications expressed through RB-ATL. In addition to detailing the steps required by VITAMIN
to achieve formal verification, we also report experimental results from the case study. The goal
of this work is to demonstrate the high usability of VITAMIN and its feasibility in an application
to a robotic case study.
      </p>
      <p>The structure of the paper is as follows: Section 2 introduces all the preliminaries necessary to
understand the content of the paper. Section 3 presents the Curiosity rover case study. Section 4
details the step-by-step use of VITAMIN to support the end-user in the formal verification of the
case study. Finally, Section 5 concludes the paper and points to future directions.</p>
    </sec>
    <sec id="sec-3">
      <title>2. Preliminaries</title>
      <p>Let us fix some notation and terminology that will be used in the following. If  is a set and
 ⊆  , we denote by  the complementary set  ⧵ 
of  in  . If  is a sequence, we denote by
| | its length and, given  ≤ | | , we let   denote the  -th element of  ,  ≤ the prefix  1, … ,   of
 and  ≥ the sufix of  starting at   . If  is finite, then ( )
 = ⟨ 1, … ,   ⟩ is a tuple, then []
denotes its  -th component   .</p>
      <p>denote its last element  || . If</p>
      <sec id="sec-3-1">
        <title>Definition 1.</title>
        <p>A Concurrent Game Structure (CGS for short) is a tuple  = ⟨, , , 

•</p>
        <p>is a non-empty set of atomic propositions;
•  = {1, … , }</p>
        <p>is a finite set of agents;
•  is a non-empty set of states and   ∈  is the initial state;
• for any  ∈ 
 = ⋃∈</p>
        <p>,   is a set of actions,  = Π
  the set of all actions;
∈   is the set of tuples of actions, and
•  ∶  ×  → (2  ⧵ ∅) is the protocol function that associates to any agent  and state  a
non-empty subset of   representing the actions that are available for  at  . We impose that
the idle action ⋆ always belong to  (, ) for any  ;
•  ∶  ×  →  is the transition function, that is given a state  and a tuple of actions a
(where ∀ , a[] ∈  (, ) ) such function outputs a state  ′;
•  ∶  → 2  is the labeling function associating to any state  a set of atomic propositions;
such set can be empty and represents the set of proposition that are true at  .</p>
        <p>If  is a coalition (i.e., a set of agents) and  is a state a C-action available at  is a tuple 
whose length is || and such that   ∈  (, ) for each  ∈  and for each  ∈  ,   = # , where #
is a fixed symbol used as placeholder for an arbitrary action of player  . We denote by (, )
the set of all C-actions at  . If  ∈ (, ) and  ∈ ( , ) then  ⋅  denotes the unique joint
action a ∈ (, ) such that a[] = [] for each  ∈  and a[] = [] for each  ∈  . We
denote by (, ) the set ⋃∈ (, ) . A path  is an infinite alternated sequence  1, a1,  2, …
of states and tuples in  such that for all  ≥ 1 , (  , a ) =  +1 . If  is a path, we denote by  
the sub-sequence of  only containing states. If ℎ ∈  + is a finite sequence of states, we say that
ℎ is a history if there is a path  such that ℎ =  ≤ for some  ∈ ℕ . We use  to denote the set
of all histories.</p>
        <sec id="sec-3-1-1">
          <title>2.1. Resource Bounded ATL</title>
          <p>
            In many multi-agent systems, agents are resource-bounded, in the sense that they require
resources in order to act. To formalise such notion, in [
            <xref ref-type="bibr" rid="ref6">6</xref>
            ] the authors introduced Resource
Bounded ATL (RB-ATL for short). RB-ATL is a variant of ATL in which strategic formulae are
decorated with bound, i.e., natural numbers vectors of finite size. The intended meaning of a
formula ⟨⟨ b⟩⟩  of RB-ATL can be expressed as the coalition of agents  has a strategy to achieve
the objective  whose cost does not surpass b. We now recall the syntax and semantics of RB-ATL.
Definition 2. Formulae of RB-ATL are defined by the following grammar:
 ∶∶= ⊤ ∣  ∣ ¬ ∣  ∧  ∣ ⟨⟨
          </p>
          <p>b⟩⟩ X  ∣ ⟨⟨ b⟩⟩ G  ∣ ⟨⟨ b⟩⟩  U 
where  ∈  ,  ⊆  , b is any bound, ⟨⟨ b⟩⟩ is the strategic operator, X is the next operator, G
is the globally operator, and U is the until operator. We can derive the boolean connectives ⊥, ∨,
and → as usual. We define ⟨⟨ b⟩⟩ F  as ⟨⟨ b⟩⟩ ⊤ U  . We will use ,  , , etc., to denote arbitrary
formulae.</p>
          <p>Formulae of RB-ATL are interpreted over RB-CGSs. These are CGSs in which a cost (a natural
number vector) is associated to any agent action at any state. The formal definition follows.</p>
        </sec>
      </sec>
      <sec id="sec-3-2">
        <title>Definition 3.</title>
        <p>A Resource Bounded CGS (RB-CGS for short) is a triple  = ⟨,  ,  ⟩
where:
•  ≥ 1 is a natural number (the number of resources types);
•  ∶  ×  → ℕ
a vector in ℕ .</p>
        <p>is a function associating to any state  and action  , a cost  (, )
, that is</p>
        <p>
          As in [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] we impose that any agent at any state has at its disposal the idle action ⋆ and that the
cost of such action is always 0.
        </p>
        <p>Strategies are defined in the standard way as follows.
 ∈</p>
        <p>it holds that   ( ≤ )[] =
paths whose first element is  .</p>
        <p>Let  be a state and  ∈ (, )</p>
      </sec>
      <sec id="sec-3-3">
        <title>Definition 4.</title>
        <p>A strategy for a coalition of agents  is a function   ∶  → (, )
mapping a
history ℎ to a joint action  ∈ (, (ℎ))</p>
        <p>.</p>
        <p>A path  =  1, a1,  2 … is compatible with a joint strategy   if for every  ≥ 1 and every
a [] . We denote with (, 
 ) the set of all   -compatible
always;
if  ∈ ()</p>
        <p>;
if it is not the case that ,  ⊧ 
(denoted ,</p>
        <p>⊧ )̸ ;
if ,  ⊧ 
and ,  ⊧</p>
        <p>;
b⟩⟩ X  if there is a b-consistent strategy   for the coalition  such that for every
path  ∈ (, 
 ) we have that ,</p>
        <p>2 ⊧  ;
path  ∈ (, 
 ) and for every  ≥ 1 , we have that , 
 ⊧  ;
b⟩⟩ G  if there is a b-consistent strategy   for the coalition  such that for every
• ,  ⊧ ⊤
• ,  ⊧ 
• ,  ⊧ ¬
• ,  ⊧  ∧ 
• ,  ⊧ ⟨⟨
• ,  ⊧ ⟨⟨
. The cost of  at  is given by:
(, ) =

∑ (
=1
∑  (, [])
∈
 ,   ( ≤ )) ≤ b</p>
        <p>Let   be a strategy for the coalition  ,  =  1, a1,  2, … be a path in (, 
say that  is b-consistent when for each natural number  ≥ 1 , we have that:
 ), and b ∈ ℕ . We
A strategy   for a coalition  is b-consistent whenever, for every state  , given any  ∈ (, 
 ),
 is b-consistent.</p>
        <p>We now define the semantic interpretation of RB-ATL formulae.</p>
      </sec>
      <sec id="sec-3-4">
        <title>Definition 5.</title>
        <p>Given a RB-CGS  , a state  of  , and a formula  , the satisfaction relation ,  ⊧ 
is inductively defined on the structure of  as follows:
• ,  ⊧ ⟨⟨ b⟩⟩  U  if there is a b-consistent strategy   for the coalition  such that for every
path  ∈ (,   ) there exists a  ≥ 1 such that ,   ⊧  and for every 1 ≤  &lt;  we have
that ,   ⊧  .</p>
        <p>We write  ⊧</p>
        <p>and we say that  satisfies  if ,   ⊧  .</p>
        <p>
          In [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] the authors claim that the model-checking problem for RB-ATL can be solved in time
that is linear on the size of the model and exponential in the number  of resource bounds. We
report the exact statement of the Theorem.
        </p>
        <p>
          Theorem 1 ([
          <xref ref-type="bibr" rid="ref6">6</xref>
          ]). Given a finite RB-CGS  and a formula  , there is an algorithm that computes
[[]]  which runs in O(||, || 2+1 ) where || is the size of the RB-CGS and  is its the number of
resources.
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>3. Case study</title>
      <p>
        The Curiosity rover stands as one of the most sophisticated systems ever deployed for planetary
exploration missions. Its primary goals are to capture image data and gather soil and rock
samples. Unlike the original model [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], in this scenario, the rover is equipped with autonomous
decision-making capabilities, as described in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. However, contrary to the scenario in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], we
assume the rover operates with perfect information but factor in the resources necessary to
accomplish the mission. We simulate an inspection mission where the Curiosity rover patrols a
topological map of the Martian surface.
      </p>
      <p>In Figure 1, we illustrate the model  that describes a sample mission for the rover. The
mission begins with the rover in state   , where it must execute a setup action (ℎ ) that involves
checking one of the rover’s three main components: the arm ( ), the mast ( ), or the wheels
( ). To conserve time and energy, the mechanic (the entity responsible for performing the setup
checks and making any necessary adjustments) conducts only one setup operation per mission.
Specifically, checking the arm requires 5 units of time and 3 units of energy, inspecting the mast
takes 2 units of time and 4 units of energy, and examining the wheels consumes 3 units of time
and 5 units of energy. These varying requirements are due to the difering complexities of each
action. The rover must validate the setup operation. If, in the initial state, the mechanic chooses
to check the arm, denoted as  , then in the subsequent state,  1, the rover needs to perform
the  action to proceed from  1. The same logic applies to the other two setup actions. After
the selection, the mechanic can either choose to check and potentially correct the component
(action  ) or decline the operation (action  ). In the former case, the rover can continue the
mission, whereas in the latter, the mission ends with an error. If the mechanic collaborates, the
rover can begin the mission. We denote the state where the rover is at the base camp as  4. The
objective is for the rover to move from its initial position, take a picture of a sample rock on
Mars, and then return to the starting position. Specifically, from state  4, the rover can decide
to move left (  ) to state  6 or right ( ) to state  7. In either of these states, the rover can take a
photo of a sample rock (action  ). Following this step, the rover must conclude the mission by
returning to the base camp. To do this, it needs to perform the complementary move action to
return to the previously visited state ( from  6 and  from  7).</p>
      <p>(|, )


5
(, )
(, )
,

6


1
(ℎ, )
(|, )
(, )
(, )
(, )
(, )
(ℎ, )
(, ⋆)






3
4
(, )
,
(, )
∅
 2
(⋆, ⋆)
(ℎ, )
(, )
(, )
(, )


2
(, )
(|, )
(⋆, )
(⋆, )
(⋆, )
,

7
(, )
(, )
∅
 1
(⋆, ⋆)


8
ready to make a picture,  as in position,  as picture left, and  as picture right.</p>
      <p>Given the model  , we can define several specifications. For example, the ATL specification
that describes the rover mission is</p>
      <p>1 = ⟨⟨   ⟩⟩  (( ∧  ) ∧ ⟨⟨   ⟩⟩  (( ∨  ) ∧ ⟨⟨   ⟩⟩  ( ∧  )))
In words, this formula means that there exists a strategy for the rover such that it will eventually
be ready to start the mission, can take a picture of a sample rock, and can return to the base camp.
In the previous formula, we assume that the mechanic may choose not to cooperate. In this
scenario, it becomes impossible for the rover to complete the mission. Thus, the formula  1 is
false in the model  . However, if we assume the mechanic cooperates (i.e., the mechanic checks
a component and corrects it if necessary via the action  ), we can rewrite the specification as
an RB-ATL formula:
 2 = ⟨⟨   , ℎ</p>
      <p>⟨b1,b2⟩⟩⟩  (( ∧  ) ∧ ⟨⟨   ⟩⟩  (( ∨  ) ∧ ⟨⟨   ⟩⟩  ( ∧  )))
where b1 sets the resource bound for time, while b2 sets the resource bound for energy. If b1 and
b2 are suficient for the mechanic to select the actions necessary to achieve its strategic objectives,
then the rover has a strategy to satisfy the formula by relying on the mechanic’s cooperation,
that is</p>
      <p>satisfies  2. In fact, a simple strategy  can be defined as follows:  (  ) = ℎ ,</p>
    </sec>
    <sec id="sec-5">
      <title>4. VITAMIN in action</title>
      <p>In this section, we demonstrate how VITAMIN can be used to verify the previously presented
case study. We do this by following all the steps required to build the CGS shown in Figure 1.
Note that, in VITAMIN, there are two possible ways to create CGSs. The first method is for
expert users and requires the user to upload a properly formatted CGS according to VITAMIN’s
input format. The second method is for non-expert users and allows VITAMIN to guide the user
through the CGS creation process in a step-by-step fashion.</p>
      <p>Agents. The first aspect VITAMIN queries the user about is the number of agents in the MAS.
agents are in the MAS and which are their names. Considering the rover case study, in this
step, we report the presence of two agents, called rover and mechanic, respectively.
States.</p>
      <p>Once the agents have been decided, VITAMIN asks for the states of the CGS. Figure 3
reports this step. In our scenario, according to Figure 1, we have 11 diferent states, that is the
initial state   , the normal states  1 to  8, and the error states  1 and  2.</p>
      <p>Atoms. States may contain atomic propositions, thus, after gathering the states, VITAMIN
expects the user to provide the atoms holding in such states. Figure 4 reports this step in
VITAMIN’s GUI. Considering once more the rover case study, in this step we may find 8 diferent
atomic propositions.</p>
      <p>Labelling.</p>
      <p>Naturally, atomic propositions make sense when linked to the states of our model.
Thus, after gathering the atoms, VITAMIN requires the user to report which atoms hold in which
states of the CGS. Figure 5 report this step for the rover case study. Here, we can observe how
the states are labelled according to Figure 1, where in each state the user can list all the atoms
holding in such a state (e.g., in state  4 the  and   atoms hold).</p>
      <p>Resources. Since we are talking about CGSs with resources (i.e., RB-CGSs), after populating
the model with states and atoms, the user needs to insert the number and names of the resources
to be considered in the RB-CGS. Figure 6 reports the corresponding step in VITAMIN’s interface,
where time and energy are listed as the two resources to be considered in the model.</p>
      <p>Actions. After the agents, states, atoms, and resources have been gathered, VITAMIN continues
by asking for the actions to be performed by the agents. Figure 7 reports the list of actions
for the rover case study, where we have 10 diferent actions to be performed by the rover and
mechanic agents.</p>
      <p>Transitions. Once the actions are given, VITAMIN expects the user to insert the transitions
amongst the diferent states of the model. Figure 8 and Figure 9 report a snippet of the transitions
of the rover and mechanic agents, respectively. For lack of space, only a subset of the transitions
is reported. Note that, thanks to VITAMIN’s GUI, the user can easily and intuitively insert the
actions each agent can perform in a state to reach another state. For instance, in Figure 8, the
user can insert that the rover agent can perform the action ℎ in state   to reach states  1,  2,
and  3 (as reported in Figure 1).</p>
      <p>Costs. Last, but not least, to complete all information on the model, VITAMIN asks the user
to report the costs of the transitions. Note that, the cost is determined by the actions and the
states such actions are performed into. Figure 10 reports a snippet of the costs introduced in
the context of the rover case study. Here, we can see how the costs matches the ones presented
in Section 3, when we presented the notion of time and energy.</p>
      <p>Visualisation. Before concluding with the verification of the properties of interest, VITAMIN
allows the user to validate the model created by following the previous steps. In particular,
VITAMIN shows the resulting model via its GUI to the user.</p>
      <p>Formula and Verification. Finally, after the model is created and validated by the user, the
guided process concludes by asking the user to fill in the formula to verify on the model. In this
step, as reported in Figure 11, the user can select the logic to use (in this case RBATL), and insert
the formula to verify on the model; in this case, as an example, we reported  2 with b1 = 5 and
b2 = 1. After filling these two fields, VITAMIN runs the corresponding model checking algorithm
for the logic and model selected, and returns back to the user the result of the verification.</p>
      <sec id="sec-5-1">
        <title>4.1. Experimental results</title>
        <p>Other than showing how VITAMIN can support a user in the definition of a model to verify, we
also want to report the experimental results obtained on the verification of the actual rover
case study. We tested our tool over the rover’s mission, on a machine with the following
specifications: Intel(R) Core(TM) i 7-7700HQ CPU @ 2.80GHz, 4 cores 8 threads, 16 GB RAM
DDR4. Specifically, we verified formula  1 and  2 and reported the results so obtained in Table 1.</p>
        <p>Formula
 1
 2
 2</p>
        <p>Bounds</p>
        <p>b1 = 5, b2 = 1
b1 = 2, b2 = 2</p>
        <p>Result
⊥
⊤
⊥</p>
        <p>As we can see, the verification can be concluded within 0.1 seconds. In the case of  1, this
requires less than 4 milliseconds. For  2, the verification time ranges from 0.024 to 0.082 seconds,
depending on the values associated with b1 and b2. Now, we can discuss the outcome of the
tool. As discussed in Section 3,  1 should be false, and in fact our tool returns false. The formula
 2 with enough resources for the mechanic (like b1 = 5 and b2 = 1) is verified in  , as it is
confirmed by our tool; while with less resources (like b1 = 2 and b2 = 2)  2 is not verified in  ,
also confirmed by our tool. These experiments, although limited to the case study presented in
this paper, demonstrate the applicability and feasibility of VITAMIN in tackling resource-bound
verification of MAS.</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>5. Conclusions and Future Work</title>
      <p>In this paper, we presented how VITAMIN can guide the verification of an interesting case
study based on the Curiosity rover. We demonstrated how VITAMIN supports the user in all
specification phases, including the construction, population, and verification of the CGS against
a formal specification. We conducted experiments with VITAMIN and reported the results,
confirming its applicability. Furthermore, we evaluated not only the usability of the tool but
also its performance in the formal verification of the case study.</p>
      <p>As a future direction, we plan to further test VITAMIN on more complex case studies and to
gather feedback from the MAS community on its usability. This feedback will be used to further
improve and extend VITAMIN.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>C.</given-names>
            <surname>Baier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.-P.</given-names>
            <surname>Katoen</surname>
          </string-name>
          , Principles of model checking, MIT press,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>A.</given-names>
            <surname>Lomuscio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Qu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Raimondi</surname>
          </string-name>
          ,
          <string-name>
            <surname>MCMAS:</surname>
          </string-name>
          <article-title>an open-source model checker for the verification of multi-agent systems</article-title>
          ,
          <source>Int. J. Softw. Tools Technol. Transf</source>
          .
          <volume>19</volume>
          (
          <year>2017</year>
          )
          <fpage>9</fpage>
          -
          <lpage>30</lpage>
          . URL: https: //doi.org/10.1007/s10009-015-0378-x. doi:
          <volume>10</volume>
          .1007/S10009- 015- 0378- X.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>D.</given-names>
            <surname>Kurpiewski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Jamroga</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>Knapik, STV: model checking for strategies under imperfect information</article-title>
          , in: E. Elkind,
          <string-name>
            <given-names>M.</given-names>
            <surname>Veloso</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Agmon</surname>
          </string-name>
          , M. E. Taylor (Eds.),
          <source>Proceedings of the 18th International Conference on Autonomous Agents and MultiAgent Systems</source>
          , AAMAS '
          <fpage>19</fpage>
          , Montreal, QC, Canada, May
          <volume>13</volume>
          -17,
          <year>2019</year>
          , International Foundation for Autonomous Agents and
          <string-name>
            <given-names>Multiagent</given-names>
            <surname>Systems</surname>
          </string-name>
          ,
          <year>2019</year>
          , pp.
          <fpage>2372</fpage>
          -
          <lpage>2374</lpage>
          . URL: http://dl.acm.org/citation.cfm? id=
          <fpage>3332116</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>A.</given-names>
            <surname>Ferrando</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Malvone</surname>
          </string-name>
          ,
          <article-title>VITAMIN: A compositional framework for model checking of multiagent systems</article-title>
          ,
          <source>CoRR abs/2403</source>
          .02170 (
          <year>2024</year>
          ). URL: https://doi.org/10.48550/arXiv.2403.02170. doi:
          <volume>10</volume>
          .48550/ARXIV.2403.02170. arXiv:
          <volume>2403</volume>
          .
          <fpage>02170</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>R.</given-names>
            <surname>Alur</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T. A.</given-names>
            <surname>Henzinger</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Kupferman</surname>
          </string-name>
          ,
          <article-title>Alternating-time temporal logic</article-title>
          ,
          <source>J. ACM</source>
          <volume>49</volume>
          (
          <year>2002</year>
          )
          <fpage>672</fpage>
          -
          <lpage>713</lpage>
          . URL: https://doi.org/10.1145/585265.585270. doi:
          <volume>10</volume>
          .1145/585265.585270.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>N.</given-names>
            <surname>Alechina</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Logan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. H.</given-names>
            <surname>Nga</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Rakib</surname>
          </string-name>
          ,
          <article-title>Resource-bounded alternating-time temporal logic</article-title>
          , in: W. van der Hoek,
          <string-name>
            <given-names>G. A.</given-names>
            <surname>Kaminka</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Lespérance</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Luck</surname>
          </string-name>
          , S. Sen (Eds.),
          <source>9th International Conference on Autonomous Agents and Multiagent Systems (AAMAS</source>
          <year>2010</year>
          ), Toronto, Canada, May
          <volume>10</volume>
          -14,
          <year>2010</year>
          , Volume
          <volume>1</volume>
          -3, IFAAMAS,
          <year>2010</year>
          , pp.
          <fpage>481</fpage>
          -
          <lpage>488</lpage>
          . URL: https: //dl.acm.org/citation.cfm?id=
          <fpage>1838274</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <surname>NASA</surname>
          </string-name>
          , Mars curiosity rover,
          <year>2012</year>
          . URL: https://mars.nasa.gov/msl/home/.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>A.</given-names>
            <surname>Ferrando</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Malvone</surname>
          </string-name>
          ,
          <article-title>Towards the verification of strategic properties in multi-agent systems with imperfect information</article-title>
          , in: N.
          <string-name>
            <surname>Agmon</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>An</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Ricci</surname>
          </string-name>
          , W. Yeoh (Eds.),
          <source>Proceedings of the 2023 International Conference on Autonomous Agents and Multiagent Systems, AAMAS</source>
          <year>2023</year>
          , London, United Kingdom, 29 May 2023 - 2
          <article-title>June 2023</article-title>
          , ACM,
          <year>2023</year>
          , pp.
          <fpage>793</fpage>
          -
          <lpage>801</lpage>
          . URL: https://dl.acm.org/doi/10.5555/3545946.3598713. doi:
          <volume>10</volume>
          .5555/3545946.3598713.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>