Computing information minimal match explanations for logic-based matchmaking

8
1 Computing Information Minimal Match Explanations for Logic-based Matchmaking Tommaso Di Noia * , Eugenio Di Sciascio * and Francesco M. Donini + * Politecnico di Bari, Bari, Italy Email: {t.dinoia,disciascio}@poliba.it + Università della Tuscia, Viterbo, Italy Email: [email protected] Abstract—In semantic matchmaking processes it is often use- ful, when the obtained match is not full, to provide explanations for the mismatch, to leverage further interaction and/or modi- fying the request. To this aim, Abduction in Description Logics has been studied, though —till now— on rather inexpressive languages. In this paper we present a new method for computing Abduction over complex concept descriptions in the expressive Description Logic SH. Our proposal divides the abduced concept in pieces, which allow for direct and concise explanations. The approach exploits information within a prefixed tableau to compute solutions that take into account the structure of a formula. Hypotheses are pieces of a formula to be added inside the quantifiers of a complex concept description and not just added as outermost conjunctions. we propose suitable definitions of the problem, algorithms and calculus. we also give some hints on how to fruitfully use the proposed technique to provide rankings in the matchmaking process. I. I NTRODUCTION Semantic Matchmaking [1], [2], [3] is basically the problem of finding, given a request, best available offers, under the assumption that both the request and offers are modeled in accordance with a common ontology. To evaluate how good offers are with respect to a demand obviously some criteria are needed. Having requests and offers modeled in accordance with an ontology T a coarse classification can be obtained using classical deductive services, namely subsumption and satisfiability, i.e. Exact: the request is semantically equivalent to the supply; Full - Subsumption: The information within the offer semantically implies the ones within the request; Plug- In: The information within the request semantically imply the ones within the offer; Potential - Intersection: the information within the offer are semantically compatible with the ones in the request; Partial - Disjoint: the information within the offer are semantically incompatible with the ones in the request [1], [2], [3]. But while exact and full matches can be rare (and basically equivalent), a user may get several potential and partial matches. A semantic-based matchmaker should then provide a “semantic” ranking of available offers vs. the request, yet unfortunately classification and satisfiability only return a boolean answer. Furthermore potential matches may correspond to underspecified descriptions and under an open world assumption we should not immediately discard them, especially if nothing better exists, but one may wonder what should be hypothesized to obtain a full match. In order to pro- vide an ordering with respect to a request several approaches have been proposed in recent years, including e.g., approaches based on mixed semantic/information retrieval techniques [4], fuzzy Description Logics [5], conditional preferences [6]. A further possibility is to exploit abductive reasoning [7]. The usefulness and possibilities of abductive reasoning in the wide arena of Semantic web have been clearly illustrated by Elsenbroich, Kutz and Sattler [8], nevertheless approaches based on abductive reasoning have been so far confined to ABox abduction [9], [8] and Concept Abduction [10], [11], devised by some of the authors of this paper for matchmaking in e-commerce with reference to ALN Description Logic (DL). This nonmonotonic service has proved useful in different scenarios where a ranking and logic-based explanation where needed [12], [13], yet its definition showed its limits for expressive logics endowed with existential quantification. Here we overcome such limits by introducing Structural Abduction in the expressive SH DL and present tableau-based calculus to compute solutions to Structural Abduction problems. Fur- thermore, we outline ranking functions useful to provide a principled ranking in a semantic matchmaking process using expressive DLs. The computation of Propositional Abduction has been extensively studied, for nearly all criteria that can be adopted for choosing the preferred hypotheses [14]. Also Abductive Logic Programming is well established [15], and its computation resorts on a modification of SLD-resolution. Yet, when the representation language chosen for the appli- cation domain is a Description Logic (DL), the picture is far from being complete. Since concepts in a DL are in fact monadic predicates, the definition of Abduction should be extended from a propositional to a first-order setting. A possible definition has been proposed by Di Noia et al. [11]: given concepts C (prior facts), D (target), and a TBox T (background knowledge), a Concept Abduction Problem is finding another concept H such that both (i) the conjunction of C and H—denoted in DL by C u H—is satisfiable in T , and (ii) in all models of T , C u H is subsumed by D (denoted by T | = C u H v D). Also a tableaux-based calculus for computing Concept Abduction in the DL ALN was devised [16]. However, although ALN is computationally simple, it is a rather inexpressive DL. Our proposal extends the framework of Concept Matching [17]. In a nutshell, we identify places in the description of C where a hypothesis can be added, and name such places with (all distinct) concept variables H 0 ,H 1 ,H 2 ,... We denote C h the resulting concept. Then

Transcript of Computing information minimal match explanations for logic-based matchmaking

1

Computing Information Minimal MatchExplanations for Logic-based Matchmaking

Tommaso Di Noia∗, Eugenio Di Sciascio∗ and Francesco M. Donini+∗Politecnico di Bari, Bari, Italy

Email: {t.dinoia,disciascio}@poliba.it+Università della Tuscia, Viterbo, Italy

Email: [email protected]

Abstract—In semantic matchmaking processes it is often use-ful, when the obtained match is not full, to provide explanationsfor the mismatch, to leverage further interaction and/or modi-fying the request. To this aim, Abduction in Description Logicshas been studied, though —till now— on rather inexpressivelanguages. In this paper we present a new method for computingAbduction over complex concept descriptions in the expressiveDescription Logic SH. Our proposal divides the abduced conceptin pieces, which allow for direct and concise explanations.The approach exploits information within a prefixed tableauto compute solutions that take into account the structure of aformula. Hypotheses are pieces of a formula to be added insidethe quantifiers of a complex concept description and not justadded as outermost conjunctions. we propose suitable definitionsof the problem, algorithms and calculus. we also give somehints on how to fruitfully use the proposed technique to providerankings in the matchmaking process.

I. INTRODUCTION

Semantic Matchmaking [1], [2], [3] is basically the problemof finding, given a request, best available offers, under theassumption that both the request and offers are modeled inaccordance with a common ontology. To evaluate how goodoffers are with respect to a demand obviously some criteriaare needed. Having requests and offers modeled in accordancewith an ontology T a coarse classification can be obtainedusing classical deductive services, namely subsumption andsatisfiability, i.e. Exact: the request is semantically equivalentto the supply; Full - Subsumption: The information within theoffer semantically implies the ones within the request; Plug-In: The information within the request semantically imply theones within the offer; Potential - Intersection: the informationwithin the offer are semantically compatible with the ones inthe request; Partial - Disjoint: the information within the offerare semantically incompatible with the ones in the request[1], [2], [3]. But while exact and full matches can be rare(and basically equivalent), a user may get several potentialand partial matches. A semantic-based matchmaker shouldthen provide a “semantic” ranking of available offers vs. therequest, yet unfortunately classification and satisfiability onlyreturn a boolean answer. Furthermore potential matches maycorrespond to underspecified descriptions and under an openworld assumption we should not immediately discard them,especially if nothing better exists, but one may wonder whatshould be hypothesized to obtain a full match. In order to pro-vide an ordering with respect to a request several approaches

have been proposed in recent years, including e.g., approachesbased on mixed semantic/information retrieval techniques [4],fuzzy Description Logics [5], conditional preferences [6]. Afurther possibility is to exploit abductive reasoning [7]. Theusefulness and possibilities of abductive reasoning in thewide arena of Semantic web have been clearly illustratedby Elsenbroich, Kutz and Sattler [8], nevertheless approachesbased on abductive reasoning have been so far confined toABox abduction [9], [8] and Concept Abduction [10], [11],devised by some of the authors of this paper for matchmakingin e-commerce with reference to ALN Description Logic(DL). This nonmonotonic service has proved useful in differentscenarios where a ranking and logic-based explanation whereneeded [12], [13], yet its definition showed its limits forexpressive logics endowed with existential quantification. Herewe overcome such limits by introducing Structural Abductionin the expressive SH DL and present tableau-based calculusto compute solutions to Structural Abduction problems. Fur-thermore, we outline ranking functions useful to provide aprincipled ranking in a semantic matchmaking process usingexpressive DLs. The computation of Propositional Abductionhas been extensively studied, for nearly all criteria that canbe adopted for choosing the preferred hypotheses [14]. AlsoAbductive Logic Programming is well established [15], andits computation resorts on a modification of SLD-resolution.Yet, when the representation language chosen for the appli-cation domain is a Description Logic (DL), the picture isfar from being complete. Since concepts in a DL are infact monadic predicates, the definition of Abduction shouldbe extended from a propositional to a first-order setting. Apossible definition has been proposed by Di Noia et al. [11]:given concepts C (prior facts), D (target), and a TBox T(background knowledge), a Concept Abduction Problem isfinding another concept H such that both (i) the conjunction ofC and H—denoted in DL by C uH—is satisfiable in T , and(ii) in all models of T , C u H is subsumed by D (denotedby T |= C u H v D). Also a tableaux-based calculus forcomputing Concept Abduction in the DL ALN was devised[16]. However, although ALN is computationally simple, it isa rather inexpressive DL. Our proposal extends the frameworkof Concept Matching [17]. In a nutshell, we identify placesin the description of C where a hypothesis can be added,and name such places with (all distinct) concept variablesH0, H1, H2, . . . We denote Ch the resulting concept. Then

2

a solution to our Abduction Problem is a substitution σ ofconcept variables with concepts, such that T |= σ(Ch) v D.Note that in Concept Matching the concept with variables isD, and a solution is a substitution σ such that T |= C v σ(D).The substitution σ is fundamental to provide a user with anexplanation, in a semantic matchmaking setting, when thereis the need to e.g., justify reasons for a not-full match. Theremaining of this paper is structured as follows. In the nextsection, we lay out some definitions and other preliminarynotions. Then, in Section III we propose a calculus basedon tableaux for finding substitutions, and in Section IV wepropose some strategies for finding “good” substitutions. Inthe last two sections, we compare our proposal with existingliterature, and outline future research directions.

II. STRUCTURAL ABDUCTION IN SHWe assume the reader be familiar with DLs, and refer to

textbooks [18] for a thorough introduction to DLs, TBoxes,satisfiability, subsumption (denoted by v) and subsumptionw.r.t. a TBox T . By strict subsumption C < D we meanC v D and D 6v C.

Here we deal only with a simple form of concept axiomsin the TBox, where only concept names can appear on theleft-hand side of concept inclusions (denoted by A v C),and each concept name appears at most once on the left-handside of a definition (denoted by A .= C). Moreover, we admitonly acyclic TBoxes, in the following sense. Let depends be abinary relation on concept names, defined as: A depends on Biff both B occurs in a concept description C and A v C ∈ T .Then T is cyclic if the transitive closure of depends contains apair (A,A) for some concept name A; otherwise, T is acyclic.

We denote by R a set of role axioms of the form R v S(role inclusion) or Trans(R) (role R is transitive), with Rand S being role names. It is also useful to denote by v∗ thetransitive closure of role inclusion. For the sake of concisenesswe assume the RBox as part of the TBox: R ⊆ T . In Table Iformal syntax and semantics of SH are presented.

We assume that concepts are always in Negation NormalForm (NNF) [18, Ch.2], where negation in front of a con-cept is always "pushed" inside connectives and quantifiers,recursively, till negation is in front of concept names only. Inthe following, we augment concept expressions by means ofconcept variables. We call concept term [19] every conceptexpression formed by using the syntax above, plus the abilityof using a concept variable h ∈ {h0, h1, h2, . . .}, in place ofa concept name. To extend the semantics of SH to conceptterms, we let σ be an assignment σ : h 7→ C ∈ SH thatinterprets concept variables as concepts in SH, and we definethe semantics of h as (σ(h))I .

A. Abduction inside quantifications in SHWe recall previous definitions [11] about Concept Abduc-

tion in ALN .

Definition 1 (Concept Abduction). Let C, D, be two conceptsinALN , and T be a set of axioms inALN , where both C andD are satisfiable in T . A Concept Abduction Problem (CAP),

Syntax Semantics

A AI ⊆ ∆I

R RI ⊆ ∆I ×∆I

Concept ConstructorsC uD (C uD)I = CI ∩DI

C tD (C tD)I = CI ∪DI

¬C (¬C)I = ∆I \ CI

∃R.C (∃R.C)I = {x | ∃y.〈x, y〉 ∈ RI ∧ y ∈ CI}∀R.C (∀R.C)I = {x | ∀y.〈x, y〉 ∈ RI → y ∈ CI}

Concept Axioms – TBoxA v C (A v C)I = AI ⊆ CI

A ≡ C (A ≡ C)I = (AI = CI)

Role Axioms – RBoxR v S (R v S)I = RI ⊆ SI

Trans(R) RI = (RI)+

TABLE ISH WITH ACYCLIC TBOXES SYNTAX AND SEMANTICS.

denoted as 〈C,D, T ,L〉C , is finding a concept H ∈ ALNsuch that T 6|= C uH ≡ ⊥, and T |= C uH v D.

While adequate for Description Logics as ALN , Def. 1shows its limits when dealing with languages where qualifiedexistential quantification is allowed. This is the case of ALEand, more generally, of ALC and SH. We explain the needto generalize Def. 1 with the aid of a simple example.

Example 1. Let W1,W2 be two web services, W1 having twopayment methods: a Credit-card one and a non-https-basedone (W1 = ∃howPay.CC u ∃howPay.¬https), and W2

for which it is only known that it has some payment method(∃howPay.>). Suppose a user has to choose which servicebest satisfies her demand D = ∃howPay.(CC u https).Only for sake of simplicity, let the TBox be empty. Obviously,both W1 6v D and W2 6v D—i.e., neither service completelyfulfills D—so the problem arises as to whether there is somelogic-based method to compare them. Some researchers [11],[13] propose to automate the choice by solving two (kind of)abduction problems, and compare the results. Namely, theypropose to compare some hypotheses H1 and H2 that, whenadded to W1 and W2 respectively, would make each one ofthem be subsumed by D. Then, an offer with a more genericH should be preferred over one with a more specific H .Following this criterion, an offer W for which H = > isthe "best" choice, since in this case already W v D.

Following Def. 1, we would have to find two conceptsH1, H2 such that Wi uHi v D (i = 1, 2) and in this case itcan be verified that both problems admit one subsumption-maximal solution, namely H1 = H2 = ∃howPay.(CC uhttps) = D. Observe that H1,2 is trivially hypothesizingthe whole target conclusion, disregarding the fact that theconjunct ∃howPay.CC in W1 already “covers” part of D.That is, Def. 1 cannot be used to prefer an offer that alreadypartly covers the demand (W1) over another (W2) that doesnot.

We remark that also Cialdea&Pirri’s Propositional ModalAbduction [20] would compute �(CC ∧ https) (with � the

3

modality associated with howPay) for both abduction prob-lems. Hence, also their proposal cannot be used to highlightthe missing information inside quantifications. 4

The explanation computed in Ex.1 according to Def. 1involves the whole existential restriction even though only apart of it would be necessary—in this case https. This is be-cause Concept Abduction (and all definitions of PropositionalAbduction) only adds hypotheses as outermost conjunctions.Instead, we would like solutions to take into account thestructure of a formula; we would like to hypothesize piecesof a formula to be added inside the quantifiers of C and notjust added as outermost conjunctions.

Definition 2 (Abducible Concept – Hypotheses List). Let Cand D be two SH-concepts in NNF, and let T be a set of ax-ioms in SH. We define abducible concept Ch .= h0uRew(C),where the rewriting Rew(C) defined recursively as follows:

Rew(A) = A

Rew(¬A) = ¬ARew(C1 u C2) = Rew(C1) u Rew(C2)

Rew(C1 t C2) = Rew(C1) t Rew(C2)

Rew(∃R.C) = ∃R.(hnew u Rew(C))

Rew(∀R.C) = ∀R.(hnew u Rew(C))

where by hnew we mean a concept variable not yet appearingin the rewriting1. We assume that concept variables arenumbered progressively, and call hypotheses list of Ch thelist H = 〈h0, h1, h2, . . .〉.

Observe that since C is in NNF, a case for Rew(¬C),with C a generic concept, is not present in the definitionof Rew(). Given an abducible concept Ch, its correspondinghypotheses list H = 〈h0, . . . , h`〉 and a list C = 〈C0, . . . , C`〉of ALEHR+ concepts, we denote with σ[H/C] the substi-tution {h0 7→ C0, . . . , h` 7→ C`} and with σi[H/C], withi = 0, . . . , `, the substitution of the single variable hi.

Definition 3 (Structural Abduction). Let C,D ∈ SH, be twoconcepts in NNF, and T be a set of axioms in SH, whereboth C and D are satisfiable in T and T 6|= C u D v ⊥.Let H = 〈h0, . . . , h`〉 be the hypotheses list of the abducibleconcept Ch and A = 〈A0, . . . ,A`〉 (for Assumptions) be a listof SH concept sets. A Structural Abduction Problem (SAP) forSH, denoted as 〈C,D, T , A〉S , is finding a list of conceptsH = 〈H0, . . . ,H`〉 in ALEHR+ such that

Hi ∈ Ai for every i = 0, . . . , ` (1)

T 6|= σ[H/H](Ch) v ⊥ (2)

T |= σ[H/H](Ch) v D (3)

We call a SAP General when Ai = SH, for every i = 0, . . . , `.

Observe that we impose the hypotheses inH to be in the DLALEHR+ , in which disjunction is not allowed, and negation isallowed only in front of concept names. This restriction is anal-ogous to the one in Propositional Abduction—where the setof abduced hypotheses is always intended as a conjunction—and Abductive Logic Programming—where again the abduced

1A precise procedure to obtain this result would need a global counter,visible by all recursive calls. We skip this technical detail to simplifypresentation.

atoms are (implicitly) taken conjunctively. As noted by Mar-quis [21] for First-order Abduction, if disjunction and fullnegation are allowed in solutions of an Abduction problem,the most general hypothesis is always ¬C tD, which in factsolves nothing.

In what follows, we always refer to General SAPs.Example 2. Consider W1 and D as in Ex.1. According toDef. 2 and Def. 3 we have

Wh1 = h0 u ∃howPay.(CC u h1) u

∃howPay.(¬https u h2)

H = 〈h0, h1, h2〉H = 〈>,https,>〉

σ0[H/H] = {h0 7→ >}σ1[H/H] = {h1 7→ https}σ2[H/H] = {h2 7→ >}

σ[H/H](Ch) = > u ∃howPay.(CC u https) u∃howPay.(¬https u >)

Observe that the solution previously computed in Ex.1 isstill a solution of the SAP, namely, it is the solution H′ =〈∃howPay.CC u https,>,>〉. 4

Following [16] we use PS as a symbol for a SAP, andwe denote with SOLSAP (PS) the set of all solutions toa SAP PS . Solutions can be compared according to twopreference criteria, namely, component-wise subsumption, andsubsumption in the abducible concept after substitution.

Definition 4 (Preference and Maximality). Let PS be a SAPand H′ = 〈C ′0, . . . , C ′`〉 and H′′ = 〈C ′′0 , . . . , C ′′` 〉 be twosolutions in SOLSAP (PS). We say that:• H′ is structurally-preferred over H′′, denoted by H′ �vSH′′, if for i = 0, . . . , ` we have T |= C ′′i v C ′i;

• H′ is subsumption-preferred over H′′, denoted as H′ �vH′′, if T |= σ[H/H′′](Ch) v σ[H/H′](Ch);

A solution is Structural-maximal if no solution is structurallypreferred to it, and Subsumption-maximal if no solution issubsumption-preferred to it.

However, it turns out that subsumption-preference includesstructural preference, hence we can safely forget the latter.

Proposition 1. Given a SAP PS = 〈C,D, T , A〉S and twosolutions H′ and H′′ in SOLSAP (PS), if H′ �vS H′′ thenH′ �v H′′.

Proof. Recall that (Def. 3) both C and D are in NNF. Forthis form, substitutions are always monotonic over v, that is,if C1 v C2 then for every i = 0, . . . , `, σi[hi/C1](Ch) vσi[hi/C2](Ch). This is because concept variables appear onlyin conjunctions, and positively—i.e., inside no negation. Iter-ating over the list of concept variables, the claim follows. 2

Note that the requirement that C is in NNF before rewritingin Ch is fundamental for the maximality criteria. ConsiderC = ¬∃R.A; without NNF, Ch would be h0u¬∃R.(Auh1),but due to the fact that h1 is added as a conjunction insidean odd number of negations, by substituting h1 with anythingdifferent from > we are in fact making Ch more generic,not more specific. So, in the criteria for subsumption-maximalsolutions, we should now distinguish between h’s occurring

4

inside an even number of negations (for which the criteria arethe same as what we stated) and h’s occurring inside an oddnumber of negations (for which the criteria should be reverted:a more generic substitution yields a more specific Ch). Wepreferred to use NNF, so that each concept variable h occursinside 0 negations in Ch, and use uniform maximality criteria.

Recalling Example2, we observe that neither preferencecriterion allows us to prefer H to H′. This is because Hand H′ are incomparable under structural preference, whileσ[H/H](Ch) ≡ σ[H/H′](Ch). Hence, we need the following,different preference criterion.

Definition 5. For an abducible concept Ch, we introduce thefollowing preorder among variables in H:(i)h0 < hi with i 6=0; (ii) hi < hp if hp is in a quantification inside the one of hi;(iii) hi < hp if hp is in an existential quantification ∃R.(hp u· · · ), hi is in a universal quantification ∀R.(hi u · · · ), andboth quantifications appear in the same quantification (i.e.,they are siblings in the syntactic tree).

Now letH′ = 〈C ′0, . . . , C ′`〉 andH′′ = 〈C ′′0 , . . . , C ′′` 〉 be twosolutions in SOLSAP (PS). We say thatH′ ≤ H′′ if C ′i v C ′′ifor some i, and for all p such that hi < hp, C ′p = C ′′p .

Example 3. Turning back to Example 2, we rememberthat H′ = {>,https,>} and H′′ = {∃howPay.CC uhttps,>,>}. By Definition 5 we see H′ ≤ H′′. Indeed,we have https v > (C ′1 v C ′′1 ) for i = 1 and > = >(C ′2 = C ′′2 ) for i > 1. 4

III. CALCULUS

Hereafter we present a calculus and algorithms to computea solution to a structural abduction problems as defined inSection II-A for the expressive Description Logic SH [18]. Inthe following we assume the reader be familiar with tableaucalculus [22]. Following [16], we will build a prefixed tableauusing two labeling functions (to represent true/false prefixedtableaux) T() and F() instead of a single labeling one L() [18].T() and F() map an individual n to a set of concepts T(n) orF(n) or relate n to another individual m via a role R. Moreformally, given two individuals n and m in a tableau τ , theformal semantics of T() and F() is as follows. We say that aninterpretation (∆I , ·I) satisfies two tableau labels T(n) andF(n) if:• for every concept C ∈ T(n) and every concept D ∈ F(n),nI ∈ CI and nI 6∈ DI ;

• for every role R ∈ T(n,m) and for every role Q ∈F(n,m), (nI ,mI) ∈ RI and (nI ,mI) 6∈ QI ;

• an interpretation satisfies a branch B of τ if it satisfiesT(n), F(n), T(n,m) and F(n,m) for every individual n,and for every pair of individuals n,m in B.

If either R ∈ T(n,m) or Q ∈ F(n,m) we say m is a successorof n. If we have a set R of role axioms in the form R v Sor Trans(R), with R and S being role names, we denotewith v∗ the reflexive transitive closure of v on R. Given twoindividual names n and m, m is called an R-successor of nif, for some R′ with R′ v∗ R, m is a successor of n andeither R′ ∈ T(n,m) or ¬R′ ∈ F(n,m). Ancestors are definedas usual. If n is an ancestor of m, we say m is blocked by nif T(m) ⊆ T(n) and F(m) ⊆ F(n).

In order to compute a solution to a SAP, we will build aprefixed tableau τ using the rules in Fig. 1. Since we usetwo labeling functions, for each classical tableau rule wehave we both a T) version and its dual F) version. The onlyoptimization technique we include here is lazy unfolding [23],[24]. We assume concepts are always simplified in NNF andwe use C to represent the NNF of a concept C. Given aSH concept in NNF, whenever we have a role Q ∈ F(n,m),it is of the form ¬R. Hence Q ∈ F(n,m) means, in fact,(nI ,mI) ∈ RI too. Unfolding rules for TBox axioms arepresented in Fig. 2. In Section II-A we already discussed theneed of having C in NNF. For what concerns D, it is just amatter of not doubling the tableaux rules (if D were not inNNF, we would need, e.g., a rule for u and another rule for¬(... u ....)). We recall here the definition of homogeneous

u - rules:T) if C uD ∈ T(n), then add both C and D to T(n).F) if C tD ∈ F(n), then add both C and D to F(n).

t - rules:T) if C tD ∈ T(n), then add either C or D to T(n).F) if C uD ∈ F(n), then add either C or D to F(n).

∃ - rules:T) if ∃R.C ∈ T(n), n is not blocked, and n has no R-successor

m with either C ∈ T(m) or ¬C ∈ F(m), then pick up a newindividualm = n+1, addR to T(n,m), and let T(m) := {C}.

F) if ∀R.C ∈ F(n), n is not blocked, and n has no R-successorm with either C ∈ T(m) or ¬C ∈ F(m), then pick up a newindividual m = n + 1, add ¬R to F(n,m), and let F(m) :={C}.

∀ - rules:T) if ∀R.C ∈ T(n), n is not blocked, and there exists an individual

m such that m is an R-successor of n, then add C to T(m).F) if ∃R.C ∈ F(n), n is not blocked, and there exists an individual

m such that m is an R-successor of n, then add C to F(m).∀+ - rules:

T) if ∀R.C ∈ T(n), n is not blocked, with Trans(R) ∈ R and:• R v∗ S;• there exists an individual m such that m is an S-successor ofn;

then add ∀R.C to T(m).F) if ∃R.C ∈ F(n), n is not blocked, with Trans(R) ∈ R and:

• R v∗ S;• there exists an individual m such that m is an S-successor ofn;

then add ∃R.C to F(m).

Fig. 1. Expansion Rules

v - rules:T) if n is an individual such that A ∈ T(n) in the branch, and

A v C ∈ T , then add C to T(n).F) if n is an individual such that ¬A ∈ F(n) in the branch, and

A v C ∈ T , then add C to F(n).≡ - rules:

T) if n is an individual such that A ∈ T(n) in the branch, andA ≡ C ∈ T , then add C to T(n).

T) if n is an individual such that ¬A ∈ T(n) in the branch, andA ≡ C ∈ T , then add C to T(n).

F) if n is an individual such that ¬A ∈ F(n) in the branch, andA ≡ C ∈ T , then add C to F(n).

F) if n is an individual such that A ∈ F(n) in the branch, andA ≡ C ∈ T , then add ¬A to F(n).

Fig. 2. Unfolding Rules

and heterogeneous clash as proposed in [16].

Definition 6 (Clash). A branch B contains a homogeneousclash if it contains one of the following:

5

1) either ⊥ ∈ T(n) or > ∈ F(n), for some individual n;2) either A,¬A ∈ T(n) (T-homogeneous) or A,¬A ∈

F(n) (F-homogeneous) for some individual n and someconcept name A;

B contains a heterogeneous clash if it contains one of thefollowing:

1) T(n)∩F(n) contains either A or ¬A for some individualn and some concept name A;

We say a branch B is complete iff for each individual namen occurring in A no new rule application is possible both toT(n) and F(n). A complete branch is open if it contains noclash, otherwise it is closed. A complete tableau is open ifit contains at least one open branch, otherwise it is closed.Soundness and completeness of the calculus follow from theversion without prefixes [24].

IV. ALGORITHM AND SUBSTITUTION CRITERIA

We observe that given a TBox T and two concept Cand D, it results T |= C v D iff the tableau τ startingfrom C ∈ T(1), D ∈ F(1) is closed. Moreover, we cansay that an heterogeneous clash in τ represents in someway an “interaction” between the concepts C and D. Anheterogeneous clash can be seen a “clue” that the relationT |= C v D might hold. Whenever a complete tableau τhas one or more open branches Bj , if we want the relationT |= C v D hold, then we have to force the closure of allopen branches Bj in τ .

We observe that if we had a tableau τ ′ starting with C ∈T(1), and τ ′ is closed then T |= C v ⊥, i.e., C is unsatisfiablew.r.t. T . Also notice that in this case, since we have only T()label, all branches will close with a T-homogeneous clash.

Proposition 2. Let C, D be two concepts in SH, T bea TBox in SH with T |= C v ⊥. A complete tableaux τstarting with C ∈ T(1) and D ∈ F(1), is such that for eachbranch B there is at least one T-homogeneous clash.Proof. If T |= C v ⊥, and τ is complete, as a directconsequence, it will surely close all its branches with at leastone T-homogeneous clash. 2

Note that in this case, in order to catch the inconsistency ofC, we need τ to be complete.

Given two concepts C, D and a TBox T in SH, we callH-Tableau a complete tableau built starting from Ch ∈ T(1)and D ∈ F(1).

Example 4. Suppose to have the following SAP:

C = ∃R.(A1 u (A2 t ¬A3))

D = ∃R.(A1 u A2) u ∃R.(A3 t ¬A2)

T = ∅

The tableau computed following rules in Fig. 1 and Fig. 2 isdepicted in Fig. 3. 4

Looking at Fig. 3 we observe that we could close thetableau by substituting the two concept variables h0 andh1 with concepts generating a clash in the open branchesB0, B1 and B2. Once the tableau is closed we know that

T |= σ(Ch) v D. Actually this relation holds even whentrivially T |= σ(Ch) v ⊥. Nevertheless, if we want that σ bea solution to a SAP, by condition (2) of Def. 3, we have toavoid that. By Proposition 2, we know that in order to haveT 6|= σ(Ch) v ⊥, it suffices to have at least one branch closedby a heterogeneous clash. Hence, in order to compute σ wewill look for instantiation of variable in the hypotheses list Hof Ch such that, given a complete open tableau τ , there is atleast one open branch B ∈ τ such that σ(B) closes withoutany homogeneous clash.

Proposition 3. Let T be a TBox, Ch be an abducible concept,H =〉h0, . . . , hl〈 be its corresponding hypotheses list and τbe an open complete tableau starting from Ch ∈ T(1), D ∈F(1). For each open branch Bj ∈ τ , with j ∈ [0, . . . , k], ifσj [H/Hj ] is a substitution such that σj [H/Hj ](Bj) is closedthen

σ[H/H] = {h0 7→ σ00 [H/H0

] u . . . u σk0 [H/Hk

], . . . ,

hl 7→ σ0l [H/H0

] u . . . u σkl [H/Hk

]}

is such that T |= σ[H/H](Ch) v D. We call σj [H/Hj ] abranch substitution.Proof. If σji [H/Hj ] closes Bj then, by u-rule T) in Fig.1, Bj is closed also by σji [H/Hj ] u C, being C a genericconcept. If C = uj 6=jσ

ji [H/Hj ] the proposition holds. 2

For the sake of clarity, when no confusion arises, from nowon we will write σ to denote σ[H/H], σi to denote σi[H/H],σj to denote σj [H/Hj ] and σji to denote σji [H/Hj ].

Algorithm 1 shows how to compute a solution to StructuralAbduction Problems using prefixed tableaux.

Algorithm 1: An Algorithm to compute a solution to aSAP

Algorithm:abduce

Input: ALC concepts C, D, acyclic TBox TOutput: substitution σ

begin1σ := {H0 7→ >, . . . , Hn 7→ >};2compute a H-Tableau;3if τ is not closed then4

repeat5Θ := ∅;6foreach open branch Bj ∈ τ do7

find a branch substitution σj such that Bj is closed with a8heterogeneous clash;Θ := Θ ∪ {σj};9

end10foreach σj ∈ Θ do11

σi := σi u σji ;12

end13until T 6|= σ(Ch) v ⊥ ;14

end15return σ;16

end17

In Algorithm 1 we propose a greedy procedure to computea solution to a General SAP 〈C,D, T , A〉S . There a practicalproblem still remains: the computation of the branch substitu-tion σj in line 8. There are different strategies to compute σj

depending on the characteristics we want to be shown by σ. Inthis section we identify and discuss some properties of σ thatcan be easily computed (implemented) given a H-Tableau, lead

6

T(1) = {h0 u ∃R.(A1 u (A2 t ¬A3) u h1)}F(1) = {∃R.(A1 u A2) u ∃R.(A3 t ¬A2)}T(1) = {h0, ∃R.(A1 u (A2 t ¬A3) u h1)}

T(1, 2) = {R}T(2) = {A1, A2 t ¬A3, h1}

F(1) = {∃R.(A1 u A2)}F(2) = A1 u A2

F(2) = {A1}×

heterogeneous clashA1 ∈ F(2) and A1 ∈ T(2)

F(2) = {A2}

T(2) = {A2}×

heterogeneous clashA2 ∈ F(2) and A2 ∈ T(2)

T(2) = {¬A3}open branch B0

F(1) = {∃R.(A3 t ¬A2)}F(2) = {A3,¬A2, A3 t ¬A2}

T(2) = {A2}open branch B1

T(2) = {¬A3}open branch B2

Fig. 3. A H-Tableau computed applying expansion rules in Fig. 1 and Fig. 2.

by information minimal criteria. In other words, we would liketo have a practical (from an implementation point of view)procedure able to compute a solution to a SAP that showssome information minimal properties.

Some possible substitutions to close the H-Tableau in Fig.3 are presented in Table II. Concepts C0 and C1 are genericconcepts in SH (even >) satisfiable w.r.t. T . The first practicalissue we have to face is: given a H-Tableau, in case we wantto solve a General SAP, how could we select concepts in SHin order to close open branches? We could perform a syntacticsearch of such concepts looking at the H-Tableau itself.(C0) For each open branch Bj in a H-Tableau we select allthe sets labeled with F(n). If there is a concept variable hi ∈T(n), we could just pick up a concept C ∈ F(n) and performthe substitution σji = {hi 7→ C}. It is easy to see that σji (Bj)closes with at least one heterogeneous clash.(C1) For each branch substitution, in order to close a branch itsuffices to have at least one variable whose value is differentfrom >2.

Note that, depending on the substitution we choose, we havedifferent solutions for the same SAP. Suppose we select thesubstitution σ1 = {h0 7→ >, h1 7→ A3} for B1 in Fig. 3. It iseasy to see that σ1 closes both B1 with a heterogeneous clashand B2 with a homogeneous clash. Hence, in this case we donot need to compute a substitution σ2 to close B2. Since we arelooking for information minimal hypotheses, with respect tosolutions in Table II we observe that in case we are willing tocompute, for each variable, conjunction minimal substitutions:(C2) both C0 and C1 should be equal to >;(C3) we should avoid variable substitution in conjunctiveform. In fact, if a conjunctive substitution hi 7→ D1 u D2

closes a branch B then by u-rule T) in Fig. 1 either hi 7→ D1

or hi 7→ D2 closes B;(C4) when computing a branch substitution for an openbranch, we have to take into account also the substitutions

2Branch substitutions with all the variables in H but one equal to > tendto generate structural maximal solutions.

1. σ0 {h0 7→ ∀R.A2 u C0, h1 7→ > u C1}2. {h0 7→ ∀R.(A2 u A1) u C0, h1 7→ > u C1}3. {h0 7→ ∃R.(A1 u A2) u C0, h1 7→ > u C1}4. {h0 7→ > u C0, h1 7→ A2 u C1}5. {h0 7→ > u C0, h1 7→ A1 u A2 u C1}6. {h0 7→ ∀R.A2 u C0, h1 7→ A2 u C1}7. {h0 7→ ∀R.A2 u C0, h1 7→ A1 u A2 u C1}

. . .

8. σ1 {h0 7→ ∀R.(A3 t ¬A2) u C0, h1 7→ > u C1}9. {h0 7→ ∀R.A3 u C0, h1 7→ > u C1}10. {h0 7→ ∃R.(A3 t ¬A2) u C0, h1 7→ > u C1}11. {h0 7→ > u C0, h1 7→ A3 u C1}12. {h0 7→ ∀R.(A3 t ¬A2) u C0, h1 7→ A3 u C1}13. {h0 7→ ∀R.A3 u C0, h1 7→ A3 u C1}14. {h0 7→ ∃R.(A3 t ¬A2) u C0, h1 7→ A3 u C1}

. . .

15. σ2 {h0 7→ ∀R.(A3 t ¬A2) u C0, h1 7→ > u C1}16. {h0 7→ ∀R.¬A2 u C0, h1 7→ > u C1}17. {h0 7→ ∃R.(A3 t ¬A2) u C0, h1 7→ > u C1}18. {h0 7→ > u C0, h1 7→ ¬A2 u C1}19. {h0 7→ ∀R.(A3 t ¬A2) u C0, h1 7→ ¬A2 u C1}20. {h0 7→ ∀R.¬A2 u C0, h1 7→ ¬A2 u C1}21. {h0 7→ ∃R.(A3 t ¬A2) u C0, h1 7→ ¬A2 u C1}

. . .

TABLE IIPOSSIBLE SUBSTITUTIONS TO CLOSE THE H-TABLEAU IN FIGURE 3

of the other open branches. With respect Table II, if weconsider σ0 in row 1 and σ1 in row 8 and σ2 in row 17we see that there are three different substitutions for the samevariable h0. By Proposition 3 we know that the conjunction∀R.A2u∀R.(A3t¬A2)u∃R.(A3t¬A2) is a substitution forh0 closing B0, B1 and B2. Hence, if a variable substitutioncloses more than one open branch, i.e., the same variablesubstitution appears in more than one branch substitution,it should be preferred over the others. This is the case, forinstance, of h0 7→ ∀R.(A3 t ¬A2) for σ1 and σ2;

Going back to Condition (C0) and Condition (C1), given aH-Tableau, in case there is more than one individual n suchthat hi ∈ T(n), how to choose the individual? What is thebest candidate? Moreover, once we choose and individual n,which concept in F(n) should we pick-up? (C5) With respectto Example 4 and solutions in Table II, if we consider either

7

σ0 in row 3 or σ0 in row 4 and σ1 in row 11 we obtain3:

σ[H/H′′] = {h0 7→ >, h1 7→ A2 u A3} (4)

σ[H/H′] = {h0 7→ ∃R.(A1 u A2), h1 7→ A3} (5)

Note that both H′ and H′′ are computed satisfying all theabove conjunction minimal conditions. Nevertheless, we seethat solutions (4) is more “fine-grained” than solution (5). Alsonotice that σ[H/H′](Ch) v σ[H/H′′](Ch). In other words,solutions (4) is subsumption-maximal w.r.t. solution (5). Withrespect to Definition 5 it results H′ ≤ H′′. Hence, whenclosing an open branch B to compute a subsumption maximalsolution we tend to select variable hi ∈ T(n) such that thereis no hp ∈ T(m) with hi < hp.

In Algorithm 2 we propose a procedure to compute abranch substitution σj taking into account (C0), (C1), (C2),(C3), (C4) and (C5). Moreover, from Proposition 2 we knowthat if there is at least one branch Bj in a H-Tableau suchthat Bj does not contain any T-homogeneous clash, thenT 6|= σ(Ch) v ⊥. In order to catch this situation as soonas possible, while computing σj we should avoid, if possible,to close Bj generating also a T-homogeneous clash.4

• In line 1 of Algorithm 2 we take into account Condition(C4). Indeed, given Bj we try to reuse a substitutionsalready computed for previous branches Bj−k.

• Line 4 formalizes conditions (C0) and (C5). We select anindividual n such that both T(n) contains hi and there isno other h-variable hp such that it is “bigger” than hi.

• Since we selected n such that F(n) 6= ∅, we can choose aconcept in F(n) to close Bj . Furthermore, while closingBj we try to avoid heterogeneous clashes in order todiscard inconsistent substitutions (see Proposition 2).

Algorithm 2: Computation of a branch substitution forinformation minimal solutions.

if hi ∈ T(n) and there exists a substitution σj−ki , with k = 1, . . . , j such that1

σji := σj−k

i closes Bj thenσj

i := σj−ki ;2

else3select an individual n such that T(n) 6= ∅,F(n) 6= ∅ and there exists no4other individual m such that both T(m) 6= ∅, F(m) 6= ∅ and hi < hp

with hi ∈ T(n) and hp ∈ T(m);choose a concept E ∈ F(n) such that E does no contain a conjunction and,5if possible, Bj ∪ {E ∈ T(n)} does not close with a T-homogeneous clash;σj

i := E;6end7foreach hk ∈ H with k 6= i do8

σjk := >;9

end10

It is noteworthy that the algorithms we presented in thissection compute a sub-optimal solution due to their greedynature. In fact, we have no guarantee that Algorithm 2 findsa substitution such that σ[H/H](τ) have at least one branchclosed by no T-homogeneous clash. However, the algorithmswe illustrated in this section are very useful to understand theissues related to the computation of a solution to a SAP.

3We remember that in this case it suffices to have h1 7→ A3 in σ1 to closeboth B1 and B2.

4As a general remark we should minimize T-homogeneous clashes as muchas possible in order to avoid trivial solutions.

Dealing with RBoxes: It is easy to see that Algorithm 2works nicely when R = ∅. Let us take a look at what happenswhen we have to deal with a non-empty RBox.

Example 5. Suppose we have to solve the following SAP.

C = ∀R.(A1 u ∃S.A2)

D = ∀T .∃S.A3

T = ∅R = {Trans(R), S v R, T v R}

Part of the tableau we compute following rules in Fig. 1 isrepresented in Fig. 4.

T(1) = {h0 u ∀R.(h1 u A1 u ∃S.(h2 u A2))}F(1) = {∀T .∃S.A3}

T(1) = {h0, ∀R.(h1 u A1 u ∃S.(h2 u A2))}

F(1, 2) = {¬T}F(2) = {∃S.A3}

T(2) = {h1, A1, ∃S.(h2 u A2), ∀R.(h1 u A1 u ∃S.(h2 u A2))}

T(2, 3) = {S}T(3) = h2, A2, h1, A1, ∃S.(h2 u A2), ∀R.(h1 u A1 u ∃S.(h2 u A2))

F(3) = A3. . . . . .

Fig. 4. Part of the tableau computed for Example 5

Looking at Example 5 we see that, due to R, both h1 andh2 appears in T(3). Hence, following Algorithm 2 we canclose the branch with one of the following two substitutions:σ[H/H′] = {h0 7→ >, h1 7→ >, h2 7→ A3}

σ[H/H′′] = {h0 7→ >, h1 7→ A3, h2 7→ >}

Due to Trans(R), we have σ[H/H′′](Ch) v σ[H/H′](Ch).Similarly to what we do in (C4), if we are looking forsubsumption-maximal solutions we will prefer H′ over H′′.On the other hand we see that H′ ≤ H′′. Hence, (C4) holdsalso in presence of a non-empty RBox.

V. STRUCTURAL ABDUCTION FOR MATCH RANKING

Although undoubtedly useful for match explanations, solu-tions to structural abduction problems can also be used toformulate a scoring function to rank matchmaking results.Here we present two simple functions just to provide somehints on this topic. The first one is based exclusively on thestructure of formulas; the second one involves also some basicuser preferences.>-less Ranking Function. If we consider a solution to a SAP,it represents how many “pieces” of the formula representingD have to be hypothesized in C. If we look at the substitutionrepresenting a solution, the best case is when all the variablesin the hypotheses set H are substituted with the most genericconcept >. This solution represents the case when T |= C vD and then no hypothesis has to be formulated. Then, thegreater the number of unifications such that σi[H/H] 6= >the worse the solution. Given a solution σ[H/H]to a SAP wecan define a ranking function based on the number of conceptsCi ∈ H such that Ci 6= >.

rank>

(σ[H/H]) = |{Ci | Ci ∈ H and Ci 6= >}|

The best solution is represented by rank>(σ[H/H]) = 0.Preference-Based Ranking Function. In a matchmaking pro-cess a user request can be split often into two separateparts: strict requirements and preferences. Strict requirementsrepresent what, in the request, has to be strictly matched bythe retrieved resource description. Preferences can be seen assoft user requirements. In other words, the user will accept

8

even a resource description not completely matching her re-quirements. Usually, a weight is associated to each preferencein order to represent its worth (absolute or relative to theother preferences). Hence, for a user request we distinguishbetween a concept DS representing strict requirements anda set of weighted formulas P = {〈Di, vi〉} [25] where Di

is a DL concept and vi is a numerical value representingpreference worth. It should be clear that a matchmakingprocess has not to be performed w.r.t. DS . It represents whatthe user is not willing to risk on at all. He does not want tohypothesize nothing on it. An approximate solution would notbe significant for DS . It represents an initial retrieval filter.Given a resource description C, if T |= C v DS then thematchmaking process starts. Matchmaking preferences w.r.t.a semantic resource description C makes more sense. Afterall, preferences represent what the user would like to besatisfied by C. Hence, even though a preference is satisfiedwith a certain degree (not necessarily completely) the userwill be satisfied with a certain degree as well. Hence, foreach preference we compute σ[H/Hi] as a solution to thecorresponding SAP 〈C,Di, T ,ALC〉S . Based on this settingwe can define a simple additive utility function such that foreach preference 〈Di, vi〉 it takes into account both vi and “howmuch” Di is satisfied by C.

u(P, C) =∑i

vi ·1

1 + rank>(σ[H/Hi])

VI. FINAL REMARKS AND CONCLUSIONS

First of all, we clarify the relation between “classical”Propositional Abduction (PA) and our proposal. We claim thatours is a proper extension of PA. In fact, given a theory T ,some observations O (both propositional formulas) and a setof possible assumptions A = {a1, . . . , an} (atoms), PA isthe problem of finding a subset S ⊆ A such that T ∧ S isconsistent, and T ∧ S |= O. Then, PA can be translated intoSAP by (i) letting C = > (hence Ch = > u H0 ≡ H0),(ii) expressing T and O as ALC concepts—just replace ∧,∨with u,t—and (iii) solving the SAP T |= H0 v O. Since inpropositional Logic the Deductive Theorem holds, one couldalso let C = T , T = ∅, and solve the SAP |= T uH0 v O.In both cases only substitutions involving atoms in A shouldbe considered. Hence, SAP properly extends PA.

Given that ALC is a syntactic variant of the Modal LogicKn, and that (the Modal Logic version of) transitive rolesis present in the Modal Logic S4, the work most similar toours is Cialdea & Pirri’s [20], who studied Abduction forseveral Modal Logics. Compared to ours, Cialdea & Pirridid not have our known facts C, which are necessary forthe Electronic Commerce application (they model the alreadydeclared characteristics of an offer). Moreover, Cialdea &Pirri looked for formulas α such that T ∪ {α} |= O, that inour setting could be rephrased as Concept Abduction of Sec-tion II.1, or alternatively, as a SAP having on H0 as variableto be substituted. Finally, they just looked for subsumption-maximal abductions on H0, while our approach allows us tofind several abductions depending on the preference criterionfor the various Hi’s. On the other hand, every solution we find

can be turned into a solution in Cialdea & Pirri’s framework: infact, given a solution σ[H/H], since T |= σ[H/H](Ch) v D,one can always let α = σ[H/H](Ch) as a solution.

Currently, we are performing tests based on different sub-stitution strategies using ITACA (Implementation of TableauxAlgorithm for Contraction and Abduction), a novel DL rea-soner based on prefixed tableaux. Tests aim both at evaluatingpractical computational load when computing solutions toSAPs and users’ feedback on computed explanations. Ananalysis of computational complexity is also under way.

REFERENCES

[1] M. Paolucci, T. Kawamura, T. Payne, and K. Sycara, “Semantic Match-ing of Web Services Capabilities,” in Proc. ISWC 2002, 2002.

[2] L. Li and I. Horrocks, “A Software Framework for Matchmaking Basedon Semantic Web Technology,” in Proc. WWW’03, 2003.

[3] T. Di Noia, E. Di Sciascio, F. Donini, and M. Mongiello, “A system forprincipled Matchmaking in an electronic marketplace,” in Proc. WWW’03, 2003.

[4] M. Klusch, B. Fries, and K. P. Sycara, “Automated semantic web servicediscovery with owls-mx,” in Proc. AAMAS 2006, 2006.

[5] A. Ragone, U. Straccia, T. Di Noia, E. Di Sciascio, and F. Donini,“Vague knowledge-bases for matchmaking in p2p e-marketplaces,” inProc. ESWC’07, 2007.

[6] T. Lukasiewicz and J. Schellhase, “Variable-strength conditional prefer-ences for matchmaking in description logics,” in Proc. KR’06.

[7] C. . Peirce, “Abduction and induction,” in Philosophical Writings ofPeirce. J. Buchler, 1955, ch. 11.

[8] C. Elsenbroich, O. Kutz, and U. Sattler, “A Case for Abductive Rea-soning over Ontologies,” in Proc. OWLED’05, 2005.

[9] S. E. Peraldi, A. Kaya, S. Melzer, R. Möller, and M. Wessel, “Multi-media Interpretation as Abduction,” in Proc. DL’07, 2007.

[10] T. Di Noia, E. Di Sciascio, F. Donini, and M. Mongiello, “Abductivematchmaking in description logics,” in Proc. IJCAI’03, 2003.

[11] T. Di Noia, E. Di Sciascio, and F. M. Donini, “Semantic matchmaking asnon-monotonic reasoning: A description logic approach,” JAIR, vol. 29,2007.

[12] S. Colucci, T. Di Noia, E. Di Sciascio, F. Donini, and M. Mongiello,“Concept Abduction and Contraction for Semantic-based Discovery ofMatches and Negotiation Spaces in an E-Marketplace,” ECRA, vol. 4,no. 4.

[13] F. Lécué, A. Delteil, and A. Léger, “Applying abduction in semanticweb service composition,” in Proc. ICWS’07, 2007.

[14] N. Creignou and B. Zanuttini, “A complete classification of the com-plexity of propositional abduction,” SIAM J. Comput., vol. 36, no. 1.

[15] A. C. Kakas, R. A. Kowalski, and F. Toni, “Abductive logic program-ming,” J. of Log. and Comp., vol. 2, no. 6, 1992.

[16] S. Colucci, T. Di Noia, E. Di Sciascio, F. Donini, and M. Mongiello,“A Uniform Tableaux-Based Method for Concept Abduction and Con-traction in Description Logics,” in Proc. ECAI 2004, 2004.

[17] F. Baader, R. Küsters, A. Borgida, and D. L. McGuinness, “Matchingin description logics,” J. of Log. and Comp., vol. 9, no. 3.

[18] F. Baader, D. Calvanese, D. McGuinness, D. Nardi, and P. P. Schneider(eds.), The Description Logic Handbook.

[19] F. Baader and P. Narendran, “Unification of concept terms in descriptionlogics,” J. Symb. Comput., vol. 31, no. 3.

[20] M. Cialdea Mayer and F. Pirri, “Modal propositional abduction,” Journalof the IGPL, vol. 3, no. 6.

[21] P. Marquis, “Extending abduction from propositional to first-orderlogic,” in Proc. FAIR ’91, 1991.

[22] R. M. Smullyan, First-Order Logic. Springer-Verlag, New York inc.,1968.

[23] F. Baader, B. Hollunder, B. Nebel, H. Profitlich, and E. Franconi,“An empirical analysis of optimization techniques for terminologicalrepresentation systems or making KRIS get a move on,” in Proc. KR’92,1992.

[24] I. Horrocks, “Using an expressive description logic: FaCT or fiction?”in Proc. KR’98, 1998.

[25] Y. Chevaleyre, U. Endriss, and J. Lang, “Expressive power of weightedpropositional formulas for cardinal preference modeling,” in Proc.KR’06, 2006.