Patrick Lühne
c294a29cb2
This adds support for declaring predicates as placeholders through the “#external” directive in the input language of clingo. Placeholders are not subject to completion. This prevents predicates that represent instance-specific facts from being assumed as universally false by default negation when translating an encoding. This stretches clingo’s usual syntax a bit to make the implementation lightweight. In order to declare a predicate with a specific arity as a placeholder, the following statement needs to be added to the program: #external <predicate name>(<arity>). Multiple unit tests cover cases where placeholders are used or not as well as a more complex graph coloring example.
2.0 KiB
2.0 KiB
Change Log
(unreleased)
Features
- support for declaring placeholders with the
#external
directive
Internal
- drops Boost dependency in favor of the header-only command-line option library cxxopts
0.1.6 (2017-06-12)
Features
- unique IDs for all variables (user-defined variables are renamed)
- support for hiding predicates from completed output by using
#show
statements - more simplification rules with
--simplify
- command-line option
--parentheses
to fully parenthesize the output - adds multiple example instances for experimenting
Bug Fixes
- adds missing error message when attempting to read inaccessible file
- removes unnecessary parentheses after simplification
- fixes incorrect simplification with binary operations in arguments
0.1.5 (2017-05-04)
Bug Fixes
- fixes lost signs with negated 0-ary predicates
0.1.4 (2017-04-12)
Features
- completion of input programs (optional)
- command-line option
--complete
to turn on completion
0.1.3 (2017-03-30)
Features
- support for anonymous variables
Bug Fixes
- fixes incorrectly simplified rules with comparisons
- fixes misleading error message concerning negated, unsupported body literals
0.1.2 (2017-03-23)
Features
- simplification of output formulas (optional)
- command-line option
--simplify
to turn on simplification
Bug Fixes
- fixes incorrectly translated choice rules with multiple elements in the head aggregate
Internal
- explicit syntax tree representation for first-order formulas
0.1.1 (2017-03-06)
Features
- support for choice rules (without guards)
0.1.0 (2016-11-24)
Features
- initial support for translating rules in Essential Gringo (excluding aggregates) to first-order logic formulas
- command-line option
--color
to autodetect, enable, or disable color output - command-line option
--log-level
to control which status messages should be shown