Thanks for your replies. If IBL is just converting English words into
SQL relations, how is it using a logical language? You talk about using
negation-as-failure, which sounds like you may be using a Prolog variant as
the logical language, that gets compiled out into SQL if the interpretation
is successful. Could you place your logical language in the space of named
logical language types, for example, is it horn-logic, or description
logic, first order logic etc. ? (01)
I'm curious as to what sorts of logical statements are allowed. For
example, if I type (02)
"customer some-cust-number is not on the some-type plan effective
will that be flagged as a contradiction from (04)
"customer some-cust-number is on the some-type plan effective
Can I type (06)
"All cust-numbers are on the some-type plan effective some-plan-start-date" (07)
Does IBL handle quantification which is ubiquitous in English? Does it
handle negation, agreement in number, and which various kinds of
co-reference (pronouns, reference by alternate names etc). Does it handle
prepositions and prepositional phrases (if so, which ones). If not any of
the above, how does the user know what sorts of grammatical constructions
are allowed? (08)
Sorry I'm unfamiliar with this work, and it takes a while to get synced up. (09)
At 07:15 PM 1/2/2004 -0500, Adrian Walker wrote:
>Many thanks for your note, below.
>I have read your paper . Your CELT work goes further than anything
>else I have seen in the direction of using a controlled grammar and a
>large vocabulary together with a powerful logic engine.
>However, as you point out in the paper, "All grammars leak. No grammar
>can cover all of
>English, and CELT is no exception". This was also my experience in some
>much more modest work along the same lines as CELT.
>The Internet Business Logic system  attempts to solve a different
>problem from CELT. For the IBL, the problem is: How can we allow ordinary
>(non-linguist, non-programmer) people to specify requirements in English,
>and have a powerful engine -- linked to SQL -- meet those requirements
>automatically. In this scenario, NO linguistic maintenance is allowed,
>yet the vocabulary and grammar must be UNlimited.
>How can that be possible? Well, the approach is entirely different,
>somewhat simplistic, and there is of course a trade off. On the plus
>side, it's robust.
>As you noted, IBL agent programs contain sentences like "customer
>some-cust-number is on the some-type plan effective
>some-plan-start-date". That's not English as we know and love it, but it
>does convey more meaning to a person than p33(X,Y,Z). So, all that the
>IBL does in the way of NLP is to take "sentences" like that, and
>automatically set up corresponding predicate names that it can reason
>with. Basically a very simple idea, although the actual implementation is
>So as not to confuse this with the excellent work in full NLP by yourself
>and others, the IBL approach is sometimes called "lightweight English".
>The mapping of lightweight English sentences into predicates (and out
>again) is entirely hidden from someone writing and running the sentences
>in a browser. For the author-user, the system appears to be reasoning
>with just those sentences. New sentences can be added at any time, and
>there is no control over what they contain, beyond the requirement for
>"some-..." placeholders for variables. If a new rule uses a premise
>sentence that the IBL does not yet know about, the author-user gets a
>I hope the above answers your detailed NLP questions, below. If not,
>please let me know.
>Internally, IBL inferencing is much more powerful than RDF. It is
>terminating datalog with stratified negation-as-failure, plus arithmetic,
>plus aggregations. Questions that do not lead to recursion are compiled
>into SQL (when a DBMS is present). Questions that do lead to recursion
>are interpreted, with callouts to fragments of compiled SQL for the
>non-recursive bits. If the fact tables are small, the system works
>without SQL, and uses an inference method based on Backchain-Iteration, as
>described in .
>So, where to go from here ?
>One thought is that CELT and the IBL are in some sense a thesis and an
>antithesis about using natural language with logic. Is it useful to think
>about a synthesis ?
>Another thought is -- what would happen if we wrote ontologies directly in
>something like the IBL ? ( There are some small, running online examples
>of this at www.reengineeringllc.com )
>Finally, a nuts-and-bolts question please. I see that CELT is partly
>implemented in SWI Prolog. Do you by any chance know how to isolate SWI's
>excellent RDF parser from the rest of their system ? I have tried this,
>but the parser imports modules whose source I have not been able to find.
>Apologies to Peter if this discussion is drifting off-topic for the
>ontolog-forum. I look forward to further discussion, either on- or off-lists.
> Cheers, -- Adrian
> The Internet Business Logic system. Live, online at
> Towards a Practical Inference Method that is Simple Enough to be
>Proved Terminating, Sound and Complete. Journal of Automated Reasoning,
>At 10:30 AM 1/2/04 -0800, you wrote:
>> Thanks for clarifying. That fact wasn't apparent from what I had read
>> on the IBL web site. Where does the logical language reside in the IBL
>> system? Is that language RDF (which has extremely limited semantics, in
>> particular, no rules)?
>> talks about generating SQL from the pseudo-English statements. There
>> are many other questions I would have however. Since English words are
>> polysemous, how is disambiguation accomplished? The grammar shown at
>> <http://www.reengineeringllc.com/rule_examples.html> such as "customer
>> some-cust-number is on the some-type plan effective
>> some-plan-start-date" is certainly not grammatical English. How does
>> the user learn the syntax, and how is that syntax an improvement over
>> other computer languages like SQL? How does the user know or tell the
>> machine what ambiguous English words mean in a detail suitable for
>> formal inference?
>> I agree completely that we need to bind English to logic. In my own
>> work, I've used SUMO and KIF to provide explicit semantics, a standard
>> first order logic system for reasoning, mappings from the WordNet
>> lexicon to SUMO to specify the connection between language and meaning,
>> and a restricted subset of grammatical English to handle user
>> input. You might be interested in that work, which is described at
>> <http://home.earthlink.net/~adampease/professional/Pease-NLPKE.pdf>. If
>> you have time, I'd be interested in your questions, and any thoughts you
>> might have on how my approach would be compared with IBL, as well as
>> responses to my questions above.
>>At 08:28 AM 1/2/2004 -0500, Adrian Walker wrote:
>>>Thanks for your comments, below.
>>>You wrote: "...IBL as far as I can see isn't using a logical language."
>>>The logical basis for the IBL is 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, and in the earlier papers that it references. There's a
>>>model/fixpoint theory, an interpreter/compiler, and proofs that the i/c
>>>implements the model theory.
>>>So, I would argue that the IBL is using a logical language, in quite a
>>>strong sense. The "Semantic Web Presentation" at
>>>www.reengineeringllc.com argues further that binding English to a solid
>>>logical basis like this is going to be essential in the real world.
>>>Of course, we would all like to see a solution to the "big AI problem"
>>>of rigorously understanding all of natural language. The IBL FAQs
>>>mention that this is difficult. But meanwhile, the hope is that our
>>>system provides something reliable and useful, and perhaps a pointer to
>>>new approaches to the big problem.
>>>Thanks in advance for any further discussion.
>>> Best, -- Adrian
>>> INTERNET BUSINESS LOGIC
>>>Dr. Adrian Walker
>>>PO Box 1412
>>>CT 06011-1412 USA
>>>Phone: USA 860 583 9677
>>>Cell: USA 860 830 2085
>>>Fax: USA 860 314 1029
>>>At 07:29 PM 1/1/04 -0800, you wrote:
>>>> Specifying rules in a natural language has long been a goal of
>>>> programming language research and AI, but a very elusive one. IBL
>>>> however looks like yet another attempt to put some simple syntactic
>>>> sugar on top of SQL. This is potentially useful, but a very different
>>>> issue from the need to use a formal logical language to capture
>>>> semantics, rather than capturing syntax. IBL as far as I can see
>>>> isn't using a logical language.
>>>>At 09:29 PM 1/1/2004 -0500, Adrian Walker wrote:
>>>>>You wrote.... FWIW, my take is that topic maps are yet another syntax
>>>>>specification, lacking any logical semantics. So OWL, KIF or any other
>>>>>logical language is appropriate for capturing semantics (meaning),
>>>>>while topic maps are not. One can convert syntax and labels from one
>>>>>to the other, but semantics will be lost.
>>>>>You may be interested in the "Semantic Web Presentation" at
>>>>>www.reengineeringllc.com . It argues that there is yet another
>>>>>dimension to "semantics" -- namely that it's going to be necessary to
>>>>>use plain English computationally on top of whatever logical language
>>>>>The examples in the presentation can be run (and changed) by pointing
>>>>>a browser to the same site.
>>>>>Hope this is of interest. Cheers, -- Adrian
>>>>> INTERNET BUSINESS LOGIC
>>>>>Dr. Adrian Walker
>>>>>PO Box 1412
>>>>>CT 06011-1412 USA
>>>>>Phone: USA 860 583 9677
>>>>>Cell: USA 860 830 2085
>>>>>Fax: USA 860 314 1029
>>>>>Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
>>>>>Shared Files: http://ontolog.cim3.net/file/
>>>>>Community Wiki: http://ontolog.cim3.net/wiki/ To Post:
>>>>Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
>>>>Shared Files: http://ontolog.cim3.net/file/
>>>>Community Wiki: http://ontolog.cim3.net/wiki/ To Post:
>>Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
>>Shared Files: http://ontolog.cim3.net/file/
>>Community Wiki: http://ontolog.cim3.net/wiki/ To Post:
>Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
>Shared Files: http://ontolog.cim3.net/file/
>Community Wiki: http://ontolog.cim3.net/wiki/ To Post:
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx (012)