Re: rule proto-proposal

From: pat hayes (
Date: 05/31/01

>>Im afraid I disagree. In fact, this remark sounds to me to simply 
>>be nonsensical. What do you mean by 'treating a tuple in a logical 
>>way' if the tuple has no known relationship to any kind of logical 
>Only taking herbrand models into account an atom triple(s,p,o) 
>(syntax) corresponds to
>tuple  <s',p',o'> \in triple'  (semantics). Thats enough of logical 
>meaning necessary
>to do something useful with rules on triples. Do you disagree?
>If yes, please specify what else you need.

If we are dealing with ground atoms and restricting ourselves to 
Herbrand interpretations, then "logical meaning" is *identical* to 
syntax. (It would have been a lot less confusing if you had simply 
avoided the term 'logical' if you had this narrow a context in mind, 
since it doesnt really mean anything.)

If I am sure that the intended logical form of the triples is indeed 
this simple, then I can do something useful. If I were told that the 
intended logical form were something more complex that had been 
encoded in these triples, then I could do something else useful, but 
different. What I can't do is something useful if I don't know what 
the intended logical form is. If all I have is uninterpreted triples, 
I don't know enough to know what is useful and what isn't. Worse, if 
you have one meaning in mind and are doing one thing, and you send me 
your triples and I have something different in mind and start doing 
something else, the chances of our getting our knickers in a mutual 
twist are very high indeed.

>>>Can we please focus more on designing a useful rule language?
>>We got into this discussion because with our different notions of 
>>what a rule language is, we seem to have different notions of what 
>>'useful' means. I emphatically do not see DAML rules as intended to 
>>provide arbitrary open-ended programming functionality.
>Me neither.
>We can discuss what features we see essential for a rule language, 
>and probably
>will come up with a classification of different languages, each one 
>with a different
>My minimal requirements for a horn logic based language:
>1) The rule language should to able to XXXX RDF
>     ( choose XXXX from { process, transform, reason with, .... )

Well, we are designing a rule language for DAML, not RDF; and I have 
been thinking (along with Peter) of the rules as being for drawing 
conclusions, not for processing or transforming.  In other words, I 
don't see this as a programming language.

Maybe we should ask for a broader expression of views on this matter. 
If some of us are thinking of rules as things that DO things, and 
others of rules as things that involve reasoning, then we are almost 
certainly going to be steering in different directions.

>2) The rule language should support different RDF vocabularies
>    (this will get more concrete once we reach agreement that we want to
>    have more than just a fixed vocabulary ).

Different DAML vocabularies, sure. However, it should also allow 
someone to write rules using a particular DAML vocabulary(ies).

>3) The rule language should be able to distinguish between different 
>RDF data sources
>     (data is distributed and has different properties).

OK, though it seems to me that we have the ability to do this already 
by our use of URI# in DAML namespaces: the vocabulary wears its 
source on its sleeve, so to speak. What more do we need?

>More requirements I would argue for
>4) Closed World Reasoning  (test if a triple is in a given RDF model or not)

Beep! Two different things. Testing for inclusion doesnt of itself 
need CWR (as I understand the term). CWR would allow you to infer 
from its not being there to its being false, and Im not sure that we 
do want to have this in DAML. It would change the logic rather 

I think a more useful way to go is to ask how we might provide the 
expressive power to conclude that something was absent, and allow 
users to write their own CW assumptions explicitly if they want to do 
so (or use some other localizable restriction, see below).

Anyone got any ideas on how to do that?

>    (requires a suitable semantics for negation - well founded 
>semantics is suggested for
>    various reasons).

Blech. I like negation to mean negation. This would make DAML 
nonmonotonic, for example.

How about allowing people to say that a given namespace is CW, and 
then wellfounded negation semantics can be used within it? That would 
allow DB folk to use efficient negation encodings, without having a 
nonstandard negation infecting the entire semantic web.

>5) At least syntactically as expressive and convenient as possible 
>(e.g. FOL-bodies
>    in rules)

I thought you wanted Horn clauses? If you are going to allow abitrary 
FOL, then let's stop talking about 'rules' and move to a 
fully-fledged FOL reasoning system. But we will need to find a way to 
encode FOL in RDF, quantifier scopes and all.

>What are your concrete requirements?

I have none, personally.


IHMC					(850)434 8903   home
40 South Alcaniz St.			(850)202 4416   office
Pensacola,  FL 32501			(850)202 4440   fax

This archive was generated by hypermail 2.1.4 : 04/02/02 EST