<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Concurrent Argumentation with Time: an Overview</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Stefano Bistarelli</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Maria Chiara Meo</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Carlo Taticchi</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Perugia</institution>
          ,
          <addr-line>Perugia</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University “G. d'Annunzio” of Chieti-Pescara</institution>
          ,
          <addr-line>Chieti-Pescara</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The Timed Concurrent Language for Argumentation (tcla) is a framework to model concurrent interactions between communicating agents that reason and take decisions through argumentation processes, also taking into account the temporal duration of the performed actions. Time is, indeed, a crucial factor when dealing with dynamic environments in real-world applications, where agents need to act in a coordinated fashion to reach their own goals. In this paper, we discuss the syntax and the operational semantics of tcla, providing insights on how its constructs can be used to realise complex interactions between agents.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;argumentation</kwd>
        <kwd>time</kwd>
        <kwd>concurrency</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
    </sec>
    <sec id="sec-2">
      <title>2. Argumentation Theory</title>
      <p>Argumentation Theory aims to understand and model the human natural fashion of reasoning,
allowing one to deal with uncertainty in non-monotonic (defeasible) reasoning. In his seminal
paper [1], Dung defines the building blocks of abstract argumentation.</p>
      <p>Definition 1 (AFs). Let  be the set of all available arguments1, that we call “universe”. An
Abstract Argumentation Framework is a pair ⟨, ⟩ where  ⊆  is a set of adopted arguments
and  is a binary relation on .</p>
      <p>For two arguments ,  ∈ , the notation (, ) ∈  represents an attack directed from
 against . Acceptability of arguments is then computed through methodologies like the
reinstatement labelling presented in [7], starting from attack relations in the framework.
Definition 2 (Reinstatement labelling). Let F = ⟨, ⟩ be an AF and consider the set
of labels L = {in, out, undec}. A labelling of F is a total function  :  → L. We define
() = { ∈  | () = in}, () = { ∈  | () = out} and () = { ∈
 | () = undec}. We say that  is a reinstatement labelling if and only if it satisfies the
following:
• ∀ ∈  :  ∈ () ⇐⇒ ∀ ∈  | (, ) ∈  :  ∈ ()
• ∀ ∈  :  ∈ () ⇐⇒ ∃ ∈  | (, ) ∈  ∧  ∈ ()</p>
      <p>A labelling-based semantics [8] associates with an AF a subset of all the possible labellings.
In Figure 1 we show an example of reinstatement labelling on an AF in which arguments  and
 highlighted in green are in, red ones ( and ) are out, and the yellow argument  (that attacks
itself) is undec.</p>
      <p>Given a labelling , it is possible to identify a correspondence with the extension-based
semantics [8]. In particular, the set of in arguments coincides with a complete extension, while
other semantics can be obtained through restrictions (as shown in Table 1 of [7]). In the
following, we use  ∈  ( ) to denote a labelling  corresponding to an extension of the
semantics  . Besides computing a labelling for a certain semantics  , one of the most common
tasks performed on AFs is to verify whether an argument  has a certain label  in some labelling
(credulous test) or in all labellings (sceptical test).</p>
      <p>1The set  is not present in the original definition by Dung and we introduce it for our convenience.</p>
    </sec>
    <sec id="sec-3">
      <title>3. tcla Syntax and Semantics</title>
      <p>The syntax of tcla is presented in Table 1, where  , ,  and  denote a generic process, a
sequence of procedure declarations (or clauses)2, a generic agent and a generic guarded agent,
respectively. In Table 2, then, we give the definitions for the transition rules.
 ::= .,  ::= .
 ::=  |   | (, ) →  | (, ) →  |  | ‖
 ::= ℎ(, ) →  | -(, ,  ) →  | -(, ,  ) →  |  +  |  +  | ‖</p>
      <p>Communication between tcla agents is implemented via shared memory, similarly to cla [5]
and CC [9]. In the following, we denote by ℰ the class of guarded agents and by ℰ0 the class
of guarded agents such that all outermost guards have  = 0. Suppose we have an agent 
whose knowledge base is represented by a framework  = ⟨, ⟩. An (′, ′) action
performed by the agent results in the addition of a set of arguments ′ ⊆  (where  is
the universe) and a set of relations ′ to  . When performing an addition, (possibly) new
arguments are taken from  ∖ . Intuitively, (, ) allows to specify arguments
and/or attacks to be removed from the knowledge base. The removal of an argument from an
AF also involves removing all attack relations outgoing from and incoming to that argument,
thus making  preserve the structure of an AF.</p>
      <p>
        The -(, ,  ) → , -(, ,  ) →  and ℎ(, ) →  constructs are
explicit timing primitives that allow for the specification of timeouts. The operator ℎ(′, ′)
(rules Ch (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )-(
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) in Table 2) realises a timed construct and is used to verify whether, in a given
time interval, the specified arguments and attacks are contained in the knowledge base, without
introducing any further change. If  &gt; 0 and the check is positive, the operation succeeds and
the agent ℎ(′, ′) →  can perform the subsequent action (rule Ch (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )). If  &gt; 0 but
the check is not satisfied, then the control is repeated at the next time instant and the value of
the counter  is decreased (rule Ch (
        <xref ref-type="bibr" rid="ref2">2</xref>
        )). Axiom Ch (
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) shows that, if the timeout is exceeded, i.e.,
the counter  has reached the value of 0, then the process ℎ(′, ′) →  fails. The rules
for credulous tests CT (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )-(
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) and sceptical tests ST (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )-(
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) in Table 2 require the specification
of an argument  ∈ , a label  ∈ {in, out, undec} and a semantics  [1]. -(, ,  )
succeeds if there exists at least one extension of  ( ) whose labelling  is such that () = ,
while -(, ,  ) succeeds if  is labelled  in all possible labellings  ∈  ( ).
      </p>
      <p>
        The operator + (If (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )-(
        <xref ref-type="bibr" rid="ref2">2</xref>
        ) in Table 2) is left-associative and realises an if-then-else construct:
if we have 1 + 2 (with 1, 2 ∈ ℰ ) and the guards of 1 succeed, than 1 is chosen over
2.In order for 2 to be selected, it has to be the only one such that its guards succeed and will
be selected only after 1 fails. If the guards of 1 do not fail, the execution can either move to
any consequent agent 1 which does not belong to ℰ , or proceed with 1′ + 2 ∈ ℰ .
      </p>
      <p>2Note that infinite sequences of procedure declarations are also allowed.</p>
      <p>⟨(′, ′) → , ⟨, ⟩⟩ →− ⟨ , ⟨ ∪ ′,  ∪ ′′⟩⟩</p>
      <p>with ′′ = {(, ) ∈ ′ | ,  ∈  ∪ ′}
⟨(′, ′) → , ⟨, ⟩⟩ →− ⟨ , ⟨ ∖ ′,  ∖ {′ ∪ ′′}⟩⟩
with ′′ = {(, ) ∈  |  ∈ ′ ∨  ∈ ′}</p>
      <p>′ ⊆  ∧ ′ ⊆   &gt; 0
⟨ℎ(′, ′) → , ⟨, ⟩⟩ →− ⟨ , ⟨, ⟩⟩</p>
      <p>′ ̸⊆  ∨ ′ ̸⊆   &gt; 0
⟨ℎ(′, ′) → , ⟨, ⟩⟩ →− ⟨ ℎ− 1(′, ′) → , ⟨, ⟩⟩
⟨ℎ0(′, ′) → , ⟩ →− ⟨ , ⟩</p>
      <p>∃ ∈  () |  = ()  &gt; 0
⟨-(, ,  ) → , ⟩ →− ⟨ , ⟩</p>
      <p>∀ ∈  (). ̸= ()  &gt; 0
⟨-(, ,  ) → , ⟩ →− ⟨ -− 1(, ,  ) → , ⟩
⟨-0(, ,  ) → , ⟩ →− ⟨ , ⟩</p>
      <p>∀ ∈  (). = ()  &gt; 0
⟨-(, ,  ) → , ⟩ →− ⟨ , ⟩</p>
      <p>∃ ∈  () |  ̸= ()  &gt; 0
⟨-(, ,  ) → , ⟩ →− ⟨ -− 1(, ,  ) → , ⟩
⟨-0(, ,  ) →− , ⟩ →− ⟨ , ⟩
⟨1, ⟩ →− ⟨ 1, ⟩, 1 ̸∈ ℰ0, 1 ̸∈ ℰ</p>
      <p>⟨1 + 2, ⟩ →− ⟨ 1, ⟩
⟨1, ⟩ →− ⟨ 1′, ⟩, 1 ̸∈ ℰ0, 1′ ∈ ℰ
⟨1 + 2, ⟩ →− ⟨ 1′ + 2, ⟩
1 ∈ ℰ0, ⟨2, ⟩ →− ⟨ 2, ⟩</p>
      <p>⟨1 + 2, ⟩ →− ⟨ 2, ⟩
⟨1, ⟩ →− ⟨ 1, ⟩, ⟨2, ⟩ →− ⟨ 2, ⟩, 1, 2 ̸∈ ℰ0, 1 ̸∈ ℰ</p>
      <p>⟨1‖2, ⟩ →− ⟨ 1‖2, ⟩
⟨1, ⟩ →− ⟨ 1′, ⟩, ⟨2, ⟩ →− ⟨ 2′, ⟩, 1, 2 ̸∈ ℰ0, 1′, 2′ ∈ ℰ
⟨1‖2, ⟩ →− ⟨ 1′‖2′, ⟩
1 ∈ ℰ0, ⟨2, ⟩ →− ⟨ 2, ⟩</p>
      <p>⟨1‖2, ⟩ →− ⟨ 2, ⟩
⟨1, ⟩ →− ⟨ ′1, ′⟩, ⟨2, ⟩ →− ⟨ ′2, ′′⟩</p>
      <p>
        ⟨1‖2, ⟩ →− ⟨ ′1‖′2, * (, ′, ′′)⟩
⟨1, ⟩ →− ⟨ 1, ⟩, 1 ̸∈ ℰ0, 1 ̸∈ ℰ
⟨1 + 2, ⟩ →− ⟨ 1, ⟩
1 ∈ ℰ0, ⟨2, ⟩ →− ⟨ 2, ⟩ ND (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )
      </p>
      <p>⟨1 + 2, ⟩ →− ⟨ 2, ⟩
⟨1, ⟩ →− ⟨ 1′, ⟩, ⟨2, ⟩ →− ⟨ 2′, ⟩, 1, 2 ̸∈ ℰ0, 1′, 2′ ∈ ℰ
⟨1 + 2, ⟩ →− ⟨ 1′ + 2′, ⟩
Ad</p>
      <p>
        Re
Ch (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )
Ch (
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
Ch (
        <xref ref-type="bibr" rid="ref3">3</xref>
        )
CT (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )
CT (
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
CT (
        <xref ref-type="bibr" rid="ref3">3</xref>
        )
ST (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )
ST (
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
ST (
        <xref ref-type="bibr" rid="ref3">3</xref>
        )
If (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )
      </p>
      <p>
        If (
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
GP (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )
GP (
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
GP (
        <xref ref-type="bibr" rid="ref3">3</xref>
        )
      </p>
      <p>
        Pa
ND (
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
      </p>
      <p>
        The guarded parallelism GP (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )-(
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) in Table 2 is designed to allow all the operations for which
the guards in the inner expression are satisfied. In more detail, the guards of 1‖2 succeed
when either the guards of 1, 2 or both succeed and all the operations that can be executed
are executed. This behaviour is diferent both from classical parallelism (for which all the agents
have to succeed in order for the parallel agent to succeed) and from nondeterminism (that only
selects one branch). The rule parallelism Pa in Table 2 models the parallel composition operator
in terms of maximal parallelism: we use * (,  ′,  ′′) := ( ′ ∩  ′′) ∪ (( ′ ∪  ′′) ∖  ) to handle
parallel additions and removals of arguments3. Finally, any agent composed through + (rules
ND (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )-(
        <xref ref-type="bibr" rid="ref2">2</xref>
        )) is chosen if its guard succeeds.
      </p>
    </sec>
    <sec id="sec-4">
      <title>4. Conclusion and Future Work</title>
      <p>In this paper, we introduced tcla, a concurrent argumentation language for modelling interacting
agents in which also time is taken into account. We presented both the syntax and the operational
semantics. Maximal parallelism has been used to realise simultaneous execution of actions
carried forward by diferent agents. As a future work, we want to adopt an interleaving approach
for handling this kind of processes: we plan to have a diferent transition system in which time
elapsing and computational steps are realised by two distinct types of actions.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>P. M.</given-names>
            <surname>Dung</surname>
          </string-name>
          ,
          <article-title>On the acceptability of arguments and its fundamental role in nonmonotonic reasoning, logic programming and n-person games</article-title>
          ,
          <source>Artif. Intell</source>
          .
          <volume>77</volume>
          (
          <year>1995</year>
          )
          <fpage>321</fpage>
          -
          <lpage>358</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>M. L.</given-names>
            <surname>Cobo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. C.</given-names>
            <surname>Martínez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. R.</given-names>
            <surname>Simari</surname>
          </string-name>
          ,
          <article-title>On admissibility in timed abstract argumentation frameworks</article-title>
          ,
          <source>in: ECAI</source>
          , volume
          <volume>215</volume>
          <source>of Frontiers in Artificial Intelligence and Applications</source>
          , IOS Press,
          <year>2010</year>
          , pp.
          <fpage>1007</fpage>
          -
          <lpage>1008</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>S.</given-names>
            <surname>Bistarelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. C.</given-names>
            <surname>Meo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Taticchi</surname>
          </string-name>
          ,
          <article-title>Timed concurrent language for argumentation</article-title>
          , in: CILC, volume
          <volume>3002</volume>
          <source>of CEUR Workshop Proceedings, CEUR-WS.org</source>
          ,
          <year>2021</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>15</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>S.</given-names>
            <surname>Bistarelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Taticchi</surname>
          </string-name>
          ,
          <article-title>Towards an implementation of a concurrent language for argumentation</article-title>
          ,
          <source>in: AI*IA</source>
          , volume
          <volume>12414</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2020</year>
          , pp.
          <fpage>154</fpage>
          -
          <lpage>171</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>S.</given-names>
            <surname>Bistarelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Taticchi</surname>
          </string-name>
          ,
          <article-title>A concurrent language for argumentation, in: AI3@AI*IA</article-title>
          , volume
          <volume>2777</volume>
          <source>of CEUR Workshop Proceedings, CEUR-WS.org</source>
          ,
          <year>2020</year>
          , pp.
          <fpage>75</fpage>
          -
          <lpage>89</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>S.</given-names>
            <surname>Bistarelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Taticchi</surname>
          </string-name>
          ,
          <article-title>Introducing a tool for concurrent argumentation</article-title>
          ,
          <source>in: JELIA</source>
          , volume
          <volume>12678</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2021</year>
          , pp.
          <fpage>18</fpage>
          -
          <lpage>24</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>M.</given-names>
            <surname>Caminada</surname>
          </string-name>
          ,
          <article-title>On the issue of reinstatement in argumentation</article-title>
          ,
          <source>in: JELIA</source>
          , volume
          <volume>4160</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2006</year>
          , pp.
          <fpage>111</fpage>
          -
          <lpage>123</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>P.</given-names>
            <surname>Baroni</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Caminada</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Giacomin</surname>
          </string-name>
          ,
          <article-title>An introduction to argumentation semantics</article-title>
          ,
          <source>Knowl. Eng. Rev</source>
          .
          <volume>26</volume>
          (
          <year>2011</year>
          )
          <fpage>365</fpage>
          -
          <lpage>410</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>V. A.</given-names>
            <surname>Saraswat</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. C.</given-names>
            <surname>Rinard</surname>
          </string-name>
          ,
          <article-title>Concurrent constraint programming</article-title>
          ,
          <source>in: POPL</source>
          , ACM Press,
          <year>1990</year>
          , pp.
          <fpage>232</fpage>
          -
          <lpage>245</lpage>
          . 3Union,
          <article-title>intersection and diference between AFs are intended as the union, intersection and diference of their sets of arguments and attacks, respectively</article-title>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>