- From: Sandro Hawke <sandro@w3.org>
- Date: Mon, 08 May 2006 17:24:59 -0400
- To: public-rif-wg@w3.org
I was asked to clarify my use of the term "sound" in the context of RIF. This came up because I proposed a requirement "Sound reasoning with unknown dialects", or more fully, "RIF Core must allow sound reasoning with unknown dialects." [1] I think this is one of the main requirements which will constraint the extensibility design. The application context I'm imagining is use case 8, a query-answering process using deduction rules (database views) coming from a variety of sources. My requirement here is that I be able to incorporate rulesets which include unknown extensions, and to know that even in the worst case I will not get wrong answers. In other word, I might incorporate a ruleset that includes this rule: phoneNumberOfAssistant(Boss,Number) :- assistant(Boss,Assistant), phoneNumber(Assistant,Number). and also assistant(Boss,Assistant), phoneNumber(Assistant,Number) :- phoneNumberOfAssistant(Boss,Number). The first rule is a normal Horn clause. The second is not. I'm not sure what it is, really. :-) And I don't want my program to have to know either. I want it to be able to safely include the ruleset containing both these rules and make inferences which will be sound, even though it has no idea what the second rule is supposed to mean. It will certainly be incomplete because of not knowing what the second rule means, if it wasn't incomplete already. I believe this use of the word "sound" is normal and correct for logic. I'm asking that the conclusions of an inference procedure follow logically from its premise. The twist here is that the premise is written in RIF and may have parts which are opaque extensions as far as the inference procedure is concerned. Please note also that I understand many people invision using RIF only through translators, but I don't think that affects this discussion at all. For my purposes, the Translator+InferenceEngine can be thought of as an InferenceEngine which operates on RIF. Also, I understand that I'm only thinking about deduction rules here, but I think this requirement has an extension which covers production rules as well, I'm just not as clear about how to state it. There are negation/close-world situations in which this requirement may not be attainable. I'm concerned about that. Perhaps these cases can be somehow identified, so that users can be warner or automated processes can avoid the unsound-in-this-situation constructs. Does that make sense? Is this a requirement you would support? -- Sandro (I believe this e-mail addresses action items 6 and 7) [1] http://www.w3.org/2005/rules/wg/wiki/Sound_reasoning_with_unknown_dialects
Received on Monday, 8 May 2006 21:25:17 UTC