Hi Adam, (01)
Many thanks for your note, below. (02)
I have read your paper [1]. 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. (03)
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. (04)
The Internet Business Logic system [2] 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. (05)
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. (06)
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 somewhat complicated. (07)
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". (08)
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 friendly warning. (09)
I hope the above answers your detailed NLP questions, below. If not,
please let me know. (010)
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 [3]. (011)
So, where to go from here ? (012)
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 ? (013)
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 ) (014)
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. (015)
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. (016)
Cheers, -- Adrian (017)
[1] http://home.earthlink.net/~adampease/professional/Pease-NLPKE.pdf (018)
[2] The Internet Business Logic system. Live, online at
www.reengineeringllc.com . (019)
[3] Towards a Practical Inference Method that is Simple Enough to be Proved
Terminating, Sound and Complete. Journal of Automated Reasoning, 11:1-22 . (020)
At 10:30 AM 1/2/04 -0800, you wrote:
>Adrian,
> 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)?
> <http://www.reengineeringllc.com/what_is_internet_business_logic.html>
> 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.
>
>Adam
>
>At 08:28 AM 1/2/2004 -0500, Adrian Walker wrote:
>>Adam --
>>
>>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
>>
>> www.reengineeringllc.com
>>
>>Dr. Adrian Walker
>>Reengineering LLC
>>PO Box 1412
>>Bristol
>>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:
>>>Adrian,
>>> 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.
>>>
>>>Adam
>>>
>>>At 09:29 PM 1/1/2004 -0500, Adrian Walker wrote:
>>>>Adam --
>>>>
>>>>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
>>>>is chosen.
>>>>
>>>>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
>>>>
>>>> www.reengineeringllc.com
>>>>
>>>>Dr. Adrian Walker
>>>>Reengineering LLC
>>>>PO Box 1412
>>>>Bristol
>>>>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/
>>>>Subscribe/Unsubscribe/Config:
>>>>http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
>>>>Shared Files: http://ontolog.cim3.net/file/
>>>>Community Wiki: http://ontolog.cim3.net/wiki/ To Post:
>>>>mailto:ontolog-forum@xxxxxxxxxxxxxxxx
>>>
>>>_________________________________________________________________
>>>Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
>>>Subscribe/Unsubscribe/Config:
>>>http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
>>>Shared Files: http://ontolog.cim3.net/file/
>>>Community Wiki: http://ontolog.cim3.net/wiki/ To Post:
>>>mailto:ontolog-forum@xxxxxxxxxxxxxxxx
>
>_________________________________________________________________
>Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
>Subscribe/Unsubscribe/Config:
>http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
>Shared Files: http://ontolog.cim3.net/file/
>Community Wiki: http://ontolog.cim3.net/wiki/ To Post:
>mailto:ontolog-forum@xxxxxxxxxxxxxxxx (021)
_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Subscribe/Unsubscribe/Config:
http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx (022)
|