W3C home > Mailing lists > Public > www-rdf-rules@w3.org > December 2002

RE: Is n3 a rules language or a logic language?

From: pat hayes <phayes@ai.uwf.edu>
Date: Thu, 12 Dec 2002 10:41:34 -0600
Message-Id: <p05111b07ba1e68f1083c@[]>
To: "Wagner, G.R." <G.R.Wagner@tm.tue.nl>
Cc: Sandro Hawke <sandro@w3.org>, www-rdf-rules@w3.org, timbl@w3.org, pfps@research.bell-labs.com

>  >>> Here one of the problems with N3. There is no indication in N3 of
>>>>  log:implies is supposed to be material implication, a proof rule, or
>>>>  other logical connective (such as, for example, some sort of relevance
>>>>  implication).
>>  In the sense of 'rule' I think you want (the one in which RuleML and
>>  rule engines are about rules) there is no fundamental difference. The
>>  use of "rule" rather than "implication" is a signal that you are not
>>  planning to use it in the context of a logically complete reasoner
>I think that we prefer the term "rule" over "implication" since
>we consider a rule not in the narrow sense of mathematical logic,
>but in the broader sense of a knowledge representation (KR) expression,
>and KR is not a branch of classical/mathematical logic but rather
>the other way around.

My goodness, you do have a way of making large assertions that are 
highly debateable. I absolutely do not accept your premis here.

>In real world domains, and in natural language,
>we use the term "rule" for denoting many different things with very
>different semantics.

I take it then that 'rule' in Rule ML can have no single semantics, 
and that (very much in the XML spirit) , RuleML is not intended to 
convey a uniform semantic framework, but instead to be all things to 
all men? That is fine, let me emphasize, but we need to be clear on 
the point.

>The same holds for the term "business rule", which
>is a popular concept in enterprise modeling and information system
>That's why, in RuleML, we use a basic distinction between at least
>three different types of rules: derivation rules, integrity rules,
>and reaction rules (a possible fourth kind of rule may be called
>"deontic assignment rules" subsuming permission, prohibition,
>duty assignment and empowerment rules).
>The discussion here (at rdf-rules) seems to be limited to certain
>types of derivation rules.

Yes, the discussion on this thread has been about rules in two 
senses: inference rule as in logic, and 'rule' as in logic 
programming, where it refers to a Horn clause.

>But notice that there may be many different
>types of such rules, and indeed there are many different derivation
>rule systems out there: normal/extended logic programs with one/two
>negations, intuitionistic logic programs, temporal/fuzzy/etc. logic
>programs, OO rule systems, etc. Most of these systems have some
>underlying non-classical logic, which does often not have any
>(genuine) implication connective.

I find it hard to generalize over such a range, but most logics that 
I am acquainted with have some kind of implication connective (other 
than logics which are deliberately restricted in some syntactic way 
so as to deliberately exclude it, obviously.) I note that all the 
examples you cite are systems which are considered to be a kind of 
programming language, and those, of course, typically do not have a 
normal assertional semantics. I think it might be worth emphasizing 
that all the SW languages so far contemplated are not programming 
languages in this sense and do have conventional logical semantics.

>Rules are simply more fundamental
>than implications as KR expressions.

I profoundly disagree. In this open sense 'rules' can mean almost any 
specification of any process, so they are not fundamental at all. A 
Fortran interpreter could be implemented as 'rules', but it would 
hardly thereby acquire the status of being knowledge representation. 
The microcode in my G4 chip can be seen as a set of 'rules'.

This is a deep issue in what might be called the philosophy of KR, as 
I expect you know. The SOAR architecture for example has been much 
argued over on just these grounds: is it a genuine theory of a 
cognitive architecture, or 'just' a rule interpreter?

>This also holds, e.g., for SQL
>which allows a type of derivation rule, called "views", but does not
>support an implication (in the query language).
>>  (or, possibly, that you are using it relative to a more
>>  'computational' semantics, such as minimal-model semantics, relative
>>  to which it is complete; but then you ought to think hard about
>>  whether you still want to call it the material conditional, maybe.)
>Under the minimal model semantics, a rule does no longer have the
>same intended models as the corresponding implication. This is easy
>to see: consider the rule q :- ~p. It has only one intended (i.e.
>minimal) model, which may be expressed by the set {q}, whereas the
>corresponding material implication ~p -> q, which is equivalent to
>q v p, has two intended/minimal models: {q} and {p}.

Right, precisely my point. As a larger point, the fact that this is a 
'rule' in both cases seems to me merely a shallow analogy; the 
alteration in the semantics changes the fundamental role as KR, since 
it changes the K that gets R'd.

IHMC					(850)434 8903   home
40 South Alcaniz St.			(850)202 4416   office
Pensacola              			(850)202 4440   fax
FL 32501           				(850)291 0667    cell
phayes@ai.uwf.edu	          http://www.coginst.uwf.edu/~phayes
s.pam@ai.uwf.edu   for spam
Received on Thursday, 12 December 2002 11:41:46 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 2 March 2016 11:10:13 UTC