Re: what is the meaning of the RDF model theory?

>From: "Pat Hayes" phayes@ai.uwf.edu
>
>>  >Well let me rephrase:  Being able to ~represent~ the thing inside the
>>  >computer should be our requirement.
>>
>>  Yes, sure. But now follow through on that thought. There are the
>>  integers, let us suppose, and we invent a way to represent them in
>>  the computer, say using base-4 numerals: 0 ,1, 2, 3, 10, 11, 12, ...
>
>I would not say that was ~representing~ the ideal number inside the
>computer.  Rather to do that I would put a node (perhaps even a RDF node)
>inside the computer and say of that node that it ~represented~ a particular
>integer.

OK, and how will you do that? You can't put the *integer* into the 
computer; the best you can do is to use a numeral. (What base will 
you use to write the numeral?) Now you have *two* representations of 
the number in your computer: the numeral and the node. Why do you 
need two?

>Here I ~tilde~ the word 'represent' so that you will understand
>that I am giving it my particular meaning.

Thanks for the warning, but that doesn't really help me know what 
your particular meaning is, however. Why don't you use words the way 
everyone else uses them? Its usually the best way to communicate.

>  The base-4 numeral strings as
>well as the computer's method of operating with those strings could then be
>related to that node via some property arc.
>
>>  Now we have one thing in the computer which we can define operations
>>  on, and something else, not in the computer, which that thing in the
>>  computer is supposed to 'represent'.
>
>Yes.  But the thing we put in the computer is not the ideal number ... nor
>is the thing in your mind the ideal number.

I agree, that is my point. We all use representations to talk about 
the world. Believe me, I DO understand this. I have been writing 
papers on this general topic now for about 30 years. (Not that I want 
to pull rank or anything, but just you reassure you that you don't 
have to keep on explaining the same point back to me. )

>That ideal number is something
>that both you and the computer can only imagine. You imagine it your way
>.... me, my way ... and we could let the computer imagine it with its piddly
>little node.  Would that be ok?
>
>>How would we - we humans, who
>>  are building this thing - describe this whole set-up? Wouldn't it be
>>  reasonable to talk about the computable representations on the one
>>  hand, and the (possibly uncomputable) things they represent, on the
>>  other, and talk about the correspondence between them?
>
>Yes I agree, that would be reasonable.  I want to do that :)
>
>Thing is, if we are desinging RDF for both computers and humans to read and
>write, we should (imho) dumb it down such that the computers can compute
>whatever is the ~content~ in some reasonable amount of time.

BUt as you just yourself were at such pains to explain to me, the 
computer has no direct access to the content; it only has 
representations. So what do you mean by ~content~ here?

>  > We might for example say that the numeral '100'
>>  represents the number 16 in our representation system.
>
>I don't like this narrow way of ~representing~ a number ... probably for the
>same objections that you might bring up.

Well, it might be narrow, but it has served the human race well for 
about two millennia. I'm reasonably happy with it, myself.

>
>>  If you are comfortable with this way of talking, then you are doing
>>  model theory. That's all an MT interpretation (of a representation
>>  inside the computer) is: a collection of things that the symbols are
>>  supposed to represent, and a mapping between the symbols - more
>>  generally, expressions - and those things. MT just does this in a
>>  more systematic and general way, is all.
>
>Yes I am comfortable with this way of talking with the substitution of my
>~represent~ for your represent.  It is, after all, just the correspondence
>theory of truth .. please correct me if that is not so.

Yes, it is, but made somewhat more precise and given some mathematical bite.

>
>>>   If we cannot represent the thing inside the computer,
>>>  then the computer cannot deal with that thing.
>>
>>  Its not intended for the computer to deal with. It is for us, to help
>>  us talk about what the computer does.
>
>I was trying to get the computer to understand these things in the same
>terms that we talk about them.  I see no reason that we cannot do this,

I would agree in principle. However I also have a deep respect for 
the limitations of current computer technology compared to machines 
made of meat, as Minsky describes homo sapiens; a respect that arises 
from a long time trying to understand those meat machines well enough 
to implement them.

>though it might take a different kind of viewpoint than was possible before
>we actually had computers.
>
>>>  There are lots of ways to infer things in lots of different kinds of
>>>  logic. But inevitably they all come down to an algorithm.
>>>  Represent the algorithm that generates the behavior called
>>>  inference and you have adequately defined what it means
>>>  to infer.
>>
>>  Now tell us what it means to infer *correctly*, without somehow
>>  referring to truth or meaning.
>
>If a mechanism infers some arc which is in contradiction to its axioms, then
>it is inferring incorrectly.  How about that?

Fine. Now tell me what 'in contradiction with' means. Im not just 
playing silly games here, but trying to force you into recognizing 
that you are in fact using semantic terminology even as you are 
denying that you are using it.

>
>>>  Problem is that if such a theory cannot be represented in the
>>>  computer, then it is just for the professors and the priests
>>
>>  For any human being who wants to talk and think and theorize
>>  precisely about his program's meanings. If you don't want to do that,
>>  then by all means do whatever makes you happier. Some of us do,
>>  however.
>
>I want to do it too ... I do ... I do.
>
>>>  and cannot have any bearing on
>>>  the behavior of the computer except indirectly through the action of the
>>>  priests and professors.  Please don't get me wrong and that that as a
>>>  slight against  priests and professors.  But mathematically I think we
>>>  can get them out of the loop.
>>
>>  But why would you want to? You ARE one of them.
>
>You flatter me, but I will at least cop to being human ... though you don't
>really know that, do you.  The thing that talks from mbox seth@robustai.net
>could, for all you really know, actually be an advanced bot.  See,  this
>thing that talks from that mbox just loves to play it is a computer .. and
>loves to find and employ computers that are good at playing they are human.
>So as this technology advances, making that distinction will become very
>tenuous indeed.

Yes, yes, I know, I know.  This is the Turing/McCarthy AI dream. But 
I don't think it will ever happen, in fact; it is like someone in the 
15th century confidently predicting that aircraft will one day be 
like giant birds. In a sense they are, but in all interesting senses 
they are not. The distinction is not tenuous right now and I see no 
reason to expect it to become tenuous in the forseeable future. But 
this is a debate that belongs in another forum.

>
>>>  Why anoint just one program?  Why not specify in RDF which
>>>  interpreter and inference engine applies for each context?
>>
>>  How? That is an infinite regress. If the interpreter defines the
>>  meaning of the RDF and is itself defined in RDF, where do we start?
>>  You can bootstrap, but you have to start somewhere.
>
>In this context I did not say 'the interpreter would define the meaning of
>the RDF'.  What do you mean when you refer to meaning, anyway?  I seems to
>me that your terms are in infinite regress, not mine.  To a computer
>operating on an arc in its memory, there is no question what it means ...
>only whether the arc is there or not ... or if the arc can, or can not, be
>inferred with the axioms and inference engine that apply to that particular
>arc.

Obviously you have failed to understand the point I was trying to 
make. I refuse to attempt it again.

>
>>>  There is no need to define Windows XP as part of the definition of
>>>  RDF. But we could define a virtual machine interpreter that would
>  >> function on RDF graphs to define (and manifest) behavior.
>>>  I know  this is possible.
>>
>>  Sure, but its just as easy (actually easier) to define one of these
>>  to draw invalid conclusions as it is to draw valid ones, so who is to
>>  say which one is right? Just behaving doesn't mean that one is
>>  behaving *correctly*.
>
>We can define correct behavior in relationship to particular sets of axioms
>and an inference .. can we not?

If by 'inference' you just mean a rule, then the inference might 
itself be wrong; rules can be wrong or invalid, of course (eg: from P 
infer( P and Q)). If by 'inference' you mean 'inference which 
preserves truth' , ie valid entailment, then you are using a semantic 
notion.

>   I thought that was what logic did.

You only know about part of logic, it seems. You are talking about 
proof theory; I am talking about model theory.

>Aside
>from that there are many uses of RDF graphs that claim no relationship to
>any particular set of axioms and inference engines.  I hope that the RDFMT
>will not be running around calling those alogical sets of RDF statements
>meaningless.

Not at all. The utility of a model theory lies in the fact that it 
makes no commitment to any particular set of axioms or rules. It 
simply requires that rules and axioms preserve truth in any 
interpretation.

>  In fact,  I would hope that this theory would be agnostic as
>to the what those statements mean to humans and machines.

I have no idea what that means.

>
>>>  An interpreter running on RDF type graphs is so simple that even
>>>  I can understand it.
>>
>>  OK, what does it do if it has two copies of the same graph but with
>>  the anonymous nodes permuted? Is it allowed to put new names on the
>>  anonymous nodes if they don't clash with any other names? Justify
>>  your answer :-)
>
>I can't figure out what you mean by 'nodes permuted'.  But let me have a go
>at this anyway ...
>
>If some process knows that two graphs are the same, and if there are
>sufficient URI in them to bootstrap the process, then there is some process
>which can discover the node to node correspondence between the graphs.  Were
>the two graphs to be merged, they would end up being just the one graph.
>
>If an anonymous node is read into a  graph,  and there are ways to infer
>that it is the same as an already existing node in that graph , then the
>semantic processes that are in charge of keeping the graphs should merge the
>nodes.

I agree, sure. But there are no such ways in RDF, as the model theory 
makes clear. (There are in DAML+OIL, which has a more complicated 
semantics to go with its more complicated syntax.)

>  TimBl gave us a beautiful  mentograph of this ... shuttle back and
>forth between the two slides ... you can't miss the point ... note that, per
>the graph alone, they are all anonymous nodes:
>
>http://www.w3.org/2000/Talks/0906-xmlweb-tbl/slide6-6.html
>http://www.w3.org/2000/Talks/0906-xmlweb-tbl/slide7-6.html
>

This seems to be an example of adding new anonymous nodes rather than 
identifying two of them.

Pat Hayes
-- 
---------------------------------------------------------------------
IHMC					(850)434 8903   home
40 South Alcaniz St.			(850)202 4416   office
Pensacola,  FL 32501			(850)202 4440   fax
phayes@ai.uwf.edu 
http://www.coginst.uwf.edu/~phayes

Received on Wednesday, 24 October 2001 16:23:42 UTC