fabian m. suchanekppswr 2006 - automated reasoning support for fol ontologies 1 presented at the 4...

37
PPSWR 2006 - Automated Reasoning Support for FOL Onto logies 1 Fabian M. Suchanek presented at the 4 th Workshop on Principles and Practice of Semantic Web Reasoning (PPSWR 2006) Peter Baumgartner (National ICT Australia, Canberra/Australia) Fabian M. Suchanek (Max-Planck-Institute for CS, Saarbruecken/Germany) Automated Reasoning Support for First-Order Ontologies

Upload: hugo-reeves

Post on 18-Jan-2018

215 views

Category:

Documents


0 download

DESCRIPTION

Fabian M. SuchanekPPSWR Automated Reasoning Support for FOL Ontologies 3 Model Computation Ontology (set of FOL formulae) Model (set of derivable facts)  x singer(x) => sings(x) singer(elvis) sings(elvis). singer(elvis).

TRANSCRIPT

Page 1: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1Fabian M. Suchanek

presented at the4th Workshop on Principles and Practice

of Semantic Web Reasoning (PPSWR 2006)

Peter Baumgartner (National ICT Australia, Canberra/Australia)

Fabian M. Suchanek (Max-Planck-Institute for CS, Saarbruecken/Germany)

Automated Reasoning Support

for First-Order Ontologies

Page 2: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 2Fabian M. Suchanek

Automated Reasoning Support for FOLOs

Motivation ر

Our Transformation from FOL to DLPs ر

Existentially Quantified Formulae ر

Equality ر

Conclusion ر

Page 3: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 3Fabian M. Suchanek

Model Computation

Ontology (set of FOL formulae)

Model (set of derivable facts)

x singer(x) => sings(x)

singer(elvis)

sings(elvis).

singer(elvis).

Page 4: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 4Fabian M. Suchanek

Use of Model Computation

Model computation can be used for:

Finding contradictions in the ontology ر

(there is a model only iff the ontology is consistent)

Debugging the ontology ر

Proving/disproving conjectures ر

Page 5: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 5Fabian M. Suchanek

Undecidability of Model Computation

Model Computation is only semi-decidable for FOL:

we can (in principle) always detect unsatisfiability ر

we cannot always detect satisfiability (for principal reasons) ر

Page 6: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 6Fabian M. Suchanek

Existing Approaches

There exist model generation systems (e.g. MACE4 and Paradox).

Problems:

They try to map all constants to the same domain element ر

They have difficulties if there are many distinct constants ر

Page 7: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 7Fabian M. Suchanek

Existing Approaches

p(c1,...cn).p(x1,...,xi-1, x ,xi+1...,xj-1, x ,xj+1,...xn). for all 1<i<j<n

Fails for n>8

There exist model generation systems (e.g. MACE4 and Paradox).

Problems:

They try to map all constants to the same domain element ر

They have difficulties if there are many distinct constants ر

Page 8: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 8Fabian M. Suchanek

Our Approach

DLP KRHyper/ smodels / dlv

Transform

Page 9: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 9Fabian M. Suchanek

Disjunctive Logic Programs (DLPs)

r(a) v p(x,y) :- q(x,y), r(z), not(s(a,x)).

A Disjunctive Logic Program (DLP) is a set of rules.

Rule:

Page 10: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 10Fabian M. Suchanek

Our Transformation from FOL to DLPs

Prenex Negation Normal Form

x inCharge(x) => onLeave(x) v y refersTo(x,y)

x[…] y[…] [Qz…] inCharge(x) v onLeave(x) v refersTo(x,y)

Page 11: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 11Fabian M. Suchanek

Our Transformation from FOL to DLPs

x[…] y[…] [Qz…] inCharge(x) v onLeave(x) v refersTo(x,y)

x inCharge(x) => onLeave(x) v y refersTo(x,y)

Page 12: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 12Fabian M. Suchanek

Our Transformation from FOL to DLPs

Disjuncts without existential or following variables

Disjuncts with existential or following variables

x[…] y[…] [Qz…] inCharge(x) v onLeave(x) v refersTo(x,y)

x inCharge(x) => onLeave(x) v y refersTo(x,y)

Page 13: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 13Fabian M. Suchanek

Our Transformation from FOL to DLPs

Disjuncts without existential or following variables

Disjuncts with existential or following variables

x[…] y[…] [Qz…] inCharge(x) v onLeave(x) v refersTo(x,y)

x inCharge(x) => onLeave(x) v y refersTo(x,y)

Page 14: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 14Fabian M. Suchanek

Our Transformation from FOL to DLPs

negative literals

Disjuncts without existential or following variables

Disjuncts with existential or following variables

x[…] y[…] [Qz…] inCharge(x) v onLeave(x) v refersTo(x,y)

x inCharge(x) => onLeave(x) v y refersTo(x,y)

Page 15: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 15Fabian M. Suchanek

Our Transformation from FOL to DLPs

Option 1: Usual Skolemization

x y inCharge(x) v onLeave(x) v refersTo(x,y)

prev(x) v is_sat(x) v onLeave(x) v refersTo(x,sk(x)) :- inCharge(x).

Problem:

onLeave(Smith)

refersTo(Smith,Miller)

refersTo(Smith,sk(Smith)).

Page 16: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 16Fabian M. Suchanek

Our Transformation from FOL to DLPs

Option 2: Recyling

false :- is_sat(x),

not(refersTo(x,y)).

(simplified. See paper)

prev(x) v is_sat(x) v onLeave(x) v refersTo(x,sk(x)) :- inCharge(x).

Problem:

onLeave(Smith)

refersTo(Smith,Miller)

refersTo(Smith,sk(Smith)).

x y inCharge(x) v onLeave(x) v refersTo(x,y)

Page 17: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 17Fabian M. Suchanek

k(sk(sk(sk(sk(sk(sk(sk(Smith)))))))),sk(sk(sk(sk(sk(sk(sk(sk(sk(Smith)))))))))).

Our Transformation from FOL to DLPs

Option 2: Recyling

prev(x) v is_sat(x) v onLeave(x) v refersTo(x,sk(x)) :- inCharge(x).

Problem:

x onLeave(x)refersTo(Smith,sk(Smith)).

false :- is_sat(x),

not(refersTo(x,y)).

refersTo(sk(Smith),sk(sk(Smith))).

refersTo(sk(sk(Smith)),sk(sk(sk(Smith)))).

refersTo(sk(sk(sk(Smith))),sk(sk(sk(sk(Smith))))).

refersTo(sk(sk(sk(sk(Smith)))),sk(sk(sk(sk(sk(Smith)))))).refersTo(sk(sk(sk(sk(sk(Smith))))),sk(sk(sk(sk(sk(sk(Smith)))))))

.refersTo(sk(sk(sk(sk(sk(sk(Smith)))))),sk(sk(sk(sk(sk(sk(sk(Smith)))))))).

ersTo(sk(sk(sk(sk(sk(sk(sk(Smith))))))),sk(sk(sk(sk(sk(sk(sk(sk(Smith))))))))).

(sk(sk(sk(sk(sk(sk(Smith)))))))),sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(Smith))))))))))).

sk(sk(sk(sk(sk(Smith)))))))),sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(Smith)))))))))))).

sk(sk(sk(sk(Smith)))))))),sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(Smith))))))))))))).

sk(sk(sk(Smith)))))))),sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(Smith)))))))))))))).

k(sk(Smith)))))))),sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(Smith))))))))))))))).

sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(

sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(sk

sk(sk(sk(sk(sk(sk(sk(sk(sk(sk(s

x y inCharge(x) v onLeave(x) v refersTo(x,y)

Page 18: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 18Fabian M. Suchanek

Our Transformation from FOL to DLPs

Option 2: Recyling

false :- is_sat(x),

not(refersTo(x,y)).

(simplified. See paper)

prev(x) v is_sat(x) v onLeave(x) v refersTo(x,sk(x)) :- inCharge(x).

Problem:

x onLeave(x)refersTo(Smith,sk(Smith)).

x y inCharge(x) v onLeave(x) v refersTo(x,y)

Page 19: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 19Fabian M. Suchanek

Our Transformation from FOL to DLPs

Option 3: Loop check

refersTo(x,sk(z)) :-

prev(x),

refersTo(z,sk(z)).

(simplified. See paper)

prev(x) v is_sat(x) v onLeave(x) v refersTo(x,sk(x)) :- inCharge(x).

false :- is_sat(x),

not(refersTo(x,y)). Problem:

x onLeave(x)refersTo(Smith,sk(Smith)).

refersTo(sk(Smith),sk(Smith)).

x y inCharge(x) v onLeave(x) v refersTo(x,y)

Page 20: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 20Fabian M. Suchanek

Our Transformation from FOL to DLPs

DLPTransformprev , is_sat

The model is preserved (modulo the fresh predicate symbols).

Page 21: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 21Fabian M. Suchanek

Treating Equality

equal(dog(smith), bonzo).

inCharge(dog(smith)).

inCharge(bonzo).

Page 22: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 22Fabian M. Suchanek

Treating Equality

Substitutionaxioms

Equivalenceaxioms

equal(dog(smith), bonzo).

inCharge(dog(smith)).

inCharge(Y):-inCharge(X),equal(X,Y).

equal(dog(X),dog(Y)) :- equal(X,Y).

equal(X,X).

equal(X,Y) :- equal(Y,X).

equal(X,Z) :- equal(X,Y), equal(Y,Z).

Page 23: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 23Fabian M. Suchanek

Treating Equality

equal(dog(smith), bonzo).

inCharge(dog(smith)).

equal(dog(dog(smith)),dog(bonzo)).

inCharge(Y):-inCharge(X),equal(X,Y).

equal(dog(X),dog(Y)) :- equal(X,Y).

equal(X,X).

equal(X,Y) :- equal(Y,X).

equal(X,Z) :- equal(X,Y), equal(Y,Z).

Substitutionaxioms

Equivalenceaxioms

equal(dog(dog(dog(smith))),dog(dog(bonzo))).

equal(dog(dog(dog(dog(smith)))),dog(dog(dog(bonzo)))).

equal(dog(dog(dog(dog(dog(smith))))),dog(dog(dog(dog(pris

equal(dog(dog(dog(dog(dog(dog(smith)))))),dog(dog(dog(wif

equal(dog(dog(dog(dog(dog(dog(dog(smith))))))),dog(dog(wif

equal(dog(dog(dog(dog(dog(dog(dog(dog(smith)))))))),dog(wi

equal(dog(dog(dog(dog(dog(dog(dog(dog(dog(smith))))))))),w

equal(dog(dog(dog(dog(dog(dog(dog(dog(dog(dog(smith)))))

equal(dog(dog(dog(dog(dog(dog(dog(dog(dog(dog(dog(elvi

Page 24: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 24Fabian M. Suchanek

Treating Equality

equal(dog(smith), bonzo).

inCharge(dog(smith)).

Substitutionaxioms

Equivalenceaxioms

inCharge(Y):-inCharge(X),equal(X,Y).

equal(dog(X),dog(Y)) :- equal(X,Y).

equal(X,X).

equal(X,Y) :- equal(Y,X).

equal(X,Z) :- equal(X,Y), equal(Y,Z).

Page 25: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 25Fabian M. Suchanek

Treating Equality

equal(dog(smith), bonzo).

inCharge(dog(smith)).

Equivalenceaxioms

equal(X,X).

equal(X,Y) :- equal(Y,X).

equal(X,Z) :- equal(X,Y), equal(Y,Z).

Page 26: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 26Fabian M. Suchanek

Treating Equality

equal(dog(smith), bonzo).

inCharge( X ) :- equal(X,dog(smith)).

Equivalenceaxioms

Flatten function terms (Brand 1975)

equal(X,X).

equal(X,Y) :- equal(Y,X).

equal(X,Z) :- equal(X,Y), equal(Y,Z).

Page 27: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 27Fabian M. Suchanek

Treating Equality

equal(dog(smith), bonzo).

inCharge( X ) :- equal(X,dog(smith)).

inCharge(bonzo).

Equivalenceaxioms

equal(X,X).

equal(X,Y) :- equal(Y,X).

equal(X,Z) :- equal(X,Y), equal(Y,Z).

Page 28: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 28Fabian M. Suchanek

Treating Equality

DLPTransform

Iff the original DLP has a model that satisfies equality,

then the transformed DLP has a model (which contains the original one)

Page 29: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 29Fabian M. Suchanek

Preliminary Experiments with SUMO

The Suggested Upper Merged Ontology (SUMO):

is the largest public formal ontology available today ر

uses first order logic with higher order features ر

contains 1800 facts and rules if higher order features are stripped ر

SUMO

x human(x) => y mother(x,y)

Page 30: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 30Fabian M. Suchanek

Preliminary Experiments with SUMO

Applying our approach to SUMO:

The transformation to a DLP takes just a few seconds ر

The model computation with KRHyper takes just a few seconds ر

The model computation revealed ر

numerous inconsistencies in SUMO

Page 31: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 31Fabian M. Suchanek

Preliminary Experiments with SUMO

Results:

Equality transformation proved scalable and useful ر

Page 32: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 32Fabian M. Suchanek

Preliminary Experiments with SUMO

Results:

Equality transformation proved scalable and useful ر

orientation(germany,west, biggestTradingPartner(germany)).

orientation(france, west, germany).

equal(biggestTradingPartner(germany),france).

orientation(germany, east, france).

orientation(germany, west, france).

F G BTP(G)

=

We added the following conjectures to SUMO:

Page 33: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 33Fabian M. Suchanek

Preliminary Experiments with SUMO

Results:

Equality transformation proved scalable and useful رRecycling of terms works as expected ر

Page 34: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 34Fabian M. Suchanek

Preliminary Experiments with SUMO

Results:

Equality transformation proved scalable and useful رRecycling of terms works as expected ر

We added the following conjecture to SUMO:

instance(p,judicialProcess)

SUMO axiom: x instance(x,judicialProcess) => y agent(x,y)

agent(p,sk(p)).

Page 35: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 35Fabian M. Suchanek

Preliminary Experiments with SUMO

Results:

Equality transformation proved scalable and useful رRecycling of terms works as expected ر

We added the following conjecture to SUMO:

agent(p,smith).

agent(p,smith)

instance(p,judicialProcess)

SUMO axiom: x instance(x,judicialProcess) => y agent(x,y)

Page 36: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 36Fabian M. Suchanek

Preliminary Experiments with SUMO

Results:

Equality transformation proved scalable and useful رRecycling of terms works as expected ر

Loop check cannot always avoid infinite models ر

Page 37: Fabian M. SuchanekPPSWR 2006 - Automated Reasoning Support for FOL Ontologies 1 presented at the 4 th Workshop on Principles and Practice of Semantic Web

PPSWR 2006 - Automated Reasoning Support for FOL Ontologies 37Fabian M. Suchanek

Conclusion

Our transformation for FOL ontologies

allows to compute models for large ontologies ر

supports equality ر

avoids unnecessary skolem terms ر

avoids infinite models (often) ر