Semantic theories for modal logic within a possible worlds ...
Towards a Semantic Web Unifying Logic...Matthias Knorr - CENTRIA, UNL Towards a Semantic Web...
Transcript of Towards a Semantic Web Unifying Logic...Matthias Knorr - CENTRIA, UNL Towards a Semantic Web...
Towards a Semantic WebUnifying Logic
Matthias Knorr
CENTRIA, Universidade Nova de Lisboa
ICCL Summer School 2013
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
About the Lecturer
• PostDoc at CENTRIA, Universidade Nova de Lisboa (UNL)• One of the partners in the programs EMCL and EPCL• Strong history in Logic Programming• Two ECCAI fellows (Luís M. Pereira and José J. Alferes)
• Research focus: Non-monotonic Reasoning in theSemantic Web; currently in the project ERRO
ERRO. efficient reasoning with rules and ontologies
• More info (including these slides) athttp://centria.di.fct.unl.pt/~mknorr/
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 2/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Recap on Ontologies and Rules
• Towards a Unifying Logic• Building on the contents of
“Ontologies and Rules”• Focusing on
Non-monotonic Extensions
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 3/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Why Non-monotonic Extensions?
Example: matching patients to clinical trial criteria
• Open World Assumption (OWA) in general preferable onthe Web
• Without clinical test, no assumptions can be made onoutcome
• But with complete knowledge, Closed World Assumption(CWA) is better
• Patient’s medication is fully known
• Requirement for local closure of certain information
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 4/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Why Non-monotonic Extensions?
Example: matching patients to clinical trial criteria
• Open World Assumption (OWA) in general preferable onthe Web
• Without clinical test, no assumptions can be made onoutcome
• But with complete knowledge, Closed World Assumption(CWA) is better
• Patient’s medication is fully known
• Requirement for local closure of certain information
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 4/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Why Non-monotonic Extensions?
Example: matching patients to clinical trial criteria
• Open World Assumption (OWA) in general preferable onthe Web
• Without clinical test, no assumptions can be made onoutcome
• But with complete knowledge, Closed World Assumption(CWA) is better
• Patient’s medication is fully known
• Requirement for local closure of certain information
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 4/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Why Non-monotonic Extensions?
Person v HeartLeft tHeartRightHeartLeft uHeartRight v ⊥
Person v ∃has.SpinalColumn∃has.SpinalColumn v V ertebrate
Person(Bob)
⇒ V ertebrate(Bob), Person v V ertebrate, and∃x.SpinalColumn(x) derivable
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 5/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Why Non-monotonic Extensions?
Person v HeartLeft tHeartRightHeartLeft uHeartRight v ⊥
Person v ∃has.SpinalColumn∃has.SpinalColumn v V ertebrate
Person(Bob)
⇒ V ertebrate(Bob), Person v V ertebrate, and∃x.SpinalColumn(x) derivable
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 5/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Why Non-monotonic Extensions?
Person v HeartLeft tHeartRightHeartLeft uHeartRight v ⊥
Person v ∃has.SpinalColumn∃has.SpinalColumn v V ertebrate
Person(Bob)
HeartLeft(x)← V ertebrate(x),notHeartRight(x)SSN_OK(x)← hasSSN(x, y)
f ← Person(x),notSSN_OK(x)
⇒ HeartLeft(Bob); hasSSN(Bob, y) for ground y required
Model defaults and exceptions, and integrity constraints
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 6/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Why Non-monotonic Extensions?
Person v HeartLeft tHeartRightHeartLeft uHeartRight v ⊥
Person v ∃has.SpinalColumn∃has.SpinalColumn v V ertebrate
Person(Bob)
HeartLeft(x)← V ertebrate(x),notHeartRight(x)SSN_OK(x)← hasSSN(x, y)
f ← Person(x),notSSN_OK(x)
⇒ HeartLeft(Bob); hasSSN(Bob, y) for ground y required
Model defaults and exceptions, and integrity constraintsMatthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 6/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Outline
1 Combining non-monotonic rules and DLs2 Top-down querying in such combinations3 Generalized unifying language
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 7/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Combining non-monotonic rulesand DLs
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 8/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Why first focus on Rules?
• Direct non-monotonic extensions exist for DLs, based on,e.g., default logic, epistemic logic, and circumscription
• But non-trivial with few results in terms of implementations• Rules easily extended to non-monotonic features• Well-studied field Logic Programming including fast
reasoners• Leverage the knowledge and reasoners available
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 9/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
How to Combine DLs and Rules?
Non-trivial because of non-monotonicity
• Rules “on top” of ontologies• First define concepts then define rules “on top”• Rules deal with ontologies as external code• Separate semantics for rule and ontology predicates
• Tight (full) integration• Allow for “defining” joint predicates both in the ontology and
the rule layer and use them (almost) freely• Modular combination (loose coupling)
• Trades some expressiveness for an easier to implementinterface integration
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 10/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
How to Combine DLs and Rules?
Non-trivial because of non-monotonicity
• Rules “on top” of ontologies• First define concepts then define rules “on top”• Rules deal with ontologies as external code• Separate semantics for rule and ontology predicates
• Tight (full) integration• Allow for “defining” joint predicates both in the ontology and
the rule layer and use them (almost) freely
• Modular combination (loose coupling)• Trades some expressiveness for an easier to implement
interface integration
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 10/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
How to Combine DLs and Rules?
Non-trivial because of non-monotonicity
• Rules “on top” of ontologies• First define concepts then define rules “on top”• Rules deal with ontologies as external code• Separate semantics for rule and ontology predicates
• Tight (full) integration• Allow for “defining” joint predicates both in the ontology and
the rule layer and use them (almost) freely• Modular combination (loose coupling)
• Trades some expressiveness for an easier to implementinterface integration
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 10/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Hybrid MKNF Knowledge Bases
• Seamless, tight integration; reflexive, expressive, yetcompetitive w.r.t. computational complexity
• Introduced by Motik and Rosati in 2007 (extended in [Motikand Rosati, JACM10])
• Based on Logics of Minimal Knowledge and Negation asFailure by Lifschitz in 1991: first-order logic with equalityand modal operators K and not
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 11/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Hybrid MKNF Knowledge Bases
• Consist of a DL knowledge base O and a finite set of rules,P, of the form
KH1 ∨ . . . ∨KHl ← KA1, . . . ,KAn,notB1, . . . ,notBm
• Hi, Aj , and Bk are generalized atoms - arbitrary first-orderformulas - to capture, e.g., conjunctive queries
KinterestingCity(x )← K(∃y : Has(x , y) ∧ Recreational(y)),notRainyCity(x )
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 12/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Decidability(1)Ensured by two technical restrictions:
1 DL-safety of rules: every variable appears in a positivenon-DL-atom in the body (restriction of application of rulesto known individuals when grounding)
convention: capitalized predicates yield DL-atoms
KinterestingCity(x )← K(∃y : Has(x , y) ∧ Recreational(y)),notRainyCity(x ) ×
KinterestingCity(x )← K(∃y : Has(x , y) ∧ Recreational(y)),notRainyCity(x ), o(x)
+ o(x) for all individuals x appearing in the KB X
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 13/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Decidability(2)Ensured by two technical restrictions:
2 Decidability of DL reasoning in combination withgeneralized atoms; related to the following:
KinterestingCity(x )← K(∃y : Has(x , y) ∧ Recreational(y)),notRainyCity(x ), o(x)
corresponds to
∃Has.Recreational v RecreationalCityKinterestingCity(x )← KRecreationalCity(x ),notRainyCity(x ), o(x)
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 14/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Reasoning – Example(1)
Collect all modal atoms KA in ground hybrid MKNF KB KG andadd KB for each notB in KG – obtain the set KA(KG):
A v B B v F KA(a) Kc(a)← KB(a),notd(a)
• KA(KG) = {KA(a),KB(a),Kc(a),Kd(a)}
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 15/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Reasoning – Example(1)
Collect all modal atoms KA in ground hybrid MKNF KB KG andadd KB for each notB in KG – obtain the set KA(KG):
A v B B v F KA(a) Kc(a)← KB(a),notd(a)
• KA(KG) = {KA(a),KB(a),Kc(a),Kd(a)}
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 15/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Reasoning – Example(2)
Guess a partition (P,N) of the collected set (partition into true(P ) and false (N ) modal atoms) and
1 Check if KG is satisfiable w.r.t. (P,N):
A v B B v F KA(a) Kc(a)← KB(a),notd(a)
• (P1, N1) = ({KA(a),KB(a),Kc(a)}, {Kd(a)}) X
• (P2, N2) = ({KA(a),KB(a),Kc(a),Kd(a)}, ∅) X
• (P3, N3) = ({KA(a),KB(a)}, {Kc(a),Kd(a)}) ×
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 16/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Reasoning – Example(2)
Guess a partition (P,N) of the collected set (partition into true(P ) and false (N ) modal atoms) and
1 Check if KG is satisfiable w.r.t. (P,N):
A v B B v F KA(a) Kc(a)← KB(a),notd(a)
• (P1, N1) = ({KA(a),KB(a),Kc(a)}, {Kd(a)}) X
• (P2, N2) = ({KA(a),KB(a),Kc(a),Kd(a)}, ∅) X
• (P3, N3) = ({KA(a),KB(a)}, {Kc(a),Kd(a)}) ×
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 16/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Reasoning – Example(2)
Guess a partition (P,N) of the collected set (partition into true(P ) and false (N ) modal atoms) and
1 Check if KG is satisfiable w.r.t. (P,N):
A v B B v F KA(a) Kc(a)← KB(a),notd(a)
• (P1, N1) = ({KA(a),KB(a),Kc(a)}, {Kd(a)}) X
• (P2, N2) = ({KA(a),KB(a),Kc(a),Kd(a)}, ∅) X
• (P3, N3) = ({KA(a),KB(a)}, {Kc(a),Kd(a)}) ×
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 16/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Reasoning – Example(2)
Guess a partition (P,N) of the collected set (partition into true(P ) and false (N ) modal atoms) and
1 Check if KG is satisfiable w.r.t. (P,N):
A v B B v F KA(a) Kc(a)← KB(a),notd(a)
• (P1, N1) = ({KA(a),KB(a),Kc(a)}, {Kd(a)}) X
• (P2, N2) = ({KA(a),KB(a),Kc(a),Kd(a)}, ∅) X
• (P3, N3) = ({KA(a),KB(a)}, {Kc(a),Kd(a)}) ×
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 16/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Reasoning – Example(2)
Guess a partition (P,N) of the collected set (partition into true(P ) and false (N ) modal atoms) and
2 Fixing N (used for the evaluation of not), check if P isminimal:
A v B B v F KA(a) Kc(a)← KB(a),notd(a)
• (P1, N1) = ({KA(a),KB(a),Kc(a)}, {Kd(a)}) X
• (P2, N2) = ({KA(a),KB(a),Kc(a),Kd(a)}, ∅) ×
Reasoning on O ∪ P1: KF (a) is also derivable
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 17/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Reasoning – Example(2)
Guess a partition (P,N) of the collected set (partition into true(P ) and false (N ) modal atoms) and
2 Fixing N (used for the evaluation of not), check if P isminimal:
A v B B v F KA(a) Kc(a)← KB(a),notd(a)
• (P1, N1) = ({KA(a),KB(a),Kc(a)}, {Kd(a)}) X
• (P2, N2) = ({KA(a),KB(a),Kc(a),Kd(a)}, ∅) ×
Reasoning on O ∪ P1: KF (a) is also derivable
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 17/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Reasoning – Example(2)
Guess a partition (P,N) of the collected set (partition into true(P ) and false (N ) modal atoms) and
2 Fixing N (used for the evaluation of not), check if P isminimal:
A v B B v F KA(a) Kc(a)← KB(a),notd(a)
• (P1, N1) = ({KA(a),KB(a),Kc(a)}, {Kd(a)}) X
• (P2, N2) = ({KA(a),KB(a),Kc(a),Kd(a)}, ∅) ×
Reasoning on O ∪ P1: KF (a) is also derivable
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 17/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Properties of Hybrid MKNF
• Generalizes/captures (sometimes not entirely) quite anumber of different approaches
• Faithful w.r.t. Stable Models for empty O and w.r.t. OWL forempty P
• Data complexity of instance checking in MKNF:
rules DL = ∅ DL ∈ P DL ∈ coNPdefinite P P coNPstratified P P ∆p
2
normal coNP coNP Πp2
disjunctive Πp2 Πp
2 Πp2
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 18/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Problems of two-valued Hybrid MKNF
• Models have to be guessed and checked• Unrestricted rules increase computational complexity• Queries for particular information require computation of
the entire model• Limited robustness, e.g., w.r.t. merging of KBs
(Ku← notu)
[Knorr et al., AI11] provides alternative based on well-foundedsemantics for non-disjunctive logic programs
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 19/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Stable Models vs. Well-FoundedModel in LP
p← notq q ← notp a← notb b←
has two stable models {p, b} and {q, b}, while the uniquewell-founded model assigns t to b, f to a, and u to both p and q.
For
p← notp q ← notq a← notb b←
the well-founded model is the same, but there are no stablemodels!
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 20/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Stable Models vs. Well-FoundedModel in LP
p← notq q ← notp a← notb b←
has two stable models {p, b} and {q, b}, while the uniquewell-founded model assigns t to b, f to a, and u to both p and q.
For
p← notp q ← notq a← notb b←
the well-founded model is the same, but there are no stablemodels!
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 20/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Stable vs. Well-Founded Semantics inLogic Programming
Stable Models/Answer Sets• More expressive language• More derivable information• Fast ASP solvers available
Well-founded Model• Lower computational complexity• always exists• top-down derivations possible
Similar for combinations of rules and ontologiesMatthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 21/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Well-Founded MKNF semantics
• Restricted to non-disjunctive rules over simple atoms• Partitions divided into true, undefined, and false atoms• Computation of the unique model in a bottom-up fashion
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 22/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Immediate Consequence OperatorDefinitionWe define on subsets S of KA(KG) for ground, positive KG:
RKG(S) ={KH | PG contains a rule of the form
KH ← KA1, . . . ,KAn
such that, for all i, 1 ≤ i ≤ n,KAi ∈ S}
DKG(S) ={Kξ | Kξ ∈ KA(KG) and OBO,S |= ξ}
TKG(S) =RKG
(S) ∪DKG(S)
OBO,S - first-order representation of O and assumed set S
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 23/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Example Iteration TKG
R v SKR(a)←Kq(a)← KS(a)
TK ↑ 0 = ∅TK ↑ 1 = {KR(a)}TK ↑ 2 = {KR(a),KS(a)}TK ↑ 3 = {KR(a),KS(a),Kq(a)}
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 24/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
MKNF Transform
DefinitionLet KG = (O,PG) be a ground hybrid MKNF knowledge baseand S ⊆ KA(KG). The MKNF transform KG/S is defined asKG/S = (O,PG/S), where PG/S contains all rules
KH ← KA1, . . . ,KAn
for which there exists a rule
KH ← KA1, . . . ,KAn,notB1, . . . ,notBm
in PG with KBj 6∈ S for all 1 ≤ j ≤ m.
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 25/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Example Transformation
consider S = {KS(a),KR(a)} (highlighted part is removed):
R v SKR(a)← notR(b)KR(b)←notR(a)Kq(a)← KS(a),notq(a)
Compute least model of the resulting KB:
ΓKG(S) = TKG/S ↑ ω.
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 26/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Coherence
Problem: classical negation from O does not imply defaultnegation in rules
R v ¬SKS(a)← nott(a)Kt(a)← notS(a)
KR(a)←
Operators so far yield undefined for KS(a) and Kt(a)
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 27/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
MKNF-coherent transform
DefinitionLet KG = (O,PG) be a ground hybrid MKNF knowledge baseand S ⊆ KA(KG). The MKNF-coherent transform KG//S isdefined as KG//S = (O,PG//S), where PG//S contains allrules
KH ← KA1, . . . ,KAn
for which there exists a rule
KH ← KA1, . . . ,KAn,notB1, . . . ,notBm
in PG with KBj 6∈ S for all 1 ≤ j ≤ m and OBO,S 6|= ¬H.
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 28/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Example Coherence
MKNF-coherent transform for S = {KR(a)}:
R v ¬SKS(a)← nott(a)Kt(a)← notS(a)
KR(a)←
Compute least model of the resulting KB:
Γ′KG(S) = TKG//S ↑ ω
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 29/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Inconsistencies
R v ¬SKS(a)← nott(a)Kt(a)← notR(a)
KR(a)←
By Γ′KG, we simply derive that KS(a) is false.
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 30/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Alternating Iteration
P0 = ∅ N0 = KA(KG)Pn+1 = ΓKG
(Nn) Nn+1 = Γ′KG(Pn)
Pω =⋃
Pi Nω =⋂
Ni
two fixpoints for (finite) ω:• Pω – everything that is true• Nω – everything that is not false
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 31/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Properties of Well-Founded MKNF
• Sound w.r.t. two-valued MKNF semantics• Faithful w.r.t. first-order semantics for empty P and w.r.t.
the Well-Founded Semantics for empty O• Given complexity C for instance checking in O we obtain a
data complexity PC ; for C =P, polynomial data complexity• Inconsistencies can be detected by a simple additional
computation• Automated computation yields model (if it exists)
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 32/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Summary
• Sophisticated reasoning possible with combinations ofontologies and non-monotonic rules
• MKNF-based framework links information based onderivable information
• Framework itself very general and flexible• Algorithms for fast computation available
What if we do only want to know a small of piece of information?
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 33/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Top-down querying
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 34/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Top-down-Procedure SLG(O)
• SLG(O) [Alferes et al., ACM TOCL13] combines a DLreasoner with the top-down query engine XSB Prolog
• Instead of computing the whole model, only compute thepart relevant for the model
• XSB realizes well-founded semantics in LogicProgramming utilizing tabling (re-using previous results,avoiding infinite loops)
• Special oracle resolves queries to the ontology
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 35/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
DL Oracle
• Builds on derivation relation for O• Returns (possibly empty) set of atoms L (potentially
derivable from the set of rules P) that together with O allowto derive the (ground) queried atom S
• If subsequent queries for atoms in L succeed, then Ssucceeds
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 36/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
MKNF KB ExamplePortCity(Barcelona) OnSea(Barcelona,Mediterranean)PortCity(Hamburg) NonSeaSideCity(Hamburg)
RainyCity(Manchester) Has(Manchester ,AquaticsCenter)Recreational(AquaticsCenter)
SeaSideCity v ∃Has.BeachBeach v Recreational
∃Has.Recreational v RecreationalCityKSeaSideCity(x )← KPortCity(x ),notNonSeaSideCity(x )
KinterestingCity(x )← KRecreationalCity(x ),notRainyCity(x )KhasOnSea(x )← KOnSea(x , y)
Kfalse ← KSeaSideCity(x ),nothasOnSea(x )KsummerDestination(x )← KinterestingCity(x ),KOnSea(x , y)
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 37/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Barcelona
Interesting?
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 38/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
MKNF KB Example Query(1)PortCity(Barcelona) OnSea(Barcelona,Mediterranean)
PortCity(Hamburg) NonSeaSideCity(Hamburg)
RainyCity(Manchester) Has(Manchester ,AquaticsCenter)
Recreational(AquaticsCenter)
SeaSideCity v ∃Has.Beach
Beach v Recreational
∃Has.Recreational v RecreationalCity
KSeaSideCity(x )← KPortCity(x ),notNonSeaSideCity(x )
KinterestingCity(x )← KRecreationalCity(x ),notRainyCity(x )
KhasOnSea(x )← KOnSea(x , y)
Kfalse ← KSeaSideCity(x ),nothasOnSea(x )
KsummerDestination(x )← KinterestingCity(x ),KOnSea(x , y)
Query: KinterestingCity(Barcelona)
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 39/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
MKNF KB Example Query(2)PortCity(Barcelona) OnSea(Barcelona,Mediterranean)
PortCity(Hamburg) NonSeaSideCity(Hamburg)
RainyCity(Manchester) Has(Manchester ,AquaticsCenter)
Recreational(AquaticsCenter)
SeaSideCity v ∃Has.Beach
Beach v Recreational
∃Has.Recreationalv RecreationalCity
KSeaSideCity(x )← KPortCity(x ),notNonSeaSideCity(x )
KinterestingCity(x )← KRecreationalCity(x ),notRainyCity(x )
KhasOnSea(x )← KOnSea(x , y)
Kfalse ← KSeaSideCity(x ),nothasOnSea(x )
KsummerDestination(x )← KinterestingCity(x ),KOnSea(x , y)
Subquery: KRecreationalCity(Barcelona)Has(Barcelona, x ),Recreational(x ) would fail
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 40/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
MKNF KB Example Query(3)PortCity(Barcelona) OnSea(Barcelona,Mediterranean)
PortCity(Hamburg) NonSeaSideCity(Hamburg)
RainyCity(Manchester) Has(Manchester ,AquaticsCenter)
Recreational(AquaticsCenter)
SeaSideCityv ∃Has.Beach
Beachv Recreational
∃Has.Recreationalv RecreationalCity
KSeaSideCity(x )← KPortCity(x ),notNonSeaSideCity(x )
KinterestingCity(x )← KRecreationalCity(x ),notRainyCity(x )
KhasOnSea(x )← KOnSea(x , y)
Kfalse ← KSeaSideCity(x ),nothasOnSea(x )
KsummerDestination(x )← KinterestingCity(x ),KOnSea(x , y)
Subquery: KRecreationalCity(Barcelona)
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 41/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
MKNF KB Example Query(4)PortCity(Barcelona) OnSea(Barcelona,Mediterranean)
PortCity(Hamburg) NonSeaSideCity(Hamburg)
RainyCity(Manchester) Has(Manchester ,AquaticsCenter)
Recreational(AquaticsCenter)
SeaSideCityv ∃Has.Beach
Beachv Recreational
∃Has.Recreationalv RecreationalCity
KSeaSideCity(x )← KPortCity(x ),notNonSeaSideCity(x )
KinterestingCity(x )← KRecreationalCity(x ),notRainyCity(x )
KhasOnSea(x )← KOnSea(x , y)
Kfalse ← KSeaSideCity(x ),nothasOnSea(x )
KsummerDestination(x )← KinterestingCity(x ),KOnSea(x , y)
Subquery: KSeaSideCity(Barcelona)
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 42/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
MKNF KB Example Query(5)PortCity(Barcelona) OnSea(Barcelona,Mediterranean)
PortCity(Hamburg) NonSeaSideCity(Hamburg)
RainyCity(Manchester) Has(Manchester ,AquaticsCenter)
Recreational(AquaticsCenter)
SeaSideCityv ∃Has.Beach
Beachv Recreational
∃Has.Recreationalv RecreationalCity
KSeaSideCity(x )← KPortCity(x ),notNonSeaSideCity(x )
KinterestingCity(x )← KRecreationalCity(x ),notRainyCity(x )
KhasOnSea(x )← KOnSea(x , y)
Kfalse ← KSeaSideCity(x ),nothasOnSea(x )
KsummerDestination(x )← KinterestingCity(x ),KOnSea(x , y)
Subquery: KPortCity(Barcelona) succeeds
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 43/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
MKNF KB Example Query(6)PortCity(Barcelona) OnSea(Barcelona,Mediterranean)
PortCity(Hamburg) NonSeaSideCity(Hamburg)
RainyCity(Manchester) Has(Manchester ,AquaticsCenter)
Recreational(AquaticsCenter)
SeaSideCityv ∃Has.Beach
Beachv Recreational
∃Has.Recreationalv RecreationalCity
KSeaSideCity(x )←KPortCity(x ),notNonSeaSideCity(x)
KinterestingCity(x )← KRecreationalCity(x ),notRainyCity(x )
KhasOnSea(x )← KOnSea(x , y)
Kfalse ← KSeaSideCity(x ),nothasOnSea(x )
KsummerDestination(x )← KinterestingCity(x ),KOnSea(x , y)
Subquery: KNonSeaSideCity(Barcelona) fails
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 44/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
MKNF KB Example Query(7)PortCity(Barcelona) OnSea(Barcelona,Mediterranean)
PortCity(Hamburg) NonSeaSideCity(Hamburg)
RainyCity(Manchester) Has(Manchester ,AquaticsCenter)
Recreational(AquaticsCenter)
SeaSideCityv ∃Has.Beach
Beachv Recreational
∃Has.Recreationalv RecreationalCity
KSeaSideCity(x )← KPortCity(x ),notNonSeaSideCity(x )
KinterestingCity(x )← KRecreationalCity(x ),notRainyCity(x )
KhasOnSea(x )← KOnSea(x , y)
Kfalse ← KSeaSideCity(x ),nothasOnSea(x )
KsummerDestination(x )← KinterestingCity(x ),KOnSea(x , y)
notNonSeaSideCity(Barcelona) and KSeaSideCity(Barcelona)succeed and subsequently KRecreationalCity(Barcelona)
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 45/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
MKNF KB Example Query(8)PortCity(Barcelona) OnSea(Barcelona,Mediterranean)
PortCity(Hamburg) NonSeaSideCity(Hamburg)
RainyCity(Manchester) Has(Manchester ,AquaticsCenter)
Recreational(AquaticsCenter)
SeaSideCityv ∃Has.Beach
Beachv Recreational
∃Has.Recreationalv RecreationalCity
KSeaSideCity(x )← KPortCity(x ),notNonSeaSideCity(x )
KinterestingCity(x )←KRecreationalCity(x ),notRainyCity(x)
KhasOnSea(x )← KOnSea(x , y)
Kfalse ← KSeaSideCity(x ),nothasOnSea(x )
KsummerDestination(x )← KinterestingCity(x ),KOnSea(x , y)
Subquery: KRainyCity(Barcelona) fails
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 46/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
MKNF KB Example Query(9)PortCity(Barcelona) OnSea(Barcelona,Mediterranean)
PortCity(Hamburg) NonSeaSideCity(Hamburg)
RainyCity(Manchester) Has(Manchester ,AquaticsCenter)
Recreational(AquaticsCenter)
SeaSideCityv ∃Has.Beach
Beachv Recreational
∃Has.Recreationalv RecreationalCity
KSeaSideCity(x )← KPortCity(x ),notNonSeaSideCity(x )
KinterestingCity(x )←KRecreationalCity(x ),notRainyCity(x)
KhasOnSea(x )← KOnSea(x , y)
Kfalse ← KSeaSideCity(x ),nothasOnSea(x )
KsummerDestination(x )← KinterestingCity(x ),KOnSea(x , y)
Main query: KInterestingCity(Barcelona) succeeds
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 47/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
MKNF KB Example Query(10)PortCity(Barcelona) OnSea(Barcelona,Mediterranean)
PortCity(Hamburg) NonSeaSideCity(Hamburg)
RainyCity(Manchester) Has(Manchester ,AquaticsCenter)
Recreational(AquaticsCenter)
SeaSideCity v ∃Has.Beach
Beach v Recreational
∃Has.Recreational v RecreationalCity
KSeaSideCity(x )← KPortCity(x ),notNonSeaSideCity(x )
KinterestingCity(x )← KRecreationalCity(x ),notRainyCity(x )
KhasOnSea(x )← KOnSea(x , y)
Kfalse ← KSeaSideCity(x ),nothasOnSea(x )
KsummerDestination(x )← KinterestingCity(x ),KOnSea(x , y)
KinterestingCity(Barcelona) is storedsubsequently two look-ups yield summerDestination(Barcelona)
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 48/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
General Properties of SLG(O)
• Answers match the well-founded MKNF model if it exists• Otherwise, for consistent O, answers match a
paraconsistent approximation• Data complexity PC maintained (C complexity of instance
checking in O) provided the number of answers returnedfrom the oracle is polynomial
• three polynomial oracles, one for each OWL 2 profile
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 49/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Reasoner NoHR for OWL 2 EL
• first non-monotonic plug-in for the ontology editor Protégé• presented in [Vadim et al., ISWC13]• unlike OWL reasoners (such as ELK, Fact, Hermit, Racer)
that focus on DL reasoning tasks, realizes top-downquerying on ontologies and non-monotonic rules
• answers (safe) conjunctive queries, returning answer tuplesfor non-ground queries or true/undefined/false/inconsistent
• https://code.google.com/p/nohr-reasoner/
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 50/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
NoHR Protégé plug-in
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 51/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Pre-processing Algorithm
• Compute implicit inferences using ELK reasoner• Discard axioms/information not usable when querying,
such asSeaSideCity v ∃Has.Beach
• Translate the remainder into rules and merge withnon-monotonic rules (applying to both a special doubling incase DisjointWith axioms occur in O, to detect potentialinconsistencies)
• Input the result to XSB Prolog
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 52/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
NoHR Architecture
XSBJava Virtual MachineProtégé
NoHR Plugin
GUI
ELK
Query Processor
InterProlog
NoHR Rules Tab
OWL File
NM RulesFile
XSB Knowledge
Base
Query Answering
Tables
Tracer/Debugger
NoHR Query Tab
Translator
Ontology
NM Rules
ProtégéOntology
NM Rules Base
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 53/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Test Translation ontologies
! # Axioms! ELK! Translator! XSB! Total!ChEBI! 67184! 3,92! 7,41! 1,75! 9,16!EMAP! 13730! 2,94! 5,14! 0,00! 5,14!Fly Anatomy! 19211! 2,70! 4,99! 0,83! 5,82!FMA! 126548! 7,56! 14,67! 3,58! 18,25!GALEN-OWL! 36547! 5,00! 8,76! 2,46! 11,22!GALEN7! 44461! 5,88! 9,67! 4,56! 14,23!GALEN8! 73590! 21,90! 42,76! 28,12! 70,88!GO1! 28897! 3,74! 6,06! 1,09! 7,15!GO2! 73590! 4,57! 8,90! 5,02! 13,92!Molecule Role! 9629! 3,41! 5,14! 0,15! 5,29!SNOMED CT! 294480! 20,61! 43,32! 24,69! 68,01!
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 54/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Test Translation SNOMED CT withRules
0!
10!
20!
30!
40!
50!
60!
0! 44! 88! 132! 176! 220! 264! 308! 352! 396! 440!
Tim
e (s
)!
NM Rules + Facts (×1000)!
ELK!Translator!XSB!
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 55/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Query Time
• Queries of varying size, containing atoms of different depthin the ontology hierarchy with varying number ofspecialized classes, and differing connectivity betweenvariables posed to real ontologies with added rules
• Interactive response time usually considerably below asecond; only higher if the number of answers (e.g., due tomany subclasses of a queried atom) grows very high, orarbitrarily generated answers create too links, essentiallycomputing the entire model in the worst case
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 56/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Summary
• Top-down querying over ontologies and non-monotonicrules (under well-founded MKNF) can be efficientlyimplemented
• NoHR for OWL 2 EL under active development• current challenge: realize use-cases, develop KBs• try it out at: https://code.google.com/p/nohr-reasoner/
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 57/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Generalized unifying language
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 58/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Non-monotonic DL Extension withMKNF
ALCKNF [Donini et al., ACM TOCL02]
ALC with MKNF logic-style modal operators K – minimalknowledge – and A – autoepistemic assumption (correspondsto ¬not)
K can be used to derive new information, A to verify ifinformation is already known
Different expressiveness compared to Hybrid MKNF
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 59/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Non-monotonic Features of ALCKNFfrom [Donini et al., ACM TOCL02]
• Defaults:
KI uK(employee u ∃belongsTo.programmingDept)u¬Amanager v K(engineer tmathematican)
• Integrity Constraints:
Kemployee v (Amale tAfemale)
Kemployee v ∃ASSN.Avalid
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 60/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Non-monotonic Features of ALCKNF
• Concept and Role Closure
¬UScitizen(Paula) Manages(Ann,Marc)¬UScitizen(Carl) UScitizen(Marc)
adding (∀KManages.KUScitizen)(Ann) closes the role
adding ∃KManages.A¬UScitizen(Ann) closes theconcept
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 61/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Can We find a joint formalism for bothMKNF extensions?
• Contribute towards a unifying logic• Reconcile OWL and Datalog together with CWA extensions
(on both sides)• Usage of one (DL-style) syntax in opposite to common
hybrid languages• Coverage of many different previous approaches
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 62/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
SROIQV(Bs,×)KNF
• OWL 2 DL (SROIQ) with concept products (× - [Krötzsch,SSW10]) and Boolean constructors over simple roles (Bs -[Rudolph et al., JELIA08])
• Nominal schemas (V - [Krötzsch et al., WWW11]) - variablenominals that can only bind to known individuals
• MKNF logic-style modal operators K – minimal knowledge– and A – autoepistemic assumption – (KNF - fromALCKNF [Donini et al., ACM TOCL02])
• SROIQVK for short
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 63/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Syntaxsignature Σ = 〈NI , NC , NR, NV 〉
DefinitionThe set of SROIQV(Bs,×)KNF concepts C and(simple/non-simple) SROIQV(Bs,×)KNF roles R (Rs/Rn) aredefined by the following grammar.
Rs ::=N sR | (N s
R)− | U | NC ×NC | ¬Rs | Rs u Rs | Rs t Rs |KRs | ARs
Rn ::=NnR | (Nn
R)− | U | NC ×NC | KRn | ARn
R ::=Rs | Rn
C ::=> | ⊥ | NC | {NI} | {NV } | ¬C | C u C | C t C |∃R.C | ∀R.C | ∃Rs.Self | 6k Rs.C | >k Rs.C | KC | AC
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 64/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Semantics – Principal Notions
• Based on interpretations I = (∆I , ·I) plus variableassignments (for nominal variables) mapping each variableto the interpretation of one element in NI
• Variant of Standard Name Assumption applied: essentiallyI is a bijective function on NI while still allowing thatelements of NI may be identified (→ only one ∆)
An MKNF structure is a triple (I,M,N ) where I is aninterpretation,M and N are sets of interpretations, and I andall interpretations inM and N are defined over ∆. For any such(I,M,N ) and assignment Z, the function ·(I,M,N ),Z is defined.
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 65/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Function ·(I,M,N ),Z (parts of it)
Syntax Semanticsa aI ∈ ∆x Z(x) ∈ ∆
¬C ∆ \ C(I,M,N ),Z
{t} {a | a ≈ t(I,M,N ),Z}KC
⋂J∈MC(J ,M,N ),Z
AC⋂J∈N C
(J ,M,N ),Z
KR⋂J∈MR(J ,M,N ),Z
AR⋂J∈N R
(J ,M,N ),Z
C v D C(I,M,N ),Z ⊆ D(I,M,N ),Z
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 66/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
(Monotonic) Semantics
Definition(I,M,N ) satisfies axiom α, written (I,M,N ) |= α, if(I,M,N ),Z |= α for all variable assignments Z.
A (non-empty) set of interpretationsM satisfies α, writtenM |= α, if (I,M,M) |= α holds for all I ∈ M.
M satisfies a SROIQV(Bs,×)KNF knowledge base KB,writtenM |= KB, ifM |= α for all axioms α ∈ KB.
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 67/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
(Non-monotonic) Semantics
DefinitionGiven a SROIQV(Bs,×)KNF knowledge base KB, a(non-empty) set of interpretationsM is an MKNF model of KBif(1) M |= KB, and(2) for eachM′ withM⊂M′, (I ′,M′,M) 6|= KB for someI ′ ∈M′.
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 68/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Example
C Persons whose parents are married
HasParent(mary, john) (1)(∃HasParent.∃Married.{john})(mary) (2)
∃HasParent.{z} u ∃HasParent.∃Married.{z} v C (3)
We can substitute (3) by
K∃HasParent.{z} uK∃HasParent.∃Married.{z} v KC
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 69/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Example
C Persons whose parents are married
HasParent(mary, john) (1)(∃HasParent.∃Married.{john})(mary) (2)
∃HasParent.{z} u ∃HasParent.∃Married.{z} v C (3)
We can substitute (3) by
K∃HasParent.{z} uK∃HasParent.∃Married.{z} v KC
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 69/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Example
C Persons whose parents are married
HasParent(mary, john) (1)(∃HasParent.∃Married.{john})(mary) (2)
∃HasParent.{z} u ∃HasParent.∃Married.{z} v C (3)
We can also substitute (3) by
K∃HasParent.{z} uK∃HasParent.∃Married.{z} v AC
We now require that all elements of class C are explicitlymentioned
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 70/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Example
C Persons whose parents are married
HasParent(mary, john) (1)(∃HasParent.∃Married.{john})(mary) (2)
∃HasParent.{z} u ∃HasParent.∃Married.{z} v C (3)
We can also substitute (3) by
∃HasParent.{z} u ∃HasParent.∃¬AMarried.{z} v C
Now C are Persons that are known to be not married
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 71/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Decidability
• First, reduce reasoning in SROIQV(Bs,×)KNF toreasoning in SROIQ(Bs)KNF by grounding and bysimulating concept products
• Then, follow approach for ALCKNK:• each model of a knowledge base in SROIQ(Bs)KNF is
cast into a SROIQ(Bs) KB. Consequently, reasoning inSROIQ(Bs)KNF is reduced to a number of reasoningtasks in the non-modal SROIQ(Bs)
• For simplicity, appearance of modal operators restricted tosimple KBs as in ALCKNF (finitely many, finiterepresentations of models)
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 72/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
(Monotonic) Coverage
• SROIQ (a.k.a. OWL 2 DL);• The tractable profiles OWL 2 EL, OWL 2 RL, OWL 2 QL;• RIF-Core, i.e., n-ary Datalog, interpreted as DL-safe Rules
(general case new result in [Knorr et al., ECAI12]);• DL-safe SWRL [Motik et al., JWS05], AL-log [Donini et al.,
JIIS98], and CARIN [Levy and Rousset, AI98].
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 73/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
(Non-monotonic) Coverage
• ALCKNF [Donini et al., ACM TOCL02]; includes notions ofconcept and role closure present in this formalism;
• Closed Reiter defaults covered through the coverage ofALCKNF ; includes coverage of DLs extended with defaultrules [Baader and Hollunder, JAR95];
• Hybrid MKNF [Motik and Rosati, JACM10];• Answer Set Programming, i.e., disjunctive Datalog with
classical negation and non-monotonic negation under theanswer set semantics; follows from the coverage of HybridMKNF.
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 74/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
N -nary DatalogNR = NP,2 ∪ {U} ∪ S, where S is a special set of roles: IfP ∈ NP,>2 has arity k, then P1, . . . , Pk ∈ S are unique binarypredicates associated with P ;
Translation: dl(P (t1, . . . , tk)) := ∃U.(∃P1.{t1} u . . . u ∃Pk.{tk});
Family of interpretations of J for interpretation I of Datalog RB:
(a) To each (d1, . . . , dk) ∈ P I , assign a unique element e in ∆(i.e., we define a total, injective function from the set oftuples to ∆).
(d) For each P ∈ NP,>2, if (d1, . . . , dk) ∈ P I , then (e, di) ∈ PJi ,where e is the element assigned to (d1, . . . , dk) in point (a).
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 75/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Hybrid MKNF
Seamless integration of DL ontology O and rules of the form
KH1 ∨KHl ← KA1, . . . ,KAn,notB1, . . . ,notBm
Based on the n-nary Datalog embedding, additionally:
dl(KH1 ∨KHl ← KA1, . . . ,KAn,notB1, . . . ,notBm) :=Kdl(A1) u . . . uKdl(An) u ¬Adl(B1) u . . . u ¬Adl(Bm)v Kdl(H1) t . . . tKdl(Hl)
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 76/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Example
KC(x)←KHasParent(x, y),KHasParent(x, z),K(y 6≈ z),notMarried(y, z).
can be translated into
K∃U.({x} u ∃HasParent.{y}) uK∃U.({x} u∃HasParent.{z}) uK∃U.({y} u ∃ 6≈ .{z}) u ¬A∃U.({y} u∃Married.{z}) v K∃U.({x} u C)
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 77/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
Summary
• Very expressive and general language with an advancedsemantics
• Large coverage makes it an interesting candidate for aunifying logic
• challenges• Improve reasoning algorithms• Find non-trivial fragments within the full language
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 78/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
The End
Thank you for your attention!
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 79/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
References(1)
• Description logics of minimal knowledge and negation asfailure. Francesco M. Donini, Daniele Nardi, and RiccardoRosati, ACM TOCL, 3(2), 2002, 227–252.
• Reconciling Description Logics and Rules. Boris Motik andRiccardo Rosati, Journal of the ACM, 57(5), 2010, 1–62.
• Local closed world reasoning with description logics underthe well-founded semantics. Matthias Knorr, José J.Alferes, and Pascal Hitzler, Artificial Intelligence,175(9-10), 2011, 1528–1544.
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 80/81
Combining non-monotonic rules and DLsTop-down querying
Generalized unifying language
References(2)
• Reconciling OWL and non-monotonic rules for theSemantic Web. Matthias Knorr, Pascal Hitzler, andFrederick Maier, ECAI 2012, 474–479.
• Query-driven procedures for hybrid MKNF knowledgebases. José J. Alferes, Matthias Knorr, and Terrance Swift,ACM TOCL, 14(2), 2013, 1–43.
• A query tool for EL with non-monotonic rules. VadimIvanov, Matthias Knorr, and João Leite, ISWC 13, toappear.
Matthias Knorr - CENTRIA, UNL Towards a Semantic Web Unifying Logic 81/81