【问题标题】:QCRs vs functional propertyQCR 与功能特性
【发布时间】:2014-09-22 06:22:36
【问题描述】:

我有一个基于主题的问题:

SOF - Einstein puzzle in OWL

在 owl 中,所有基数限制都基于 Object Properties 的泛函和反泛函性质。我已经使用 QCR 对其进行了改造。

旧型号(示例):

man drinks some beverage;
drinks -> functional, inferse functional

新模型/EDITED/

man drinks exactly 1 beverage;
beverage drinkedBy exactly 1 man;
drinks -> domain:man, range:beverage
drinkedBy -> domain:beverage, range:man
drinks inverseOf drinkedBy

我将所有“一些”替换为“正好 1”。 我认为第一种类型相当于第二种模型,但是推理器 FaCT++ 在他开始 15 秒后被冻结(浪费和冻结了 3+ GB RAM)。 HermiT 并没有被冻结,但他只能推断出子类。

最终文件/EDITED/FSMR

感谢您的回答。

【问题讨论】:

  • 你在这方面有什么进展吗?
  • 不。我将它发布到 protege-user 邮件列表(没有答案)和这里 link 但它在没有给我理由的情况下被删除。
  • "只能推断子类。"这可能是一个愚蠢的问题,但是(我假设您使用的是 DL 查询窗格),您确实选中了右侧的相应复选框?
  • 您要回答的查询是什么?
  • 我使用了单个标签。以下是具有不同推理结果的链接:有结果 - link 没有结果 - link

标签: owl puzzle protege reasoning fact++


【解决方案1】:

这三个公理

  1. 男人 SubClassOf一些 饮料
    • 男人 ⊑ ∃drinks.Beverage
  2. 饮料:功能性、逆功能性
    • 事物 ⊑ ≤1 杯饮料。东西
    • 事物 ⊑ ≤1 杯饮料-1.东西

在逻辑上不等价于

  1. 男人 SubClassOf确切 1 饮料
    • 男人 ⊑ =1 饮料。饮料

这里有一些数据在第一个模型中不一致,但在第二个模型中没有:

m1 rdf:type Man .
d1 rdf:type Beverage .
d2 rdf:type(不是饮料)。
m1 喝 d1, d2 。

“属性 p 是函数”是等价于“Thing p max 1 Thing”的公理。

【讨论】:

  • 没错。在这个谜题中,一个人有一只宠物,房子有颜色等等。所以我用的正是。但是如果我使用 max 而不是完全一样,结果是一样的。正如 Ignazio 所提到的,问题应该与反函数有关。
  • 还有属性饮料有域和范围。
【解决方案2】:

我相信这两个版本并不完全相同。如果drinks 是反函数的,那么两个喝同一种饮料的人会被推断为同一个人。在第二个版本中,情况并非如此(根据您的描述,我还没有检查本体)。

编辑:与 Dmitry Tsarkov(FaCT++ 的主要开发人员)讨论了这个问题。他评论说,功能特征相当于最大 1 基数。恰好 1 基数包括存在,这意味着推理器有不同的场景要探索,这会更复杂。我已经向他指出了这个问题,以便提供更全面的答案。

【讨论】:

  • 好点。但这对结果没有影响。我将所有属性标记为反函数并将它们用作“最大值 1”,但推理器无法解决它。
  • 我看不出为什么结果会有所不同,一旦反函数进入 - 可能你触发了一个不是很优化的代码路径(对于 FaCT++)并且可能是一个错误(对于 FaCT++ 和 HermiT一样)。
  • 我与基础模型的作者 Denis Ponomaryov 讨论过。他说该模型也是正确的,但是“您忘记添加有关 left_to/right_to 角色的更多信息。您在公理中为它们使用 QCR:--12. Kools 在马匹所在的房子旁边的房子里抽15. 挪威人住在蓝房子旁边——但这似乎不足以解开谜题,因为你仍然需要 left_to/right_to 才能正常工作。但我不知道为什么。我试了一下,效果很好。但是为什么 OP 右/左必须是功能性的?不知道。
【解决方案3】:

在与丹尼斯进一步讨论后,他向我解释了问题。

基本上模型是正确的,但它需要实现每所房子的左/右最多有一个邻居。 考虑情况: H5 左 H4 左 H3 左 H2 左 H1 和附加 H5 左 H3 在原始模型中它是不可能的,因为(逆)功能不允许它。 (如果H5离开H4,H5离开H3是不可能的) 在我们的模型中,我们对 left_to/right_to 没有更多限制。所以考虑的情况是有效的。

为了解决这个问题,我们需要再添加一条语句: House SubClassOf left_to max 1 House /或/ House SubClassOf right_to max 1 House

所以结果是: QCR 最大 1 = 功能性 但模型错了。

【讨论】:

  • 丹尼斯是谁?你是如何从饮料到房子的?为什么不接受约书亚的回答,看起来很简洁?
  • 阅读其他cmets。 Denis Ponomaryov 原型模型的作者。约书亚的回答是可以的,但与拼图规范无关。
猜你喜欢
  • 2010-12-07
  • 1970-01-01
  • 1970-01-01
  • 2011-08-19
  • 1970-01-01
  • 2013-08-15
  • 1970-01-01
  • 2015-11-24
  • 1970-01-01
相关资源
最近更新 更多