- From: Adrian Walker <adriandwalker@gmail.com>
- Date: Fri, 15 Sep 2006 20:01:14 -0400
- To: "Chimezie Ogbuji" <ogbujic@bio.ri.ccf.org>, "William Bug" <William.Bug@drexelmed.edu>, public-semweb-lifesci@w3.org
- Message-ID: <1e89d6a40609151701s11c26ddfwffb70497eb6bcff@mail.gmail.com>
Chimezie -- Interesting rumination on reasoners (below). Thanks for the references. You may like to ruminate further in the direction of "semantic" rules. Apologies if you have already considered this, but here goes..... It's possible to have a rule language and engine such that: 1. changing the order of the rules does not change what is derivable -- a rule just means what it says 2. the rules are in open vocabulary English, yet the semantics are strict 3. people with spreadsheet-level skills can edit and run the rules using a browser 4. step by step English explanations/plans, at the business or scientific level are available on demand 5. from the rules, the engine can automatically generate and run SQL that would be too complex to write reliably by hand. The results are explained as in 4. As you may know, all of the above is live, online in a Wiki-like system called Internet Business Logic. The URL is www.reengineeringllc.com, and shared use is free. There are a number of SW, lifesci and other examples that you can view, run and change, using a browser. You are welcome to write and run your own examples too. An overview paper is www.reengineeringllc.com/A_Wiki_for_Business_Rules_in_Open_Vocabulary_Executable_English.pdf (There are also presentations, FAQs, and tutorials). The engine is based on the axiomatic semantics in Backchain Iteration: Towards a Practical Inference Method that is Simple Enough to be Proved Terminating, Sound and Complete. Journal of Automated Reasoning, 11:1-22 I'd be interested to hear whether any of this meshes with your thoughts about FOL Axiomatic semantics of DL and RETE. Thanks in advance for comments, -- Adrian Internet Business Logic (R) Executable open vocabulary English Online at www.reengineeringllc.com Shared use is free Adrian Walker Reengineering PO Box 1412 Bristol CT 06011-1412 USA Phone: USA 860 830 2085 ----------------------------------------------------------//-------------------------------------------- On Fri, 15 Sep 2006, William Bug wrote: > I also believe Chemezie done very useful work in this arena > (http://copia.ogbuji.net/blog/keyword/data), though, > again, he'd be able to tell us more specifically how relevant it is to > OWL-based applications. Most of my recent rumination on reasoners has been shaped first by Benjamin N. Grosof, Ian Horrocks, and Raphael Volz's 2003 paper 'Description Logic Programs: Combining Logic Programs with Description Logic' [1], by the work done by Bijan Parsia, Yarden Katz, and Kendall Clark on Pychinko [2] , and by Jos Deroo's set of OWL rules [3]. Pychinko was the first attempt (that I know of) to implement Notation 3 reasoning with Charles Forgy's RETE algorithm, with *very* impressive performance results (which should come as no shock to those familiar with the superiority of the RETE algorithm). Unfortunately, most work in this area was focused on either adhoc rules - standard expert system scenario - or rules written specifically to express DL semantics. Jos Deroo's great work with euler has demonstrated that the OWL & RDF test cases can be passed by an explicit set of N3 rules that express DL semantics. There is ofcourse a concern with the use of N3 as the KR language - since it's not 'officially' sanctioned, but my preference for it is mostly that it more akin to Horn logic and full FOL than vanilla RDF/OWL. The additional expressiveness is very valuable for scenarios that require this - DL reasoning primarily. Ofcourse, as articulated in 'Description Logic Programs: Combining Logic Programs with Description Logic', not *all* of DL can be expressed by such a transposition, but there is plenty of precendent in mappings from DL to FOL - which can be expressed in N3 rules (and a good portion of which has already been captured in the rules used to pass the OWL/RDF tests). Along this line, I've been working [5] on a second generation (if you will) attempt to implement a RETE-like N3 reasoning algorithm (it must be called RETE-like because the original algorithm isn't even FOL-oriented). The main problems I've run into are not with the function-free horn-like subset of Notation 3 (where the only builtins are filters and not N-ary functions) but with the issues of variable dependence in a forward chaining system when you attempt to support n-ary 'functions' on top of the RETE algorithm. It begins to feel more like a bastardization of the algorithm that was really only meant for pattern matching. This is mostly not an issue with DL semantics as a *majority* of it can be expressed in function-free logical rules. Ultimately, in my opinion, I think there is much value in research in this area due to the unprecedented ability for logic programming algorithms such as RETE (and it's derivatives RETE II, TREAT, SOAR) to handle *very* large scale facts and rules. And the reality is that the set of logic rules that express DL semantics (mappings from DL to FOL) are quite miniscule compared to the normal rulesets that logic programming systems are built to handle and so the great potential exists to: - handle *much* larger fact bases and ontologies than standard tableaux-based reasoners - develop expert systems that allow the use of *both* adhoc rulesets in tandem with DL axiomatic rulesets This latter point could even accomodate reasoning scenarios that fall outside the capabilities of DL (such scenarios are well outlined in the first paper) My $0.02 (plus a little more) [1] http://citeseer.ist.psu.edu/grosof03description.html [2] http://www.mindswap.org/~katz/pychinko/<http://www.mindswap.org/%7Ekatz/pychinko/> [3] http://lists.w3.org/Archives/Public/semantic-web/2005Aug/0059.html [4] http://www.w3.org/2000/10/swap/doc/CwmBuiltins [5] http://copia.ogbuji.net/blog/2006-07-14/fuxi-mapping-from-rete-to-n3
Received on Saturday, 16 September 2006 00:01:27 UTC