- From: Pat Hayes <phayes@ihmc.us>
- Date: Mon, 28 Mar 2011 17:52:12 -0500
- To: Gregg Reynolds <dev@mobileink.com>
- Cc: nathan@webr3.org, SW-forum Web <semantic-web@w3.org>
- Message-Id: <E0422916-DDCF-44BF-9F15-93ED7466AA55@ihmc.us>

On Mar 28, 2011, at 7:26 AM, Gregg Reynolds wrote: > > > On Mon, Mar 28, 2011 at 5:20 AM, Nathan <nathan@webr3.org> wrote: > Gregg Reynolds wrote: > On Mon, Mar 28, 2011 at 12:12 AM, Pat Hayes <phayes@ihmc.us> wrote: > > Also no *syntactic* rule that allows me to map > > <ex:a> <ex:p> _:x . > _:y <ex:p> _:x . > > to <ex:a> <ex:p> _:x . This looks like it should be some kind of syntactic > reduction step, but I find nothing to justify elimination of the second > clause except semantic considerations. > > > It follows from the fact that a graph is defined to be a set of triples. > The set {a, a} is the same as the set {a}. > > > P.S. This is not syntax, it's semantics. While {a,a} = {a} is true, > "{a,a}" = "{a}" is not. By relying on the definition of set, the (implicit) > RDF abstract syntax mapping uses semantics to define a syntactic reduction. > Compare lambda calculus; 2+3 is the same as 5, but you don't get that for > free; you have to perform a syntactic reduction by rule. By the same token, > if you want to map > > [1] <ex:foo ex:bar ex:baz>, <ex:foo, ex:bar, ex:baz> > > to the abstract syntax <ex:foo ex:bar ex:baz>, you don't get to do it by > observing that a graph is a set; you have to have some explicit syntactic > rules allowing you to do it. Otherwise it is not syntax. > > I'm missing what you're getting at here, a Graph is a Set of Triples, so with basic set theory you get (A = B) ↔ (A ⊆ B)∧(B ⊆ A) or expressed logically (A = B) ↔ ∀x[x∈A ↔ x∈B] thus: order and duplicates don't matter and thus: cardinality is over distinct members. > > Right, but those are semantic equations, not syntactic operations. Pat's original statement was that leaning is purely syntactic; my point is that it cannot be entirely syntactic unless you have syntactic rules that allow you to transform the syntax. In other words, going from "{a, a}" to "{a}", logically speaking, is a matter of derivation; going from {a,a} to {a} is consequence. Or in lambda calculus: you cannot reduce "2+3" to "5" (NB: it's all about symbols) based on the equality of the fifth integer and the sum of the second and third integers. Just the opposite: it is only because application of the syntactic reduction rules allow you to derive "5" from "2+3" that you can infer they have the same denotation. That's why it's called the Lambda calculus. I want to know where the RDF calculus is, if there is one (it's not required; you can have consequence without derivability in MT). If you want inference or transformation rules on *character strings*, RDF indeed has no calculus. However, the RDF semantics document does give quite extensive inference rules defined on RDF graphs. > > The larger point is that RDF has at least two semantics (three if you count going from "resource" to "concept" or "meaning" or whatever as a semantic mapping), one of which looks kinda like syntax, and the specs don't make that clear. Confusion ensues. > > The RDF Semantics define the semantics, the Abstract Syntax is defined in terms of lexical and value space > > If you don't have symbols, you don't have syntax. You can define the words of a language as a set of integer symbols (i.e. '1', '2', etc.), but not as a set of integers -- unless you want to get really abstract and declare that the integers are to serve as symbols. Hodges, "A shorter model theory", p. 2: "[the symbols of a structure] can be any mathematical objects, not necessarily written symbols.." But they must be symbols. RDF abstract syntax does not have a symbol for blank nodes; ergo it is not syntax, and RDF graphs cannot be transformed by syntactic rules, because they cannot be written down, as it were, and syntactic rules would have nothing to operate on. > > Does that clarify anything? For me, it clarifies that your thinking on these matters is rather rigidly bound by one particular way of thinking about formal language theory, which is getting in your way of following the definitions in the RDF specifications. Slogans like "Its all about symbols" and "If you don't have symbols, you don't have syntax", and your emphasis on what counts as "syntactic", display this quite vividly. WIthin your mindset, it is fair to say that RDF does not have a syntax. You need to think slightly differently - more broadly - about syntax in order to understand the RDF specifications. You quote Hodges, who actually agrees with us in this. The symbols of a structure can be ANY mathematical objects. Quite. He does not add your gloss, that they must be 'symbols'. And this is in any case meaningless unless you tell us what a 'symbol' is, precisely; and I believe you will not find any such definition in formal language theory. It is true that many logic or semantic texts define symbols as made up characters drawn from an alphabet, but the metaphysical nature of these alphabets is not specified anywhere. Nothing in formal language theory or model theory requires 'symbols' to be entities rendered as character strings, and indeed the theories have been applied to graphical and diagrammatic notations without essential change. So just declare blank nodes to *be* symbols, drawn from a countably infinite alphabet, and all is well. You say that only symbols can be written down, so a "syntax" with entities that cannot be written down is not a syntax. But this does not follow from formal language theory, in fact it is explicitly denied by careful expositions (which Hodges provides, for example.) What is true is that when one is dealing with such (let me call them) non-lexical symbols, one cannot state syntactic rules and transformations by *displaying* the syntactic patterns to which the rules and transformations apply (in the way that EBNF notation does, for example.) Rather, one has to *describe* the rules and transformations in much the way that one has to describe such things in the wider world, i.e. mathematically, using the conventional language of mathematics. Which is exactly what the RDF specifications do. ( http://www.w3.org/TR/rdf-mt/#glossFormal ) To be sure, it is rather elementary mathematics, hardly more than the contents of the first few pages of a set theory text, but it is mathematics for all that. And if you allow yourself to simply read this very simple mathematics and take it at face value, I believe that anyone who can read Aho and Ullman will find it quite easy to understand. Does that help? Pat > > -Gregg ------------------------------------------------------------ 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, 28 March 2011 22:52:52 UTC