The DL-Lite Family of Languages A FO Perspective
Alessandro Artale KRDB Research Centre – Free University of Bozen-Bolzano Joint work with D. Calvanese, R. Kontchakov, M. Zakharyaschev
TU Dresden. December 14–15, 2011
The DL-Lite Family of Languages A FO Perspective Alessandro Artale - - PowerPoint PPT Presentation
The DL-Lite Family of Languages A FO Perspective Alessandro Artale KRDB Research Centre Free University of Bozen-Bolzano Joint work with D. Calvanese, R. Kontchakov, M. Zakharyaschev TU Dresden. December 1415, 2011 Recommended Readings
Alessandro Artale KRDB Research Centre – Free University of Bozen-Bolzano Joint work with D. Calvanese, R. Kontchakov, M. Zakharyaschev
TU Dresden. December 14–15, 2011
[1] A. Artale, D. Calvanese, R. Kontchakov and M. Zakharyaschev.
The DL-Lite family and relations. JAIR, 36:1–69, 2009.
[2] D. Calvanese, G. De Giacomo, D. Lembo, M. Lenzerini, and R. Rosati.
DL-Lite: Tractable description logics for ontologies. Proceedings of AAAI 2005.
[3] D. Calvanese, G. De Giacomo, D. Lembo, M. Lenzerini, R. Rosati.
Tractable reasoning and efficient query answering in DLs: The DL-Lite family. Journal of Automated Reasoning, 39:385–429, 2007.
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 1/40
DL-Litebool, DL-Litehorn, DL-Litecore, DL-Litekrom
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 2/40
classes/concepts/entities and relationships between them
– First Order Logic – Description Logics: a specialized formalism (typically a fragment of FOL) for expressing knowledge in terms of classes and relationships
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 3/40
classes/concepts/entities and relationships between them
– First Order Logic – Description Logics: a specialized formalism (typically a fragment of FOL) for expressing knowledge in terms of classes and relationships
Science – Frame systems in Artificial Intelligence – ER diagrams in databases and information systems – UML class diagrams in software engineering – Constraints over a relational schema (inclusion and key dependencies)
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 3-a/40
Desiderata: achieve logical transparency in access to data:
Layer Data Layer Query over conceptual layer Conceptual Ontology
As in Data Integration, but with a rich conceptual description as the global view
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 4/40
The DL-Lite DLs provide an answer to our basic question: For which ontology languages can we answer queries over an ontology efficiently (in data complexity)?
power and data complexity
data complexity of query answering is LOGSPACE – Query answering techniques leverage on RDBMS technology (i.e. SQL)
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 5/40
with full Booleans, cardinalities and role inclusion axioms obtaining the logic DL-Litebool and three sublanguages: DL-Litekrom, DL-Litecore and DL-Litehorn
showing that:
DL-Lite!
queries in DL-Litehorn.
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 6/40
DL-Litecore Ontology language:
B1 ⊑ B2, B1 ⊑ ¬B2 with: B − → A | ∃R | ⊥ R − → P | P −
A(c), ¬A(c) P (c, d), ¬P (c, d) with c, d constants
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 7/40
bool
DL-LiteR,N
bool Ontology language:
C1 ⊑ C2, with: C − → B | ¬C | C1 ⊓ C2 B − → A | ≥ q R | ⊥ R − → P | P −
R1 ⊑ R2
A(c), ¬A(c) P (c, d), ¬P (c, d), with c, d constants.
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 8/40
bool
DL-LiteR,N
bool Ontology language:
C1 ⊑ C2, with: C − → B | ¬C | C1 ⊓ C2 B − → A | ≥ q R | ⊥ R − → P | P −
R1 ⊑ R2
A(c), ¬A(c) P (c, d), ¬P (c, d), with c, d constants.
Ontology, O.
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 8-a/40
core , DL-LiteR,N krom, DL-LiteR,N horn
DL-LiteR,N
core Ontology language: B1 ⊑ B2,
B1 ⊑ ¬B2 DL-LiteR,N
krom Ontology language: B1 ⊑ B2,
B1 ⊑ ¬B2, ¬B1 ⊑ B2 DL-LiteR,N
horn Ontology language: k Bk ⊑ B
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 9/40
Manager ⊑ Employee AreaManager ⊑ Manager TopManager ⊑ Manager AreaManager ⊓ TopManager ⊑ ⊥ ∃WorksFor ⊑ Employee ∃WorksFor− ⊑ Project Project ⊑ ∃WorksFor− ≥ 2 Manages ⊑ ⊥ ≥ 2 Manages− ⊑ ⊥ . . . See [Artale et. al.,ER07] for more details on the correspondence between DL-Lite and conceptual data models
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 10/40
Construct Syntax Example Semantics atomic concept A Doctor AI ⊆ ∆I atomic role P child P I ⊆ ∆I × ∆I inverse role P − child− {(d, e) ∈ ∆I × ∆I | (e, d) ∈ P I} empty concept ⊥ ⊥ ∅ conjunction C1 ⊓ C2 Doctor ⊓ Male CI
1 ∩ CI 2
negation ¬C ¬(Doctor ⊓ Male) ∆I \ CI cardinalities ≥ nR ≥ 2 child− {d ∈ ∆I | ♯{e ∈ ∆I | (d, e) ∈ RI} ≥ n} inclusion asser. Cl ⊑ Cr Father ⊑ ≥ 1 child ClI ⊆ CrI
A(a) Father(bob) aI ∈ AI
P (a, b) child(bob, ann) (aI, bI) ∈ P I
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 11/40
We are interested in:
– Class Subsumption)
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 12/40
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 13/40
bool is NP-complete – Upper Bound
bool can be reduced to formula satisfiability for the
NP-complete [BGG:97].
LOGSPACE reduction ·‡.
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 14/40
bool is NP-complete – Upper Bound – Translating C
(⊥)∗ = ⊥ (A)∗ = A(x) (¬C)∗ = ¬C∗(x) (C1 ⊓ C2)∗ = C∗
1(x) ∧ C∗ 2(x)
(≥q R)∗ =EqR(x)
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 15/40
bool is NP-complete – Upper Bound – Translation K†
K† =
R∈role±(K)
R∈role±(K) R†
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 16/40
bool is NP-complete – Upper Bound – Translation K†
K† =
R∈role±(K)
R∈role±(K) R†
T ∗ =
1(x) → C∗ 2(x)
The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 16-a/40
bool is NP-complete – Upper Bound – Translation K†
K† =
R∈role±(K)
R∈role±(K) R†
T ∗ =
1(x) → C∗ 2(x)
=
P (ai,aj)∈A P aiaj
¬P (ai,aj)∈A ¬P aiaj
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 16-b/40
bool is NP-complete – Upper Bound – Translation K†
K† =
R∈role±(K)
R∈role±(K) R†
T ∗ =
1(x) → C∗ 2(x)
=
P (ai,aj)∈A P aiaj
¬P (ai,aj)∈A ¬P aiaj
R† = qT
q=1
ji = ji′ for i = i′ q
i=1 Raaji → EqR(a)
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 16-c/40
bool is NP-complete – Upper Bound – Translation K† (cont.)
K† =
R∈role±(K)
R∈role±(K) R†
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 17/40
bool is NP-complete – Upper Bound – Translation K† (cont.)
K† =
R∈role±(K)
R∈role±(K) R†
ε(R) = ∀x
The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 17-d/40
bool is NP-complete – Upper Bound – Translation K† (cont.)
K† =
R∈role±(K)
R∈role±(K) R†
ε(R) = ∀x
= qT −1
q=1
∀x
The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 17-e/40
bool is NP-complete – FO Model
T = {A ≡ ∃P −, A ⊑ ≥ 2 P, ⊤ ⊑ ≤ 1 P −, ∃P ⊑ A}, A = {A(a), P (a, a′)} T ∗ =
} E1P −M = { } E1P M = {
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 18/40
bool is NP-complete – FO Model
T = {A ≡ ∃P −, A ⊑ ≥ 2 P, ⊤ ⊑ ≤ 1 P −, ∃P ⊑ A}, A = {A(a), P (a, a′)} T ∗ =
⇒ P −a′a, E1P (a) ⇒ E1P −(a′) AM = {a, } E1P −M = { } E1P M = {
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 18-a/40
bool is NP-complete – FO Model
T = {A ≡ ∃P −, A ⊑ ≥ 2 P, ⊤ ⊑ ≤ 1 P −, ∃P ⊑ A}, A = {A(a), P (a, a′)} T ∗ =
⇒ P −a′a, E1P (a) ⇒ E1P −(a′) ε(R) : E1P (a), E1P −(a′) ⇒ E1P −(dp−), E1P (dp) AM = {a, } E1P −M = {a′, } E1P M = {a,
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 18-b/40
bool is NP-complete – FO Model
T = {A ≡ ∃P −, A ⊑ ≥ 2 P, ⊤ ⊑ ≤ 1 P −, ∃P ⊑ A}, A = {A(a), P (a, a′)} T ∗ =
⇒ P −a′a, E1P (a) ⇒ E1P −(a′) ε(R) : E1P (a), E1P −(a′) ⇒ E1P −(dp−), E1P (dp) T ∗ : E1P (x)→A(x) ⇒ A(dp) AM = {a, } E1P −M = {a′,dp−, } E1P M = {a,dp,
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 18-c/40
bool is NP-complete – FO Model
T = {A ≡ ∃P −, A ⊑ ≥ 2 P, ⊤ ⊑ ≤ 1 P −, ∃P ⊑ A}, A = {A(a), P (a, a′)} T ∗ =
⇒ P −a′a, E1P (a) ⇒ E1P −(a′) ε(R) : E1P (a), E1P −(a′) ⇒ E1P −(dp−), E1P (dp) T ∗ : E1P (x)→A(x) ⇒ A(dp) T ∗ : A(x)↔E1P −(x) ⇒ E1P −(a), E1P −(dp), A(a′), A(dp−) AM = {a, dp, } E1P −M = {a′,dp−, } E1P M = {a,dp,
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 18-d/40
bool is NP-complete – FO Model
T = {A ≡ ∃P −, A ⊑ ≥ 2 P, ⊤ ⊑ ≤ 1 P −, ∃P ⊑ A}, A = {A(a), P (a, a′)} T ∗ =
⇒ P −a′a, E1P (a) ⇒ E1P −(a′) ε(R) : E1P (a), E1P −(a′) ⇒ E1P −(dp−), E1P (dp) T ∗ : E1P (x)→A(x) ⇒ A(dp) T ∗ : A(x)↔E1P −(x) ⇒ E1P −(a), E1P −(dp), A(a′), A(dp−) T ∗ : A(x)→E2P (x) ⇒ E2P M = AM AM = {a, dp,a′, dp−} E1P −M = {a′,dp−,a, dp} E1P M = {a,dp,
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 18-e/40
bool is NP-complete – FO Model
T = {A ≡ ∃P −, A ⊑ ≥ 2 P, ⊤ ⊑ ≤ 1 P −, ∃P ⊑ A}, A = {A(a), P (a, a′)} T ∗ =
⇒ P −a′a, E1P (a) ⇒ E1P −(a′) ε(R) : E1P (a), E1P −(a′) ⇒ E1P −(dp−), E1P (dp) T ∗ : E1P (x)→A(x) ⇒ A(dp) T ∗ : A(x)↔E1P −(x) ⇒ E1P −(a), E1P −(dp), A(a′), A(dp−) T ∗ : A(x)→E2P (x) ⇒ E2P M = AM δ(R) : E2P (x) → E1P (x) ⇒ E1P M = E2P M AM = {a, dp,a′, dp−}= E2P M E1P −M = {a′,dp−,a, dp} E1P M = {a,dp,
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 18-f/40
bool is NP-complete – FO Model
T = {A ≡ ∃P −, A ⊑ ≥ 2 P, ⊤ ⊑ ≤ 1 P −, ∃P ⊑ A}, A = {A(a), P (a, a′)} T ∗ =
⇒ P −a′a, E1P (a) ⇒ E1P −(a′) ε(R) : E1P (a), E1P −(a′) ⇒ E1P −(dp−), E1P (dp) T ∗ : E1P (x)→A(x) ⇒ A(dp) T ∗ : A(x)↔E1P −(x) ⇒ E1P −(a), E1P −(dp), A(a′), A(dp−) T ∗ : A(x)→E2P (x) ⇒ E2P M = AM δ(R) : E2P (x) → E1P (x) ⇒ E1P M = E2P M AM = {a, dp,a′, dp−}= E2P M= D, E1P −M = {a′,dp−,a, dp}= D, E1P M = {a,dp,a′, dp−} = D.
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 18-g/40
bool is NP-complete – Upper Bound – Lemma 1
Lemma 1. A DL-LiteN
bool KB K is satisfiable iff the QL1-sentence K† is satisfiable.
(⇐) Starting from a model M = (D, ·M), with D = ob(A) ∪ dr(K), of K†, we construct an interpretation I for DL-LiteN
bool based on some domain ∆ ⊇ D
inductively defined as: ∆ =
∞
Wm, where W0 = D = constants in K†
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 19/40
bool is NP-complete – Upper Bound – Lemma 1
Lemma 1. A DL-LiteN
bool KB K is satisfiable iff the QL1-sentence K† is satisfiable.
(⇐) Starting from a model M = (D, ·M), with D = ob(A) ∪ dr(K), of K†, we construct an interpretation I for DL-LiteN
bool based on some domain ∆ ⊇ D
inductively defined as: ∆ =
∞
Wm, where W0 = D = constants in K† Each set Wm+1, for m ≥ 0, is constructed by adding to Wm some new elements, w′, that are fresh copies of certain elements, d, from W0 = D, i.e., cp(w′) = d. AI =
= A[cp(w)]
k
= ∞
m=0 P m k ,
where P m
k
⊆ Wm × Wm For the basis of induction we set, for each role Pk: P 0 =
i , aM j ) ∈ W0 × W0 | M |
= P aiaj
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 19-a/40
bool is NP-complete – Upper Bound – Lemma 1 (cont.)
. . a a′ dp dp− V0 V1 V2 Figure 1: Unravelling model M (first three steps).
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 20/40
bool is NP-complete – Upper Bound – Translation K‡
K† =
R∈role±(K)
R∈role±(K) R†
K‡ =
R∈role±(K)
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 21/40
bool is NP-complete – Upper Bound – Translation K‡
K† =
R∈role±(K)
R∈role±(K) R†
K‡ =
R∈role±(K)
δ‡
R(x)
=
T ,
q′>q q′>q′′>q for no q′′∈QR
T
The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 21-a/40
bool is NP-complete – Upper Bound – Translation K‡
K† =
R∈role±(K)
R∈role±(K) R†
K‡ =
R∈role±(K)
δ‡
R(x)
=
T ,
q′>q q′>q′′>q for no q′′∈QR
T
=
∧
∧
∃a′∈ob(A) R(a,a′)∈A
EqR,aR(a)
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 21-b/40
bool is NP-complete – Upper Bound – Translation K‡
K† =
R∈role±(K)
R∈role±(K) R†
K‡ =
R∈role±(K)
δ‡
R(x)
=
T ,
q′>q q′>q′′>q for no q′′∈QR
T
=
∧
∧
∃a′∈ob(A) R(a,a′)∈A
EqR,aR(a) A⊥ = ⊥ if P (ai, aj) ∈ A and ¬P (ai, aj) ∈ A
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 21-c/40
bool is NP-complete – Upper Bound – Translation K‡
K† =
R∈role±(K)
R∈role±(K) R†
K‡ =
R∈role±(K)
δ‡
R(x)
=
T ,
q′>q q′>q′′>q for no q′′∈QR
T
=
∧
∧
∃a′∈ob(A) R(a,a′)∈A
EqR,aR(a) A⊥ = ⊥ if P (ai, aj) ∈ A and ¬P (ai, aj) ∈ A K‡ can be computed in LOGSPACE.
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 21-d/40
Theorem
bool, DL-LiteF bool and DL-Litebool knowledge
bases is NP-complete.
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 22/40
Theorem
bool, DL-LiteF bool and DL-Litebool knowledge
bases is NP-complete.
krom, DL-LiteF krom, DL-Litekrom, as well as
DL-LiteN
core, DL-LiteF core and DL-Litecore knowledge bases, is
NLOGSPACE-complete.
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 22-a/40
Theorem
bool, DL-LiteF bool and DL-Litebool knowledge
bases is NP-complete.
krom, DL-LiteF krom, DL-Litekrom, as well as
DL-LiteN
core, DL-LiteF core and DL-Litecore knowledge bases, is
NLOGSPACE-complete.
horn, DL-LiteF horn and DL-Litehorn knowledge
bases is P-complete.
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 22-b/40
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 23/40
horn is EXPTIME-complete
DL-LiteR,F
horn Ontology language:
R1 ⊑ R2,
≥ 2 R ⊑ ⊥
B − → A | ∃R | ⊥ R − → P | P −
A(c), ¬A(c) P (c, d), ¬P (c, d) with c, d constants
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 24/40
horn is EXPTIME-complete
DL-LiteR,F
horn Ontology language:
R1 ⊑ R2,
≥ 2 R ⊑ ⊥
B − → A | ∃R | ⊥ R − → P | P −
A(c), ¬A(c) P (c, d), ¬P (c, d) with c, d constants
horn is a sub-language of SHIQ which is
EXPTIME-complete.
horn KBs can encode the behaviour of
polynomial-space-bounded alternating Turing machines (ATMs).
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 24-a/40
core is EXPTIME-complete
The only difference between DL-LiteR,F
core and DL-LiteR,F horn is the possibility to express
conjunction on the left of axioms in DL-LiteR,F
horn .
Elimination of axioms of the form A1 ⊓ A2 ⊑ C. Define a new KB K′ by replacing this axiom in K with the following set of new axioms, where R1, R2, R3, R12, R23 are fresh role names: A1 ⊑ ∃R1 A2 ⊑ ∃R2, (1) R1 ⊑ R12, R2 ⊑ R12, (2) ≥ 2 R12 ⊑ ⊥, (3) ∃R−
1
⊑ ∃R−
3 ,
(4) ∃R3 ⊑ C, (5) R3 ⊑ R23, R2 ⊑ R23, (6) ≥ 2 R−
23 ⊑ ⊥.
(7)
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 25/40
Definition 1 (Relaxing cardinality constraints) Given a TBox T and a role R ∈ role±(T ), we define the following parameters: ubound(R, T ) = min
R′∈dsubT (R) rank(R′, T )
T R,
for distinct a1, . . . , an}
restrictions on R. (inter2) If R has a proper sub-role in T then ubound(R, T ) ≥ rank(R, T ) + max{1, rank(R, A)}
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 26/40
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 27/40
Desiderata: achieve logical transparency in access to data:
Layer Data Layer Query over conceptual layer Conceptual Ontology
As in Data Integration, but with a rich conceptual description as the global view
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 28/40
We consider positive existential queries—extending UCQs with unrestricted interaction of conjunction and disjunction—over the terms of the ontology: t ::= yi | ai q ::= Ak(t) | Pk(t1, t2) | q1 ∧ q2 | q1 ∨ q2 | ∃yi q Example: q(x) = { x | ∃y, p. Employee(x) ∧ WorksFor(x, p) ∧ Project(p) ∧ Boss(y, x) ∧ Employee(y) ∧ WorksFor(y, p) }
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 29/40
Since we work under the Open World Semantics then Query answering over an
cert(q, O, A) = { t | t ∈ qI for every I ∈ mod(O, A) } i.e., the tuples that are answers to q in all models of the ABox A w.r.t. the ontology O.
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 30/40
Since we work under the Open World Semantics then Query answering over an
cert(q, O, A) = { t | t ∈ qI for every I ∈ mod(O, A) } i.e., the tuples that are answers to q in all models of the ABox A w.r.t. the ontology O. Computing certain answers is a form of logical implication:
iff (O, A) | = q( t)
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 30-a/40
When considering a setting where the size of the data largely dominates the size of the conceptual layer ❀ We look at data complexity When both the size of the ontology and the size of the underlying data are comparable ❀ We look at combined complexity
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 31/40
When considering a setting where the size of the data largely dominates the size of the conceptual layer ❀ We look at data complexity When both the size of the ontology and the size of the underlying data are comparable ❀ We look at combined complexity Basic questions:
(both data and combined complexity) – In particular, for which ontology language can we answer queries to DB sources through an ontology efficiently? (data complexity)
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 31-a/40
hornis in LOGSPACE
Given a positive existential query, q( x), and a DL-LiteN
horn KB, T , then:
answers to all positive existential queries with respect to the DL-LiteN
horn KB, K:
for K‡.
part of I0 the size of which does not depend on the given ABox.
x) = ∃ y ϕ( x, y), we have y = y1, . . . , yk, then, to check whether I0 | = q( a) it suffices to consider only the points of depth ≤ m0 in ∆I0, with m0 = k + |role±(T )|.
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 32/40
hornis in LOGSPACE
this finite part of I0 to the variables x, y, compute the corresponding types (the concepts that contain these elements), and, finally, encode the problem ‘K | = q( a)?’ as a model checking problem for the first-order formula ϕT ,q( x): – ϕT ,q( x) depends on T and q but not on A, – A | = ϕT ,q( a) iff I0 | = q( a).
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 33/40
hornis in LOGSPACE
Formulas ψB(x), for B ∈ Bcon(K), describe the types of the elements of ob(A) in the model I0: A | = ψB[ai] iff aI0
i
∈ BI0, for ai ∈ ob(A) ψ0
B(x) =
A(x), if B = A, EqRT (x), if B = ≥ q R ψi
B(x) = ψ0 B(x) ∨
B1 (x) ∧ · · · ∧ ψi−1 Bk (x)
for i ≥ 1 EqRT (x) = ∃y1 . . . ∃yq
(yi = yj) ∧
R(x, yi)
The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 34/40
hornis in LOGSPACE
Formulas θB,dr, for B ∈ Bcon(K) and dr ∈ dr(T ), describe the types of elements dr(T ) in the model I0: A | = θB,dr iff w ∈ BI0, for w ∈ ∆I0 with cp(w) = dr. For each B ∈ Bcon(K) and each dr ∈ dr(K), we inductively define a sequence θ0
B,dr, θ1 B,dr, . . . by taking:
θ0
B,dr = ⊤, if B = ∃R, and θ0 B,dr = ⊥, otherwise
θi
B,dr = θi−1 B,dr ∨
B1,dr ∧ · · · ∧ θi−1 Bk,dr
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 35/40
hornis in LOGSPACE
path = {(Ri, Rj) | T | = ∃inv(Ri) ⊑ ≥ q Rj} ΣT ,m0 =
tree Ta containing w, and σ is the sequence of roles on the path from aI0 to w. For σ = ǫ s.t. σ = (Ri, . . . ), this formula ensures that path σ exists in I0: ησ(a) =
Ri T
≥q Ri(a)
The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 36/40
hornis in LOGSPACE
Let q( x) = ∃y1, . . . , yk.ϕ( x, y1, . . . , yk), then for every σ ∈ Σk
T ,m0, concept name
A and role name R, we define: A
σ(t) =
ψA(t), if t
σ = ε,
θA,inv(ds), if t
σ = σ′.[S], for some σ′ ∈ ΣT ,m0,
R
σ(t1, t2) =
RT (t1, t2), if t
σ 1 = t σ 2 = ε,
(t1 = t2), if t
σ 1 R
→ t
σ 2 and either t σ 1 = ε or t σ 2 = ε,
⊥,
The first-order rewriting of q( x) is then: ϕT ,q( x) = ∃ y
T ,m0
(ϕ
σ(
x, y) ∧ η
σ(
y))
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 37/40
complexity language combined data satisfiability
query answering DL-Litecore NLOGSPACE ≥ [Log] in LOGSPACE in LOGSPACE DL-LiteF
core
NLOGSPACE in LOGSPACE in LOGSPACE DL-LiteN
core
NLOGSPACE in LOGSPACE in LOGSPACE DL-LiteR
core
NLOGSPACE in LOGSPACE in LOGSPACE DL-LiteR,F
core
EXPTIME ≥ P ≥ P DL-LiteR,N
core
EXPTIME coNP ≥ coNP DL-Litekrom NLOGSPACE in LOGSPACE coNP ≥ [B] DL-LiteF
krom
NLOGSPACE in LOGSPACE coNP DL-LiteN
krom
NLOGSPACE ≤ in LOGSPACE coNP DL-LiteR
krom
NLOGSPACE ≤ in LOGSPACE coNP DL-LiteR,F
krom
EXPTIME coNP ≥ coNP DL-LiteR,N
krom
EXPTIME coNP coNP
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 38/40
complexity language combined data satisfiability
query answering DL-Litehorn P ≥ [Log] in LOGSPACE in LOGSPACE DL-LiteF
horn
P in LOGSPACE in LOGSPACE DL-LiteN
horn
P ≤ in LOGSPACE in LOGSPACE ≤ DL-LiteR
horn
P ≤ in LOGSPACE in LOGSPACE ≤ [C] DL-LiteR,F
horn
EXPTIME P P ≤ [D] DL-LiteR,N
horn
EXPTIME coNP coNP DL-Litebool NP ≥ [Log] in LOGSPACE coNP DL-LiteF
bool
NP in LOGSPACE coNP DL-LiteN
bool
NP ≤ in LOGSPACE ≤ coNP DL-LiteR
bool
NP ≤ in LOGSPACE ≤ coNP DL-LiteR,F
bool
EXPTIME coNP coNP DL-LiteR,N
bool
EXPTIME coNP coNP ≤ [E]
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 39/40
query answering
can be reconciled ❀ DL-Lite-family
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 40/40
query answering
can be reconciled ❀ DL-Lite-family
restrict the attention to finite models only?
LOGSPACE languages that rely on relational database techniques (i.e., SQL).
Alessandro Artale The DL-Lite Family of Languages—TU Dresden 14-15 December 2011 40-a/40