- From: Dan Connolly <connolly@w3.org>
- Date: Thu, 17 May 2001 21:41:28 -0500
- To: Graham Klyne <GK@ninebynine.org>
- CC: www-rdf-logic@w3.org
Graham Klyne wrote:
>
> At 10:15 PM 5/16/01 -0500, Dan Connolly wrote:
[...]
> >II. Semantics.
> >
> >An interpretation I is a directed,
> >labelled graph; the vertices
> >and the edge labels come from the
> >same set; let's call it N[I], for nodes.
> >Let's call the labelled
> >vertices S[I]; so S[I] \subset N[I] x N[I] x N[I].
>
> Did you really mean labelled vertices here? Labelled edges makes more
> sense to me.
Labelled edges. Right.
> >An interpretation I satisfies a formula F
> >if there exists an assignment A of
> >the existentially quantified variables
> >in F to N[I] such that
> >for each atom (p, s, o) in F,
> >the triple of what I and A say those terms
> >denote, (p', s', o'), is in S[I].
>
> This seems to miss something. I thought the definition of satisfaction
> required some notion of truth value. Also, my reference defines
> satisfaction in terms of a formula F, an interpretation I and a
> substitution A, as "A satisfies F (under interpretation I)..."
I lumped it all together: RDF formulas can only have
existentially quantified variables; they're true
iff there exists an assignment of the variables
that works.
> It might
> be easier to consider F by cases. E.g. for a given formula F and
> interpretation I, and some assignment A of members of N to variables in F:
>
> Case 1: F contains a single atomic formula with no variables; i.e. the
> interpretation of all terms in F is a specific member of N.
> A satisfies F iff I assigns the truth value TRUE to the member of
> F. (i.e. irrespective of A)
er... I assigning TRUE to F's interpretation, (p', s', o'), is
the same as (p', s', o') \elt S[I].
[...]
> Case 4: [by convention?] if F is the empty set, A satisfies F (for any A
> or I).
It's not by convention; it's by definition: I and A satisfy F
if all the (p, s, o) are in S[I]; if there are no (p, s, o),
it falls out in the wash.
> >An interpretation is a model for a
> >set of formulas if it satisfies all the formulas.
>
> The definition of model that I have is more strict here:
>
> defn: A formula F is true for I iff every assignment A of N to variables
> satisfies F
Er... that's for universally quantified variables, no?
No such thing in RDF 1.0.
> defn: An interpretation I is a model for a set of formulae {Fj} iff every
> Fj is true for I.
That's what I said.
> The key difference here is that, to be a model, the interpretation must
> provide satisfaction for *every* set of variable assignments.
Not for existentially quantified variables, I don't think.
> >That's it for the basics.
> >
> >Note that the prinicple of erasure holds:
> >any interpretation that satisfies {A1, A2, A3}
> >also satsifes {A1, A2}.
>
> I think this follows pretty directly from my case 2 above. I think this
> bit captures the "conjunctive semantics" of RDF.
Yup. That's the point.
> >Does that answer the sorts of questions
> >that a model-theoretic semantics is supposed
> >to answer?
>
> It seems to tell us that for every valid interpretation of RDF, for each
> statement there exists a unique resource with certain properties. It don't
> think it says anything about how statements about this resource relate to
> the corresponding statement.
Er... right; would you expect it to?
> Question: If we apply model operators to this
> resource, do we need something outside the semantics of the model operator
> to tell us that it applies to the corresponding statement?
I don't know what a model operator is.
> I'm not sure that having a unique resource for each statement is quite what
> RDF anticipates. It seems to me that RDF allows multiple resources (i.e.
> interpretations of different URIs) that have a similar relationship to the
> original statement. Maybe Rf would be more usefully defines as a relation?
I don't think I follow you. But I'm quite sure that the spec
says that if subject(x)=subject(y) and predicate(x)=predicate(y)
and object(x)=object(y), then x=y. That's what "triple" means, no?
> (e.g. Rf( p, s, o, r ) being TRUE if r is a reification of (p,s,o) in S.)
No, that doesn't seem right.
> >Pat asks, in his message of Wed, 16 May 2001 20:54:38 -0400 (EDT)
> >| it isnt entirely clear whether or not relations can
> >| be objects
> >
> >Yes and no; existential variables can go in the 'predicate'
> >slot in formulas, but the (p, s, o) structure in
> >an interpretation is just like one first-order relation;
> >so there aren't any actual logical relations
> >in N.
>
> I don't understand this bit.
Look at it this way: an RDF formula
<rdfs:Class about="http://www.w3.org/2000/01/rdf-schema#Class"/>
might look like
(rdfs:Class rdfs:Class)
but this semantics makes it out more like
(PropertyValue rdf:type rdfs:Class rdfs:Class)
so the terms in the RDF syntax all go in
argument slots, not the predicate slot.
Otherwise, we'd have rdfs:Class denoting an
element of itself. Bzzt.
> >| (if so, the model theory
> >| required is going to be a bit more complicated)
> >
> >I have been trying, without success, to get my head
> >around semantics of lambda calculus and all that.
> >By this account of things, it seems that I don't need to.
>
> Hmmm... echoes of Scott&Strachey denotational semantics?
Dunno.
> [...]
> >| And
> >| when reification appears, it seems that we have to put the triples
> >| themselves into the domain.
> >
> >By Sergey's account, only indirectly, thru the Rf thingy.
>
> I'm getting out by depth, but... I think this is a difference between an
> interpretation to (semantics over?) a reflexively defined domain compared
> with semantics of relexion. I think that using a denumerable, reflexively
> defined domain doesn't introduce any hard problems.
I dunno about reflexion. It looks to me like RDF syntax
has one function symbol: reify(p, s, o).
> >| What *is* a triple, then? What kinds of
> >| properties does it have? Are the triples in the domain of
> >| quantification the same triples used in RDF syntax,
> >
> >No; the syntax has URIs and anonymous terms (i.e. existentially
> >quantified variables); the domain of quantification
> >is N.
>
> "Domain of quantification" is a new one on me. Is this the same as the
> "domain of dioscourse"?
That's the way I understood the question.
> >(of course, N may contain some strings and URIs and such,
> >but that's beside the point, right?)
>
> Ummm... that might be the edge of a precipice. It seems to be OK for the
> model theory you've outlined, but also seems to fall outside the expected
> interpretation of URIs discussed elsewhere.
I don't see that.
> I guess the real problem comes if you then want to introduce (and define
> semantics for) some function that operates in the domain of discourse to
> map a string to some proposition.
Why does that look like a problem?
> >| or are they
> >| abstract things denoted by the RDF syntax?
> >
> >Yes.
> >
> >Of course, this is that funny use the word 'abstract';
> >in fact, an interpretation's domain might be
> >very concrete things: people, places, rocks, houses, no?
>
> Hmmm... see above.
I don't follow.
--
Dan Connolly, W3C http://www.w3.org/People/Connolly/
Received on Thursday, 17 May 2001 22:41:34 UTC