AceRules
Tobias Kuhn, 2008-11-24.
Requirements
- SWI Prolog is required that is available from http://www.swi-prolog.org/ . Version 5.6.61 is known
to work with AceRules.
- Compiled version of APE in ../ape. If APE is at a different location then the parameter in
parameters.pl has to be changed. APE is available under LGPL license from the Attempto website:
http://attempto.ifi.uzh.ch/site/downloads/ . Version 6.0-081023 is known to work with AceRules.
- If using the stable model semantics, the programs Smodels and Lparse need to be installed and the
path of their executables need to be in the path environment variable when running AceRules. These
programs are available under the GPL license and can be downloaded from
http://www.tcs.hut.fi/Software/smodels/ . Smodels 2.33 and Lparse 1.1.1 are known to work with
AceRules.
Interface Modules
Architecture
Basically, an AceRules program is processed in three phases:
- Parser
- Interpreter
- Verbalizer
The interpreter module is exchangeable. AceRules allows to choose between different semantics.
Currently, two interpreter modules are available for AceRules:
- Courteous Logic Programs
- Stable Model Semantics (with and without strong negation)
Shell Command
Important Notice:
The SWI Prolog command is considered "swipl". If this is different on your machine (e.g. "pl") then
the script won't work, unless you change it.
The script "acerules" is used for invocation from a shell environment:
acerules [OPTIONS] INPUT [OUTPUT]
INPUT is the file containing the AceRules program.
OUTPUT is he file in which the output is written (standard output device is taken if this parameter
is omited).
OPTIONS: The following options are possible. They have to occur in this order and they cannot be
condensed (i.e. write "-s -d" not "-sd"):
- "-s" or "--stable" for stable model semantics (without strong negation).
- "-g" or "--stable-strong" for stable model semantics with strong negation.
- "-c" or "--court" for courteous semantics. (Default)
- "-n" or "--normal" for normal output. (Default)
- "-d" or "--debug" for debug output.
- "-t" or "--trace" for trace output.
- "-a" or "--ace-trace" for trace output in ACE.