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
These three axioms
- Man SubClassOf drinks some Beverage
- Man ⊑ ∃drinks.Beverage
- drinks : Functional, InverseFunctional
- Thing ⊑ ≤1 drinks.Thing
- Thing ⊑ ≤1 drinks-1.Thing
are not logically equivalent to
- 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."
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.
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.