W3C home > Mailing lists > Public > public-semweb-lifesci@w3.org > March 2013

Re: owl:sameAs - Is it used in a right way?

From: Pat Hayes <phayes@ihmc.us>
Date: Mon, 25 Mar 2013 00:28:25 -0500
Cc: Alan Ruttenberg <alanruttenberg@gmail.com>, Jeremy J Carroll <jjc@syapse.com>, Umutcan ŞİMŞEK <s.umutcan@gmail.com>, Kingsley Idehen <kidehen@openlinksw.com>, "public-semweb-lifesci@w3.org" <public-semweb-lifesci@w3.org>
Message-Id: <9B8D6CB4-32FE-4DA1-802A-F9BBE7018961@ihmc.us>
To: David Booth <david@dbooth.org>
OK, we clearly are not getting anywhere with this, but before giving up, I will cut to the chase. 

On Mar 24, 2013, at 10:41 PM, David Booth wrote:

> Okay, finally zeroing in on the crux of the matter . . .
> On 03/23/2013 12:49 AM, Pat Hayes wrote:
>> On Mar 22, 2013, at 10:30 PM, David Booth wrote:
>>> On 03/21/2013 01:02 PM, Pat Hayes wrote:
>>>> On Mar 20, 2013, at 9:58 PM, David Booth wrote:
>>>>> On 03/20/2013 12:04 AM, Pat Hayes wrote:
>>>>>> On Mar 18, 2013, at 4:04 PM, David Booth wrote:
>>>>>>> On 03/17/2013 10:02 PM, Pat Hayes wrote:
>>>>>>>> On Mar 16, 2013, at 11:26 PM, David Booth wrote:
>>>>>>> [ . . . ] But presumably that passage from Section 1.2
>>>>>>> means ". . . [the semantics simply assumes that ... a
>>>>>>> single URI reference can be taken to have the same meaning
>>>>>>> whenever it occurs] _in the *given* graph, i.e., the graph
>>>>>>> whose semantics are being determined_",
>>>>>> No, it means wherever they occur, period. If they occur in
>>>>>> several graphs, they all refer in the same way in all of
>>>>>> them.
>>>>> Absolutely not.  That is only true for *one* interpretation.
>>>> Absolutely yes. It is true for all interpretations. There is no
>>>> interpretation which allows a single URI to refer in different
>>>> ways when it occurs in different graphs.
>>> Uh-oh, there's that single-interpretation assumption creeping in
>>> again!
>> No assumption is creeping anywhere in that statement. I said, for ALL
>> interpretations.
> The "single-interpretation assumption" that you keep making is to assume that one can only talk about **one interpretation at a time** when talking about whether a URI can "refer in different ways when it occurs in different graphs".  But as I pointed out below -- and you agreed -- in different interpretations the same URI *can* refer to different resources.

The interpretation mapping is defined on URIs, not a token of a URI in a particular graph or document. 

Let me try to draw a simple analogy to make the point. Consider passengers in a car. A car may face in any direction, and a person may sit in any car. Therefore, it is correct to say that a passenger in a car may face in any direction. If there are two passengers, what I just said is true for both of them, since it is true of everyone. Still it is the case, that if there are two passengers in a car, they must both be facing the same direction. What you are arguing is like saying, because (we have agreed) a passenger may face in any direction, it follows that one passenger in a car may face one way and another passenger in the same car may face a different direction. But that does not follow. It is of course also true that a passenger may face one way in one car and another passenger *in another car* may face in a different direction. But nothing follows from this about car design, and calling this the "single-car assumption" adds nothing significant to the discussion. 

>>> While it is true that there exists no *single* interpretation that
>>> allows a single URI to refer in different ways when it occurs in
>>> different graphs
>> There exists no interpretation which ... No need to say or emphasise
>> "single".
> The emphasis was added to point out that you were making the single-interpretation assumption.  While it is true that "There exists no [single] interpretation which ...", it is NOT true that "There exist no *two* interpretations which ...".  And the example that I gave (directly below) demonstrates this.

Of course there can be two interpretations which differ. There is no need to use an example to prove this, this is obvious. That is what interpretations are for, to capture the range of possibilities of ways that names can refer. 

But this is not significant. The entire point of defining interpretations at all, is to formally capture the fact that we may not know what names refer to. So we talk about alternative ways in which names might refer, and each such way is a (single) interpretation. Each such way of referring then determines the truthvalue of every graph, as the RDF semantics describes. Now, *of course* two different WAYS OF REFERRING may differ, in how they describe a URI's referent. That is what we invented this whole apparatus for in the first place. But it does not follow from that (obvious) statement that it makes sense to talk about a single URI referring in two ways *at the same time*, which is what you are doing here. 

>>> , surely you would agree that under standard RDF Semantics:
>>> There exist interpretations I1 and I2, RDF graphs G1 and G2, URI U
>>> and resources R1 and R2, such that I1 maps U to R1, I2 maps U to
>>> R2, and R1 != R2.
>> Of course.
>>> Therefore, under standard RDF Semantics:
>>> 1. A URI can map to *different* resources in *different* graphs.
>>> (Proof sketch: Use I1 for one graph and I2 for the other.)
>> No, and your proof is faulty. You don't get to use an interpretation
>> for one graph and a different interpretation for the other.
> Sure I do.

No, you don't, because interpretations are not defined on graphs. They are defined on vocabularies, and they then determine the truth-value of graphs. It is true that two different graphs may have varying truth values in different interpretations, of course, and your "combination" amounts to this observation. But this observation is unimportant, because there is no semantic construct or semantic result that makes it meaningful. Put another way, this combination-thing that one might call 

Lambda (x)(if x=G1 then UI(G1), elseif x=G2 then U2(G2) )

is not an interpretation. So its existence is irrelevant to model-theoretic semantic analysis. It plays no useful semantic role; it is not of semantic interest. 

>  I just did, above, and you agreed with it!  Notice that the sentence "A URI can map to *different* resources in *different* graphs" does not mention or constrain the number of interpretations that may be used.  You (wrongly) assumed that I meant "under any *single* interpretation".  But I am specifically raising the point that it is useful to consider multiple interpretations.

Then what you are doing here is not model-theoretic semantics. I am not sure what it is, but it appears to have no relevance to RDF. 

>> Each
>> interpretation is a mapping *on names*, not on graphs. GIven such an
>> mapping on names, the truth or falsity of all graphs is determined.
> Yes, for all graphs relative to *that* interpretation.  But it does *not* determine the truth-value of a graph relative to some other interpretation.

Of course. What is the point of saying this? This is trivial.

>  I'm being picky about this because you keep slipping into the single-interpretation assumption, and I'm trying to point out that it is useful to be able to talk about more than one interpretation at a time, and to apply *different* interpretations to different graphs.

It is not useful, because it is meaningless. It misses the entire point of defining interpretations in the first place. 

>> What does it mean to "use" I1 on G1 and "use" I2 on G2?
> It means to apply I1 to G1 and apply I2 to G2, i.e., to determine the truth-value of I1(G1) and I2(G2), per RDF Semantics.

That is not "per RDF semantics". The document does not define any notion of truth-value corresponding to this two-interpretation construction. 

>> Each of I1
>> and I2 apply to all the names in both G1 and G2. The "combination"
>> you have sketched is not an interpretation mapping, so (a) what is
>> it? and (b) what relevance does it have to what we are talking about,
>> which is interpreting RDF graphs?
> What "combination" do you mean?  I did not talk about combining either I1 and I2 nor combining G1 and G2.  I talked about considering the semantics of G1 and G2 *separately*.

Which is specifically prohibited by the RDF model theory (and indeed by any conventional model theory: nothing particularly to do with RDF.) As I keep reiterating, but you apparently have not fully grasped, interpretations are defined on the entire set of names, and apply to a name wherever it occurs. Restricting an interpretation mapping to a single graph misses the whole point of defining interpretations in the first place, which is to represent one way in which **names** can be interpreted. 

>> Here's the corrected version:
>> 1. Lemma. A URI maps to the same thing, no matter what graph it
>> occurs in. (Proof: Let I be an interpretation mapping and U a URI.
>> Then I maps U to I(U). The previous sentence did not mention graphs,
>> so it applies regardless of what graphs contain U. But I was
>> arbitrary, so this is true of any interpretation. QED.)
> Of course that is true of any *one* interpretation -- i.e., when you make the single-interpretation assumption.

What you are here calling the "single-interpretation assumption" is the basic assumption of model theory. Interpretations apply to an entire language, not to individual statements written in the syntax of that language. And if something is true in every (single) interpretation, then it is logically (necessarily) true: that is the whole basis of talking about validity of entailments. Entailment is *defined* to be preservation of truth in all (single) interpetations. 

>  But that isn't the point. The point is that the RDF Semantics specifically permits multiple interpretations.

of the entire language (ie of a vocabulary, in 2004 RDF , and of all URIs and literals, in 2013 RDF), not of individual graphs. 

>  The spec defines a standard way to determine the truth-value of *any* <interpretation, graph> pair.  It is explicitly agnostic about the interpretations (and the graphs) that may be used.

It does not restrict what interpretations may be used, of course, but it does define interperations as mappings on vocabularies (not graphs) and it says explicitly that it presumes that URIs and literals denote the same thing wherever they occur, ie in every graph in which they occur. 

> You are of course free to limit *your* use of the RDF Semantics to the single-interpretation assumption.  That is your prerogative.  But it is *not* a requirement of the RDF Semantics specification.

It is certainly how the specification was intended to be understood, and is understood by any reader who is familiar with the basic ideas of model theory.

>  Given n interpretations and n graphs, it is perfectly valid to use the RDF Semantics to determine the truth-values of each of those n graphs relative to those n interpretations, without in any way violating the spec.

Well, yes, the spec does not actually say anything about what anyone *does*. So there is no law against doing this, so to speak. But calling it "valid" is a stretch. The RDF semantic specification is intended to define a model theory, to be used to specify a semantics in the way conventionally used throughout formal logic, and as described in many textbooks. What you are suggesting here is not using the specification in this way, as a model theory, so it is a mis-use of the specification. For example, using your ideas, none of the inference rules provided in the 2004 specification would be valid. 

Clearly, however, you are immune to explanations, so I think I will give up at this point. If you wish to misuse the specifications in pursuit (a vain pursuit, I will add) of some half-baked fantasy of your own, I guess there is nothing I or anyone else can do to stop you. 

IHMC                                  (850)434 8903 or (650)494 3973   
40 South Alcaniz St.           (850)202 4416   office
Pensacola                           (850)202 4440   fax
FL 32502                            (850)291 0667   mobile
phayesAT-SIGNihmc.us       http://www.ihmc.us/users/phayes
Received on Monday, 25 March 2013 05:28:53 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 14:53:01 UTC