<!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>Algebraic Reasoning for S HI Q</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Laleh Roosta Pour</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Volker Haarslev</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Concordia University</institution>
          ,
          <addr-line>Montreal, Quebec</addr-line>
          ,
          <country country="CA">Canada</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>We present a hybrid tableau calculus for the description logic SHIQ that decides ABox consistency and uses an algebraic approach for more informed reasoning about qualified number restrictions (QNRs). Benefiting from integer linear programming and several optimization techniques to deal with the interaction of QNRs and inverse roles, our approach provides a more informed calculus. A prototype reasoner based on the hybrid calculus has been implemented that decides concept satisfiability for ALCHIQ. We provide a set of benchmarks that demonstrate the effectiveness of our hybrid reasoner.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        It is well known that standard tableau calculi for reasoning with qualified number
restrictions (QNRs) in description logics (DLs) have no explicit knowledge about set
cardinalities implied by QNRs. This lack of information causes significant performance
degradations for DL reasoners if the numbers occurring in QNRs are increased. Over
the last years a family of hybrid tableau calculi has been developed that address this
inefficiency by integrating integer linear programming (ILP) with DL tableau methods,
where ILP is used to reason about these set cardinalities. We developed hybrid calculi
for the DLs ALCQ [
        <xref ref-type="bibr" rid="ref4">3</xref>
        ], SHQ [
        <xref ref-type="bibr" rid="ref6">5</xref>
        ], and SHOQ [
        <xref ref-type="bibr" rid="ref3 ref5">4, 2</xref>
        ]. In this paper we present a new
calculus that decides ABox consistency for the DL SHIQ, which extends SHQ with
inverse roles. This new calculus is a substantial extension of the one for SHQ [
        <xref ref-type="bibr" rid="ref6">5</xref>
        ] since
the interaction between inverse roles and QNRs results in back propagation of
information possibly adding new back-propagated QNRs, which, in turn, possibly require a
conservative extension of solutions obtained by using ILP.
      </p>
      <p>
        Informally speaking this line of research is based on several principles: (i) role
successors are semantically partitioned into disjoint sets such that all members of one set
are indistinguishable w.r.t. to their restrictions; (ii) cardinalities of partitions are
denoted by non-negative integer variables and the cardinality of a union of partitions can
be expressed by the sum of the corresponding partition variables; (iii) all members of
a non-empty partition are represented by a proxy element [
        <xref ref-type="bibr" rid="ref7">6</xref>
        ] associated with the
corresponding partition variable; (iv) cardinality restrictions on a set of role successors
imposed by QNRs are encoded as a set of linear inequations; (v) the satisfiability of
a set of QNRs is mapped to the problem whether the corresponding system of linear
inequations has a non-negative integer solution and the involved proxy elements do not
lead to a logical contradiction. This approach is better informed than traditional tableau
methods because (i) (implied) set cardinalities are represented using ILP that is
independent of the values occurring in QNRs; (ii) the tableau part of the hybrid calculus
becomes more efficient because a set of indistinguishable role successors is represented
by one proxy; (iii) the partitioning of role successors supports semantic branching on
partition cardinalities and more refined dependency-directed backtracking.
      </p>
    </sec>
    <sec id="sec-2">
      <title>2 Preliminaries</title>
      <p>
        In this section we briefly describe syntax and semantics of SHIQ and its basic
inferences services. Furthermore, we define a rewriting that reduces SHIQ to SHIN n in
order to apply the atomic decomposition technique [
        <xref ref-type="bibr" rid="ref11">10</xref>
        ], which is a basic foundation of
our calculus. Let NC be a set of concept names, NR a set of role names, NT R NR
a set of transitive role names, NSR NR a set of non-transitive role names with
NSR \ NT R = ;. The set of roles is defined as NRS = NR [ fR j R 2 NRg. We
define a function Inv such that Inv(R) = R if R 2 NR, and Inv(R) = S if R = S .
For a set of roles RO = fR1; : : : ; Rng, Inv(RO) = fInv(R1); : : : ; Inv(Rn)g. A
role hierarchy R is a set of axioms of the form R v S where R; S 2 NRS and v
is transitive-reflexive closure of v over R [ fInv(R) v Inv(S) j R v S 2 Rg. R is
called a sub-role of S and S a super-role of R if R v S. A role R 2 NSR is called
simple if R is neither transitive nor has a transitive sub-role. The set of SHIQ
concepts is the smallest set such that (i) every concept name is a concept, and (ii) if A is a
concept name, C and D are concepts, R is a role, S is a simple role, n; m 2 N; n 1,
then C u D, C t D, :C, 8R:C, 9R:C, &gt; nS:C, and 6 mS:C are also concepts. We
consider &gt; (?) as abbreviations for A t :A (A u :A). A general concept inclusion
axiom (GCI) is an expression of the form C v D with C; D concepts. A SHIQ TBox
T w.r.t. a role hierarchy R is a set of GCIs.
      </p>
      <p>
        Let I be a set of individual names. A SHIQ ABox A w.r.t. a role hierarchy R
:
is a finite set of assertions of the form of a : C, ha; bi : R, and a 6= b with IA
I the set of individuals occurring in A and a; b 2 IA and R a role. We assume an
interpretation I = ( I ; :I ), where the non-empty set I is the domain of I and :I is
an interpretation function which maps each concept to a subset of I and each role to
a subset of I I . Semantics and syntax of the DL SHIQ are presented in [
        <xref ref-type="bibr" rid="ref9">8</xref>
        ].
      </p>
      <p>An interpretation I holds for a role hierarchy R iff RI SI for each R v S 2 R.
An interpretation I satisfies a TBox T iff CI DI for every GCI C v D 2 T . An
interpretation I satisfies an ABox A if it satisfies T and R and all assertions in: A such
that aI 2 CI if a : C 2 A, haI ; bI i 2 RI if ha; bi : R 2 A, and aI 6= bI if a 6= b 2 A.
Such an interpretation is called a model of A. An ABox A is consistent iff there exists
a model I of A. A concept description C is satisfiable iff CI 6= ;.</p>
      <p>
        Let E be a concept expression, then clos(E) defines the usual closure of all
concept names occurring in E. Therefore, for a TBox T if C v D 2 T , then clos(C)
clos(T ) and clos(D) clos(T ). Likewise for an ABox A, if (a : C) 2 A then
clos(C) clos(A). Inspired by [
        <xref ref-type="bibr" rid="ref11">10</xref>
        ] we use a satisfiability-preserving rewriting to
replace QNRs with unqualified ones. This rewriting uses a new role-set difference
operator 8(R n R0):C for which (8(R n R0):C)I = fx j 8y : hx; yi 2 RI n R0I implies
y 2 CI g. We name the new language SHIN n. We have (&gt; nR)I = (&gt; nR:&gt;)I and
(6 nR)I = (6 nR:&gt;)I . Considering :_C as the standard negation normal form (NNF)
of :C we define a recursive function unQ which rewrites SHIQ concept descriptions
and assertions into SHIN n.
      </p>
      <p>Definition 1 (unQ). Let R0 be a new role in NR with R := R [ fR0 v Rg for
each transformation. unQ rewrites the axioms as follows: unQ(C) := C if C 2 NC ,
unQ(:C) := :C if C 2 NC otherwise unQ( :_C), unQ(8R:C) := 8R:unQ(C),
unQ(C u D) := unQ(C) u unQ(D), unQ(C t D) := unQ(C) t unQ(D),</p>
      <p>P7
P5 ST R
ST</p>
      <p>P6</p>
      <p>RT
P4
T</p>
      <p>P2
R
α(v001) = P1, α(v010) = P2, α(v100) = P4,
α(v011) = P3, α(v110) = P6, α(v101) = P5,</p>
      <p>α(v111) = P7
unQ(&gt; nR:C) := &gt; nR0 u 8R0:unQ(C), unQ(6 nR:C) := 6 nR0 u 8(R n R0):
unQ( :_C: ), unQ(a : C) := a : unQ(C), unQ(ha; bi : R) := ha; bi : R,
:
unQ(a 6= b) := a 6= b.</p>
      <p>
        Note that this rewriting generates a unique new role for each QNR. For instance,
unQ(&gt; nR:C u 6 mR:C u &gt; kR :D) is rewritten to &gt; nR1 u 8R1:C u 6 mR2 u
8(R n R2)::C u &gt; kR3 u 8R3:D and fR1 v R; R2 v R; R3 v R g R. SHIN n
is not closed under negation due to the fact that unQ(6 nR:C) itself creates a
negation which must be in NNF before further applying unQ. In order to avoid the whole
negating problem for the concept description generated by unQ(6 nR:C) and unQ(&gt;
nR:C) the calculus makes sure that the application of unQ starts from the innermost
part of an axiom, therefore such concept descriptions will never be negated.
Atomic decomposition A so-called atomic decomposition for reasoning about sets was
proposed in [
        <xref ref-type="bibr" rid="ref11">10</xref>
        ] and later applied to DLs for reasoning about sets of role fillers (see
Def. 3 for role fillers). For instance, for the concept description 6 2S u &gt; 1R u 6 2T u
&gt; 3T we get 7 disjoint partitions shown in the left part of Fig. 1, where partition P1
represents S-fillers that are neither R nor T fillers and P5 represents fillers in the
intersection of S and T that are not R-fillers, etc. For example, due to the disjointness of
Pi; 1 i 7, the cardinality of all S-fillers can be expressed as jP1j+jP3j+jP5j+jP7j
(j j denotes the cardinality of a set). The satisfiability of the above-mentioned concept
descriptions can now be defined by finding a non-negative integer solution for the
inequations shown at the bottom-right part of Fig. 1, where vi denotes the cardinality of
Pi with i in unary encoding.
3 SHIQ ABox Calculus
In this section we introduce our calculus and the tableau completion rules for SHIQ.
Definition 2 (Completion forest). The algorithm generates a model consisting of a set
of arbitrarily connected individuals in IA as the roots of completion trees. Ignoring the
connections between roots, the created model is a forest F = (V; E; L; LE ; LI ) for a
SHIQ ABox A. Every node x 2 V is labeled by L(x) clos(A) and LE (x) as a set
of inequations of the form Pi2N vi ./ n with n 2 N and ./ 2 f&gt;; 6g and variables
vi 2 V. Each edge hx; yi 2 E is labeled by the set L(hx; yi) NR. For each node
x, LI (x) is defined to keep an implied back edge for x equivalent to Inv(L(hy; xi)),
where y is a parent of x (see Def. 4). For the nodes with no parents (root nodes) LI will
be the empty set.
      </p>
    </sec>
    <sec id="sec-3">
      <title>Definition 3 (-successor, -predecessor, -neighbour, -filler). Given a completion tree,</title>
      <p>for nodes x and y with R 2 L(hx; yi) and R v S, y is called S-successor of x and
x is Inv(S)-predecessor of y. If y is an S-successor or an Inv(S)-predecessor of x
then y is called and S-neighbor of x. In addition, if R 2 L(hx; yi) then y is an R-filler
(role-filler) for x. The R-fillers of x are defined as F il(x; R) = fy j hxI ; yI i 2 RI g.
Definition 4 (Precedence). Due to the existence of inverse roles for each pair of
individuals x; y, R 2 L(hx; yi) imposes Inv(R) 2 L(hy; xi). A global counter PR keeps
the number of nodes and is increased by one when a new node x is created, setting
PRx = PR. Hence, each node is ranked with a PR. A successor of x with the lowest
PR is called parent (parent successor) of x and others are called its children.
Accordingly, a node x has a lower precedence than a node y if x has a lower rank compared
to y. Also, each node has a unique rank and no two nodes have the same rank.
Definition 5 ( ). Assuming a set of variables V, a unique variable v 2 V is associated
with a set of role names RV v. Let VR = fv 2 V j R 2 RV vg be the set of all variables
which are related to a role R. The function maps number restrictions to inequations
such that (R; ./;n) := (Pvi2VR vi) ./ n.</p>
      <p>Definition 6 (Distinct partitions). Rx is defined as the set of related roles for x such
that Rx = fS j f (S; &gt;;n); (S; 6;m)g \ LE (x) 6= ;g. A partitioning Px is defined
as Px = SP Rx fP g n f;g. For a partition Px 2 Px, PxI = (TS2Px F ilI (x; S)) n
(SS2(RxnPx) F ilI (x; S)) with F ilI (x; S) = fyI j y 2 F il(x; S)g. Let be a mapping
: V $ Px for a node x, each variable v 2 V is assigned to a partition Px 2 Px such
that (v) = Px.</p>
      <p>The definition clearly demonstrates that the fillers of x related to the roles of partition
Px are not the fillers of the roles in Rx n P (other partitions). Therefore, by definition
the fillers of x associated with the partitions in Px are mutually disjoint w.r.t. the
interpretation I. An arithmetic solution is defined using the function : V ! N mapping
each variable in V to a non-negative integer. Let Vx be the set of all variables assigned
to a node x such that Vx = fvi 2 V j vi 2 LE (x)g, a solution for a node x is
(x) := f (v) = n j n 2 N; v 2 Vxg. The inequation solver uses an objective
function to determine whether to minimize the solution or maximize it. We minimize the
solution in order to keep the size of the forest small.</p>
      <p>The example in Fig. 1 depicts the process of finding an arithmetic solution in more
detail. Let L(x) = f6 2S; &gt; 1R; 6 2T ; &gt; 3T g be the label of node x. Applying the
atomic decomposition for the related roles Rx = fS; R; T g results in seven disjoint
partitions such that Px = fPi j 1 6 i 6 7g where P1 = fSg, P2 = fRg, P4 = fT g,
P3 = fS; Rg, P5 = fS; T g, P6 = fR; T g, P7 = fR; S; T g as shown in Fig. 1. In order
to simplify the mapping between variables and partitions, each bit in the binary coding
of a variable index represents a specific role in Rx. Therefore, in this example the first
bit from right represents S, the second R, and the last T . Since jRxj = 3, the number of
variables in Vx becomes 23 1. The mapping of variables and the resulting inequations
in LE (x) are also shown in Fig. 1.</p>
      <p>Definition 7 (Node Cardinality). The cardinality associated with proxy nodes is
defined by the mapping card : V ! N.</p>
      <p>Since the hybrid algorithm requires to have all numerical restrictions encoded as a set of
inequations, three functions are defined to map number restrictions (NRs) to inequations
and/or further constrain variables. Function (see Def. 5) is used in the &gt;-Rule and
6Rule as shown in Fig. 2. Function and &amp; also add new inequations to the label LE
of a node and modify the variables. The functions and &amp; are respectively used in the
IBE-Rule and resetIBE -Rule as shown in Fig. 2.</p>
      <p>Definition 8 ( ). For a set of roles RO and k 2 N, the function (RO; k) maps number
restrictions to inequations via the function for each Rj 2 RO. (RO; k) returns a set
of inequations such that (RO; k) = f (Rj ; &gt;; k) j Rj 2 ROg [ f (Rj ; 6; k) j Rj 2
ROg. For v 2 VRj , if Rj 2 (v) ^ (v) * RO then v 6 0 is also returned.
Definition 9 (&amp;). For a set of roles RO and k 2 N, the function &amp;(RO; k) maps number
restrictions to inequations via the function for each Rj 2 RO. &amp;(RO; k) returns a set
of inequations such that &amp;(RO; k) = f (Rj ; &gt;; k) j Rj 2 ROg [ f (Rj ; 6; k) j Rj 2
ROg. For v 2 VRj , if RO = (v) then v = k is also returned.</p>
      <p>Definition 10 (Proper Sub-Role). For each role in existing number restrictions a set
will be assigned which contains a specific type of sub-role called proper sub-role. A
proper sub-role &lt;(R) for a role R is defined as &lt;(R) = fRi j (R 2 NR [ Inv(R)) ^
Ri v Rg.</p>
      <p>This makes specializing the edges between nodes possible. Therefore, in our algorithm
when a role set is assigned to L(hx; yi) a new proper sub-role Si will be created for
each role S 2 L(hx; yi), where &lt;(S) = &lt;(S) [ fSig, and will be assigned to the edge
label. A role in &lt;(S) cannot have any proper sub-role. Only roles that occur in number
restrictions and their inverses can have proper sub-roles. Since these proper sub-roles
do not appear in the logical label of nodes, they do not violate the correctness of our
algorithm.</p>
      <p>
        Definition 11 (Blocked Node). Since SHIQ does not have the finite model property
pair-wise blocking [
        <xref ref-type="bibr" rid="ref8">7</xref>
        ] is used. Node y is blocked by node x, also called witness,
if L(x) = L(y) and for their successors y0; x0, L(y0) = L(x0) and L(hx; x0i) =
L(hy; y0i). Also, unreachable nodes which were discarded from the forest (due to the
application of the reset-Rule or resetIBE -Rule) are called blocked. In order to detect
blocked nodes, all roles in a proper sub-role of role R are considered equivalent to R.
Definition 12 (Clash Triggers). A node x contains a clash if fA; :Ag L(x) (logical
clash) or LE (x) does not have a non-negative integer solution (arithmetic clash).
The interaction between the tableau rules and the inequation solver is similar to the clash
triggers. No particular rule is needed to invoke the inequation solver. For each LE (x),
there is always a solution (if there exists any) otherwise a clash occurs. If a variable
changes or LE (x) is extended, a new solution will be calculated automatically. The
completion rules for a SHIQ ABox are shown in Fig. 2, listed in decreasing priority
from top to bottom. Rules in the same cell have the same priority. Rules with lower
priorities cannot be applied to a node x, which is not blocked, if there exists any rule
with a higher priority still applicable to it. Among the completion rules in Fig. 2, the
uRule, t-Rule, 8-Rule, 8+-Rule are the same as in standard tableaux. The merge-Rule,
8n-Rule, ch-Rule, &gt;-Rule, 6-Rule are similar to [
        <xref ref-type="bibr" rid="ref6">5</xref>
        ].
      </p>
      <p>&gt;-Rule and 6-Rule: all number restrictions from L(x) are collected via these two
rules. The function maps them to inequations according to the proper atomic
decomposition and adds them to LE (x).</p>
      <p>IBE-Rule: this rule considers the implied back edge as a set of NRs, maps them to
a set of inequations, add the inequations to the LE , and determines potential variables
that can represent the IBE through elimination of the non-related variables. Assume that
for a node x a successor y has been created with L(hx; yi). This implies a back edge for</p>
      <p>Fig. 2. The complete tableaux expansion rules for SHIQ-ABox
y with a label LI (y) = Inv(L(hx; yi)). This back edge is considered as a set of NRs
of the form &gt; 1Ri; 6 1Ri where Ri 2 Inv(L(hx; yi)). The IBE-Rule transforms the
implied back edge into a set of inequations in LE (y) of the form (Pvj2VRi vj ) &gt; 1
and (Pvj2VRi vj ) 6 1 using the function &amp;. Since the inequations representing the back
edge are restricted to the value one, only one common variable vk in these inequations
will be (vk) = 1. In addition, &amp; ensures that the potential variables for IBE include all
the roles in LI (y) (see Def. 9).</p>
      <p>resetIBE -Rule: this rule extends LE as follows. If for a node y and its parent node
x, L(hx; yi) 6= Inv(L(hy; xi)), then it implies that a new role should be considered in
LE (x) due to the restrictions of its child y. Therefore, the resetIBE -Rule fires for x
where extends LE (x) to consider Inv(L(hy; xi)) and ensures that the specific
variable representing it is included in the solution as in Def. 8.</p>
      <p>reset-Rule: if a new number restriction with a new role R is added to the logical
label of a node x, all its children are discarded from the tree and LE (x) = ;.</p>
      <p>BE-Rule: this rule fills a label of the back edge a node to its parent due to the
solution of the inequation solver. If a variable v in a solution exists such that (v) = 1
and LI (y) (v), then v represents the back edge and the BE-Rule fires and fills the
edge label.</p>
      <p>We adjust the edges between a pair of nodes to satisfy the nature of the inverse roles
between them. Interactions of IBE-Rule, BE-Rule, and resetIBE -Rule maintain this
characteristic.</p>
      <p>RE-Rule: this rule sets the edge between two root nodes. For nodes a; b 2 IA,
(a; b) : R is considered as a : &gt; 1Rab; a : 6 1Rab, b : &gt; 1Inv(Rab); b : 6 1Inv(Rab)
with Rab v R and Inv(Rab) v Inv(R). Therefore, a variable with the value of 1,
(v) = 1, for node a that contains Rab represents this edge. The RE-Rule fires and
fills the edge label.</p>
      <p>merge-Rule: the merge-Rule merges root nodes. Assume three root nodes a; b; c 2
IA where b; c are respectively R-successor and S-successor of a. These assertions will
be translated such that we have a : &gt; 1Rab; a : 6 1Rab; a : &gt; 1Sac; a : 6 1Sac with
Rab v R and Sac v S. If there exists a variable v in an arithmetic solution of node a
with Rab; Sac 2 (v), it means that c and b need to be merged. The merge-Rule merges
b and c and w.l.o.g replaces every occurrence of b with c and all outgoing/incoming
edges of b become outgoing/incoming edges of c.</p>
      <p>ch-Rule: this rule is necessary to ensure the completeness of the algorithm. The
partitions of the atomic decomposition represent all possible combinations of the
successors of a particular node. The inequation solver has no knowledge about logical
reasons that can force a partition to be empty. Thus, from a semantic branching point of
view we need to distinguish between the two cases v 6 0 and v &gt; 1, where v denotes
the cardinality of a partition.</p>
      <p>f il-Rule: the f il-Rule has the lowest priority among the completion rules. This rule
is the only one that generates new nodes, called proxy nodes. For example, if a solution
for a node x includes a variable v with (v) = 2, the f il-Rule creates a proxy node y
with cardinality of 2 and sets the edge label and LI (y) as shown in Fig. 2. Since this rule
generates proxy nodes based on an arithmetic solution that satisfies all the inequations,
there is no need to merge the generated proxy nodes later.</p>
      <p>
        The algorithm preserves role hierarchies in its pre-processing phase. If there occurs
a variable v 2 LE (x), where R 2 (v) and S 2= (v) and R v S, then v 6 0.
Therefore, the variables that violate the role hierarchy are set to zero. Due to the space
limitations, we refer for the proof to [
        <xref ref-type="bibr" rid="ref13">12</xref>
        ].
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Practical Reasoning</title>
      <p>
        In this section, we discuss the complexity of our algorithm and evaluate its behavior in
practical reasoning. Let k be the number of all roles occurring in NRs in a TBox after
pre-processing and transforming all QNRs to unqualified ones considering inverse roles.
The search space of the hybrid algorithm depends on the number of variables occurring
in LE labels. Since there are k roles, the number of partitions and their associated
variables is bounded by 2k 1. The ch-Rule creates two branches for each variable: v &gt;
1 or v 6 0. Consequently, 22k cases could be examined by the inequation solver and the
worst-case complexity of the algorithm is double exponential. Moreover, the Simplex
method which is used in the hybrid algorithm is NP in the worst case. However, in [
        <xref ref-type="bibr" rid="ref12">11</xref>
        ] it
is shown that integer programming is in P in the worst case, if the number of variables
is bounded. The implemented inequation solver (using Simplex method presented in
[
        <xref ref-type="bibr" rid="ref2">1</xref>
        ]) minimizes the sum of all variables occurring in the inequations. In addition, we use
several optimization techniques and heuristics that can eliminate branches in the search
space, therefore, avoiding unnecessary invocations of the ch-Rule. These techniques
dramatically improve the average complexity of the hybrid algorithm over the worst
case of 22k .
4.1
      </p>
    </sec>
    <sec id="sec-5">
      <title>Optimization Techniques</title>
      <p>
        In most cases, in order to utilize these theoretical algorithms in practice, optimization
techniques are required. Due to the complexity of the algorithm, achieving a good
performance may seem infeasible. However, optimization techniques can dramatically
decrease the size of the search space by pruning many branches. For instance, a
standard technique such as axiom absorption [
        <xref ref-type="bibr" rid="ref10">9</xref>
        ] often improves reasoning by reducing the
number disjunctions. Here we explain some of the optimization techniques used in our
hybrid algorithm.
      </p>
      <p>
        Variable initialization: the inequation solver starts with the default v 6 0 for all
variables and later sets some to v &gt; 1 to satisfy the inequations according to at-least
restrictions. Since the ch-Rule is invoked 22k times in the worst case to check variables
for v 6 0 or v &gt; 1, default zero setting of variables prevents unnecessary invocations of
the ch-Rule. Moreover, the boundary value of some of the variables can be determined
from the beginning according to the occurrence of the numbers in at-most or/and
atleast restrictions. For example, if a variable occurs in an at-least restriction but not in an
at-most restriction, then it does not have any arithmetic restriction and is called a don’t
care variable [
        <xref ref-type="bibr" rid="ref6">5</xref>
        ]. In addition, the resetIBE -Rule specifically determines the value of
a single variable and sets some of the rest to zero. Similarly, the IBE-Rule sets the
value of some variables to zero and enforces some of the others to be the potential
choices for the answer, therefore, reducing the solution space. Moreover, in order to
avoid unnecessary applications of the resetIBE -Rule additional heuristics are applied.
For a node x, if a role occurs in an at-least restriction but not in any at-most restriction
      </p>
      <sec id="sec-5-1">
        <title>Hermit Pellet FaCT++ Hybrid</title>
        <p>Algebraic Reasoning for SHIQ
at-least
at-most
)s 106
d
n
o
c
e
s
i
l
l
im103
n
i
(
e
m
i
t
n
R100
u
and it is not a sub-role of any role R in a concept of the form 88(R \n S).:C 22 L(x), then
it cannot be in ↵ (v) where v represents a back edge for node x.</p>
        <p>Dependency-directed bbaacckkttrraacckkiinngg::wweeuusseebbaacckktrtaracckki ninggtetcohfinniqduseosutorcfiesndofsolougrci-es
ocafllcolgaischaelscalansdhethseanncdonthseidnecrothnesicdaeursteheofcaucsleasohfina scelattsihnginthseebttoinugndthareiebsooufnvdariaebsloesf
vinarniaebwlessoliuntinoenws. sTohluistiroenssu.ltTs hinisprreusnuilntsg ibnrapnrcuhneinsgwbhriacnhcwheosulwdhleicahd wtootuhled slaemade tcolatshhe.
sIfama eclcalsahsho. cIcfuarscilnashnoodcecuxr,s winhincohdweaxs, cwrehaictehdwdausectroeaatevdardiuaebletova wvaitrhiabl(ev)v =witkh
an(dv)k= 2k aNnd; kk 2 N1,,k then1, vthemnuvstmbuestsbeet steot tzoerzoe.roT.hTishisisisccaallleleddssiimmppllee
backtracking. The previous technique can be improved: if a logical clash is encountered due to
{fA,; ¬:A}g 22 L(x), then the source for propagation of these two concepts to L(x) could
be the roles occurring in 88 or 88\n constructs. In this case, the variables which contain
all these roles are set to zero. This is called complex backtracking. These techniques
eliminate many branches in the search space and consequently improving the average
complexity of the algorithm.</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>4.2 A First Evaluation Using Synthetic Benchmarks</title>
      <p>In order to evaluate our hybrid algorithm, a prototype reasoner has been implemented
in Java using the Web Ontology Language API. The reasoner decides satisfiability of
ALCHIQ concepts.</p>
      <p>We show the performance of the hybrid reasoner by a set of three benchmarks.
Fig. 3 demonstrates the performance of different DL reasoners for testing the
satisfiability of the concept Test 1 defined as C u &gt; 2kRu88R.:(&gt; kR .:Cu 6 kR .:C), where
k = 2i,; 2  i  10. Fig. 3 compares the reasoning time of our hybrid reasoner with
Pellet, FaCT++, and Hermit.1 All reasoners determine the satisfiability of the concept
in less than ⇠ 100 ms before reaching k = 24. While our hybrid reasoner maintains its
rreeaassoonniinngg ttiimmee ((ccoonnssttaannttllyy uunnddeerr 100 mmss)),, PPeelllleett,, HHeerrmmiitt,, aanndd FFaaCCTT++++ ssttaarrtt eexxhhiibbiittiinngg
exponential growth in the reasoning time for values higher than k = 24. For
example, for k = 29 Pellet’s reasoning time is more than 18 minutes and for k = 210 it
did not finish within the time limit of 1000 seconds. This example demonstrates the
independent behavior of our hybrid calculus in the presence of higher values in QNRs
interacting with inverse roles.
1 We used an AMD 3.4GHz quad core CPU with 16 GB of RAM.
dd
nn
oo
cc
i i
nn
i i
((
ee
1100</p>
      <p>22
mm
i i
t t
nn
uu
RR1100</p>
      <p>00
mm
mm
nn
uu
RR1100
00</p>
      <p>RRoooosstataPPoouurr&amp;&amp;HHaaarsrslelevv</p>
      <sec id="sec-6-1">
        <title>HHeermrmitit</title>
      </sec>
      <sec id="sec-6-2">
        <title>PPeellelett</title>
      </sec>
      <sec id="sec-6-3">
        <title>FFaaCCTT++++</title>
      </sec>
      <sec id="sec-6-4">
        <title>HHyybbrirdid-S-S</title>
      </sec>
      <sec id="sec-6-5">
        <title>HHyybbrirdid-C-C</title>
        <p>220000
440000
660000
with P defined as ./ 1M :C
wwitihthPPddeefifinneeddaassfu/ . / .
k . Fig. 4 shows the effect of increasing the
kkg. .FFi gig. .44sshhoowwsst htheeeeffefecct tooffi ninccrereaassininggt hthee
number of at-least and at-most restrictions in reasoning for Test . In a model for the
nnuummbbeerrooffaat-tl-eleaassttaannddaat-tm-moossttreresstrtircictitoionnssi ninrereaassoonni ninggfoforrTTeesstt2. .InInaammooddeel lfoforrt hthee
22
concept Test , the concept expression P is propagated back and will be added to the
ccoonncceeppt tTTeesstt2, ,t htheeccoonncceeppt teexxppreresssioionnPP isispproroppaaggaat eteddbbaacckkaannddwwilillbbeeaaddddeeddt otot hthee
22
l alabbeel looffaannooddeewwhhi cichhaalrlereaaddyyhhhaaasss&gt;&gt;&gt;11RR. B.B, ,t htheererefoforere, ,wweehhaavvee((kk++11))QQNNRRss..SSi ninccee
label of a node which already 1R:B, therefore, we have (k + 1) QNRs. Since
for each node which has a parent, an IBE will be considered as a set of two inequations
foforreeaacchhnnooddeewwhhi cichhhhaassaappaarerennt,t,aannIBIBEEwwilillbbeeccoonnssidideerereddaassaasseet toofft wtwooi nineeqquuaatitoionnss</p>
        <p>LLEE
in the of the node. As shown in Fig. 4, increasing the number of QNRs decreases
i nint htheeLE oofft htheennooddee. .AAsssshhoowwnni ninFFi gig. .44, ,i ninccrereaassininggt htheennuummbbeerrooffQQNNRRssddeeccrereaasseess
the performance of the hybrid reasoner. This is due to the fact that a large number of
t htheeppeerfroformrmaanncceeoofft htheehhyybbrirdidrereaassoonneer.r.TThhisisisisdduueet otot htheefafacct tt hthaat taal alargrgeennuummbbeerrooff
roles in the QNRs increases the number of variables and the size of the search space.
rorol elessi nint htheeQQNNRRssi ninccrereaasseesst htheennuummbbeerrooffvvaariraiabbl elessaannddt htheessizizeeoofft htheesseeaarcrchhssppaaccee. .
Comparing the two diagrams in Fig. 4a and 4b shows that by increasing the number
CCoommppaarirninggt htheet wtwooddi aiaggrarammssi ninFFi gig. .44aaaanndd44bbsshhoowwsst hthaat tbbyyi ninccrereaassininggt htheennuummbbeerr
of at-most QNRs the reasoning time for the arithmetic reasoner increases faster than
ooffaat-tm-moossttQQNNRRsst htheerereaassoonni ninggtitmimeefoforrt htheeaarirtihthmmeetitcicrereaassoonneerri ninccrereaasseessfafassteterrt hthaann
for at-least restrictions. The reason is the heuristic that we explained in Section 4.1. By
foforraat-tl-eleaassttreresstrtircictitoionnss..TThheerereaassoonnisist htheehheeuurirsistitcict hthaat twweeeexxppl alai nineeddi ninSSeecctitoionn44. 1.1. .BByy
means of this heuristic, if a role occurs in an at-least restriction and not in any at-most
mmeeaannssoofft hthisishheeuurirsistitcic, ,ififaarorol eleoocccuursrsi ninaannaat-tl-eleaassttreresstrtircictitoionnaannddnnoot ti ninaannyyaat-tm-moosstt
restriction and satisfies the pre-conditions that are mentioned in Section 4.1, then the
reresstrtircictitoionnaannddssaatitsisfifieesst htheepprere-c-coonndditiitoionnsst hthaat taareremmeenntitoionneeddi ninSSeecctitoionn44. 1.1, ,t htheennt hthee
potential variables for IBE which contain this role are set to zero. Therefore, the number
ppoot etenntitaial lvvaariraiabbl elessfoforrIBIBEEwwhhi cichhccoonnt atai nint hthisisrorol eleaareresseet tt otozzeeroro. .TThheererefoforere, ,t htheennuummbbeerr
of variables in the search space is decreased.
ooffvvaariraiabbl elessi nint htheesseeaarcrchhssppaacceeisisddeeccrereaasseedd. .</p>
        <p>FFFooorrrtthhtheeetthhthiirridrddbbbeeennnccchhhmmmaaarrkrkkwwweeecccooonnnsssiiddideeerrrtthhtheeecccooonnnccceeeppptttTTTeeesssttt3 dddeeefififinnneeedddaaasss&gt;&gt;&gt;888SSS.:AA.Au666999SSS.:AA.A
33
u8SSS.:((.(&gt;&gt;&gt;kkRR. C.C u 6666TT. D.D u &gt;&gt;55TT. D.D))u 8SS. 8.RRR.:((.(&gt;&gt;&gt;22TT. D.D</p>
        <p>kR:C 6 6T :D &gt; 5T :D) S: 2T :D
uu88 uu uu uu8 8 8 8
6 3T :D) S: R: T :
u 6633TT. D.D))u 8SS. 8.RR. 8.TT. .
uu uu8 8 8 8 8 8
uu</p>
        <p>T : R :P with R
8TT . 8.RR . P.P wwitihth fRR v
8 8 8 8 {{ vv</p>
        <p>M
MMg 2
}} 2 2</p>
        <p>and k 100; : : : ; 1000 . Fig. 5a displays the
R aannddkk 2 f110000, ,. . . ., ,11000000g. .FFi gig. .55aaddisisppl alayysst hthee</p>
        <p>RR 2 2 {{ }}
rurunntitmimeessfoforrTTeesstt3, ,wwhheererePPisisddeefifinneeddaaasss666((kk
runtimes for Test , where P is defined (k
33</p>
      </sec>
      <sec id="sec-6-6">
        <title>2)M:(C D). In this example P is</title>
        <p>22))MM.(.(CCt DD))..InInt hthisiseexxaammppl elePPisis
tt
propagated back and causes the unsatisfiability of Test . Fig. 5b shows the runtimes for
pproroppaaggaat eteddbbaacckkaannddccaauusseesst htheeuunnssaatitsisfifiaabbiliiltiytyooffTTeesstt3. .FFi gig. .55bbsshhoowwsst htheerurunntitmimeessfoforr
33
TTeesstt3 wwhheererePPisisddeefifinneeddaaasss666((kk++11))MM.(.(CCtDD))..InInt hthisiseexxaammppl elePPisisaalslsoopproroppaaggaat etedd
Test where P is defined (k + 1)M:(C D). In this example P is also propagated
33
back but does not result in the unsatisfiability of Test . As expected the hybrid reasoner
bbaacckkbbuut tddooeessnnoot treressuultlti nint htheeuunnssaatitsisfifiaabbiliiltiytyooffTTeesstt3. .AAsseexxppeecct eteddt htheehhyybbrirdidrereaassoonneerr
33
remains stable while the execution times of the other reasoners increase according to
reremmaai ninsssstatabbl elewwhhilielet htheeeexxeeccuutitoionntitmimeessoofft htheeoot htheerrrereaassoonneersrsi ninccrereaasseeaacccoordrdi ninggt oto
the values occurring in the QNRs. As shown in Fig. 5a and 5b, Hermit’s behavior is
t htheevvaal ulueessoocccuurrirninggi nint htheeQQNNRRss..AAsssshhoowwnni ninFFi gig. .55aaaanndd55bb, ,HHeermrmiti’ts’sbbeehhaavvi oiorrisis
the worst among all the reasoners. Hermit and Pellet show a rapid exponential growth
t htheewwoorsrsttaammoonnggaal llt htheerereaassoonneersrs..HHeermrmititaannddPPeel lelet tsshhoowwaararappi dideexxppoonneenntitaial lggrorowwt hth
in their reasoning times as a function of k. For k &gt; 400, Hermit did not finish within
i nint htheeirirrereaassoonni ninggtitmimeessaassaafufunncctitoionnooffkk. .FFoorrkk&gt;&gt;440000, ,HHeermrmititddi didnnoot tfifinnisishhwwitihthi nin
the time limit of 1000 seconds. FaCT++ solves the problem in a more reasonable time,
t htheetitmimeelilmimititooff11000000sseeccoonnddss..FFaaCCTT++++ssool vlveesst htheepprorobbl elemmi ninaammoorererereaassoonnaabbl eletitmimee, ,
however, it demonstrates its dependency on the value of k as its runtime increases. In
hhoowweevveer,r,ititddeemmoonnsstrtarat etessitistsddeeppeennddeennccyyoonnt htheevvaal ulueeooffkkaassitistsrurunntitmimeei ninccrereaasseess..InIn
addition, Fig. 5 shows the behavior of our hybrid algorithm using simple (Hybrid-S)
aadddditiitoionn, ,FFi gig. .55sshhoowwsst htheebbeehhaavvi oiorrooffoouurrhhyybbrirdidaal glgoorirtihthmmuussininggssimimppl ele(H(Hyybbrirdid-S-S))
tt
and complex (Hybrid-C) dependency-directed backtracking. The complex
backtracking outperforms simple backtracking since it prunes more branches that would lead to
the same sort of clash. In addition to improving the performance of the reasoner the
optimization techniques used in hybrid reasoner can make its performance more stable.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <article-title>The hybrid calculus presented in this paper decides SHIQ ABox satisfiability</article-title>
          .
          <article-title>The implemented prototype demonstrates the improvement on reasoning time for selected benchmarks featuring QNRs and inverse roles. Utilizing algebraic reasoning and applying optimization techniques, the hybrid calculus would be a good solution in case of large numbers occurring in QNRs</article-title>
          . In [2]
          <article-title>a hybrid algorithm for SHOQ using algebraic reasoning has been proposed and extensively analyzed in an empirical evaluation. Due to the nature of nominals, [2] needs to use a global partitioning in contrast to the local partition used in our approach. Several novel techniques to optimize reasoning for SHOQ have been designed and evaluated in [2]. Some of these techniques are not exclusively dedicated to nominals and could be applied to our hybrid calculus for SHIQ too</article-title>
          .
          <article-title>For instance, the exponential number of partitions was addressed using a so-called lazy partitioning technique which only generates partitions and their associated variables on demand. We are currently developing a new hybrid prototype for SHIQ that integrates suitable optimizations techniques from [2]. We are planning to combine our work on both SHIQ and SHOQ in order to design a hybrid algebraic calculus for SHOIQ.</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          1.
          <string-name>
            <surname>Cormen</surname>
            ,
            <given-names>T.H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Leiserson</surname>
            ,
            <given-names>C.E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rivest</surname>
            ,
            <given-names>R.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stein</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Introduction to Algorithms</article-title>
          . The MIT Press, 2nd edn.
          <source>(Sep</source>
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          2.
          <string-name>
            <surname>Faddoul</surname>
          </string-name>
          , J.:
          <article-title>Reasoning Algebraically with Description Logics</article-title>
          .
          <source>Ph.D. thesis</source>
          , Concordia University (
          <year>September 2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          3.
          <string-name>
            <surname>Faddoul</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Farsinia</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Haarslev</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          , Mo¨ller, R.:
          <article-title>A hybrid tableau algorithm for ALCQ</article-title>
          .
          <source>In: Proceedings of ECAI</source>
          <year>2008</year>
          ,
          <article-title>Greece</article-title>
          . pp.
          <fpage>725</fpage>
          -
          <lpage>726</lpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          4.
          <string-name>
            <surname>Faddoul</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Haarslev</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Algebraic tableau reasoning for the description logic SHOQ</article-title>
          .
          <source>Journal of Applied Logic</source>
          <volume>8</volume>
          (
          <issue>4</issue>
          ),
          <fpage>334</fpage>
          -
          <lpage>355</lpage>
          (
          <year>December 2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          5.
          <string-name>
            <surname>Farsiniamarj</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Haarslev</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Practical reasoning with qualified number restrictions: A hybrid Abox calculus for the description logic SHQ</article-title>
          .
          <source>AI Commun</source>
          .
          <volume>23</volume>
          ,
          <fpage>205</fpage>
          -
          <lpage>240</lpage>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          6.
          <string-name>
            <surname>Haarslev</surname>
            ,
            <given-names>V.,</given-names>
          </string-name>
          <article-title>M o¨ller</article-title>
          , R.:
          <article-title>Optimizing reasoning in description logics with qualified number restriction</article-title>
          .
          <source>In: Proc. of DL</source>
          <year>2001</year>
          , USA. pp.
          <fpage>142</fpage>
          -
          <lpage>151</lpage>
          (
          <year>Aug 2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          7.
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>A description logic with transitive and inverse roles and role hierarchies</article-title>
          .
          <source>Journal of Logic and Computation</source>
          <volume>9</volume>
          (
          <issue>3</issue>
          ),
          <fpage>385</fpage>
          -
          <lpage>410</lpage>
          (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          8.
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tobies</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Reasoning with individuals for the description logic SHIQ</article-title>
          .
          <source>In: Proc. of CADE-17</source>
          . pp.
          <fpage>482</fpage>
          -
          <lpage>496</lpage>
          . Springer-Verlag, London, UK (
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          9.
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tobies</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Reasoning with axioms: Theory and practice</article-title>
          .
          <source>In: In Proc. of KR 2000</source>
          . pp.
          <fpage>285</fpage>
          -
          <lpage>296</lpage>
          (
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          10.
          <string-name>
            <surname>Ohlbach</surname>
            ,
            <given-names>H.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Koehler</surname>
          </string-name>
          , J.:
          <article-title>Modal logics, description logics and arithmetic reasoning</article-title>
          .
          <source>Artif. Intell</source>
          .
          <volume>109</volume>
          ,
          <fpage>1</fpage>
          -
          <lpage>31</lpage>
          (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          11.
          <string-name>
            <surname>Papadimitriou</surname>
            ,
            <given-names>C.H.</given-names>
          </string-name>
          :
          <article-title>On the complexity of integer programming</article-title>
          .
          <source>J. ACM</source>
          <volume>28</volume>
          ,
          <fpage>765</fpage>
          -
          <lpage>768</lpage>
          (
          <year>1981</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          12.
          <string-name>
            <given-names>Roosta</given-names>
            <surname>Pour</surname>
          </string-name>
          ,
          <string-name>
            <surname>L.</surname>
          </string-name>
          :
          <article-title>A Hybrid ABox calculus using algebraic reasoning for the description logic SHIQ</article-title>
          .
          <source>Master's thesis</source>
          , Concordia University (
          <year>January 2012</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>