# Re: rule proto-proposal

From: pat hayes (phayes@ai.uwf.edu)
Date: 05/31/01

>Pat,
>
>
>>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
>>meaning?
>
>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
>purpose.
>
>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
drastically.

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.

I have none, personally.

Pat

---------------------------------------------------------------------
IHMC					(850)434 8903   home
40 South Alcaniz St.			(850)202 4416   office
Pensacola,  FL 32501			(850)202 4440   fax
phayes@ai.uwf.edu
http://www.coginst.uwf.edu/~phayes


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