Logic Form

Fri Jan 4 22:16:15 CST 2008

Two days ago I created (AFAIK) the first free Logic Form (http://en.wikipedia.org/wiki/Logic_form) parser, by postprocessing the output of the Enju predicate parser (http://www-tsujii.is.s.u-tokyo.ac.jp/enju/).

Update: I have since found another freely available logic form parser on the web called Boxer.


The Nutcracker RTE system, which uses Boxer, has recently been released to the public. In trying to run it however, I may have not given it enough time, but the provers were going for a long time. If anyone has any insight into this, please let me now.

Input:  The Earth provides the food we eat every day.
Output: Earth:n_#1(x1) provide:v_#2(e1, x1, x2) food:n_#1(x2) we(x3) eat:v_#1(e2, x3, x2; x4) day:n_#1(x4)

This is the first step for a FLOSS/Free Software/Open Source engine for:

Note that Enju itself has a license that does not appear to be free software.

This system is part of the FormalizeICodebase.

Note that the day after I wrote this I rewrote in OO Perl it to more comprehensive and implement more of the features we see in the datasets that have been released. More work remains but the system is already highly usable.

The software has been released but do not use it for military purposes. Use it to improve the quality of life for everyone!


These results are inaccurate. I was an arrogant dumbass. These results are this good because the test was run on the training set that the software was developed on. In the future I will make sure to train and develop with one set and then run the test once only on a previously unseen test set.
Argument Precision = 0.683273
Argument Recall = 0.637064
Predicate Precision = 0.819827
Predicate Recall = 0.831109