为什么 HermiT 认为不对称子 属性 与对称 属性 一致?

Why HermiT considers asymmetric sub-property to symmetric property consistent?

根据 OWL 2 中对称和非对称属性的定义以及 Inheritance of property characteristic by sub-properties 中的解释,我假设将非对称 属性 声明为 sub-属性 到对称 属性 会导致推理器(HermiT 1.3.8.413)检测到不一致,但在 Protégé 5.2.0 中情况并非如此。对此有什么解释吗?

HermiT 从下面的断言中正确推断出 :isNeighbour 的范围是 :Word:W1 :isNeighbour :W2,并在 :W1 :folllows :W2 时检测到不一致。 Protégé 5.2.0 中的 Pellet 和 Fact++ 1.6.5 也是如此。

:isNeighbour a owl:SymmetricProperty; rdfs:domain :Word . 
:follows a owl:AsymmetricProperty; rdfs:subPropertyOf :isNeighbour . 
:W1 a :Word . 
:W2 a :Word . 
:W2 :follows :W1 .

这段代码似乎是文本的合理形式表示(单词在彼此跟随时是(对称的)邻居(不对称的)),但在 OWL 的定义中它似乎不一致,因为每个使用 属性 :follows 的断言应该始终允许使用超类 :isNeighbour 进行的断言。 我不确定 Reasoners 是否只是不如 OWL 严格,或者我对 OWL.

有误解

一些 属性 特征是 "top-down inherited" 到 属性 层次结构,而有些不是:

  • P rdfs:subPropertyOf Q means ∀x∀y(P(x,y) → Q(x,y)) (1)

  • Q a owl:SymmetricProperty means ∀x∀y(Q(x,y) → Q(y,x)) (2)

(1) 和 (2) 蕴涵 ∀x∀y(P(x,y) → P(y,x)) 吗?你已经找到了反模型。您可以将 "words" 替换为 "natural numbers" 以获得稳定性。

实际上,对称性是"down-top inherited"。

P.S。 M. Uschold 的 Demystifying OWL for the Enterprise 说对称 属性 的子 属性 是对称的,这是不正确的。