W3C home > Mailing lists > Public > www-archive@w3.org > September 2013

Re: Unique denotation assumption

From: Pat Hayes <phayes@ihmc.us>
Date: Sun, 15 Sep 2013 03:45:56 -0700
Cc: www-archive <www-archive@w3.org>
Message-Id: <FDD31BD4-8456-426B-99A4-666B73771433@ihmc.us>
To: David Booth <david@dbooth.org>

On Sep 13, 2013, at 9:07 AM, David Booth wrote:

> Hi Pat,
> 
> I think the big disconnect between us is that I am looking at the semantics from the perspective of multiple interpretations, whereas you seem to keep assuming a single-interpretation viewpoint.

This idea you have of two different perspectives is a fallacy. There is only one correct way to understand model theory. Apparently, you have not fully grasped the basic idea.

>  I'll try to explain . . .
> 
> On 09/11/2013 11:15 PM, Pat Hayes wrote:
>> 
>> On Sep 11, 2013, at 6:14 PM, David Booth wrote:
>> 
>>> hi Pat,
>>> 
>>> Since the RDF WG does not have a public discussion list to which
>>> non-members can post, I'm copying the public www-archive list.  I
>>> want to propose a couple of changes to the RDF specs, and thought
>>> it might save the WG and others time if I first discuss them with
>>> you (and anyone else you think would be interested).  One of them
>>> is the following.
>>> 
>>> In
>>> https://dvcs.w3.org/hg/rdf/raw-file/default/rdf-concepts/index.html
>>> 
>>> I see this statement:
>>> 
>>> "IRIs have global scope: Two different appearances of an IRI denote
>>> the same resource."
>>> 
>>> This is wrong
>> 
>> It is a foundational assumption of RDF. Without this assumption,
>> graph merging would never be a valid operation, and no RDF engines
>> could combine informationfrom different sources to draw conclusions.
>> 
>>> , because an IRI can and often does denote different resources in
>>> different RDF interpretations.
>> 
>> That is irrelevant to the point being made in the sentence you cite
>> above. No interpretation allows two occurrences of a single IRI to
>> denote different things.
> 
> The problem is that that sentence is not constrained to a single interpretation.  If it said "**For each RDF interpretation** IRIs have global scope . . . . " then it would be fine.

An interpretation is just a formalization of the idea of the language having a meaning. One does not completely know the intended meanings, so is more than one possible interpretation. But that does not say that some RDF has one interpretation while other RDF has a different interpretation. That idea - what you are calling the "multiple-interpretation perspective", if I follow you properly - is simply a misunderstanding of the very idea of an interpretation in model-theoretic semantics. 

> 
> As written, that sentence ("IRIs have global scope: Two different appearances of an IRI denote the same resource") is just patently false, as your example of G1 and G2 illustrated:
> 
>> G1: ex:a ex:p "23"^^xsd:number .
>> 
>> G2: ex:p rdfs:range xsd:string .
> 
> Assuming XSD semantics, ex:p clearly denotes something different in G1 than it denotes in G2.

No, it does not, which is WHY these are mutually inconsistent. If it could denote one thing in G1 and something different in G2, and if this were somehow acceptable, then these two graphs would be consistent. In fact, the statements P and (not P) would be consistent, becuase the firat P could be interpreted as being true and the second P as being false. 

> 
>> 
>>> And this, in practice, means that an IRI often denotes different
>>> resources in different *graphs*
>> 
>> No, it does not. What is true, of course, is that the sets of
>> interpretations which satisfy the two graphs will be different, and
>> each will likely be different from the set of interpretations
>> satisfying both of them (their union.) But that does not imply that
>> IRIs in different graphs denote differently.
> 
> When you say "But that does not imply that IRIs in different graphs denote differently", notice that you are implicitly assuming that the *same* interpretation(s) will be applied to both graphs.  (Because obviously if different interpretations are applied, the same URI may denote different things.)  But my point was that if you look at it from the perspective of "What are the sets of satisfying interpretations for
> each of these graphs (separately)?", then we *are* talking about different sets of interpretations, and the same IRI *may* denote different things in them.

No. Look, if we take each graph in isolation, then yes, different sets of interpretations make them true. There are interpretations which make G1 true, and there are other interpretations which make G2 true, and these interpretations give different meanings to ex:p. But still, each interpretation assigns meanings to every occurence of every IRI. So the interpretations that make G1 true also make G2 false, and the interpretations that make G2 true also make G1 false. There is no interpretation that makes G1 and G2 *both* true, and this is BECAUSE every interpretation assigns a truthvalue to every triple in every graph, and assigns the same denotation to every occurrence of each IRI, whatever graph it is in. 

Do you see how this works yet?

> 
>> 
>>> , because any graph has a set of satisfying interpretations, and
>>> different graphs may have different sets of satisfying
>>> interpretations.
>> 
>> Yes, but that does not imply what you seem to think it implies.
> 
> I doubt that what I think is what you think I think.  What do you think I think it implies?
> 
> To be clear, I think it implies the following.  For graphs g1 and g2, URI u, let s1 and s2 be the sets of satisfying interpretations for g1 and g2 (respectively).  Let rs1 be the set of resources {i(u) such that i is in s1}, and similarly let rs2 be the set of resources {j(u) such that j is in s2}.   Claim: Every member of s1 is "what u denotes in g1"

That phrase is meaningless, and it is not used anywhere in the RDF semantics. Denotation is not graph-relative. 

> and every member of s2 is "what u denotes in g2".  (But note that they came from different sets of interpretations: s1 and s2, respectively.) Claim: "what u denotes in g1" may be *different* from "what u denotes in g2".  The truth of this should be obvious.
> 
> Notice that nowhere am I making the single-interpretation assumption. AFAICT, the disconnect between us seems to be that you are assuming that one must only be talking about the *same* interpretation(s) when talking about g1 and g2.

Interpretations apply across all IRIs and all graphs, by definition. The set of interpretations which satisfy a graph is dependent upon the graph, of course. But every interpretation defines a truthvalue for every possible RDF triple, and hence for every possible RDF graph. That is the entire point of model-theoretic semantics: interpretations fix the meaning of ALL SENTENCES in a given language. If they did not, they would not be interpretations. 

>  That would be necessary if we were talking about the union of g1 and g2, but it is *not* necessary if we are talking about g1 and g2 as separate graphs.  The RDF Semantics can perfectly well be applied to each graph separately.
> 
>> 
>>> For example, suppose graphs g1 and g2 have sets of satisfying
>>> interpretations s1 and s2, respectively, and those sets may be
>>> disjoint.  Then colloquially (and technically) we can say that an
>>> IRI may map to one resource in g1 (i.e., in some interpretation in
>>> s1) and a different resource in g2 (i.e., in some interpretation in
>>> s2).
>> 
>> No, that would not be a correct way to express this condition, even
>> colloquially. What you are describing is two graphs which contradict
>> each other in some way.
> 
> Yes: the intersection of their sets of satisfying interpretations is empty.  I.e., the graphs contradict each other.
> 
>> Which is impossible  in RDF but much easier
>> to arrange in RDFS or OWL or other more expressive languages, but in
>> any case it is often only possible to detect the contradiction when
>> we presume that IRIs denote uniformly across graphs. Take this
>> example, using some rdfs:
>> 
>> G1: ex:a ex:p "23"^^xsd:number .
>> 
>> G2: ex:p rdfs:range xsd:string .
>> 
>> Each is consistent (has satisfying interpretations) but together they
>> are inconsistent (recognizing XSD). Why? Because if ex:p has range
>> xsd:string, then the first triple in G1 implies that a nuber must be
>> an XSD string, and XSD says these are disjoint. But notice, this line
>> of reasoning assumes that the ex:p in the G1 is the same ex:p as in
>> G2.
> 
> By "inconsistent", presumably you mean either; (a) that the graph that is the union of G1 and G2 has no satisfying interpretations; or (b) that the intersection of the sets of satisfying interpretations for G1 and G2 is empty.

Those are two ways of saying the same thing. so I mean both of them. 

>  In case (a), we would be talking about a different graph that has G1 and G2 as subgraphs, so yes, ex:p in G1 must be the same as ex:p in G2, and there are no interpretations that satisfy this requirement. In case (b), ex:p in G1 clearly denotes a different resource than ex:p in G2, and that is why the intersection of their satisfying interpretations is empty.

No. The reason why the set is empty is not because ex:p denotes differently in the two graphs (which is meaningless as stated) , it is because *whatever you take ex:p to denote*, at least one of the graphs must be false. You survey all the possible interpretations, and you find that whatever you do, you never get both graphs true at the same time. 

> 
>> If it wasn't  if the same IRI in two different graphs could
>> denote different things  then there would be no inconsistency here,
>> because G2 might be talking about a different thing than the ex:p
>> that G1 is talking about.
> 
> Indeed, it is quite clear that the ex:p that G1 is talking about *is* different than the ex:p that G2 is talking about, and this is why these graphs are incompatible.  This is evident because in every satisfying interpretation of G1, the value of ex:p is an xsd:number, whereas in every satisfying interpretation of G2, the value of ex:p its value is an xsd:number, whereas in G2 its value is required to be an xsd:string, and an xsd:string cannot be an xsd:number.  I.e., the intersection of their sets of satisfying interpretations is empty, so the graphs are necessarily inconsistent.

Yes, exactly. Put another way, the interpretations which satisfy G1 cannot satisfy G2, and vice versa. 

> 
>> 
>>> 
>>> This requires thinking about graphs in terms of sets of satisfying
>>> interpretations -- an important and valid perspective -- rather
>>> than assuming that one looks at them only through the lens of a
>>> single interpretation.
>> 
>> Of course we think of graphs in terms of sets of satisfying
>> interpretations. That does not imply that different occurrences of an
>> IRI can denote differently.
> 
> Sure it does.  ex:p denotes *different* things in the set of satisfying interpretations of G1 than it does in the set of satisfying interpretations of G2, as we just established above.

So what? What established mutual inconsistency here is that in every interpretation which satisfies G1, G2 is false (and vice versa.) But to show this rigorously means that we have to consider the truth of G2 in those G1-satisfying interpretations. And we do that by applying the interpretation mapping to G2; and when we do, we interpret the IRIs in G2 exactly the way they are interpreted in G1. Because, to make the basic point one again, interpretation mappings are defined on IRIs, not on occurrences of IRIs in graphs, so you get the same denotation for every occurrence of the IRI, in any graph. And this follows from the *definition* of "interpretation". Different occurrences of an IRI cannot denote differently. 

>>> In short, I think the above statement needs to be qualified
>>> somehow, such as:
>>> 
>>> "IRIs are intended to have global scope: Two different appearances
>>> of an IRI are intended to denote the same resource. (But see RDF
>>> Semantics for caveats regarding different RDF interpretations.)"
>> 
>> The semantics document has no such "caveats".
>>> 
>>> And then we would have to add something to the RDF Semantics
>>> document to explain how an IRI can denote different things in
>>> different interpretations.
>> 
>> Of course IRIs denote different things in different interpretations.
>> That is what interpretations are all about: each interpretation is
>> one way to construe what IRIs mean, one mapping from IRIs to denoted
>> things. But each one of them construes each IRI in a particular way.
>> It does not construe one occurrence of a given IRI in one way, and a
>> different occurrence of the same IRI in a different way.
> 
> Correct: a single interpretation does not construe one occurrence of a given IRI in one way and a different occurrence of the same IRI in a different way.  But that is *exactly* what multiple interpretations do.

No, that is NOT what they do. They simply provide a mathematical survey of possible ways for IRIs to denote. But they are all functions *from IRIs to denotations*, not from IRI occurrences to denotations. (You can define a (different) semantics which allows this, and it is a context-logic semantics: interpretations map from <context, IRI> pairs to denotations. In your case, the contexts would be graphs, I presume.)

> 
>> That
>> condition  we might call it a 'split reference'  is not possible in
>> any interpretation. In fact, it is explciitly ruled out by the very
>> construction of interpretations, which are defined as mappings from
>> IRIs to referents. Not from *occurrences* of IRIs to referents,
>> notice.
> 
> Agreed.  I'm not talking about a single interpretation.  I'm talking about multiple interpretations, such as we may be considering when we ask: "What are the sets of satisfying interpretations for g1, g2 and g3 (respectively)?"

Multiple interpretations are still interpretations. A set of mappings from one set to another is not a mapping from a different set. 

> 
>> 
>>> 
>>> Does this make sense to you?
>> 
>> Clearly not; but you knew this, surely, from our earlier extended
>> discussions on this topic.
> 
> Hey, I'm trying to make headway toward a common understanding here!  :)  Have I made any progress?

Apperently not. 

David, if you think that you have a new idea here and you are eventually going to convince me you are right, give up now. I know model theory and logical semantics very well indeed, and I know that you are confused about the basic ideas. You are not going to persuade me that you are right, because you aren't. 

Pat

> 
> Best wishes,
> David
> 

------------------------------------------------------------
IHMC                                     (850)434 8903 home
40 South Alcaniz St.            (850)202 4416   office
Pensacola                            (850)202 4440   fax
FL 32502                              (850)291 0667   mobile (preferred)
phayes@ihmc.us       http://www.ihmc.us/users/phayes
Received on Sunday, 15 September 2013 10:46:24 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 14:44:23 UTC