<!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>Workshop on Artificial Intelligence and Formal Verification, Logics, Automata and Synthesis (OVERLAY),
Rende, Italy, November</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Verification with Answer Set Programming, Reasoning about Actions and Change, Constraints and Ontologies</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Laura Giordano</string-name>
          <email>laura.giordano@uniupo.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Alberto Martelli</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Daniele Theseider Dupré</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>DISIT, Università del Piemonte Orientale</institution>
          ,
          <addr-line>Alessandria</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Dipartimento di Informatica, Università di Torino</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2019</year>
      </pub-date>
      <volume>1</volume>
      <fpage>9</fpage>
      <lpage>20</lpage>
      <abstract>
        <p>In this extended abstract, we describe a line of research where logic-based knowledge representation and reasoning is used for both representing process and system models in knowledge-intensive domains and for performing formal verification on such models. In particular, we rely on Answer Set Programming (ASP). It allows, on the one hand, for reasoning about actions and change, for accommodating domain ontologies expressed in a low-complexity description logic as well as constraints on numerical variables (in the Constraint ASP extensions); on the other hand, Bounded Model Checking for linear time temporal logics can be encoded in ASP.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>Formal methods have extensively been applied in Computer Science for the specification and verification
of systems, relying on different formal logics, e.g., standard propositional logic and modal temporal logics,
with corresponding inference machinery, such as model checkers and SAT solvers, where transition systems
are not necessarily explicitly expressed in a logic.</p>
      <p>
        Within Artificial Intelligence, in the area of Knowledge Representation and Reasoning, logics have
also been widely used for modeling knowledge about domains and systems and for reasoning about them.
Among the many proposals, the following areas are relevant for the work described in this paper:
• Nonmonotonic reasoning, where default conclusions can be obtained based on incomplete
information, thus departing from the semantics of classical logic. The field led to the development
of Answer Set Programming (ASP) [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], a powerful framework for declarative problem solving
which combines significant modeling capabilities with efficient solving, relying on inference techniques
that include some of the ones used in SAT solvers. ASP modeling allows for specifying rules with
logical variables, which, before actual solving, have to be instantiated, in a grounding phase, in
principle to all possible terms built with constant and (if any) function symbols occurring in the
model. In practice, grounding already performs some inference in order to limit the instantiation to
a necessarily finite, and possibly small, set of terms.
• Reasoning about actions and change (RAC) [7], where a domain is described in terms of
fluents (propositions whose value can change), possible actions, which have preconditions, direct
effects in terms of fluents, and (in several approaches) static and dynamic causal laws which model
dependencies between truth values of fluents or changes in such truth values. In most cases, reasoning
is formalized as a form of nonmonotonic reasoning, in order to conclude that a fluent maintains its
value in the absence of reasons for changing (inertia).
• Description logics [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Terminological knowledge has been identified as a form of knowledge which
can be expressed in suitable fragments of first-order logic, description logics (DLs), as well as being
useful in formalizing definitions of the terms used in several domains. While full first-order logic is
undecidable, DLs offer a trade-off between expressiveness and computational complexity of reasoning,
some of them enjoying low complexity while still being able to describe wide terminologies (e.g.,
SNOMED-CT which can be expressed in EL [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]). As a result, description logics have been chosen
as the basis for the Semantic Web, and, in particular, the Web Ontology Language (OWL).
      </p>
      <p>
        The work summarized in this paper relies on ASP for both representing the dynamics of a domain
(with rich domain knowledge about fluent dependencies, also expressed by DL concept inclusions) and for
reasoning about it. Such reasoning does not only include the usual forms of reasoning about actions and
change (such as inferring which fluents hold after a sequence of actions, given an initial state) but it also
allows for the Bounded Model Checking verification of formulae in Dynamic Linear Time Temporal Logic
(DLTL) [
        <xref ref-type="bibr" rid="ref16">17</xref>
        ], an extension of Linear Time Temporal Logic (LTL) with regular expressions. Formulae in
(D)LTL can also be used to model the domain in addition to usual statements in an action language. The
domain model and the formulae to be verified are in any case mapped to ASP.
      </p>
      <p>The following section briefly describes our work on Bounded Model Checking (BMC) in ASP about
domains represented in an action language, enriched with DLTL constraints. We then sketch its application
to Business Process model verification, and the extension of the approach to take into account terminological
knowledge about a domain expressed in a low complexity Description Logic.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Reasoning about Action and Change and BMC in ASP</title>
      <p>
        As mentioned in the introduction, nonmonotonic reasoning, and ASP in particular, is suitable for reasoning
about action and change, and for defining a representation of a domain which is elaboration tolerant [
        <xref ref-type="bibr" rid="ref20">21</xref>
        ],
i.e., which easily allows for modifications. This includes the formalization of inertia, which means that
after an event, fluents (i.e. propositions in the state) maintain their value unless there is some reason to
conclude they change. Such a reason may arise as a direct effect of the event, but also as a side effect
(ramification), given that fluents are not independent. The term action is often used rather than “event”,
but other discrete events (not just actions performed by a human or artificial agent) can actually be
modeled.
      </p>
      <p>
        In our contribution [
        <xref ref-type="bibr" rid="ref10">11</xref>
        ] we introduce a temporal action language which includes formulae like the
following ones, part of the domain description for typical examples about shooting a turkey with a gun:
The first is an action law meaning that, in all states (2), if loaded holds (the gun is loaded), then, after
shoot (i.e., if the action shoot is executed), ¬alive holds (the turkey is not alive). The causal law (2)
states that the turkey being in sight of the hunter causes it to be frightened (in the same state), if it is
alive. (D)LTL constraints on the domain are also used, (3) above means that the gun is not loaded until
the turkey is in sight. DLTL also allows for the until operator to be indexed with regular programs of
propositional dynamic logic. For instance, the program
(¬in_sight?; wait)∗; in_sight?; load; shoot
(1)
describes the behavior of the hunter who waits for a turkey until it appears and, when it is in sight, loads
the gun and shoots. Actions in_sight? and ¬in_sight? are test actions (essentially as in dynamic logic).
2([shoot]¬alive ← loaded)
2(f rightened ← in_sight, alive)
¬loaded U in_sight
(1)
(2)
(3)
      </p>
      <sec id="sec-2-1">
        <title>For instance, the constraint</title>
        <p>h(¬in_sight?; wait)∗; in_sight?; load; shooti&gt;
can be included in the domain description, where hπiα is defined as &gt;U πα, and then the inclusion of a
constraint hπi&gt; means that all the runs of the domain description which do not start with an execution
of the program π will be filtered out. For instance, a scenario in which in the initial state the turkey is
not in sight and the hunter loads the gun and shoots is not allowed.</p>
        <p>The semantics of the language is defined in terms of a temporally extended notion of Answer Set,
and the language is mapped to plain ASP relying on a representation of states as (a finite subset of)
natural numbers, and predicates holds(f, S), occurs(a, S) to mean that fluent f is true in state S, and
that action a is executed in state S. In this way, a standard Answer Set solver can be used to find answer
sets corresponding to temporal answer sets of the domain description.</p>
        <p>The evaluation of a (D)LTL formula α in a state S involves a predicate sat(t_alpha, S)
meaning that the formula α represented by the term t_alpha holds in state S. The ASP constraint
← not sat(t_alpha, 0), number 0 meaning the initial state, guarantees that α is satisfied in all
answer sets, given that not sat(t_alpha, 0) is not allowed to be true.</p>
        <p>
          The above framework can be used for usual reasoning tasks in RAC, but also for verification of (D)LTL
formulae in a Bounded Model Checking [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] approach, as follows.
        </p>
        <p>In order for checking validity of a temporal formula β, a counterexample for it, i.e., a (temporal)
answer set satisfying ¬β, is searched for. The ASP constraint ← not sat(t_alpha, 0) is added (as in case
of formulae describing the domain), where t_alpha represents α which, in this case, is ¬β; then, only
(temporal) answer sets satisfying ¬β will be found.</p>
        <p>
          In [
          <xref ref-type="bibr" rid="ref10">11</xref>
          ], the actual BMC technique is obtained as follows, building on the work in [
          <xref ref-type="bibr" rid="ref15">16</xref>
          ], where ASP is
used for BMC in the verification of LTL formulas for systems modeled as Petri nets. The ASP encoding
which is input to the solver includes, in addition to (the encoding of) the action domain model and the
ASP constraint for the formula to be verified, ASP rules and constraints to impose that infinite temporal
models are searched for, which can be finitely represented as finite sequences with a “k-loop”, given
that search can be limited to such models [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]. The length of the finite sequence is used as a bound for
the number of states in the ASP encoding and can be increased iteratively in the basic partial decision
procedure of BMC; there are cases where completeness can be guaranteed [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ].
        </p>
        <p>
          In an alternative approach [
          <xref ref-type="bibr" rid="ref12">13</xref>
          ] to BMC in the same context, i.e., for domains represented in the
temporal action language sketched before, and mapped to ASP, we provided a decision procedure for
verification based on incremental answer set solving, where the completeness of the method is achieved
exploiting a Büchi automaton construction. In this case, a counterexample is an accepting path of the
product automaton combining the transition system, specified by the action theory, with the Büchi
automaton for the negated property.
        </p>
        <p>The number of ground rules in the ASP encoding is O((|f |+|φ|3)×k2) for DLTL, and O((|f |+|φ|)×k2))
for LTL, where |f | is the number of fluents, |φ| is the size of the formula to be verified, and k is the step
in incremental solving. Given a fixed k, verification, i.e., in this case, ensuring there is no answer set for
the encoding (providing a counter example), is a problem in co-NP in the size of the domain description.
3</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Reasoning on Business Processes and Constraints on integer variables</title>
      <p>
        Several business process modeling paradigms have been proposed for supporting Business Process
Management and automation [
        <xref ref-type="bibr" rid="ref24">26</xref>
        ], including the workflow-style languages YAWL [
        <xref ref-type="bibr" rid="ref22">24</xref>
        ] and BPMN [22], as well
as the declarative framework Declare [
        <xref ref-type="bibr" rid="ref23">25</xref>
        ], whose semantics is given in terms of LTL.
      </p>
      <p>
        We have used DLTL for modeling such processes [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] in the verification approach [
        <xref ref-type="bibr" rid="ref10">11</xref>
        ] described in the
previous section. The notion of commitment from the multi-agent systems literature [
        <xref ref-type="bibr" rid="ref18 ref21">19, 23</xref>
        ] is used as
follows (building on earlier work in [
        <xref ref-type="bibr" rid="ref7">8</xref>
        ] for modeling agent interaction and its verification). In a process,
an activity (e.g., signing an order) may introduce (i.e., have as effect) a commitment C(α) to make true a
formula α (e.g., that a contract has been sent). A causal rule discharges the commitment (i.e., makes C(α)
false) if α is achieved. Formal verification could mean verifying 2(C(α) → 3α), but the model could be
made more flexible in order to allow for activities (canceling the order, in the example) to discharge the
commitment even if it is not fulfilled. In this case, 2(C(α) → 3¬C(α)) should be verified.
      </p>
      <p>
        The idea is further elaborated in [
        <xref ref-type="bibr" rid="ref11">12</xref>
        ] in order to deal with different notions of obligations introduced
in [
        <xref ref-type="bibr" rid="ref14">15</xref>
        ] including: achievement obligations where a condition must occur at least once before something
else occurs (in particular, the fact that a deadline has been reached); maintenance obligations where a
condition must hold in all states until something else occurs.
      </p>
      <p>
        In the work described in detail in [
        <xref ref-type="bibr" rid="ref8">9</xref>
        ], we extend the approach in [
        <xref ref-type="bibr" rid="ref10">11</xref>
        ] in order to consider constraints and
thus mapping the framework to Constraint Answer Set Programming, where an ASP solver is combined
with a constraint solver: constraints in a given constraint language are considered as atoms by the ASP
solver, and labeled as true or false during ASP solving; the constraint solver checks for satisfiability of
the set of constraints resulting from the labeling, i.e., including C (resp., ¬C), if C is labeled true (resp.,
false).
      </p>
      <p>
        As regards the application to Business Processes, in [
        <xref ref-type="bibr" rid="ref8">9</xref>
        ] we mainly concentrate on processes whose
workflow is modeled with the basic constructs in YAWL and BPMN. Process activities correspond to
actions in [
        <xref ref-type="bibr" rid="ref10">11</xref>
        ] and in the translation of the workflow to an action model, fluents are used to represent the
enabling of actions. The process model can however be enriched with annotations specifying, as effects of
actions, additional fluents in a domain knowledge which includes causal laws. XOR-splits in the workflow
may be conditioned on such fluents, and fluents may occur in formulae to be verified. In addition, we
consider process variables with a [0..n] integer domain and constraints on such variables. Constraints may
occur as effects of activities (e.g., in a process dealing with ordering goods, an activity sets the pn “piece
number” variable for the order so that 0 ≤ pn ≤ 100000), as conditions in XOR splits (e.g., a given branch
is taken if pn &gt; 50000) and business rules to be verified (e.g., for orders with pn &gt; 80000, a solvency check
is necessary before confirming the order). The BMC approach in [
        <xref ref-type="bibr" rid="ref10">11</xref>
        ] is used (slightly adapted, given that
finite process executions which reach the end are considered), and experiments [
        <xref ref-type="bibr" rid="ref8">9</xref>
        ] show that, on the one
hand, the cost of relying on a constraint solver is acceptable, and, on the other hand, the approach can
deal with process models with 200 activities and runs of more than 100 activities, as well as processes
with 1028 different runs.
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Adding domain ontologies</title>
      <p>
        In [
        <xref ref-type="bibr" rid="ref9">10</xref>
        ], we described how reasoning about action and change can be performed in ASP in case knowledge
about the domain includes terminological knowledge expressed in the fragment EL⊥ of the description
logic EL++ [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. In this fragment, concepts can be constructed from class names and nominals such as
{a} (i.e., the concept of “being a”) using intersection (u) of concepts and existential restriction ∃r.C (the
individuals which are in relation r with some member of the concept C).
      </p>
      <p>Background knowledge about the domain is expressed as concept inclusions in EL⊥, such as “the ones
who teach some university course are lecturers”, ∃Teaches.UniversityCourse v Lecturer .</p>
      <p>
        In reasoning about actions and change, such inclusions can be regarded as state constraints, i.e.,
conditions that must hold in all states. In the field, it is well known that they may be related to causal
laws, but they are not, in general, equivalent to them. In particular, if an action, as a direct effect, changes
a fluent involved in a state constraint (which must hold before executing the action), it is required that
the state constraint holds after the action as well, but there may be different ways to restore its truth,
inferring side effects. Our approach extends to non-deterministic actions the approach proposed by Baader
et al. [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. In general, a subset of the causal rules corresponding to a state constraint is included. For
example, the causal law
      </p>
      <p>caused Lecturer (x) if Teaches(x, y) ∧ UniversityCourse(y)
associated to the concept inclusion exemplified before, and suitably mapped to ASP, would allow to infer,
as a side effect, that John is a lecturer if he is appointed the university course CS101. If, as a direct effect
of some action, John ceases to be a lecturer, we would like to infer that he does no longer teach CS101,
but presumably we do not consider the case that he still teaches CS101, which ceases to be a university
course; then we would only like to include the first one of the following two causal rules:
caused −Teaches(x, y) if −Lecturer (x) ∧ UniversityCourse(y)
caused −UniversityCourse(y) if Teaches(x, y) ∧ −Lecturer (x)</p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref9">10</xref>
        ], we defined a semantics for action execution in such a context, based on the answer set semantics.
As a result of the introduction of (some of) the causal rules corresponding to concept inclusions, and the
limited expressive power of EL⊥ with respect to other Description Logics, reasoning can be performed in
ASP only, with no need to exploit a DL reasoner. The encoding is polynomial in the size of the domain
description; it follows that the temporal projection problem is in co-NP.
      </p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref13">14</xref>
        ]1, we describe how the work above can be used in the context of modeling Business Processes
and reasoning about them, especially for verification.
      </p>
      <p>
        In the context of Business Process Management, ontological knowledge can be exploited to describe
terms used in the conditions on sequence flow and in the formulae to be verified. As [
        <xref ref-type="bibr" rid="ref19">20</xref>
        ] points out,
a semantic layer is useful to abstract from the way some fact about the case at hand may be actually
represented, or computed from stored data, in the process implementation. This is consistent with the
idea of sharing terminological knowledge about a domain and reusing it in several applications (consider,
e.g., the well-known SNOMED-CT medical terminology [
        <xref ref-type="bibr" rid="ref17">18</xref>
        ]).
      </p>
      <p>
        While [
        <xref ref-type="bibr" rid="ref13">14</xref>
        ] presents a preliminary study, demonstrating the feasibility of the approach, including
Bounded Model Checking verification, on a minimal set of features of BPMN, with the addition semantic
annotations, current work includes more extensive pratical experimentation as well as the extension
to other BPMN features, which would benefit from a deeper analysis of BPMN from an ontological
perspective.
5
      </p>
    </sec>
    <sec id="sec-5">
      <title>Conclusions</title>
      <p>In this extended abstract we have summarized our research on the verification of processes and systems
where a uniform approach is used for representing the system and performing formal verification on it.
The approach is explicitly oriented to dealing with background knowledge about the domain represented
as causal rules, possibly deriving from ontological knowledge. Answer Set semantics is used in all cases,
and Answer Set solvers are used for performing reasoning, including Bounded Model Checking. The
approach exploits the grounding capabilities of ASP systems in order to allow for representing domain
knowledge using logical variables.</p>
      <p>1The work is also presented as a discussion paper at the 18th AI*IA Conference.</p>
      <sec id="sec-5-1">
        <title>SNOMED CT. [19] N. Jennings. Commitments and Conventions: the foundation of coordination in multi-agent systems.</title>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>F.</given-names>
            <surname>Baader</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Brandt</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Lutz</surname>
          </string-name>
          .
          <article-title>Pushing the EL envelope</article-title>
          . In L. Kaelbling and
          <string-name>
            <surname>A</surname>
          </string-name>
          . Saffiotti, editors,
          <source>Proc. IJCAI</source>
          <year>2005</year>
          , pages
          <fpage>364</fpage>
          -
          <lpage>369</lpage>
          , Edinburgh, Scotland,
          <string-name>
            <surname>UK</surname>
          </string-name>
          ,
          <year>August 2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>F.</given-names>
            <surname>Baader</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Calvanese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. L.</given-names>
            <surname>McGuinness</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Nardi</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P. F.</given-names>
            <surname>Patel-</surname>
          </string-name>
          Schneider, editors.
          <source>The Description Logic Handbook: Theory</source>
          , Implementation, and
          <string-name>
            <surname>Applications</surname>
          </string-name>
          . Cambridge University Press,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>F.</given-names>
            <surname>Baader</surname>
          </string-name>
          , M. Lippmann, and
          <string-name>
            <given-names>H.</given-names>
            <surname>Liu</surname>
          </string-name>
          .
          <article-title>Using causal relationships to deal with the ramification problem in action formalisms based on description logics</article-title>
          .
          <source>In LPAR</source>
          , pages
          <fpage>82</fpage>
          -
          <lpage>96</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>A.</given-names>
            <surname>Biere</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Cimatti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. M.</given-names>
            <surname>Clarke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Strichman</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Y.</given-names>
            <surname>Zhu</surname>
          </string-name>
          .
          <article-title>Bounded model checking</article-title>
          .
          <source>Advances in Computers</source>
          ,
          <volume>58</volume>
          :
          <fpage>118</fpage>
          -
          <lpage>149</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>D. D'Aprile</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>Giordano</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          <string-name>
            <surname>Gliozzi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Martelli</surname>
            , G. Pozzato, and
            <given-names>D. Theseider</given-names>
          </string-name>
          <string-name>
            <surname>Dupré</surname>
          </string-name>
          .
          <article-title>Verifying business process compliance by reasoning about actions</article-title>
          .
          <source>In CLIMA 2010, LNCS 6245</source>
          , pages
          <fpage>99</fpage>
          -
          <lpage>116</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>M.</given-names>
            <surname>Gebser</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Kaminski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Kaufmann</surname>
          </string-name>
          , and
          <string-name>
            <given-names>T.</given-names>
            <surname>Schaub</surname>
          </string-name>
          . Answer Set Solving in Practice. Morgan &amp; Claypool Publishers,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>L.</given-names>
            <surname>Giordano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Martelli</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Schwind</surname>
          </string-name>
          .
          <article-title>Specifying and Verifying Interaction Protocols in a Temporal Action Logic</article-title>
          .
          <source>Journal of Applied Logic (Special issue on Logic Based Agent Verification)</source>
          ,
          <volume>5</volume>
          :
          <fpage>214</fpage>
          -
          <lpage>234</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>L.</given-names>
            <surname>Giordano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Martelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Spiotta</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D. Theseider</given-names>
            <surname>Dupré</surname>
          </string-name>
          .
          <article-title>Business process verification with constraint temporal answer set programming</article-title>
          .
          <source>Theory and Practice of Logic Programming</source>
          ,
          <volume>13</volume>
          :
          <fpage>641</fpage>
          -
          <lpage>655</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>L.</given-names>
            <surname>Giordano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Martelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Spiotta</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D. Theseider</given-names>
            <surname>Dupré</surname>
          </string-name>
          .
          <article-title>ASP for reasoning about actions with an EL-bot knowledge base</article-title>
          .
          <source>In Proceedings of the 31st Italian Conference on Computational Logic</source>
          , pages
          <fpage>214</fpage>
          -
          <lpage>229</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>L.</given-names>
            <surname>Giordano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Martelli</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D. Theseider</given-names>
            <surname>Dupré</surname>
          </string-name>
          .
          <article-title>Reasoning about actions with temporal answer sets</article-title>
          .
          <source>Theory and Practice of Logic Programming</source>
          ,
          <volume>13</volume>
          :
          <fpage>201</fpage>
          -
          <lpage>225</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>L.</given-names>
            <surname>Giordano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Martelli</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D. Theseider</given-names>
            <surname>Dupré</surname>
          </string-name>
          .
          <article-title>Temporal deontic action logic for the verification of compliance to norms in ASP</article-title>
          .
          <source>In Proc. ICAIL</source>
          <year>2013</year>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>L.</given-names>
            <surname>Giordano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Martelli</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D. Theseider</given-names>
            <surname>Dupré</surname>
          </string-name>
          .
          <article-title>Achieving completeness in the verification of action theories by bounded model checking in ASP</article-title>
          .
          <source>J. Log. Comput.</source>
          ,
          <volume>25</volume>
          (
          <issue>6</issue>
          ):
          <fpage>1307</fpage>
          -
          <lpage>1330</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>L.</given-names>
            <surname>Giordano</surname>
          </string-name>
          and
          <string-name>
            <given-names>D. Theseider</given-names>
            <surname>Dupré</surname>
          </string-name>
          .
          <article-title>Enriched modeling and reasoning on business processes with ontologies and answer set programming</article-title>
          .
          <source>In Business Process Management Forum - BPM Forum</source>
          <year>2018</year>
          , Sydney, pages
          <fpage>71</fpage>
          -
          <lpage>88</lpage>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>G.</given-names>
            <surname>Governatori</surname>
          </string-name>
          .
          <article-title>Law, logic and business processes</article-title>
          . In Third International Workshop on Requirements Engineering and Law. IEEE,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>K.</given-names>
            <surname>Heljanko</surname>
          </string-name>
          and
          <string-name>
            <given-names>I.</given-names>
            <surname>Niemelä</surname>
          </string-name>
          .
          <article-title>Bounded LTL model checking with stable models</article-title>
          .
          <source>Theory and Practice of Logic Programming</source>
          ,
          <volume>3</volume>
          (
          <issue>4</issue>
          -5):
          <fpage>519</fpage>
          -
          <lpage>550</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>J.</given-names>
            <surname>Henriksen</surname>
          </string-name>
          and
          <string-name>
            <given-names>P.</given-names>
            <surname>Thiagarajan</surname>
          </string-name>
          .
          <article-title>Dynamic linear time temporal logic</article-title>
          .
          <source>Annals of Pure and Applied logic</source>
          ,
          <volume>96</volume>
          (
          <issue>1-3</issue>
          ):
          <fpage>187</fpage>
          -
          <lpage>207</lpage>
          ,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>International</given-names>
            <surname>Health Terminology Standards Development Organization</surname>
          </string-name>
          . http://www.ihtsdo.org/snomed-ct/.
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>N.</given-names>
            <surname>Jennings</surname>
          </string-name>
          .
          <article-title>Commitments and Conventions: the foundation of coordination in multi-agent systems</article-title>
          .
          <source>The knowledge engineering review</source>
          ,
          <volume>8</volume>
          (
          <issue>3</issue>
          ):
          <fpage>233</fpage>
          -
          <lpage>250</lpage>
          ,
          <year>1993</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>L. T.</given-names>
            <surname>Ly</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Rinderle-Ma</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Göser</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P.</given-names>
            <surname>Dadam</surname>
          </string-name>
          .
          <article-title>On enabling integrated process compliance with semantic constraints in process management systems - requirements, challenges, solutions</article-title>
          .
          <source>Information Systems Frontiers</source>
          ,
          <volume>14</volume>
          (
          <issue>2</issue>
          ):
          <fpage>195</fpage>
          -
          <lpage>219</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>J.</given-names>
            <surname>McCarthy</surname>
          </string-name>
          .
          <article-title>Elaboration tolerance</article-title>
          .
          <source>In Commonsense</source>
          <year>1998</year>
          . Revised version available at http://jmc.stanford.edu/articles/elaboration.html,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>M. P.</given-names>
            <surname>Singh</surname>
          </string-name>
          .
          <article-title>A social semantics for Agent Communication Languages. Issues in Agent Communication</article-title>
          ,
          <source>LNCS(LNAI)</source>
          <year>1916</year>
          , pages
          <fpage>31</fpage>
          -
          <lpage>45</lpage>
          ,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [24]
          <string-name>
            <surname>W. van</surname>
          </string-name>
          <article-title>der Aalst and A. ter Hofstede</article-title>
          .
          <source>YAWL: Yet Another Workflow Language. Information Systems</source>
          ,
          <volume>30</volume>
          (
          <issue>4</issue>
          ):
          <fpage>245</fpage>
          -
          <lpage>275</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [25]
          <string-name>
            <surname>W. M. P. van der Aalst</surname>
            , M. Pesic, and
            <given-names>H.</given-names>
          </string-name>
          <string-name>
            <surname>Schonenberg</surname>
          </string-name>
          .
          <article-title>Declarative workflows: Balancing between flexibility and support</article-title>
          . Computer Science - R&amp;D,
          <volume>23</volume>
          (
          <issue>2</issue>
          ):
          <fpage>99</fpage>
          -
          <lpage>113</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>M.</given-names>
            <surname>Weske. Business Process Management - Concepts</surname>
          </string-name>
          , Languages, Architectures,
          <source>Third Edition</source>
          . Springer,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>