RE: Literals (Re: model theory for RDF/S)

At 04:57 PM 10/5/01 -0500, Pat Hayes wrote:
>Well, it all depends on what you mean by 'straightforward inferencing' . I 
>would say that the use of log:implies goes beyond RDF inference already, 
>so I see no harm in allowing some inferential extensions that are capable 
>of doing things like treating integers specially, calling out the 
>inference engine to an arithmetic equation-solver, for example. 
>Industrial-strength inference engines often do this kind of thing. I think 
>SNARK has a general-purpose way of defining them and attaching them to the 
>unifier. The Cyc inference engine has about 25 special-purpose callouts 
>for things like partial order embeddings, checking graph matching, 
>temporal interval reasoning and so on. I imagine that useful categories of 
>literal would have appropriate inference subengines definable for them. 
>This does go beyond a basic RDF reasoner, but then literals go beyond 
>basic logic, so that's what you would expect, no?

Aha!  And in order to embed certain behaviours in an inference engine, one 
needs to know something about the interpretations of the things involved, 
methinks.  This is consistent with the view the MT takes w.r.t. 
literals:  LX : literal -> LV  is required to be part of *every* 
interpretation.

I have been feeling uneasy about the direction of discussion that suggests 
that literals aren't really needed at all.  Every programming or 
representational language I can think of has some concept of literals -- it 
seems they're just too useful to forego.

Even the view that Sandro has been suggesting, that literals are broken 
down into sequences of things called string:Uxxxx, I think is still 
appealing to the idea of a character literal, even if its name has URI 
syntax.  I think it's true that one can reduce all literals to this 
simplest form and then build all other values from them -- that sort of 
thing is the bread-and-butter of basic model theory, no?  But I don't think 
it's helpful.  We don't refer to Principia Mathematica (sp?) every time we 
want to use the properties of natural numbers, do we?

I think there are a number of "basic" value types whose use is sufficiently 
universal that they are usefully regarded as primitives of our 
representational language.  Exactly what should be in this set of primitive 
value representations is, and I suspect always will be, a matter for 
debate.  But I'm sure there are some we can regard as universally 
useful:  strings (sequences of characters), non-negative integers, truth 
values, ...

Which leads me to the thought that maybe the MT should be less agnostic 
about the nature of literals?  I.e. to provide some (partial) definition of 
the LX mapping?  But this presumes that we know more about the literal than 
the sequence of characters used to represent it, which I think brings us 
back to another discussion we're already having.

#g


------------
Graham Klyne
GK@NineByNine.org

Received on Saturday, 6 October 2001 05:00:25 UTC