【发布时间】:2018-08-23 12:37:33
【问题描述】:
我试图理解为什么在 OWL EL 中添加析取会使语言在计算上更加复杂(例如,为什么添加“或”会使多项式时间内的可满足性、一致性和/或包含性检查变得不可能......他们)标准OWL EL中的re p-time)
OWL EL 配置文件除其他外不允许析取和否定。我无法理解为什么无法使用现有的 OWL EL 构造来实现析取,方法是创建包含给定类表达式的析取项作为子集的新类。
例如,可以表达(曼彻斯特语法):
Class1 and (Class2 or Class3) and (Property1 some (Class3 or Class4))
改写为:
Class1 and NewClass1 and (Property1 some NewClass2)
where Class2 is a subset of NewClass1,
Class3 is a subset of NewClass1,
Class3 is a subset of NewClass2,
Class4 is a subset of NewClass2
?
我知道答案是“不”,但为什么是“不”?
【问题讨论】:
-
在下面的答案和其他 cmets 中提供了长而完整的答案。非常简短的版本:考虑画面树。
or引入了一个分叉,使该分支所需的工作量加倍(对于具有两个操作数的or)。
标签: rdf complexity-theory owl ontology protege