QCRs vs functional property

后端 未结 3 579
再見小時候
再見小時候 2021-01-16 22:31

I have question based on the topic:

SOF - Einstein puzzle in OWL

In the owl, all cardinality restrictions are based on functional and inverse functional pro

相关标签:
3条回答
  • 2021-01-16 23:11

    These three axioms

    1. Man SubClassOf drinks some Beverage
      • Man ⊑ ∃drinks.Beverage
    2. drinks : Functional, InverseFunctional
      • Thing ⊑ ≤1 drinks.Thing
      • Thing ⊑ ≤1 drinks-1.Thing

    are not logically equivalent to

    1. Man SubClassOf drinks exactly 1 Beverage
      • Man ⊑ =1 drinks.Beverage

    Here's is some data that's inconsistent in the first model, but not in the second:

    m1 rdf:type Man .
    d1 rdf:type Beverage .
    d2 rdf:type (not Beverage) .
    m1 drinks d1, d2 .

    "The property p is functional" is an equivalent axiom to "Thing p max 1 Thing."

    0 讨论(0)
  • 2021-01-16 23:16

    I believe the two versions are not exactly equivalent. If drinks is inverse functional, two men drinking the same instance of drink are inferred to be the same man. In the second version, that's not the case (from your description, I have not checked the ontologies yet).

    Edit: discussed this with Dmitry Tsarkov (main developer for FaCT++). He remarked that a functional characteristic is equivalent to max 1 cardinality. exactly 1 cardinality includes existence, meaning the reasoner has a different tableaux to explore, which would be more complex. I've pointed him to this question to provide a more comprehensive answer.

    0 讨论(0)
  • 2021-01-16 23:17

    After additional discussion with Denis, he explained me the problem.

    Basically model is correct, but its need to implement that each house has max one neighbour on the left/right. Consider situation: H5 left H4 left H3 left H2 left H1 and additional H5 left H3 In origin model its not possible because (inverse) functional not allow it. (If H5 left H4, its not possible to H5 left H3) In our model, we have no more restriction on left_to/right_to. So the considering situation is valid.

    To solve this problem we need to add one more statement: House SubClassOf left_to max 1 House /or/ House SubClassOf right_to max 1 House

    So the result is : QCR with max 1 = functional but the model was wrong.

    0 讨论(0)
提交回复
热议问题