<!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>Nuclear Medicine Rescheduling Problem: A Logic-based Approach</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Carmine Dodaro</string-name>
          <email>carmine.dodaro@unical.it</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Giuseppe Galatà</string-name>
          <email>giuseppe.galata@surgiq.com</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marco Maratea</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Cinzia Marte</string-name>
          <email>cinzia.marte@unical.it</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marco Mochi</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>DIBRIS, University of Genoa</institution>
          ,
          <addr-line>Genoa</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>DeMaCS, University of Calabria</institution>
          ,
          <addr-line>Rende</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>SurgiQ srl</institution>
          ,
          <addr-line>Genova</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The Nuclear Medicine Scheduling problem consists of assigning patients to a day, in which the patient will undergo the medical check, the preparation, and the actual image detection process. The schedule of the patients should consider their different requirements and the available resources, e.g., varying time required for different diseases and radiopharmaceuticals used, number of injection chairs, and tomographs available. Recently, this problem has been solved using a logic-based approach utilizing the Answer Set Programming (ASP) methodology. However, it may be the case that a computed schedule can not be implemented due to a sudden emergency and/or unavailability of resources, thus rescheduling is needed. In this paper we present an ASP-based approach to solve such situation, that we call Nuclear Medicine Rescheduling problem. Experiments employing real data from a medium size hospital in Italy show that our rescheduling solution provides satisfying results even when the concurrent number of emergencies and unavailability is significant.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Answer Set Programming</kwd>
        <kwd>Logic Programming</kwd>
        <kwd>Digital Health</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>Nuclear Medicine is a medical specialty that uses radiopharmaceuticals, a particular kind of drug
containing radioactive elements, to treat or diagnose diseases. According to data by the Italian Ministry
of Health, almost 2 millions nuclear medicine exams have been carried on during 2022 in Italy1. The
process of treating patients with this technique is complex since it involves multiple resources of the
hospital and requires multiple steps of varying time. Moreover, often these drugs contain radioactive
elements characterized by short half-lives, meaning that they decay rapidly after their preparation. Thus,
the timing should be as precise as possible in order to obtain images of good quality. Addressing this
problem effectively is crucial due to the nature of the diagnosed illnesses and treated through nuclear
medicine, alongside the significant costs associated with this kind of technique. An efficient, possibly
optimal, solution can reduce the waiting time of the patients and can thus increase the effective utilization
of the resources, avoiding waste of time and resources. Nevertheless, reducing the unnecessary time spent
by the patients in the hospital is vital for increasing their satisfaction.</p>
      <p>Thus, the Nuclear Medicine Scheduling (NMS) problem consists of assigning patients to a day, in which
the patient will undergo the medical check, the preparation, and the actual image detection process. The
schedule of the patients considers the different requirements of the patients and the available resources,
e.g., varying time required for different procedures and radiopharmaceuticals used, number of injection
chairs and tomographs available. We followed the definition of the problem given by Medipass 2, leading
provider of technological innovation across cancer care and diagnostic imaging in Italy, in collaboration
with SurgiQ3, an Italian company active in planning and scheduling solutions.</p>
      <p>
        Given that complex combinatorial problems, possibly involving optimizations, such as the NMS
problem, are usually the target applications of logic-based approaches, in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] a solution based on the AI
language for knowledge representation and reasoning Answer Set Programming (ASP) has been provided.
In the ASP methodology, first the problem is formally represented in terms of logical rules (usually
called encoding), then the encoding in given in input, together with the data, to a solver, which computes
a solution to the original problem. The reason for employing ASP are multiple, other than it is the
language we know better, and a number of scheduling applications, also in Healthcare, have been already
successfully addressed with ASP (see, e.g., [
        <xref ref-type="bibr" rid="ref2 ref3 ref4 ref5 ref6 ref7">2, 3, 4, 5, 6, 7</xref>
        ]): A simple but rich syntax [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], which includes
optimization statements as well as powerful database-inspired constructs like aggregates, an intuitive
semantics [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], the availability of efficient solvers (see, e.g., [
        <xref ref-type="bibr" rid="ref10 ref11 ref12">10, 11, 12</xref>
        ]) able to solve optimization
problems via powerful algorithms (see, e.g., [
        <xref ref-type="bibr" rid="ref13 ref14">13, 14</xref>
        ], and the fruitful combination with machine learning
approaches (see, e.g., [
        <xref ref-type="bibr" rid="ref15 ref16">15, 16</xref>
        ]).
      </p>
      <p>However, it may be well the case that a previously viable solution may no longer be feasible for a
number of reasons which include sudden emergencies coming to the table and/or the unavailability of
resources. In turn, these scenarios can produce two different types of rescheduling: If the reason is known
prior, the rescheduling is called ’ofiflne’, since it does not affect the patients already in the hospital,
otherwise it is ’online’, since it is created while the patients are in the hospital, but without affecting the
patients already under treatment.</p>
      <p>In this paper we present an ASP-based approach to solve such problem, that we call Nuclear Medicine
Rescheduling (NMR) problem. In particular, we address online rescheduling for the reallocation of
resources due to emergencies that demand immediate access to equipment or require more time on the
resources. Experiments employing real data from a medium size hospital in Italy, provided by Medipass,
show that the solution produces satisfying results even when the concurrent number of emergencies and
unavailability is up to 20% of the patients involved in the scheduling procedure.</p>
      <p>The paper is structured as follows. Sections 2 introduces needed preliminaries about ASP. Then,
Section 3 reviews the NMS problem, in terms of an informal description of the problem and the ASP
encoding for representing it. Section 4 and 5 present the main contributions of our paper, i.e., the NMR
problem, in terms of informal description and ASP encoding, and its experimental evaluation, respectively.
The paper ends by discussing related works and conclusions in Section 6 and 7, respectively.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Background on ASP</title>
      <p>
        Answer Set Programming (ASP) [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] is a programming paradigm developed in the field of non-monotonic
reasoning and logic programming. In this section, we overview the language of ASP. More detailed
descriptions and a more formal account of ASP, including the features of the language employed in
this paper, can be found in [
        <xref ref-type="bibr" rid="ref8 ref9">9, 8</xref>
        ]. Hereafter, we assume the reader is familiar with logic programming
conventions.
      </p>
      <p>Syntax. The syntax of ASP is similar to the one of Prolog. Variables are strings starting with an
uppercase letter, and constants are non-negative integers or strings starting with lowercase letters. A
term is either a variable or a constant. A standard atom is an expression p(t1, . . . , tn), where p is a
predicate of arity n, denoted by p/n, and t1, . . . , tn are terms. An atom p(t1, . . . , tn) is ground if t1, . . . , tn
are constants. A ground set is a set of pairs of the form ⟨consts : con j⟩, where consts is a list of constants
and con j is a conjunction of ground standard atoms. A symbolic set is a set specified syntactically as
{Terms1 : Con j1; · · · ; Termst : Con jt }, where t &gt; 0, and for all i ∈ [1,t], each Termsi is a list of terms
such that |Termsi| = k &gt; 0, and each Con ji is a conjunction of standard atoms. A set term is either a
2https://ergeagroup.com/it/.
3https://surgiq.com/.
symbolic set or a ground set. Intuitively, a set term {X : a(X , c), p(X );Y : b(Y, m)} stands for the union of
two sets: the first one contains the X -values making the conjunction a(X , c), p(X ) true, and the second
one contains the Y -values making the conjunction b(Y, m) true. An aggregate function is of the form
f (S), where S is a set term, and f is an aggregate function symbol. Basically, aggregate functions map
multisets of constants to a constant, e.g., the function #count computes the number of terms.</p>
      <p>An aggregate atom is of the form f (S) ≺ T , where f (S) is an aggregate function, ≺ ∈ { &lt;, ≤ , &gt;, ≥ , ̸=
, =} is a operator, and T is a term called guard. An aggregate atom f (S) ≺ T is ground if T is a constant
and S is a ground set. An atom is either a standard atom or an aggregate atom. A rule r has the following
form:</p>
      <p>a1 | . . . | an :– b1, . . . , bk, not bk+1, . . . , not bm.
where a1, . . . , an are standard atoms, b1, . . . , bk are atoms, bk+1, . . . , bm are standard atoms, and n, k, m ≥ 0.
A literal is either a standard atom a or its negation not a. The disjunction a1 | . . . | an is the head of r,
while the conjunction b1, . . . , bk, not bk+1, . . . , not bm is its body. Rules with empty body are called facts.
Rules with empty head are called constraints. A variable that appears uniquely in set terms of a rule r is
said to be local in r, otherwise it is a global variable of r. An ASP program is a set of safe rules, where
a rule r is safe if the following conditions hold: (i) for each global variable X of r there is a positive
standard atom ℓ in the body of r such that X appears in ℓ, and (ii) each local variable of r appearing in a
symbolic set {Terms : Conj} also appears in a positive atom in Conj.</p>
      <p>
        A weak constraint [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] ω is of the form:
where w and l are the weight and level of ω , respectively. (Intuitively, [w@l] is read as "weight w at
level l”, where the weight is the “cost” of violating the condition in the body of w, whereas levels can be
specified for defining a priority among preference criteria). An ASP program with weak constraints is
Π = ⟨P,W ⟩, where P is a program and W is a set of weak constraints.
      </p>
      <p>A standard atom, a literal, a rule, a program or a weak constraint is ground if no variables appear in it.
Semantics. Let P be an ASP program. The Herbrand universe UP and the Herbrand base BP of P are
defined as usual. The ground instantiation GP of P is the set of all the ground instances of rules of P that
can be obtained by substituting variables with constants from UP.</p>
      <p>An interpretation I for P is a subset I of BP. A ground literal ℓ (resp., not ℓ) is true w.r.t. I if ℓ ∈ I
(resp., ℓ ̸∈ I), and false (resp., true) otherwise. An aggregate atom is true w.r.t. I if the evaluation of its
aggregate function (i.e., the result of the application of f on the multiset S) with respect to I satisfies the
guard; otherwise, it is false.</p>
      <p>A ground rule r is satisfied by I if at least one atom in the head is true w.r.t. I whenever all conjuncts of
the body of r are true w.r.t. I.</p>
      <p>
        A model is an interpretation that satisfies all rules of a program. Given a ground program GP and an
interpretation I, the reduct [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] of GP w.r.t. I is the subset GIP of GP obtained by deleting from GP the
rules in which a body literal is false w.r.t. I. An interpretation I for P is an answer set (or stable model)
for P if I is a minimal model (under subset inclusion) of GIP (i.e., I is a minimal model for GIP) [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ].
      </p>
      <p>Given a program with weak constraints Π = ⟨P,W ⟩, the semantics of Π extends from the basic case
defined above. Thus, let GΠ = ⟨GP, GW ⟩ be the instantiation of Π; a constraint ω ∈ GW is violated by an
interpretation I if all the literals in ω are true w.r.t. I. An optimum answer set for Π is an answer set of
GP that minimizes the sum of the weights of the violated weak constraints in GW in a prioritized way.
Syntactic shortcuts. In the following, we also use choice rules of the form {p}, where p is an atom.
Choice rules can be viewed as a syntactic shortcut for the rule p | p′, where p′ is a fresh new atom not
appearing elsewhere in the program, meaning that the atom p can be chosen as true.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Nuclear Medicine Scheduling</title>
      <p>
        In this section, we review the Nuclear Medicine Scheduling (NMS) problem [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. We start by outlining
the key aspects of the problem, followed by a detailed explanation of the ASP encoding developed to
model it.
      </p>
      <sec id="sec-3-1">
        <title>3.1. Problem Description</title>
        <p>The NMS problem consists of assigning patients to a day and to a tomograph and/or an injection chair if
required by the patient or the specific procedure. In our problem, for each day we consider a set of 120
time slots (TS), each representing 5 minutes. Each patient needs an exam and each exam is linked to a
protocol defining the phases and the time required for each phase. We considered 11 different protocols.
Each protocol can encompass up to four phases, represented as (p1) anamnesis, (p2) medical check,
(p3) radiopharmaceuticals injection and bio-distribution time, and (p4) image detection. Moreover, each
phase can require a different amount of time depending on the exam. Table 1 shows the total time needed
by each protocol, the partial time required by each phase, expressed in the number of time slots used, and
which protocol requires an infusion chair for the phase (p3).</p>
        <p>Due to the high number of phases required by each patient and the variety of the considered protocols,
in many clinics the schedule of the patients is sub-optimal. A sub-optimal schedule is problematic not only
because of the high cost of the drugs and machines involved in the exams, but is particularly detrimental
for the patients since the order and the time required by each phase, in particular the injection and the
bio-distribution time, is fundamental for a proper image detection.</p>
        <p>Different clinics have different resource availability and may have different requirements in defining a
proper solution. Here we present the criteria followed in the clinic that provided us with the real data of
the patients and that we use to define the problem. We considered a clinic with two rooms, each with one
tomograph and three injection chairs. We started from a list of patients, each requiring a specific protocol,
to be assigned in a day. A proper solution must satisfy the following conditions:
• a starting and an ending time should be assigned to every scheduled patient for each required phase;
• there must be at most two patients concurrently in the medical check phase;
• the injection phase must be done in an injection chair or on a tomograph according to the required
protocol;
• each injection chair and tomograph can be used by just one patient at the same time;
• patients requiring an injection chair must be assigned to the tomograph of the same room;
• protocol identified by the id 815 cannot be assigned on the same day and tomograph for more than
one patient.</p>
        <p>The solution should maximize the number of scheduled patients in the considered days and, to increase
the satisfaction of the patients and the effectiveness of the exams, the solution should also try to minimize
the unnecessary time spent in the clinic by the patients.</p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2. ASP Encoding</title>
        <p>
          Now we present our ASP encoding developed to model the NMS problem. The underlying encoding is
based on the input language of CLINGO [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ].
        </p>
        <p>Data Model. The input data is specified by means of the following atoms:
• instances of reg(ID,D,PrID) represent a registration with identification number ID, on day D,
for a specific exam with protocol number PrID;
• instances of avail(TS,D) denote that the time slots TS is available on day D;
• instances of exam(PrID,P,NumTS) denote the features of a exam, where PrID denotes the exam
protocol number, P indicates the phase, and NumTS specifies the time required for that phase in
terms of the number of time slots;
• instances of tomograph(T,R) and chair(C,R) denote the allocation of the tomograph T and
the chair C to the room R, respectively;
• instances of required_chair(PrID) denote the necessity of a chair for the phases 1 and 2 for
the protocol PrID;
• instances of cost(PrID, NumTS) represent the total duration in terms of time slots, denoted as</p>
        <p>NumTS, of the phases within the protocol identified by PrID;
• instances of limit(PrID,N) denote the maximum number N of exams with protocol number</p>
        <p>PrID that can be executed on a fixed tomograph in a day.</p>
        <p>The output consists of assignments represented by the atom x(ID,D,TS,PrID,P) where the intuitive
meaning is that the registration with identification number ID for the exam with protocol number PrID,
regarding the phase P, has been scheduled for the day D during the time slot TS. Additionally, it includes
atoms chair(C,ID,D) and tomograph(T,ID,D), denoting the resource (either the chair C or the
tomograph T, respectively) allocated to the patient ID on the day D.</p>
        <p>Encoding. The related encoding is shown in Figure 1 and is described next. To simplify the description,
we denote as ri the rule appearing at line i of Figure 1.</p>
        <p>Rule r1 may assign or not the registration with identifier ID to a specific time slot TS for the day D in
phase 0, i.e., the phase of the anamnesis. Rule r2 assigns an already scheduled session for a given phase P
to the subsequent planned phases, under the condition that the start of the phase does not extend beyond
the latest available time slot for a session on that day. Furthermore, it ensures that the subsequent phase
starts at most 5 time slots after the ending of the previous phase. Rule r3 ensures that the duration of
the final phase is also consistent with the time slots, ensuring that all phases are completed within the
specified limit. Rule r4 keeps track of the time slots allocated to a patient during phase 0 via the auxiliary
atom timeAnamnesis(ID, TS). Rule r5 restricts the number of patients during the anamnesis phase
to a maximum of two. Rule r6 produces the auxiliary atom timeOccupation(ID,D,TS,END,PrID),
representing the duration needed for each patient ID from the initial time slot TS of phase 1 to the final one
END of phase 2, concerning the protocol PrID on the day D. Rule r7 produces the auxiliary atom res(ID,
D, TS, 0) for each time slot derived from the previous rule. Specifically, the constant 0 denotes that a
chair is required for each of these time slots. Rules r8 and r9 produce the atom res(ID,D,TS,1), which
differs from the previous one for the constant 1, indicating the use of a tomograph. From rule r8, it is
inferred that a tomograph is employed during phase 3, whereas rule r9 indicates the tomograph’s usage
in phase 1 and 2, according to the atom timeOccupation. Rule r10 ensures that the limit of protocols
that can be executed on a single tomograph is respected. Rule r11 produces the atom chair(C,ID,D)
representing the assignment of a chair C on the day D to the patient ID when the protocol PrID requires
a chair. Rule r12 produces the atom tomograph(T,ID,D) similar to the previous but considering the
tomographs. representing the assignment of a tomograph T on the day D to the patient ID. Rule r13
prevents the patient who moves from the chair to the tomograph from changing room. Rule r14 and
r15 generate the atoms chair(C,ID,D,TS) and tomograph(T,ID,D,TS) respectively, indicating the
time slots TS during which the chair C and tomograph T are utilized by the patients ID on the day D.
Rule r16 and r17 ensure that at most one patient is assigned to each tomograph and chair in every time
slot, respectively. Finally, the optimal solution is achieved through the application of rule r18, which
minimizes (with the highest priority) the number of registrations not assigned to a schedule, and rule r19,
which minimizes the duration of patient appointments beyond the time necessary to perform the test.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Nuclear Medicine Rescheduling</title>
      <p>In this section, we explore scenarios where patient appointments need to be rescheduled. We start
by describing the core aspects of the Nuclear Medicine Rescheduling (NMR) problem and, then, we
introduce the encoding designed to model the problem.</p>
      <sec id="sec-4-1">
        <title>4.1. NMR Problem Description</title>
        <p>As described in Section 3.1, the NMS problem involves assigning patients to specific days for their
medical checks, preparation, and image detection process. Given the complexity of protocols and the
multiple phases each patient must undergo, the precise timing and sequence of these phases—especially
the injection and bio-distribution periods—are critical for accurate imaging results. Hence, it is crucial to
effectively navigate unforeseen challenges and adapt to changes. This is especially true when addressing
rescheduling issues, where a previously viable solution may no longer be feasible. Common scenarios
that may disrupt a previously established schedule are:
(i) the reallocation of resources due to emergencies that demand immediate access to equipment or
require more time on the resources;
(ii) unexpected unavailability of essential resources (e.g., an injection chair or a tomography);
(iii) unavailability of a procedure room.</p>
        <p>Moreover, these scenarios can produce two different types of rescheduling. If the reason, e.g., the
unavailability of some resources or of some procedure room, is known prior, the rescheduling is called
’offline’, since it does not affect the patients already in the hospital and it produces a new output before
patients arrive in the structure. Instead, suppose the reason cannot be known prior: In this case, e.g.,
unavailability of the procedure room depends on a larger amount of time required by some patient or
some emergency comes into the picture, the rescheduling is called ’online’ since it is created while the
patients are in the hospital but without affecting the patients already under treatment.</p>
        <p>In general, these situations require rescheduling the patients to ensure the continuity of medical
processes, safeguarding both the quality of patient care and the accuracy of diagnostic outcomes. Moreover,
to ensure that all the patients are treated on the originally scheduled day, it is possible to allow overtime
usage. To address these challenges, a responsive rescheduling solution is essential. Such a solution
should be capable of quickly adjusting to changes by reallocating resources. In the following, we will
present an online rescheduling solution for scenario (i). The solution, that is presented in Section 4.2, is
developed to be general enough to be adapted to the other scenarios with relatively few modifications.
More in detail, in scenario (i) registrations could require more time than expected to complete their
phases. Additionally, new registrations having an emergency, not necessarily starting from phase 0, could
arise and require immediate assignment. The resulting online rescheduling process should prioritize the
following desiderata, in descending order:
• assigning as soon as possible the new registrations having an emergency;
• minimizing the difference between the old and the new starting time of the treatment for each
rescheduled patient;
• minimizing the time slots assigned in overtime;
• minimizing the difference between the old and the new assigned resources to the patients.</p>
      </sec>
      <sec id="sec-4-2">
        <title>4.2. ASP Encoding</title>
        <p>
          Here we present the encoding of the NMR problem. The underlying encoding is based on the input
language of CLINGO [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ].
        </p>
        <p>Data Model. The input data comprises the input and output atoms detailed in Section 3.2, excluding
the reg atoms, and supplemented by the following additional atoms:
• instances of new_regs(ID,RequiredTS,P,PrID) represent new registrations to be assigned,
where ID is the identification number, which should be scheduled as close as possible to the time
slot RequiredTS, P is the required phase, and PrID is the protocol number to be followed;
• instances of new_exam(ID,P,NumTS) denote the delay of a registration with identification
number ID, where phase P requires an additional NumTS time slots to complete the treatment.
The output is the rescheduling, consisting of atoms similar to x, tomograph, and chair detailed in
Section 3.2, but denoted as y, Y_tomograph, and Y_chair, respectively.
1 block(TS_MIN) :- #min{TS: new_reg(ID, D, TS, P, PrID); TS: x(ID, D, TS, PrID, P),
exam_new(ID, P, NumTS)} = TS_MIN.
2 block(RID, P) :- x(ID, D, TS, P, PrID), block(TS_MIN), not exam_new(ID, _, _), TS
&lt; TS_MIN.
3 {y(ID, D, TS, PrID, P) : avail(TS, D), TS &gt;= RequiredTS} = 1 :- new_reg(ID, D,</p>
        <p>RequiredTS, P, PrID).
4 {y(ID, D, TS_N, PrID, 0) : avail(TS_N, D), TS_N &gt;= TS} = 1 :- x(ID, D, TS, PrID,
0), not block(ID, 0).
5 {y(ID, D, START, PrID, P+1) : avail(START,D), START &gt;= TS+NumTS} = 1 :- y(ID, D,</p>
        <p>TS, PrID, P), exam(PrID, P, NumTS), P &gt;= 0, P &lt; 3, not block(ID, P).
6 {y(ID, D, START, PrID, P+1) : avail(START,D), START &gt;= TS+NumTS} = 1 :- y(ID, D,</p>
        <p>TS, PrID, P), exam_new(ID, P, NumTS), P &gt;= 0, P &lt; 3.
7 y(ID, D, TS, PrID, P) :- x(ID, D, TS, PrID, P), block(ID, P).
8 :- y(ID, D, TS_N, _, P), x(ID, D, TS_O, _, P), TS_N &lt; TS_O.
9 :∼ y(ID, D, TS, _, P), new_reg(ID, D, RequiredTS, _, P). [TS-RequiredTS@4, ID]
10 :∼ y(ID, D, TS_N, _, P), x(ID, D, TS_O, _, P). [TS_N-TS_O@3, ID]
11 :∼ res(ID, D, TS, _), TS &gt; 120. [1@2, ID, TS]
12 :∼ not Y_tomograph(T, ID, _, _), tomograph(T, ID, _, _). [1@1, ID]
13 :∼ not Y_chair(C, ID, _, _), chair(C, ID, _, _). [1@1,ID]</p>
        <p>Encoding. The ASP encoding for the rescheduling problem comprises the thirteen rules shown in
Figure 2, along with fourteen rules derived from the encoding detailed in Figure 1. The latter is obtained
by creating new rules from the corresponding rules r4, . . . , r17, by replacing x, tomograph, and chair
with y, Y_tomograph and Y_chair, respectively. To simplify the description of encoding reported
in Figure 2, we denote as ri′ the rule appearing at line i of Figure 2. Rule r1′ derives an auxiliary atom
that gets the first time slot where a new registration or the delay of a registration appears. Then, in rule
r2′ another auxiliary atom is derived getting all the registrations and phases starting before the derived
time slot. Rule r3′ assigns a starting time for the first phase to all the new registrations, ensuring that the
assigned starting time is after the required time slot. Rules r4′ and r5′ assign the first and the subsequent
phases to the previously assigned patients that are not involved in delays and were assigned after the first
delay or arrival of a new registration. Rule r6′ assigns a starting time for all the phases of the registrations
involved in the delays, ensuring that the subsequent phases are assigned following the new required time.
Rule r7′ assigns the same starting time as in the original schedule to the registrations and phases previously
derived by the auxiliary atom. Rule r8′ ensures that all the starting times assigned in the reschedule are
not before the previously assigned ones. Finally, rules from r9′ to r1′3 are weak constraints that are used to
reach the optimal solution. In particular, the weak constraints, ensure that the optimal solution minimizes
the same objectives as presented in the list in Section 4.1 in a prioritized way.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. NMR Preliminary Experimental Results</title>
      <p>
        In this section, we report the results of an empirical analysis of the NMR problem via ASP. We performed
experiments on an Apple M1 CPU @ 3.22 GHz machine with 8 GB of physical RAM. The ASP system
used was CLINGO [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] 5.6.2, using parameters --opt--strategy=usc for faster optimization and
--parallelmode 4 for parallel execution: We conducted a preliminary analysis with various options, and these
parameters were to be the most effective. The ASP encoding and the instances employed in this section
can be found at: https://github.com/MarcoMochi/HC2024NMR.
      </p>
      <sec id="sec-5-1">
        <title>5.1. NMR benchmarks</title>
        <p>We used real data coming from a medium size hospital, provided by Medipass, to compute a solution for
the NMS problem. More in detail, we tested instances of more than a year of daily exams. In particular,
we tested 366 instances, each corresponding to weekdays, resulting in a total of 72 weeks. The solution
schedules the patients in a day in a range of 10 hours, split into 120 time slots of 5 minutes. Each patient
is linked to one of the possible exams. In particular, protocol "823" is required by more than 85% of
the patients, thus, the majority of the patients need an exam protocol that requires 2 time slots for the
anamnesis and other 2 time slots for medical preparation, 10 time slots for the drug injection and the
bio-distribution time and, at last, the image detection requires 7 time slots. The other patients can be
associated with one of the other 11 possible protocols. The schedule is done having as available resources
two rooms for the radiotherapy. In each room, there is a tomograph and 3 chairs. The number of patients
requiring exam changes every day but, on average, there are 29 patients to be scheduled, with a maximum
of 37 patients.</p>
        <p>These scheduling solutions were then utilized as part of the input for the NMR problem. We randomly
selected three schedules representing three different scenarios that we called: low, medium, and high.
These scenarios represent three situations in which the schedule assigned the treatments to a low, a
medium, or a high number of registrations, meaning that the reschedule has fewer or more time slots to
rearrange the registrations as needed. For each scenario, we generated 9 instances in total: 3 instances with
an increasing number of new registrations with an emergency, 3 with an increasing number of patients
with delays, and 3 instances with both kinds, for a total of 27 instances. To simulate the factors that
require a rescheduling, we proceed as follows: For a new registration with an emergency, we randomly
select a protocol among the possible ones, a preferred time slot, and the starting phase of the registration.
For patients with delay, we randomly select a scheduled patient and a required phase and assign a new
treatment duration needed to complete the phase.</p>
      </sec>
      <sec id="sec-5-2">
        <title>5.2. Results</title>
        <p>We present the results obtained from testing our solution to the NMR problem, obtained through the
usage of the ASP encoding presented in Section 4.2 and using the instances generated as discussed in
Section 5.1. Our analysis comprises an examination of the time required to compute the solution and an
evaluation of its quality.</p>
        <p>Time eficiency. We report the analysis of the performances of our solution in Table 2, which details
the time required to optimally solve all the considered instances. Each row indicates the number of new
registrations, while the columns represent the number of patients experiencing delays. As shown in
the table, our solution is able to optimally solve all the instances within the timeout. This result is of
particular importance because, in an online scheduling scenario, the operator requesting the reschedule
can not afford to wait for a long time before the final result. Thus, having an optimal solution in less
than 20 seconds is crucial. A closer examination of the instances reveals that those involving only one
type of issue–either emergencies or delays–can be solved in less than 10 seconds. When increasing the
complexity of the problem, mixing the different kinds of issues, and considering the low and medium
scenarios, all the instances still reach an optimal solution in less than 5 seconds. Only in the scenario
with a high number of registrations and an almost full schedule could the rescheduling process take more
than 10 seconds to find the optimal solution. Notably, this longer runtime occurs just in the instance with
3 new registrations and 3 patients with delays. This instance is particularly complex since it means that
approximately 20% of the patients are either new or have encountered an issue.</p>
        <p>Solutions quality. To assess the quality of the rescheduling, we focus on two key criteria: the number
of time slots a new registration must wait before starting the treatment (emergency wait) and the difference
in starting times between the original schedule and the rescheduled one (change). These criteria are
detailed in Table 3, which presents the results for all instances involving at least one new registration. The
table highlights the total difference in time slots between the required and assigned starting time slots for
new registrations, as well as the difference between the scheduling and rescheduling for patients without
delays. In a simpler initial scenario, where a low number of patients are already scheduled, the results
show that it is possible to schedule the new registrations as requested without unnecessarily modifying
the original schedule. Notably, similar results can be achieved even when the original schedule has a
higher number of patients. Indeed, in the medium scenario, all the solutions assign the new registrations
at the required time slot and only in the most complex instance the obtained reschedule differs from
the original schedule by 12 time slots. In the high scenario, finding a solution that perfectly aligns with
the original schedule becomes more challenging. Specifically, for new registrations, the rescheduled
solution fails to assign the required time slot in 2 out of the 6 tested instances. In these instances, the
new registrations have to wait, in total, 5 time slots, thus, with an average waiting time per patient of
12.5 and 8.3 minutes, respectively. However, in instances where optimal solutions include patients with
delays, new registrations are assigned to the required time slots. This derives from the randomness of
the inputs. In these instances, even if there are more new registrations, the rescheduler can assign them
to the required time slots since these new random patients are required to be assigned to a later phase,
reducing the total required occupations of the resources. Even in the high scenario, the approach is still
able to reach an optimal solution that is very similar to the original schedule. Indeed, in the instances
without any delays, the new solution differs by at most 2 time slots from the original one. Only in the
most complex instance, comprising 3 new registrations and 3 patients with delays, the new solution
differs by more than 10 time slots. This is due to the high number of registrations already assigned in
the original schedule and the fact that all the new registrations are assigned to the required time slot,
meaning that the registrations previously assigned in that time slots are forced to be moved. Finally, it is
interesting to analyze the usage of overtime. Overtime refers to scheduling beyond the regular time slots
to fit in additional or rescheduled patients, which can affect efficiency and resource allocation. Across all
scenarios and instances, the majority of the instances are solved without using overtime, demonstrating
the effectiveness of the rescheduling approach. However, in the most complex cases, there may be a
limited use of overtime to achieve an optimal solution. Even in these cases, the amount of overtime
needed never exceeds 6 time slots. This indicates that the rescheduling process remains efficient, reducing
both changes to the original schedule and the need for overtime.</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>6. Related Work</title>
      <p>In this section we first analyse papers that consider approaches related to the NMR problem, then we
mention works in which ASP has been employed for solving rescheduling problems.</p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] the authors report their experience with rescheduling nonurgent imaging and procedures
during the pandemic. To this aim, the authors conducted daily virtual huddles with discussions of
rescheduling strategies and issue tracking, reviewing all cases using radiologists, schedulers, residents,
and administrative leadership. In [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] the authors conducted a cross-sectional study on data obtained
via magnetic resonance imaging schedule reviews and self-administrated questionnaires to estimate the
rate of “No-Shows” or “Reschedule” magnetic resonance imaging appointments and investigate the
correlating factors. Even if in these studies emerged the need for a rescheduling solution to overcome
emergencies and issues in the planned schedule, and in some works such as [
        <xref ref-type="bibr" rid="ref21 ref22 ref23 ref24 ref25">21, 22, 23, 24, 25</xref>
        ] the
scheduling problem is studied and solved, from our understanding no works proposed and evaluated a
solution to the rescheduling.
      </p>
      <p>
        As we mentioned in the introduction, ASP has been successfully used for solving hard combinatorial
and application scheduling problems in several research areas, including the Healthcare domain (see, e.g.,
[
        <xref ref-type="bibr" rid="ref26">26</xref>
        ] for a survey). Focusing on the problems for which a rescheduling solution has been devised, the
ifrst solved problem was the Nurse Scheduling Problem [
        <xref ref-type="bibr" rid="ref27 ref28">27, 28</xref>
        ], where the goal is to create a scheduling
for nurses working in hospital units: The rescheduling problem [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ] deals with the sudden absences of
some nurses. Then, the problem of assigning operating rooms to patients, denoted as Operating Room
Scheduling, has been treated [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ], further extended to include bed management [
        <xref ref-type="bibr" rid="ref31">31</xref>
        ] and then, given the
availability of datasets (e.g.,[
        <xref ref-type="bibr" rid="ref32">32</xref>
        ]) tested on real data [
        <xref ref-type="bibr" rid="ref33">33</xref>
        ]: The rescheduling problem here [34] considers
cases in which some patients could not be operated in their assigned slot. More recent problems include
the Chemotherepy Treatment Scheduling problem [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], in which patients are assigned a chair or a bed
for their treatments, the Rehabilitation Scheduling Problem [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], which assigns patients to operators in
rehabilitation sessions, and the Master Scheduling Problem [35], which consists of scheduling different
specialties to the operating rooms. The rescheduling solution for the first considers the case of patients
unavailability, the second deals with the unavailability of operators and/or the absence of patients [36],
while the last [37] considers the unavailability of operating rooms or limitations/changes related to
specialties.
      </p>
    </sec>
    <sec id="sec-7">
      <title>7. Conclusion</title>
      <p>In this paper we have presented a solution based on Answer Set Programming for the Nuclear Medicine
Rescheduling problem as defined in the paper. Out of various scenarios that can motivate the need to
reschedule an already computed schedule, we have presented and evaluated a solution to the online
reallocation of resources due to emergencies that demand immediate access to equipment or require
more time on the resources. Experiments employing real data from a medium size hospital in Italy have
shown that our rescheduling solution provides satisfying results even when the concurrent number of
emergencies and unavailability is significant.</p>
      <p>As future work, we plan to provide rescheduling solutions also to the other two scenarios mentioned in
Section 4, and to provide a practical web application to support the easy usage of such solutions.</p>
    </sec>
    <sec id="sec-8">
      <title>Acknowledgments</title>
      <p>This research has been partially supported by Italian Ministry of Research (MUR) (i) under PNRR project
FAIR “Future AI Research”, CUP H23C22000860006, (ii) with the European Union - NextGenerationEU,
National Recovery and Resilience Plan (NRRP), Mission 4, Component 2, Investment 1.5, project “RAISE
- Robotics and AI for Socio-economic Empowerment” (ECS00000035) under the project “Gestione e
Ottimizzazione di Risorse Ospedaliere attraverso Analisi Dati, Logic Programming e Digital Twin
(GOLD)”, CUP H53C24000400006, and (iii) under PRIN project PINPOINT, CUP H23C22000280006;
and by Italian Ministry of Enterprises and Made in Italy (MIMIT) under project EI-TWIN “Concezione,
progettazione e sviluppo di soluzioni di Energy digital TWIN” Prog n. F/310168/05/X56 - CUP:
B29J24000680005 - COR: 22338845. The research of Giuseppe Galatà is partially funded by the ”POR
FESR Liguria 2014-2020” public grant scheme. Carmine Dodaro is member of Gruppo Nazionale
Calcolo Scientifico (GNCS) of INdAM.
and Computation. To appear (2024).
[34] C. Dodaro, G. Galatà, M. Maratea, I. Porro, An ASP-based framework for operating room
scheduling, Intelligenza Artificiale 13 (2019) 63–77.
[35] M. Mochi, G. Galatà, M. Maratea, Master surgical scheduling via answer set programming, Journal
of Logic and Computation 33 (2023) 1777–1803.
[36] M. Cardellini, C. Dodaro, G. Galatà, A. Giardini, M. Maratea, N. Nisopoli, I. Porro, Rescheduling
rehabilitation sessions with answer set programming, Journal of Logic and Computation 33 (2023)
837–863.
[37] G. Galatà, M. Maratea, M. Mochi, C. Marte, Rescheduling master surgical schedules via answer set
programming, Progress in Artificial Intelligence. To appear (2024).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>C.</given-names>
            <surname>Dodaro</surname>
          </string-name>
          , G. Galatà,
          <string-name>
            <given-names>C.</given-names>
            <surname>Marte</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Maratea</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mochi</surname>
          </string-name>
          ,
          <article-title>Nuclear medicine scheduling via answer set programming</article-title>
          , in: E. D.
          <string-name>
            <surname>Angelis</surname>
          </string-name>
          , M. Proietti (Eds.),
          <source>Proceedings of the 39th Italian Conference on Computational Logic (CILC</source>
          <year>2024</year>
          ), volume
          <volume>3733</volume>
          <source>of CEUR Workshop Proceedings, CEUR-WS.org</source>
          ,
          <year>2024</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>M.</given-names>
            <surname>Cardellini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. D.</given-names>
            <surname>Nardi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Dodaro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Galatà</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Giardini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Maratea</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Porro</surname>
          </string-name>
          ,
          <article-title>A twophase ASP encoding for solving rehabilitation scheduling</article-title>
          , in: S. Moschoyiannis,
          <string-name>
            <given-names>R.</given-names>
            <surname>Peñaloza</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Vanthienen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Soylu</surname>
          </string-name>
          , D. Roman (Eds.),
          <source>Proceedings of the 5th International Joint Conference on Rules and Reasoning (RuleML+RR 2021)</source>
          , volume
          <volume>12851</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2021</year>
          , pp.
          <fpage>111</fpage>
          -
          <lpage>125</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>C.</given-names>
            <surname>Dodaro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Galatà</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Grioni</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Maratea</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mochi</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Porro</surname>
          </string-name>
          ,
          <article-title>An ASP-based solution to the chemotherapy treatment scheduling problem</article-title>
          ,
          <source>Theory and Practice of Logic Programming</source>
          <volume>21</volume>
          (
          <year>2021</year>
          )
          <fpage>835</fpage>
          -
          <lpage>851</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>E.</given-names>
            <surname>Erdem</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Gelfond</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Leone</surname>
          </string-name>
          ,
          <article-title>Applications of answer set programming</article-title>
          ,
          <source>AI</source>
          Magazine
          <volume>37</volume>
          (
          <year>2016</year>
          )
          <fpage>53</fpage>
          -
          <lpage>68</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>P.</given-names>
            <surname>Cappanera</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Gavanelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Nonato</surname>
          </string-name>
          , M. Roma,
          <article-title>Logic-based Benders decomposition in answer set programming for chronic outpatients scheduling</article-title>
          ,
          <source>Theory and Practice of Logic Programming</source>
          <volume>23</volume>
          (
          <year>2023</year>
          )
          <fpage>848</fpage>
          -
          <lpage>864</lpage>
          .
        </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>P.</given-names>
            <surname>Obermeier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Schaub</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ratsch-Heitmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Runge</surname>
          </string-name>
          ,
          <article-title>Routing driverless transport vehicles in car assembly with answer set programming</article-title>
          ,
          <source>Theory and Practice of Logic Programming</source>
          <volume>18</volume>
          (
          <year>2018</year>
          )
          <fpage>520</fpage>
          -
          <lpage>534</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>A. A.</given-names>
            <surname>Falkner</surname>
          </string-name>
          , G. Friedrich,
          <string-name>
            <given-names>K.</given-names>
            <surname>Schekotihin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Taupe</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. C.</given-names>
            <surname>Teppan</surname>
          </string-name>
          ,
          <article-title>Industrial applications of answer set programming</article-title>
          ,
          <source>Künstliche Intelligenz</source>
          <volume>32</volume>
          (
          <year>2018</year>
          )
          <fpage>165</fpage>
          -
          <lpage>176</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <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 and Practice of Logic Programming</source>
          <volume>20</volume>
          (
          <year>2020</year>
          )
          <fpage>294</fpage>
          -
          <lpage>309</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <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>Communications of the ACM</source>
          <volume>54</volume>
          (
          <year>2011</year>
          )
          <fpage>92</fpage>
          -
          <lpage>103</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <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>
          , M. Ostrowski,
          <string-name>
            <given-names>T.</given-names>
            <surname>Schaub</surname>
          </string-name>
          , P. Wanko,
          <article-title>Theory solving made easy with clingo 5</article-title>
          , in:
          <source>ICLP (Technical Communications)</source>
          , volume
          <volume>52</volume>
          <source>of OASICS, Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik</source>
          ,
          <year>2016</year>
          , pp.
          <volume>2</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>2</lpage>
          :
          <fpage>15</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>M.</given-names>
            <surname>Gebser</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>S.</given-names>
            <surname>Perri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Ricca</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Schaub</surname>
          </string-name>
          ,
          <article-title>Evaluation techniques and systems for answer set programming: a survey</article-title>
          , in: J.
          <string-name>
            <surname>Lang</surname>
          </string-name>
          (Ed.),
          <source>IJCAI, ijcai.org</source>
          ,
          <year>2018</year>
          , pp.
          <fpage>5450</fpage>
          -
          <lpage>5456</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>M.</given-names>
            <surname>Alviano</surname>
          </string-name>
          , G. Amendola,
          <string-name>
            <given-names>C.</given-names>
            <surname>Dodaro</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>
          ,
          <article-title>Evaluation of disjunctive programs in WASP</article-title>
          , in: M.
          <string-name>
            <surname>Balduccini</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          <string-name>
            <surname>Lierler</surname>
          </string-name>
          , S. Woltran (Eds.), LPNMR, volume
          <volume>11481</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2019</year>
          , pp.
          <fpage>241</fpage>
          -
          <lpage>255</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>M.</given-names>
            <surname>Alviano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Dodaro</surname>
          </string-name>
          ,
          <article-title>Unsatisfiable core analysis and aggregates for optimum stable model search</article-title>
          ,
          <source>Fundamenta Informaticae</source>
          <volume>176</volume>
          (
          <year>2020</year>
          )
          <fpage>271</fpage>
          -
          <lpage>297</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>E. D.</given-names>
            <surname>Rosa</surname>
          </string-name>
          , E. Giunchiglia,
          <string-name>
            <given-names>M.</given-names>
            <surname>Maratea</surname>
          </string-name>
          ,
          <article-title>A new approach for solving satisfiability problems with qualitative preferences</article-title>
          , in: M.
          <string-name>
            <surname>Ghallab</surname>
            ,
            <given-names>C. D.</given-names>
          </string-name>
          <string-name>
            <surname>Spyropoulos</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Fakotakis</surname>
            ,
            <given-names>N. M.</given-names>
          </string-name>
          <string-name>
            <surname>Avouris</surname>
          </string-name>
          (Eds.), ECAI, volume
          <volume>178</volume>
          <source>of Frontiers in Artificial Intelligence and Applications</source>
          , IOS Press,
          <year>2008</year>
          , pp.
          <fpage>510</fpage>
          -
          <lpage>514</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>P.</given-names>
            <surname>Bruno</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Calimeri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Marte</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Manna</surname>
          </string-name>
          ,
          <article-title>Combining deep learning and ASP-based models for the semantic segmentation of medical images</article-title>
          , in: S. Moschoyiannis,
          <string-name>
            <given-names>R.</given-names>
            <surname>Peñaloza</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Vanthienen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Soylu</surname>
          </string-name>
          , D. Roman (Eds.),
          <source>Proceedings of the 5th International Joint Conference on Rules and Reasoning (RuleML+RR 2021)</source>
          , volume
          <volume>12851</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2021</year>
          , pp.
          <fpage>95</fpage>
          -
          <lpage>110</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>P.</given-names>
            <surname>Bruno</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Calimeri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Marte</surname>
          </string-name>
          ,
          <string-name>
            <surname>Dedudeep:</surname>
          </string-name>
          <article-title>An extensible framework for combining deep learning and asp-based models</article-title>
          , in: G. Gottlob,
          <string-name>
            <given-names>D.</given-names>
            <surname>Inclezan</surname>
          </string-name>
          , M. Maratea (Eds.),
          <source>Proceedings of the 16th International Conference on Logic Programming and Nonmonotonic Reasoning (LPNMR</source>
          <year>2022</year>
          ), volume
          <volume>13416</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2022</year>
          , pp.
          <fpage>505</fpage>
          -
          <lpage>510</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>F.</given-names>
            <surname>Buccafurri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Leone</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Rullo</surname>
          </string-name>
          ,
          <article-title>Enhancing Disjunctive Datalog by Constraints</article-title>
          ,
          <source>IEEE Transactions on Knowledge and Data Engineering</source>
          <volume>12</volume>
          (
          <year>2000</year>
          )
          <fpage>845</fpage>
          -
          <lpage>860</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>W.</given-names>
            <surname>Faber</surname>
          </string-name>
          , G. Pfeifer,
          <string-name>
            <given-names>N.</given-names>
            <surname>Leone</surname>
          </string-name>
          ,
          <article-title>Semantics and complexity of recursive aggregates in answer set programming</article-title>
          ,
          <source>Artificial Intelligence</source>
          <volume>175</volume>
          (
          <year>2011</year>
          )
          <fpage>278</fpage>
          -
          <lpage>298</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>A.</given-names>
            <surname>Vagal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mahoney</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Allen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Kapur</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Udstuen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Braley</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Makramalla</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Chadalavada</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K. A.</given-names>
            <surname>Choe</surname>
          </string-name>
          , et al.,
          <article-title>Rescheduling nonurgent care in radiology: implementation during the coronavirus disease 2019 (covid-19) pandemic</article-title>
          ,
          <source>Journal of the American College of Radiology</source>
          <volume>17</volume>
          (
          <year>2020</year>
          )
          <fpage>882</fpage>
          -
          <lpage>889</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <surname>M. O AlRowaili</surname>
            ,
            <given-names>A. E.</given-names>
          </string-name>
          <string-name>
            <surname>Ahmed</surname>
            ,
            <given-names>H. A.</given-names>
          </string-name>
          <string-name>
            <surname>Areabi</surname>
          </string-name>
          ,
          <article-title>Factors associated with no-shows and rescheduling mri appointments</article-title>
          ,
          <source>BMC Health services research</source>
          <volume>16</volume>
          (
          <year>2016</year>
          )
          <fpage>1</fpage>
          -
          <lpage>7</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>W. R.</given-names>
            <surname>Reinus</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Enyan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Flanagan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Pim</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. S.</given-names>
            <surname>Sallee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Segrist</surname>
          </string-name>
          ,
          <article-title>A proposed scheduling model to improve use of computed tomography facilities</article-title>
          ,
          <source>Journal of Medical Systems</source>
          <volume>24</volume>
          (
          <year>2000</year>
          )
          <fpage>61</fpage>
          -
          <lpage>76</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>S. E.</given-names>
            <surname>Seltzer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. T.</given-names>
            <surname>Rhea</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. H.</given-names>
            <surname>Thrall</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Saini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Sumner</surname>
          </string-name>
          ,
          <article-title>Improving the efficiency and service of computed tomographic scanning</article-title>
          ,
          <source>Academic Radiology 1</source>
          (
          <year>1994</year>
          )
          <fpage>164</fpage>
          -
          <lpage>170</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>E.</given-names>
            <surname>Pérez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Ntaimo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W. E.</given-names>
            <surname>Wilhelm</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Bailey</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>McCormack</surname>
          </string-name>
          ,
          <article-title>Patient and resource scheduling of multi-step medical procedures in nuclear medicine</article-title>
          ,
          <source>IIE Transactions on Healthcare Systems Engineering</source>
          <volume>1</volume>
          (
          <year>2011</year>
          )
          <fpage>168</fpage>
          -
          <lpage>184</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>Q.</given-names>
            <surname>Xiao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Luo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Zhao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            bin
            <surname>Ran</surname>
          </string-name>
          , Y. bing Feng,
          <article-title>Online appointment scheduling for a nuclear medicine department in a chinese hospital</article-title>
          ,
          <source>Computational and Mathematical Methods in Medicine</source>
          <year>2018</year>
          (
          <year>2018</year>
          ). URL: https://api.semanticscholar.org/CorpusID:5061754.
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>F.</given-names>
            <surname>Akhavizadegan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Ansarifar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Jolai</surname>
          </string-name>
          ,
          <article-title>A novel approach to determine a tactical and operational decision for dynamic appointment scheduling at nuclear medical center</article-title>
          ,
          <source>Computers &amp; Operations Research</source>
          <volume>78</volume>
          (
          <year>2017</year>
          )
          <fpage>267</fpage>
          -
          <lpage>277</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>M.</given-names>
            <surname>Alviano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Bertolucci</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Cardellini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Dodaro</surname>
          </string-name>
          , G. Galatà,
          <string-name>
            <given-names>M. K.</given-names>
            <surname>Khan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Maratea</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mochi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Morozan</surname>
          </string-name>
          , I. Porro,
          <string-name>
            <given-names>M.</given-names>
            <surname>Schouten</surname>
          </string-name>
          ,
          <article-title>Answer set programming in healthcare: Extended overview</article-title>
          ,
          <source>in: IPS and RCRA</source>
          <year>2020</year>
          , volume
          <volume>2745</volume>
          <source>of CEUR Workshop Proceedings, CEUR-WS.org</source>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>C.</given-names>
            <surname>Dodaro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Maratea</surname>
          </string-name>
          ,
          <article-title>Nurse scheduling via answer set programming</article-title>
          ,
          <source>in: LPNMR</source>
          , volume
          <volume>10377</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2017</year>
          , pp.
          <fpage>301</fpage>
          -
          <lpage>307</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>M.</given-names>
            <surname>Alviano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Dodaro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Maratea</surname>
          </string-name>
          ,
          <article-title>An advanced answer set programming encoding for nurse scheduling</article-title>
          ,
          <source>in: AI*IA</source>
          , volume
          <volume>10640</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2017</year>
          , pp.
          <fpage>468</fpage>
          -
          <lpage>482</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <given-names>M.</given-names>
            <surname>Alviano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Dodaro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Maratea</surname>
          </string-name>
          ,
          <article-title>Nurse (re)scheduling via answer set programming</article-title>
          ,
          <source>Intelligenza Artificiale</source>
          <volume>12</volume>
          (
          <year>2018</year>
          )
          <fpage>109</fpage>
          -
          <lpage>124</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          [30]
          <string-name>
            <given-names>C.</given-names>
            <surname>Dodaro</surname>
          </string-name>
          , G. Galatà,
          <string-name>
            <given-names>M.</given-names>
            <surname>Maratea</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Porro</surname>
          </string-name>
          ,
          <article-title>Operating room scheduling via answer set programming</article-title>
          ,
          <source>in: AI*IA</source>
          , volume
          <volume>11298</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2018</year>
          , pp.
          <fpage>445</fpage>
          -
          <lpage>459</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          [31]
          <string-name>
            <given-names>C.</given-names>
            <surname>Dodaro</surname>
          </string-name>
          , G. Galatà,
          <string-name>
            <given-names>M. K.</given-names>
            <surname>Khan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Maratea</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Porro</surname>
          </string-name>
          ,
          <article-title>An ASP-based solution for operating room scheduling with beds management</article-title>
          , in: P. Fodor,
          <string-name>
            <given-names>M.</given-names>
            <surname>Montali</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Calvanese</surname>
          </string-name>
          , D. Roman (Eds.),
          <source>Proceedings of the Third International Joint Conference on Rules and Reasoning (RuleML+RR 2019)</source>
          , volume
          <volume>11784</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2019</year>
          , pp.
          <fpage>67</fpage>
          -
          <lpage>81</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          [32]
          <string-name>
            <given-names>L.</given-names>
            <surname>Maier-Hein</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Wagner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Roß</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Reinke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Bodenstedt</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. M.</given-names>
            <surname>Full</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Hempe</surname>
          </string-name>
          , D. MîndrocFilimon, P. Scholz,
          <string-name>
            <given-names>T. N.</given-names>
            <surname>Tran</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Bruno</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Kisilenko</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Müller</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Davitashvili</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Capek</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Tizabi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Eisenmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T. J.</given-names>
            <surname>Adler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Gröhl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Schellenberg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Seidlitz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T. Y. E.</given-names>
            <surname>Lai</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Roethlingshoefer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Both</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Bittel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mengler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Apitz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Speidel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H. G.</given-names>
            <surname>Kenngott</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B. P.</given-names>
            <surname>Müller-Stich</surname>
          </string-name>
          ,
          <article-title>Heidelberg colorectal data set for surgical data science in the sensor operating room</article-title>
          , CoRR abs/
          <year>2005</year>
          .03501 (
          <year>2020</year>
          ). URL: https://arxiv.org/abs/
          <year>2005</year>
          .03501. arXiv:
          <year>2005</year>
          .03501.
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          [33]
          <string-name>
            <given-names>C.</given-names>
            <surname>Dodaro</surname>
          </string-name>
          , G. Galatà,
          <string-name>
            <given-names>M.</given-names>
            <surname>Gebser</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Maratea</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Marte</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mochi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Scanu</surname>
          </string-name>
          ,
          <article-title>Operating room scheduling via answer set programming: Improved encoding and test on real data</article-title>
          ,
          <source>Journal of Logic</source>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>