From: Drew McDermott <drew.mcdermott@yale.edu>

Date: Sat, 3 Nov 2001 18:31:06 -0500 (EST)

Message-Id: <200111032331.fA3NV6j27725@pantheon-po02.its.yale.edu>

To: www-rdf-logic@w3.org

Date: Sat, 3 Nov 2001 18:31:06 -0500 (EST)

Message-Id: <200111032331.fA3NV6j27725@pantheon-po02.its.yale.edu>

To: www-rdf-logic@w3.org

[Peter Patel-Schneider] I've been thinking some more about RDF reification and came up with the following questions for those of you who support RDF reification: Suppose you have an XML/RDF document that uses reified statements.... If you change rdf:Statement to RDF:STATEMENT in the document has anything really changed as far as RDF is concerned? No. If you think that something important has changed, what is it? Any inference system that's counting on seeing occurrences of 'rdf:Statement' and doing something with them will behave differently on the new document. Here's an analogy: Some logicians study first-order logic with equality. This is first-order logic augmented with a "reserved word," namely '=', plus axioms or inference rules that guarantee that formulas such as a=b -> (f a) = (f b) is a theorem. We could ask them the question: "If we changed '=' to '==' in your theory, has anything really changed as far as first-order logic is concerned?" The answer is, Yes and No. Let's distinguish between "vanilla logicians," who study ordinary first-order logic; and "equality mavens," who study first-order logic with equality. A vanilla logician would answer No, because the models of the revised theory are exactly the same as the models of the original theory, except that the symbol '==' now plays the role '=' played before. But equality mavens can't agree, because for them '=' is similar to a logical symbol (such as 'forall' or 'and') in that its semantics are *given.* Just as "p and q" is true in an interpretation if and only if p is true and q is true, so "a = b" is true if and only if a and b denote the same thing. Models in which they don't are ruled out a priori. Theories are complete only if they draw all conclusions true in *those models.* Hence in the realm of first-order logic with equality, asserting that 'Osama == lover(Alice)' doesn't have the same consequences as asserting that 'Osama = lover(Alice)'. If this is confusing, try the question "What if we changed occurrences of 'and' to 'schmand'; would it make any difference?" Obviously, if we change *everything,* i.e., revise all our axioms, inference rules, model theories, (lecture notes, textbooks, ...) so that 'and' is gone and 'schmand' replaces it, then the answer is No. But of course what Peter intended was that all the standard machinery remain, so that 'p and q' implies 'p', while 'p schmand q' implies nothing. In other words, it all depends on what you hold fixed. We all agree to hold the meanings of "logical" symbols fixed, and allow others to vary. In some treatments '=' becomes a logical symbol; in others 'knows' becomes a logical symbol; and so forth. The comeback is that rdf:Statement has not been constrained at all by the model theory, so there is nothing whose fixedness makes any difference. That's true of this particular model theory, but it's not necessarily true for the enlarged theories various RDF hackers may be relying on, explicitly or implicitly. Another objection is that rdf:Statement is in a different category from a predicate like '='. Equality applies to the same sort of entities as all the other predicates in the theory (numbers, for instance). rdf:Statement talks about an object at a different linguistic level entirely. This is a good objection to *some* argument, but not to the one I'm making. Nothing in my argument depends on the entities described by rdf:Statement being the same as or different from the entities described by other RDF triples. Obviously I have become more friendly to reification in recent months. I still agree that it raises some real problems. However, I don't think the one Peter mentions is among them. -- Drew McDermott P.S. I didn't understand this part: ....and doesn't use rdf:ID for resources or rdf:bagID. (This qualification is to get around the fact that rdf:ID for resources and rdf:bagID implicitly involve rdf:Statement. It could be relaxed by essentially modifying the expansion of these constructs.)Received on Saturday, 3 November 2001 18:31:20 UTC

*
This archive was generated by hypermail 2.3.1
: Wednesday, 5 February 2014 07:16:02 UTC
*