Code and data for AAAI17 paper Combining Logical Abduction and Statistical INduction.
Make sure pkg-config
can load mlpack
and swipl
headers and libraries.
If you have compiled swipl-devel
from scratch and installed it in /usr/local
, then you should use following
command to add it to PKG_CONFIG_PATH
:
export PKG_CONFIG_PATH=/usr/local/share/pkgconfig:$PKG_CONFIG_PATH
The mlpack library is usually installed
in /usr/local
, but its package config file is usually located in lib64/pkgconfig
:
export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig:$PKG_CONFIG_PATH
Then you can test the installation by:
pkg-config --cflags mlpack
pkg-config --cflags swipl
If they output the library paths correctly, you can enter the src/core
directory and make the C external predicates for SWI-Prolog:
cd src/core
make -j$nproc
First add the library paths of mlpack
and swipl
to your LD_LIBRARY_PATH
:
export LD_LIBRARY_PATH=/usr/local/lib/swipl/lib/x86_64-linux:/usr/local/lib64:$LD_LIBRARY_PATH
Extract the dataset:
tar -xvf data.tar.bz2
Then call the testing prolog scripts in src/prolog
directory to run the
experiments:
cd src/prolog
swipl test.pl
Now please call the learning predicates to run LASIN, e.g.:
-? test_go_M(10, Model, [200, 0.4, 0, 100], stroke).
More parameter settings and examples are listed in learn_dict.pl
and
learn_dict_new.pl
.
We are optimising and tidying up the code, instructions about configuration and parameter settings will be added to this README file after the cleanup. Sorry about the inconvenience!