- From: Aidan Hogan <aidhog@gmail.com>
- Date: Wed, 22 Jan 2020 16:11:25 -0300
- To: Antoine Zimmermann <antoine.zimmermann@emse.fr>
- Cc: Patrick J Hayes <phayes@ihmc.us>, semantic-web <semantic-web@w3.org>
On 2020-01-22 5:46, Antoine Zimmermann wrote: > [I changed the topic, as this is irrelevant to the original thread.] > > > Very good, Aidan, I don't see any error in the reasoning. > > Note that you do not need to appeal to RDFS recognising xsd:string. If > we assume "proto-RDFS entailment", which I define exactly as RDFS > entailment except that it does not impose that xsd:string and > rdf:langString are recognised, then how can the inconsistency be proved? Hmm, interesting. Without using known disjointness of value spaces, the only "inconsistency hook" that I can find (based on what you said previously) is to show that: rdf:Property rdfs:subClassOf xsd:boolean . #AZ entails: xsd:boolean rdf:type xsd:boolean . #otherGoal which I believe leads to inconsistency. Specifically ... Under D-entailment, we have that: - I(xsd:boolean) = (L,L2V,V) Under RDFS semanatics, we have that: - ICEXT(I(xsd:boolean)) = { true, false } So #otherGoal suggests that I(xsd:boolean) ∈ ICEXT(I(xsd:boolean)), which it clearly ain't. As for showing the entailment, my (slightly lazy :P) guess is that more or less the same pigeons as before *should* be up to the task. > --AZ > > > > Le 22/01/2020 à 08:45, Aidan Hogan a écrit : >> off topic ... >> >> On 2020-01-21 5:48, Antoine Zimmermann wrote: >> [snip] >>> D-entailment can be horribly complicated. Consider this example: >>> >>> rdf:Property rdfs:subClassOf xsd:boolean . >>> >>> Is this RDFS-recognising {xsd:boolean}-consistent? >> >> >> No. (If I'm not mistaken.) >> >> First D-entailment (which must recognise xsd:string) will give us: >> >> xsd:string rdf:type rdfs:Datatype . #1 [rdfs1] >> "a" rdf:type xsd:string . #2 [semantic conditions] >> "b" rdf:type xsd:string . >> ... >> >> I will use generalised RDF to make (my) life easier. >> >> What we'll try to prove is that given: >> >> rdf:Property rdfs:subClassOf xsd:boolean . #AZ >> >> the following triple must hold: >> >> "a" rdf:type rdf:Property . #goal >> >> since when it is combined with #AZ and rdfs9, it gives: >> >> "a" rdf:type xsd:boolean . >> >> which should be D recognising-xsd:boolean-unsatisfiable. >> >> ================================================================ >> >> We'll need some RDFS axiomatic triples: >> >> rdfs:domain rdfs:domain rdf:Property . #A1 >> rdfs:range rdfs:domain rdf:Property . #A2 >> rdfs:subPropertyOf rdfs:domain rdf:Property . #A3 >> rdf:type rdfs:range rdfs:Class . #A4 >> rdf:type rdf:type rdf:Property . #A5 >> >> ================================================================ >> >> Given: >> >> rdf:Property rdfs:subClassOf xsd:boolean . >> >> We now have (at most) two possible "relations" in IP. >> >> Per the pigeonhole principle, at least one pair here must refer to the >> same property: >> >> rdf:type >> rdfs:domain >> rdfs:range >> >> This leaves the following three cases. >> >> ================================================================ >> >> Case 1: rdf:type and rdfs:domain refer to the same property. >> >> "a" rdfs:domain xsd:string . #3 [#2 and Case 1] >> "a" rdf:type rdf:Property . #goal [#3, #A1 and rdfs2] >> >> ================================================================ >> >> Case 2: rdf:type and rdfs:range refer to the same property. >> >> "a" rdfs:range xsd:string . #4 [#2 and Case 2] >> "a" rdf:type rdf:Property . #goal [#4, #A2 and rdfs2] >> >> ================================================================ >> >> Case 3: rdfs:domain and rdfs:range refer to the same property. >> >> rdf:type rdfs:domain rdfs:Class . #5 [#A4 and Case 3] >> "a" rdf:type rdf:Class . #6 [#2, #5 and rdfs2] >> "a" rdfs:subClassOf rdfs:Resource . #7 [#6 and rdfs8] >> >> I don't see a good way to make direct progress from here, but within >> Case 3, we can always invoke the pigeonhole principle again. At least >> one pair here must refer to the same property: >> >> rdfs:domain/rdfs:range (already equivalent under Case 3) >> rdfs:subClassOf >> rdfs:subPropertyOf >> >> This leaves three sub-cases. >> >> ---------------------------------------------------------------- >> >> Case 3.1: rdfs:domain, rdfs:range and rdfs:subClassOf all refer to the >> same property. >> >> "a" rdf:domain rdfs:Resource . #8 [#7 and Case 3.1] >> "a" rdf:type rdf:Property . #goal [#8, #A1 and rdfs2] >> >> ---------------------------------------------------------------- >> >> Case 3.2: rdfs:subClassOf and rdfs:subPropertyOf refer to the same >> property. >> >> "a" rdfs:subPropertyOf rdfs:Resource . #9 [#7 and Case 3.2] >> "a" rdf:type rdf:Property . #goal [#9, #A3 and rdfs2] >> >> ---------------------------------------------------------------- >> >> Case 3.3: rdfs:domain, rdfs:range and rdfs:subPropertyOf all refer to >> the same property. >> >> It will make (my) life easier to observe that within Case 3.3, either: >> >> - Case 3.3.1: rdfs:subClassOf refers to the same property as >> rdfs:domain, rdfs:range and rdfs:subPropertyOf, or >> - Case 3.3.2: rdfs:subClassOf refers to the same property as rdf:type. >> >> Since Case 3.3.1 is covered by Case 3.2, we assume Case 3.3.2. >> >> rdf:type rdfs:subClassOf rdf:Property . #10 [#A5 and Case 3.3.2] >> rdf:type rdfs:subPropertyOf rdf:type . #11 [#A5 and rdfs6] >> rdf:type rdfs:domain rdf:type . #12 [#11 and Case 3.3] >> "a" rdf:type rdf:type . #13 [#2, #12 and rdfs2] >> "a" rdf:type rdf:Property . #goal [#10, #13 and rdfs9] >> >> ================================================================ >> >> In all cases given to us by the pigeons we infer the goal: >> >> "a" rdf:type rdf:Property . >> >> Hence >> >> rdf:Property rdfs:subClassOf xsd:boolean . >> >> ... is not RDFS-recognising {xsd:boolean}-consistent. >> >> >> So what's horribly complicated about that? :) >> >> ================================================================ >> >> Disclaimer: >> >> Possibly I made a mistake somewhere. >> >> Possibly there is a much simpler argument. >> >> Fun question for an exam! >> >
Received on Wednesday, 22 January 2020 19:11:31 UTC