Explanations for
DL-Lite
Alexander Borgida 2
Diego Calvanese 1
Mariano Rodríguez-Muro 1
1
1 Free University of Bozen Bolzano
2 Rutgers University
ODBASE 08 - Monterrey, México
Thursday, August 8, 13
Outline
• Explanations
• DL-Lite and Explanations for DL-Lite
• Explanations for traditional services
• Explanations for conjunctive queries
• Conclusions and future work
2 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
Explanations
Why explanations?
What are explanations?
• Explanations are formal proofs, constructed
from premises using rules of inference.
3 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
Explanations
Why explanations?
What are explanations?
• Explanations are formal proofs, constructed
from premises using rules of inference.
3
Features of an explanation:
ODBASE 08 - Monterrey, México
Thursday, August 8, 13
Explanations
Why explanations?
What are explanations?
• Explanations are formal proofs, constructed
from premises using rules of inference.
3
Features of an explanation:
• Style
• Length
• Presentation
ODBASE 08 - Monterrey, México
Thursday, August 8, 13
B C
A
D
Concept Subsumption
• Hierarchy Traversing
A ⊑ D ⊓ C
A ⊑ C
A ⊑ B
B ⊑ D
8 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
B C
A
D
Concept Subsumption
• Hierarchy Traversing
A ⊑ D ⊓ C
A ⊑ C
A ⊑ B
B ⊑ D
• Minimal size explanations
8 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
KB is inconsistent
11
1. PhD ⊑ Student
2. disjoint(Professor, Student)
3. range(supervisedBy) ⊑ Professor
4. PhD(al)
5. supevisedBy(tim, al)
ODBASE 08 - Monterrey, México
Thursday, August 8, 13
KB is inconsistent
11
1. PhD ⊑ Student
2. disjoint(Professor, Student)
3. range(supervisedBy) ⊑ Professor
4. PhD(al)
5. supevisedBy(tim, al)
al is a Student
al is a Professor
no Student can be a Professor ➔ 2
ODBASE 08 - Monterrey, México
Thursday, August 8, 13
KB is inconsistent
11
1. PhD ⊑ Student
2. disjoint(Professor, Student)
3. range(supervisedBy) ⊑ Professor
4. PhD(al)
5. supevisedBy(tim, al)
al is a Student
!every PhD is also a Student ➔ 1
!al is a PhD ➔ 4
al is a Professor
no Student can be a Professor ➔ 2
ODBASE 08 - Monterrey, México
Thursday, August 8, 13
KB is inconsistent
11
1. PhD ⊑ Student
2. disjoint(Professor, Student)
3. range(supervisedBy) ⊑ Professor
4. PhD(al)
5. supevisedBy(tim, al)
al is a Student
!every PhD is also a Student ➔ 1
!al is a PhD ➔ 4
al is a Professor
everything in the range of supervisedBy is also
a Professor ➔ 3
al is in range of supervisedBy
no Student can be a Professor ➔ 2
ODBASE 08 - Monterrey, México
Thursday, August 8, 13
KB is inconsistent
11
1. PhD ⊑ Student
2. disjoint(Professor, Student)
3. range(supervisedBy) ⊑ Professor
4. PhD(al)
5. supevisedBy(tim, al)
al is a Student
!every PhD is also a Student ➔ 1
!al is a PhD ➔ 4
al is a Professor
everything in the range of supervisedBy is also
a Professor ➔ 3
al is in range of supervisedBy
tim supervisedBy al ➔ 5
no Student can be a Professor ➔ 2
ODBASE 08 - Monterrey, México
Thursday, August 8, 13
al supervisedBy @1!!
1.PhD ⊑ Student
2.PhD ⊑ dom(supervisedBy)
3.range(supervisedBy) ⊑ Professor
4.Professor ⊑ domain(teaches)
5.PhD(al)
@1 teaches @2
al is a Student
q(x) :- Student(x), supervisedBy(x,y),
teaches(y,z)
q(al)
14 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
al supervisedBy @1!!
1.PhD ⊑ Student
2.PhD ⊑ dom(supervisedBy)
3.range(supervisedBy) ⊑ Professor
4.Professor ⊑ domain(teaches)
5.PhD(al)
@1 teaches @2
al is a Student
every PhD is also a Student ➔ 1
al is a PhD ➔ 5
q(x) :- Student(x), supervisedBy(x,y),
teaches(y,z)
q(al)
14 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
al supervisedBy @1!!
al is in the domain of supervisedBy
1.PhD ⊑ Student
2.PhD ⊑ dom(supervisedBy)
3.range(supervisedBy) ⊑ Professor
4.Professor ⊑ domain(teaches)
5.PhD(al)
@1 teaches @2
al is a Student
every PhD is also a Student ➔ 1
al is a PhD ➔ 5
q(x) :- Student(x), supervisedBy(x,y),
teaches(y,z)
q(al)
14 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
al supervisedBy @1!!
al is in the domain of supervisedBy
every PhD is also in the domain of supervisedBy ➔ 2
al is a PhD ➔ 5
1.PhD ⊑ Student
2.PhD ⊑ dom(supervisedBy)
3.range(supervisedBy) ⊑ Professor
4.Professor ⊑ domain(teaches)
5.PhD(al)
@1 teaches @2
al is a Student
every PhD is also a Student ➔ 1
al is a PhD ➔ 5
q(x) :- Student(x), supervisedBy(x,y),
teaches(y,z)
q(al)
14 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
al supervisedBy @1!!
al is in the domain of supervisedBy
every PhD is also in the domain of supervisedBy ➔ 2
al is a PhD ➔ 5
1.PhD ⊑ Student
2.PhD ⊑ dom(supervisedBy)
3.range(supervisedBy) ⊑ Professor
4.Professor ⊑ domain(teaches)
5.PhD(al)
@1 teaches @2
every Professor is in the domain of teaches ➔ 4
@1 is a Professor
al is a Student
every PhD is also a Student ➔ 1
al is a PhD ➔ 5
q(x) :- Student(x), supervisedBy(x,y),
teaches(y,z)
q(al)
14 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
al supervisedBy @1!!
al is in the domain of supervisedBy
every PhD is also in the domain of supervisedBy ➔ 2
al is a PhD ➔ 5
1.PhD ⊑ Student
2.PhD ⊑ dom(supervisedBy)
3.range(supervisedBy) ⊑ Professor
4.Professor ⊑ domain(teaches)
5.PhD(al)
@1 teaches @2
every Professor is in the domain of teaches ➔ 4
@1 is a Professor
@1 is in the range of supervisedBy
everything in the range of supervisedBy is a
Professor ➔ 3
al is a Student
every PhD is also a Student ➔ 1
al is a PhD ➔ 5
q(x) :- Student(x), supervisedBy(x,y),
teaches(y,z)
q(al)
14 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
al supervisedBy @1!!
al is in the domain of supervisedBy
every PhD is also in the domain of supervisedBy ➔ 2
al is a PhD ➔ 5
1.PhD ⊑ Student
2.PhD ⊑ dom(supervisedBy)
3.range(supervisedBy) ⊑ Professor
4.Professor ⊑ domain(teaches)
5.PhD(al)
@1 teaches @2
every Professor is in the domain of teaches ➔ 4
@1 is a Professor
@1 is in the range of supervisedBy
everything in the range of supervisedBy is a
Professor ➔ 3
al is a Student
every PhD is also a Student ➔ 1
al is a PhD ➔ 5
q(x) :- Student(x), supervisedBy(x,y),
teaches(y,z)
q(al)
14 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
Query Answering
• Successful queries
• Failed queries
• Due to missing information
15 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
Query Answering
• Successful queries
• Failed queries
• Due to missing information
• Due to unsatisfiability
15 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
@1 is a Professor
@1 is a Student
1.PhD ⊑ Student
2.range(supervisedBy) ⊑ Professor
3.disjoint(Professor,Student)
q(x):- PhD(x), supervisedBy(y, x)
q inconsistent
q(@1) :- PhD(@1), supervisedBy(@2, @1)
no Student can be a Professor ➔ 3
16 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
@1 is a Professor
@1 is a Student
@1 is a PhD
every PhD is also a Student ➔ 1
1.PhD ⊑ Student
2.range(supervisedBy) ⊑ Professor
3.disjoint(Professor,Student)
q(x):- PhD(x), supervisedBy(y, x)
q inconsistent
q(@1) :- PhD(@1), supervisedBy(@2, @1)
no Student can be a Professor ➔ 3
16 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
@1 is a Professor
@1 is a Student
@1 is a PhD
every PhD is also a Student ➔ 1
1.PhD ⊑ Student
2.range(supervisedBy) ⊑ Professor
3.disjoint(Professor,Student)
q(x):- PhD(x), supervisedBy(y, x)
q inconsistent
q(@1) :- PhD(@1), supervisedBy(@2, @1)
no Student can be a Professor ➔ 3
16 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
@1 is a Professor
@2 supervisedBy @1
everything in the range of supervisedBy is a Professor ➔ 2
@1 is a Student
@1 is a PhD
every PhD is also a Student ➔ 1
1.PhD ⊑ Student
2.range(supervisedBy) ⊑ Professor
3.disjoint(Professor,Student)
q(x):- PhD(x), supervisedBy(y, x)
q inconsistent
q(@1) :- PhD(@1), supervisedBy(@2, @1)
no Student can be a Professor ➔ 3
16 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
@1 is a Professor
@2 supervisedBy @1
everything in the range of supervisedBy is a Professor ➔ 2
@1 is a Student
@1 is a PhD
every PhD is also a Student ➔ 1
1.PhD ⊑ Student
2.range(supervisedBy) ⊑ Professor
3.disjoint(Professor,Student)
q(x):- PhD(x), supervisedBy(y, x)
q inconsistent
q(@1) :- PhD(@1), supervisedBy(@2, @1)
no Student can be a Professor ➔ 3
16 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
Conclusions
• We addressed DL-Lite explanations can be given for
traditional reasoning services (shortness of proof).
• Finite model case.
• Explaining conjunctive queries when reasoning is
present by a) exploiting existing DL-Lite query
rewriting algorithm and b) Prolog-based program.
• We looked into the problem of explaining failed
answers to queries.
17 ODBASE 08 - Monterrey, México
Thursday, August 8, 13
Future Work
• Explanation of failed answers to CQs over
DL-Lite ontologies.
• Integration of prototype with the QuOnto
Reasoner.
• Explanation in Ontology Based Data Access
(presence of mappings).
• Field testing of the algorithms.
18 ODBASE 08 - Monterrey, México
Thursday, August 8, 13