To the best of my understanding, Benjamin's Production Logic Programs are a very strong restriction of the (re)active rule paradigm of so-called production and event-condition-action rules. The restriction lies in the assumptions made under point 2 on page 8 and point 3 onb page 9. This restriction makes it possible to declaratively specify (side-effect-prone) procedure calls in heads of rules, to collect (some) procedure calls during a processing of the rules, and to process the procedure calls only after processing of the rules. This surely is a semantically sound approach. My doubt, however, is that this approach might suffice to express classical/expectable applications. At this point, I would advice not to design yet another rule formalism before application classes have been identified. Another point: The claim that processing Production Logic Programs either by forward chaining or by backward chaining has no impact on their semantics does not seem to me to be correct. Forwards processing means deriving all possible conclusions regardless of (one or several) queries (so-called goals). With Production Logic Programs, forward chaining would in general generate more procedure calls (to be processed aftwerwards) than backward chaining from a goal. Benjamin's email raises another thought: In my humble opinion, it would be preferable to investigate issues one by one. Meaningful steps might be: 1. what kind of (re)active rules are needed for what classes of applications -- this brings us back to analyzing/classifying use cases, 2. what semantics are possible/desirable, 3. forms of reasoning are possible/desirable, eg backwards/forwards chaining, stratified or well-founded negatyion, that fulfill the selected semantics, 4. what syntactic constructs might both make rule programs easier to write and respect the chosen semantics Francois -- Francois Bry http://rewerse.net scientific coordinator http://www.pms.ifi.lmu.de head of unitReceived on Friday, 30 December 2005 12:18:34 GMT
This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 2 June 2009 18:33:25 GMT