<!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>Evaluating Epistemic Logic Programs via Answer Set Programming with Quantifiers</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Wolfgang Faber</string-name>
          <email>wolfgang.faber@aau.at</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>MichaelMorak</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Klagenfurt</institution>
          ,
          <addr-line>Klagenfurt</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>In this paper we introduce a simple way to evaluate epistemic logic programs by means of answer set programming with quantifiers, a recently proposed extension of answer set programming. The method can easily be adapted for most of the many semantics that were proposed for epistemic logic programs. We evaluate the proposed transformation on existing benchmarks using a recently proposed solver for answer set programming with quantifiers, which relies on QBF solvers. Epistemic Logic Programs, Answer Set Programming with Quantifiers, Answer Set Programming Answer Set Programming (ASP) is a generic, fully declarative logic programming language that allows users to encode problems such that the resulting output of the program (calledanswer sets) directly corresponds to solutions of the original problem [1, 2, 3, 4].</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>□ 1 1□ 2 2 ⋯ □    ∶ ,
∃  1∀  2 ⋯   ∶ 
where the  1,  2, …are classical ASP programs□, 1, □ 2, …are quantifiers, and  expresses a set
of constraints in ASP.</p>
      <p>Example 1. The intuitive reading of the ASP(Q) program
nEvelop-O
LGOBE
RCRA’22
https://www.aau.at/team/faber-wolfgang(/W. Faber); https://www.aau.at/team/morak-michael(/M. Morak)</p>
      <p>© 2022 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
is that there exists an answer set  1 of ASP program  1 such that for each answer set  2 of the
ASP program  2 combined with  1 … such that the ASP program  combined with   is coherent
(has an answer set).</p>
      <p>
        Since evaluating ASP(Q) programs isPSpace-complete in general [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], this formalisms forms
an interesting target for rewriting ELPs. In this paper, we propose such a rewriting, where,
given an ELP Π, we create an ASP(Q) program that is consistent if and only iΠf has a world
view. This happens by using the ASP(Q) quantifiers to directly encode the semantics of world
views of ELPs, and, in turn, the existence the relevant stable models inside of that world view.
We then experimentally verify that this encoding, together with a QBF solver-based ASP(Q)
solver, indeed performs well, compared to current ELP solvers.
      </p>
      <p>Contributions. The results and contributions presented in this paper can be summarized as
follows.</p>
      <p>• We specify a rewriting from ELPs to ASP(Q) programs in such a way that preserves
consistency. This rewriting also allows us to extract information about the world views of
the original ELPs by evaluating the outermost quantor of the obtained ASP(Q) program.
• We implement a rewriting tool that performs our rewriting on real-world ELP instances.
• We compare the performance of evaluating ELPs via our rewriting tool and state-of-the-art
ASP(Q) solvers versus several existing ELP solvers. We observe that, indeed, our ASP(Q)
rewriting approach shows competitive performance.</p>
      <p>
        Related Work. Most ELP solvers build upon an underlying ASP solver that is called multiple
times in a procedural, sequential manner1[
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. The selp system [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] follows a similar approach
as the one proposed in this paper, since it tries to rewrite an ELP into a non-ground ASP program
with fixed arity in order to then use a single call to an ASP solver to establish the consistency of
the input ELP. In this work, we try to follow a similar approach by rewriting ELPs to the language
of ASP(Q). This is due to the fact that ASP(Q) allows one to easily express the quantification
that is needed to write an intuitive encoding of the ELP semantics. However, other target
languages that follow a similar idea would be available, including the stable-unstable semantics
[
        <xref ref-type="bibr" rid="ref20">20</xref>
        ], for which a solver implementation has recently been proposed 2[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], but also the language
of Quantified ASP [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ], which follows a similar approach as ASP(Q), but does not quantify over
answer sets but over atoms. We found the language of ASP(Q) to be very intuitive to use in
practice, as well as having several solver implementations available, and hence chose this as
our target language in this paper.
      </p>
      <p>Structure. The remainder of the paper is structured as follows. In Section2, we provide an
overview of ELPs and ASP(Q). In Section3, we present our rewriting of ELPs to ASP(Q). We then
perform an experimental evaluation in Section4. We conclude with a summary in Section5.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Preliminaries</title>
      <p>
        Answer Set Programming (ASP). We assume the reader is familiar with ASP and will only
give a very brief overview of the core language. For more information, we refer to standard
literature [
        <xref ref-type="bibr" rid="ref23 ref24 ref3">3, 23, 24</xref>
        ], and, in our case, the ASP-Core-2 input language format2[
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>Briefly, ASP programs consist of sets of rules of the form</p>
      <p>1 | ⋯ |   ←  1, … ,  ℓ, ¬ ℓ+1, … , ¬  .</p>
      <p>In these rules, all   and   are atoms of the form ( 1, … ,   ), where  is a predicate name,
and  1, … ,   are terms, that is, either variables or constants. Aliteral is either an atom or a
negated atom. The domain of constants in an ASP progra m is given implicitly by the set
of all constants that appear in it. Generally, before evaluating an ASP program, variables are
removed by a process calledgrounding, that is, for every rule, each variable is replaced by all
possible combination of constants, and appropriate ground copies of the rule are added to the
resulting program ground( ) . In practice, several optimizations have been implemented in
state-of-the-art grounders that try to minimize the size of the grounding.</p>
      <p>
        The semantics of a (ground) ASP program is as follows [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. An interpretation  (i.e., a set of
ground atoms appearing in ) is called amodel of  if it satisfies all the rules in  in the sense
of classical logic. It is further called ananswer set of  if there is no proper subset  ′ ⊂  that is
a model of the so-called reduc t  of  w.r.t.  .   is defined as the set of rules obtained from 
where all negated atoms on the right-hand side of the rules are evaluated overand replaced by
⊤ or ⊥ accordingly. The main decision problem for ASP is deciding whether a program has at
least one answer set. This has been shown to beΣ2P -complete [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ]. The set of answer sets of an
ASP program  is denoted AS( ) .
      </p>
      <p>
        In this paper, we will make limited use of choice rules as defined in [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ] that look like {}.
and mean that atom can be assumed to be true or not.
      </p>
      <sec id="sec-2-1">
        <title>Answer Set Programming with Quantifiers (ASP(Q)). An extension of ASP, referred to</title>
        <p>
          as ASP(Q), has been proposed in [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ], providing a formalism reminiscent of Quantified Boolean
Formulas, but based on ASP. An ASP(Q) program is of the form
where, for each ∈ {1, … , } , □  ∈ {∃ , ∀ },   is an ASP program, and is a stratified normal
ASP program (this is, as intended by the ASP(Q) authors, a “check” in the sense of constraints).
∃ and ∀ are calledexistential and universal answer set quantifiers , respectively.
        </p>
        <p>The intuitive reading of an ASP(Q) program∃  1∀  2 ⋯   ∶  is that there exists an answer

set  1 of  1 such that for each answer set 2 of  2 extended by  1 … such that extended by
  is coherent (has an answer set).</p>
        <p>Let us be more precise about a program being extended by an answer set, or rather
interpretation  : For an interpretation  , let   ( ) be the ASP program that contains all true
atoms in  as facts and all false atoms i n w.r.t. the Herbrand base of ASP program as
constraints (i.e. rules of the form⊥ ←  , for some atom  ). Furthermore, for a program and an
interpretation  , let   (Π,  ) be the ASP(Q) program obtained from an ASP(Q)Π by replacing
the first program  1 in Π with  1 ∪   ( ) . Coherence of an ASP(Q) program is then defined
inductively:
• ∃  ∶  is coherent if there exists an answer set of  such that ∪   ( ) has at least
one answer set.
• ∀  ∶  is coherent if for all answer sets of  it holds that  ∪   ( ) has at least one
answer set.
• ∃  Π is coherent if there exists an answer set of  such that   (Π,  ) is coherent.
• ∀  Π is coherent if for all answer sets of  it holds that   (Π,  ) is coherent.</p>
        <p>In addition, for an existential ASP(Q) programΠ (one that starts with∃ ), the witnessing
answer sets of the first ASP program  1 are referred to asquantified answer sets .</p>
        <p>In general, deciding coherence for an ASP(Q) program is known to bePSpace-complete [18,
Theorem 2], and on the -th level of the polynomial hierarchy for programs with quantifier
alternations [18, Theorem 3].</p>
        <p>Epistemic Logic Programming (ELP). An epistemic literal is a formulaK ℓ or M ℓ, where ℓ
is a literal andK and M are the epistemic operators ofcertainty (“known” or “provably true”)
and possibility (“maybe,” “possible,” or “not provably false”). Anepistemic logic program (ELP)
is a tuple Π = ( , ℛ) , where  is a set of propositional atoms andℛ is a set of rules of the
following form:</p>
        <p>1 ∨ ⋯ ∨   ← ℓ1, … , ℓ ,  1, … ,   , ¬ +1 , … , ¬  ,
where  ⩾ 0 ,  ⩾ 0 ,  ⩾  ⩾ 0 , each   ∈  is an atom, eachℓ is a literal, and each  is an
epistemic literal, where the latter two each use an atom fro m . Such rules are also calledELP
rules. Similar to ASP, we consider an ELPground, if no variables appear in it, and treat programs
with variables as an abbreviation of the ground program, where each variable is replaced with
every possible constant from the program.</p>
        <p>Let H ( ) = { 1, … ,   } denote the head elements of an ELP rule, and letB( ) =
{ℓ1, … , ℓ ,  1, … ,   , ¬ +1 , … , ¬  }, that is, the set of elements appearing in the rule body. The
union (or combination) of two ELPs Π1 = ( 1, ℛ1) and Π2 = ( 2, ℛ2) is the ELP Π1 ∪ Π2 =
( 1 ∪  2, ℛ1 ∪ ℛ2). The set of epistemic literals occurring in an ELPΠ is denoted elit(Π).</p>
        <p>
          The semantics of ELPs are given viaworld views. A world view of an ELPΠ has originally [
          <xref ref-type="bibr" rid="ref5 ref6">5, 6</xref>
          ]
been defined as a set of (ASP) interpretations ℐ = { 1, …   }, such that ℐ = AS(Πℐ), where Πℐ
is called theepistemic reduct of Π w.r.t. ℐ, and is obtained fromΠ by (1) removing all rules from
Π that contain an epistemic literal which is negated but true iℐn, or unnegated and false inℐ;
and (2) removing all epistemic literals from the remaining rules. HereK, ℓ is true in ℐ, if and
only if ℓ is true in all interpretations inℐ, and M ℓ is true in ℐ, if and only if ℓ is true in at least
one interpretation in ℐ.
        </p>
        <p>
          Various other semantics have been defined over the years and most of them can be
characterized by reducts, either over sets of interpretations (as above) or over the set oeflit(Π) that are
satisfied by ℐ. A concise summary can be found in 1[
          <xref ref-type="bibr" rid="ref9">9</xref>
          ].
        </p>
        <p>
          The main reasoning task for ELPs is checking whether they arceonsistent, that is, whether
they have a world view. This problem is also referred to asworld view existence problem and is
known to be Σ3P -complete [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ].
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Transformation</title>
      <p>
        The basic idea of our transformation is to “guess” a set of epistemic literals that are true and
represent them as standard atoms, and verify that a world view exists that is defined precisely by
this guess. This can be done since a world view is uniquely determined by the set of epistemic
literals that it entails 1[
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>In order to verify that a world view for the guessed epistemic literals actually exists, several
existential and universal ASP(Q) sub-programs, corresponding to the epistemic reduct, are
created that check (a) for epistemic litera lsof type M  and ¬K  the existence of an answer set
verifying the truth of  via an existential program for each suc h and (b) for epistemic literals
of type K  and ¬M  the non-existence of an answer set contradicting the truth o f via a single
universal program. Finally, a set of constraints check that each of these witness answer sets is
consistent with the guessed set of epistemic literals.</p>
      <p>We first illustrate this idea with an example.</p>
      <sec id="sec-3-1">
        <title>Example 2. The ELP program</title>
        <p>has two world views {{}} and {{}} . An ASP(Q) program that implements the idea outlined above
would be Π = ∃  1∃  2∀  3 ∶  with  1 being
 2 being
 3 being
and  consisting of
Here,  1 has four answer sets, which serve as representations of the potential world views.  2 and
 3 are used to determine answer sets of the epistemic reduct, and  makes sure that these answer
sets are consistent with the potential world view of  1. In the example, there are two quantified
answer sets of Π, {} and {} .</p>
        <p>There is one issue that does not become apparent in this example, though: in general, diferent
epistemic literals may require diferent existential witnesses. This can best seen by another
example.</p>
        <p>←
 ←</p>
        <p>K ¬</p>
        <p>K ¬
{}.</p>
        <p>{}.
 ′ ← .
 ′ ← .
 ″ ← .</p>
        <p>″ ← .
← ¬, ¬
← ¬, ¬
← , 
← , 
′.</p>
        <p>′.
″.
″.</p>
      </sec>
      <sec id="sec-3-2">
        <title>Example 3. Consider the ELP program</title>
        <p>← M , M 
 | 
{}.</p>
        <p>{}.</p>
        <p>This program has one world view {{, }, {, }}</p>
        <p>. Following the pattern of the previous example, one
would come up with Π′ = ∃  1
′ 
∃  2
′ 
∀</p>
        <p>3′ ∶  ′ with  1′ being
 2′ being
 3′ being
and  ′ consisting of
and  2 being
and  ″ consisting of
 ″ with  1′ and  3′ remaining unchanged and  2
being</p>
        <p>But Π′ is not coherent, so there are no quantified answer sets. The reason is that only one answer
set of  2′ will be considered (so either  ′ is true and  ′ is false or  ′ is false and  ′ is true), while for
we need the answer set with  ′ being true and for 
we need the answer set with  ′ being true.</p>
        <p>To get this behaviour, we can introduce two copies of  2′, getting Π″ = ∃  1
′ 
∃
 2
∃  2

∀  3′ ∶

It can be checked that Π″ has one quantified answer set {, }</p>
        <p>← , ¬
← , ¬
← ¬, 
← ¬, 
′
′
.
.
″
″
.</p>
        <p>.






 |   .
← , .
 |   .</p>
        <p>← , .
← , ¬
← , ¬
← ¬, 
← ¬, 
 .
 .
″
″
.
.</p>
        <sec id="sec-3-2-1">
          <title>3.1. Formalization</title>
          <p>Given an ELP Π, we create an ASP(Q) programΠ = ∃  1

∃  21 ⋯ ∃  2 ∀
 3 ∶  , where  1
consists of one choice rule containing one fresh ato m(  ) for each element ofelit(Π) = { 1, … ,   },
 21 to  2 are copies ofΠ, one for each epistemic literal, where all non-epistemic literals are
annotated with (  ) for the respective   and all epistemic literalsℓ are replaced by (ℓ) , and  3
is yet another copy ofΠ annotated with a special symbol .  consists of two constraints for
each ∈ elit(Π), for instance forK  these will be ←  ( K ), ¬  and ← ¬ ( K ),  ( K ) .</p>
          <p>
            The transformation can be quite easily adapted for several other semantics by leveraging
diferent reducts within the programs  2. However, for the semantics provided by Shen and
Eiter [
            <xref ref-type="bibr" rid="ref11">11</xref>
            ] more care would have to be taken, as an additional minimization over the epistemic
literals chosen in 1 is required.
          </p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Experimental Evaluation</title>
      <p>
        We tested the rewriting approach described in Section3, by benchmarking it against existing
ELP solvers. We will refer to our rewriting tool aselp2qasp. To compare, we chose the
stateof-the-art ELP solverEP-ASP [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] and the selp solver [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] based on a rewriting to plain ASP.
For our rewriting, we used two ASP(Q) solvers as backends: theqasp solver [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ], as well as the
q_asp solver [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ].
      </p>
      <p>
        We use the same three test sets proposed in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. For every test set, we measured the time
it took to solve the consistency problem. Forselp, the underlying ASP solver clingo [29] was
stopped after finding the first answer set. For
      </p>
      <p>EP-ASP, search was terminated after finding the
ifrst candidate world view 1. For qasp and q_asp, the output of our ELP to ASP(Q) rewriting
directly tells us whether the ELP is consistent or not, depending on whether the ASP(Q) program
is consistent.</p>
      <p>Experiments were run on an AMD EPYC 7601 system (2.2GHz base clock speed) with 500
GiB of memory. Each process was assigned a maximum of 14 GB of RAM, which was never
exceeded by any of the solvers tested. A time limit of 900 seconds was used for each benchmark
set. For EP-ASP, we made trivial modifications to the python code in order for it to run with
clingo 5.4.1. For selp and qasp, the same version ofclingo was used. Forselp, in addition, we used
the htd library, version 1.2.0, andlpopt 2.2. We used qasp 1.1.0 and q_asp 0.1.2 as the backend
solvers for our ASP(Q) rewriting generated byelp2qasp. The time it took to convert input ELP
programs into the specific input formats of the various tools we used (e.g. the input format
for selp or EP-ASP) was not measured, since we did not want the input format conversion to
influence the benchmark results. EP-ASP was called with the preprocessing option for brave
and cautious consequences on, since it always ran faster this way. The time fsoerlp, qasp, and
q_asp is the sum of the time it took to run all required components. Forselp, clingo was always
called with SAT preprocessing enabled, as is recommended by thelpopt tool.
1Note that to have a fair comparison we disabled the subset-maximality check on the guess thEaPt-ASP performs by
default.</p>
      <sec id="sec-4-1">
        <title>4.1. Benchmark Instances</title>
        <p>
          We used three types of benchmarks, two coming from the ELP literature and one from the
QSAT domain 2. This is the same benchmark set as used and published by the authors of the
selp solver, which they used in the associated conference publication1[
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]. We briefly describe
the benchmark set below.
        </p>
        <p>
          Scholarship Eligibility. This set of non-ground ELP programs is shipped together with
EP-ASP. Its instances encode the scholarship eligibility problem for 1 to 25 students.
Yale Shooting. This test set consists of 25 non-ground ELP programs encoding a simple
version of the Yale Shooting Problem, a conformant planning problem: the only uncertainty
is whether the gun is initially loaded or not, and the only fluents are the gun’s load state and
whether the turkey is alive. Instances difer in the time horizon. We follow the ELP encoding
from [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ].
        </p>
        <p>
          Tree QBFs. The hardness proof for ELP consistency [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ] relies on a reduction from the
validity problem for restricted quantified boolean formulas with three quantifier blocks (i.e.
3-QBFs), which can be generalized to arbitrary 3-QBFs1[
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]. In that publication, the reduction
is applied to the 14 “Tree” instances of QBFEVAL’16 [30], available athttp://www.qbflib.org/
family_detail.php?idFamily=56.
        </p>
      </sec>
      <sec id="sec-4-2">
        <title>4.2. Results</title>
        <p>
          The results for the first two sets are shown in Figure 1 and Figure 2, respectively. For the
Scholarship Eligibility Problem, we can observe, confirming the observations by Bichler et
al. [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ], thatEP-ASP can solve 16 instances, whileselp is able to solve all instances, independent of
time, within 5 seconds. Interestingly, the same holds true for ourelp2qasp rewriting, when using
q_asp as a backend. This combination can solve all instances within 13 seconds. Interestingly,
the qasp backend is only able to solve three instances successfully within the time limit. The
diference in performance between the two tools may be due to the fact thatq_asp uses a QBF
solver, while qasp delegates the solving work to the ASP solverclingo or wasp [31]. In all our
benchmarks we use the latter option.
        </p>
        <p>For the Yale Shooting Problem, we can see that bothEP-ASP and selp are unable to solve all
instances. Note that all instances of this problem are inconsistent, which sometimes allows
EP-ASP to realize this fairly quickly. However, in seven cases, we dont get any answers from
EP-ASP within the time limit. On the other hand, ourelp2qasp approach with theq_asp backend
is able to solve all instances of this problem within 70 seconds, with the solving time increasing
moderately with the increase in the time horizon. For theqasp backend, we unfortunately
encountered a problem in the implementation, which lead to an internal error message for all
instances of the Yale Shooting Problem.</p>
        <p>
          Finally, for the Tree QBF Problem, we confirmed the results of Bichler et al. [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ]: selp was
able to solve 4 of the 14 instances within the time limit of 900 seconds, whereas bothEP-ASP
2https://drive.google.com/file/d/12lAzaM1wTXomqTniT75C7lWrh5EMJn6r
        </p>
        <p>10 15
Number of students
20</p>
        <p>25
EP-ASP
selp
qasp
q_asp
EP-ASP
selp
q_asp
and elp2qasp with the qasp backend were unable to solve any instances at all. For thqe_asp
backend, this class of problems is unsolvable, since the resulting ASP(Q) rewriting contains
rules that are not head-cycle free and are hence not treatable bqy_asp. Since selp was the only
solver able to successfully solve instances of this problem, we omit a dedicated figure for this
problem here.</p>
        <p>These results confirm that elp2qasp is competitive for solving ELP programs, especially when
paired with the q_asp solver for ASP(Q), which, in turn, is based on an internal QBF solver. On
the other hand, the ASP(Q) solverqasp does not seem to match this success, but this may be an
inherent limitation, since it internally relies on the ASP solverclingo or wasp to solve ASP(Q)
instances, which may lead to an exponential number of internal calls to that ASP solver.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. Conclusions</title>
      <p>In this paper, we proposed a rewriting that transforms epistemic logic programs (ELPs) into
programs for answer set programming with quantifiers (ASP(Q)). It does this by faithfully
mimicking the semantics of ELPs and formulating them directly in ASP(Q), which is possible
because of the explicit support for quantification that ASP(Q) provides.</p>
      <p>
        We then implement our approach and, using state-of-the-art ASP(Q) solvers as a backend,
test our rewriting approach against existing solvers for ELPs. We show that, for several problem
domains, our rewriting approach ofers competitive performance when compared to existing
solvers, especially in the case where theq_asp ASP(Q) solver [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ] is used, which internally uses
a QBF solver to evaluate the given ASP(Q) program.
      </p>
      <p>
        Future work includes further refining and optimizing the rewriting, as well as adapting it for
the various other semantics that exist for evaluating ELPs9[
        <xref ref-type="bibr" rid="ref10 ref11 ref12 ref13 ref14 ref15">, 10, 11, 12, 13, 14, 15</xref>
        ]
https://github.com/bernardocuteri/q_asp.
[29] M. Gebser, R. Kaminski, B. Kaufmann, T. Schaub, Multi-shot ASP solving with clingo,
      </p>
      <p>TPLP 19 (2019) 27–82.
[30] L. Pulina, The ninth QBF solvers evaluation - preliminary report, in: Proc. QBF, 2016, pp.</p>
      <p>1–13. URL: http://ceur-ws.org/Vol-1719/paper0.pdf.
[31] M. Alviano, C. Dodaro, N. Leone, F. Ricca, Advances in WASP, in: F. Calimeri, G. Ianni,
M. Truszczynski (Eds.), Proc. LPNMR, volume 9345 of LNCS, Springer, 2015, pp. 40–54.
doi:10.1007/978-3-319-23264-5\_5.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>M.</given-names>
            <surname>Gelfond</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Lifschitz</surname>
          </string-name>
          ,
          <article-title>The stable model semantics for logic programming</article-title>
          ,
          <source>in: Proc. ICLP/SLP</source>
          ,
          <year>1988</year>
          , pp.
          <fpage>1070</fpage>
          -
          <lpage>1080</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>M.</given-names>
            <surname>Gelfond</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Lifschitz</surname>
          </string-name>
          ,
          <article-title>Classical negation in logic programs</article-title>
          and disjunctive databases,
          <source>New Gener. Comput</source>
          .
          <volume>9</volume>
          (
          <year>1991</year>
          )
          <fpage>365</fpage>
          -
          <lpage>386</lpage>
          . doi:
          <volume>10</volume>
          .1007/BF03037169.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>G.</given-names>
            <surname>Brewka</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Eiter</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Truszczynski</surname>
          </string-name>
          ,
          <article-title>Answer set programming at a glance</article-title>
          ,
          <source>Commun. ACM</source>
          <volume>54</volume>
          (
          <year>2011</year>
          )
          <fpage>92</fpage>
          -
          <lpage>103</lpage>
          . doi:
          <volume>10</volume>
          .1145/2043174.2043195.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>T.</given-names>
            <surname>Schaub</surname>
          </string-name>
          , S. Woltran,
          <article-title>Special issue on answer set programming</article-title>
          ,
          <source>Künstliche Intell</source>
          .
          <volume>32</volume>
          (
          <year>2018</year>
          )
          <fpage>101</fpage>
          -
          <lpage>103</lpage>
          . doi:
          <volume>10</volume>
          .1007/s13218-018-0554-8.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>M.</given-names>
            <surname>Gelfond</surname>
          </string-name>
          ,
          <article-title>Strong introspection</article-title>
          , in: T. L.
          <string-name>
            <surname>Dean</surname>
            ,
            <given-names>K. R.</given-names>
          </string-name>
          <string-name>
            <surname>McKeown</surname>
          </string-name>
          (Eds.),
          <source>Proc. AAAI</source>
          , AAAI Press / The MIT Press,
          <year>1991</year>
          , pp.
          <fpage>386</fpage>
          -
          <lpage>391</lpage>
          . URL: http://www.aaai.org/Library/AAAI/
          <year>1991</year>
          / aaai91-
          <fpage>060</fpage>
          .php.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>M.</given-names>
            <surname>Gelfond</surname>
          </string-name>
          ,
          <article-title>Logic programming and reasoning with incomplete information</article-title>
          , Ann. Math. Artif. Intell.
          <volume>12</volume>
          (
          <year>1994</year>
          )
          <fpage>89</fpage>
          -
          <lpage>116</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>M.</given-names>
            <surname>Gelfond</surname>
          </string-name>
          ,
          <article-title>New semantics for epistemic specifications</article-title>
          ,
          <source>in: Proc. LPNMR</source>
          ,
          <year>2011</year>
          , pp.
          <fpage>260</fpage>
          -
          <lpage>265</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>M.</given-names>
            <surname>Truszczynski</surname>
          </string-name>
          ,
          <article-title>Revisiting epistemic specifications</article-title>
          , in: M.
          <string-name>
            <surname>Balduccini</surname>
          </string-name>
          , T. C. Son (Eds.),
          <string-name>
            <surname>Logic</surname>
            <given-names>Programming</given-names>
          </string-name>
          ,
          <source>Knowledge Representation, and Nonmonotonic Reasoning - Essays Dedicated to Michael Gelfond on the Occasion of His 65th Birthday</source>
          , volume
          <volume>6565</volume>
          oLfecture Notes in Computer Science, Springer,
          <year>2011</year>
          , pp.
          <fpage>315</fpage>
          -
          <lpage>333</lpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>642</fpage>
          -20832-4\ _
          <fpage>20</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>P. T.</given-names>
            <surname>Kahl</surname>
          </string-name>
          ,
          <article-title>Refining the Semantics for Epistemic Logic Programs</article-title>
          ,
          <source>Ph.D. thesis</source>
          , Texas Tech University, Texas, USA,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>L. F.</given-names>
            <surname>del Cerro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Herzig</surname>
          </string-name>
          ,
          <string-name>
            <surname>E. I. Su</surname>
          </string-name>
          ,
          <article-title>Epistemic equilibrium logic</article-title>
          ,
          <source>in: Proc. IJCAI</source>
          ,
          <year>2015</year>
          , pp.
          <fpage>2964</fpage>
          -
          <lpage>2970</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Shen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Eiter</surname>
          </string-name>
          ,
          <article-title>Evaluating epistemic negation in answer set programming</article-title>
          ,
          <source>Artif. Intell</source>
          .
          <volume>237</volume>
          (
          <year>2016</year>
          )
          <fpage>115</fpage>
          -
          <lpage>135</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>T. C.</given-names>
            <surname>Son</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Le</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. T.</given-names>
            <surname>Kahl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. P.</given-names>
            <surname>Leclerc</surname>
          </string-name>
          ,
          <article-title>On computing world views of epistemic logic programs</article-title>
          ,
          <source>in: Proc. IJCAI</source>
          ,
          <year>2017</year>
          , pp.
          <fpage>1269</fpage>
          -
          <lpage>1275</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>P. T.</given-names>
            <surname>Kahl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. P.</given-names>
            <surname>Leclerc</surname>
          </string-name>
          ,
          <article-title>Epistemic logic programs with world view constraints</article-title>
          , in: A.
          <string-name>
            <surname>D. Palù</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Tarau</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Saeedloei</surname>
          </string-name>
          , P. Fodor (Eds.),
          <source>Proc. ICLP</source>
          , volume
          <volume>64</volume>
          ofOASIcs, Schloss Dagstuhl - Leibniz-Zentrum für Informatik,
          <year>2018</year>
          , pp.
          <volume>1</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>1</lpage>
          :
          <fpage>17</fpage>
          . doi:
          <volume>10</volume>
          .4230/OASIcs.ICLP.
          <year>2018</year>
          .
          <volume>1</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>W.</given-names>
            <surname>Faber</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Morak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Woltran</surname>
          </string-name>
          ,
          <article-title>Strong equivalence for epistemic logic programs made easy</article-title>
          ,
          <source>in: Proc. AAAI</source>
          , AAAI Press,
          <year>2019</year>
          , pp.
          <fpage>2809</fpage>
          -
          <lpage>2816</lpage>
          . doi:
          <volume>10</volume>
          .1609/aaai.v33i01.
          <fpage>33012809</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>M.</given-names>
            <surname>Morak</surname>
          </string-name>
          ,
          <article-title>Epistemic logic programs: A diferent world view</article-title>
          ,
          <source>in: Proc. ICLP</source>
          ,
          <string-name>
            <surname>Technical</surname>
            <given-names>Communications</given-names>
          </string-name>
          , volume
          <volume>306</volume>
          ofEPTCS,
          <year>2019</year>
          , pp.
          <fpage>52</fpage>
          -
          <lpage>64</lpage>
          . doi:
          <volume>10</volume>
          .4204/EPTCS.306.11.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>P. T.</given-names>
            <surname>Kahl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Watson</surname>
          </string-name>
          , E. Balai,
          <string-name>
            <given-names>M.</given-names>
            <surname>Gelfond</surname>
          </string-name>
          ,
          <string-name>
            <surname>Y. Zhang,</surname>
          </string-name>
          <article-title>The language of epistemic specifications (refined) including a prototype solver</article-title>
          ,
          <source>J. Log. Comput</source>
          . (
          <year>2015</year>
          )
          <article-title>exv065</article-title>
          . doi:https://doi.org/10.1093/logcom/exv065.
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>M.</given-names>
            <surname>Bichler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Morak</surname>
          </string-name>
          ,
          <string-name>
            <surname>S.</surname>
          </string-name>
          <article-title>Woltran, selp: A single-shot epistemic logic program solver</article-title>
          ,
          <source>Theory Pract. Log. Program</source>
          .
          <volume>20</volume>
          (
          <year>2020</year>
          )
          <fpage>435</fpage>
          -
          <lpage>455</lpage>
          .
          <year>doi1</year>
          :
          <fpage>0</fpage>
          .1017/S1471068420000022.
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>G.</given-names>
            <surname>Amendola</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Ricca</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Truszczynski</surname>
          </string-name>
          ,
          <string-name>
            <surname>Beyond</surname>
            <given-names>NP</given-names>
          </string-name>
          :
          <article-title>quantifying over answer sets</article-title>
          ,
          <source>Theory Pract. Log. Program</source>
          .
          <volume>19</volume>
          (
          <year>2019</year>
          )
          <fpage>705</fpage>
          -
          <lpage>721</lpage>
          .
          <year>doi1</year>
          :
          <fpage>0</fpage>
          .1017/S1471068419000140.
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>A. P.</given-names>
            <surname>Leclerc</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. T.</given-names>
            <surname>Kahl</surname>
          </string-name>
          ,
          <article-title>A survey of advances in epistemic logic program solvers</article-title>
          , CoRR abs/
          <year>1809</year>
          .07141 (
          <year>2018</year>
          ). URL: http://arxiv.org/abs/
          <year>1809</year>
          .07141. arXiv:
          <year>1809</year>
          .07141, also in
          <source>Proc. of ASPOCP</source>
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>B.</given-names>
            <surname>Bogaerts</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Janhunen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Tasharrofi</surname>
          </string-name>
          ,
          <article-title>Stable-unstable semantics: Beyond NP with normal logic programs</article-title>
          ,
          <source>Theory Pract. Log. Program</source>
          .
          <volume>16</volume>
          (
          <year>2016</year>
          )
          <fpage>570</fpage>
          -
          <lpage>586</lpage>
          .
          <year>doi1</year>
          :
          <fpage>0</fpage>
          .1017/ S1471068416000387.
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>T.</given-names>
            <surname>Janhunen</surname>
          </string-name>
          ,
          <article-title>Implementing stable-unstable semantics with ASPTOOLS and clingo</article-title>
          , in: J.
          <string-name>
            <surname>Cheney</surname>
          </string-name>
          , S. Perri (Eds.),
          <source>Proc. PADL</source>
          , volume
          <volume>13165</volume>
          ofLecture Notes in Computer Science, Springer,
          <year>2022</year>
          , pp.
          <fpage>135</fpage>
          -
          <lpage>153</lpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>030</fpage>
          -94479-7\_9.
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>J.</given-names>
            <surname>Fandinno</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Laferrière</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Romero</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Schaub</surname>
          </string-name>
          , T. C.
          <article-title>Son, Planning with incomplete information in quantified answer set programming</article-title>
          ,
          <source>Theory Pract. Log. Program</source>
          .
          <volume>21</volume>
          (
          <year>2021</year>
          )
          <fpage>663</fpage>
          -
          <lpage>679</lpage>
          . doi:
          <volume>10</volume>
          .1017/S1471068421000259.
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>M.</given-names>
            <surname>Gebser</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Kaminski</surname>
          </string-name>
          , B. Kaufmann, T. Schaub, Answer Set Solving in Practice,
          <source>Synthesis Lectures on Artificial Intelligence and Machine Learning</source>
          , Morgan &amp; Claypool Publishers,
          <year>2012</year>
          . doi:
          <volume>10</volume>
          .2200/S00457ED1V01Y201211AIM019.
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>V.</given-names>
            <surname>Lifschitz</surname>
          </string-name>
          , Answer Set Programming, Springer,
          <year>2019</year>
          . URL: https://doi.org/10.1007/ 978-3-
          <fpage>030</fpage>
          -24658-7. doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>030</fpage>
          -24658-7.
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>F.</given-names>
            <surname>Calimeri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Faber</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Gebser</surname>
          </string-name>
          , G. Ianni,
          <string-name>
            <given-names>R.</given-names>
            <surname>Kaminski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Krennwallner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Leone</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Maratea</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Ricca</surname>
          </string-name>
          , T. Schaub,
          <article-title>Asp-core-2 input language format</article-title>
          ,
          <source>Theory Pract. Log. Program</source>
          .
          <volume>20</volume>
          (
          <year>2020</year>
          )
          <fpage>294</fpage>
          -
          <lpage>309</lpage>
          . doi:
          <volume>10</volume>
          .1017/S1471068419000450.
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>T.</given-names>
            <surname>Eiter</surname>
          </string-name>
          , G. Gottlob,
          <article-title>On the computational cost of disjunctive logic programming: Propositional case</article-title>
          ,
          <source>Ann. Math. Artif. Intell</source>
          .
          <volume>15</volume>
          (
          <year>1995</year>
          )
          <fpage>289</fpage>
          -
          <lpage>323</lpage>
          . URL:https://doi.org/10.1007/ BF01536399. doi:
          <volume>10</volume>
          .1007/BF01536399.
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>A.</given-names>
            <surname>Natale</surname>
          </string-name>
          , Design and implementation of qasp solver,
          <year>2021</year>
          . do1i:
          <fpage>0</fpage>
          .5281/zenodo.5425783.
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>G.</given-names>
            <surname>Amendola</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Cuteri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Ricca</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Truszczynski</surname>
          </string-name>
          ,
          <article-title>Quantified asp solver q_asp, 2022</article-title>
          . URL:
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>