2017-10-14 306 views
3

我一直在四处寻找一切为什么OWL完全是不可判定的,但我还没有找到一个容易理解的例子,这将导致我理解它。为什么OWL完全不可判定?

我发现了解释这是由于“Entailment Closure”的说法,这也与OWL Full可以具有属性的类以及同时也是个人的事实相关。

但是我不理解那些语句之间的关系。

回答

1

你的问题,使有很大的意义,它是不容易回答的问题。此外,OWL-DL和OWL-Full之间的区别并不固定。最初的东西在限制OWL有后来被允许的,最流行的情况之处在于punning

但基本上,这个想法是要能写,推理,可以回答没有,避免不知道或“无限” 还不知道。这30分钟lecture on Tableaux Algorithm,也许其他几个之前在同一个球场后可能的帮助。

通过计算蕴涵封闭的方式,不可判定性和不可能性并不the same thing

1

虽然OWL Full和OWL DL的数学构造函数的集合是相同的,但OWL Full对这些构造函数的使用没有限制;想一想使用传递性属性的缺乏限制来了解为什么OWL Full是不可判定的。

1

下面是一个应该足以理解为什么OWL 2 Full是不可判定的例子。这与Russel's paradox有关。

在OWL Full中,你可以定义其自身作为一个实例类:

:IsInstanceOfItself a :IsIntanceOfItself . 

这也是RDF/RDFS可能的,但它不会使逻辑判定的。导致不可判定性的原因是,您可以定义OWL 2 Full中矛盾的类。您可以定义类的具有自己为实例类:

:HaveThemselvesAsInstance 
    rdfs:subClassOf [ 
     a owl:Restriction; 
     owl:onProperty rdf:type; 
     owl:hasSelf true 
    ] . 

然后,你可以定义类,没有自己的实例:

:DoNotHaveThemselvesAsInstance 
    owl:equivalentClass [ owl:complementOf :HaveThemselvesAsInstance ] . 

现在,我们可以提出这样的问题:是:DoNotHaveThemselvesAsInstance本身的一个实例?假设情况是这样的。然后:

​​3210

是正确的。因此,:DoNotHaveThemselvesAsInstance遵守它在与rdf:type属性本身没有关系的类中的定义。所以这个假设是错误的。因此:DoNotHaveThemselvesAsInstance必须与那些自己拥有rdf:type的类别互补。所以它必须是:DoNotHaveThemselvesAsInstance的一个实例。所以上面假设的关系应该成立。回到最初的步骤。因此,任何定义上面定义的类的本体都不可能有任何模型。所以不能有一类没有实例的类。或许,所有的类都有自己的实例,也许呢?但是有一些本体模型,其中一些类不是自己的实例。所以... OWL 2 Full是真的搞砸了,不是吗?

相关问题