Commit Graph

13 Commits

Author SHA1 Message Date
Patrick Lühne 3e096e39aa
Support placeholders with #external declarations
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 in order 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 input program:
2018-04-06 23:09:14 +02:00
Patrick Lühne 14abc37116
Implemented #show statements for completed output. 2017-06-05 03:02:22 +02:00
Patrick Lühne 381d55b6ed
Minor formatting fix. 2017-06-01 16:16:06 +02:00
Patrick Lühne 4baed6fbc6
Added back completion support. 2017-06-01 02:37:45 +02:00
Patrick Lühne 1c925d661b
Major refactoring to uniquely link variables to their declarations (breaks simplification and completion). 2017-05-30 03:56:35 +02:00
Patrick Lühne 6e7abb283e
Fixed minor incorrect variable references. 2017-04-10 17:50:19 +02:00
Patrick Lühne 5948d30e5c
Refactored implementation of completion. 2017-04-10 16:32:12 +02:00
Patrick Lühne 37526bcc8e
Fixed incorrect handling of implications with Booleans. 2017-04-08 20:17:01 +02:00
Patrick Lühne 8210adea7c
Added support for completion of integrity constraints. 2017-04-08 18:25:59 +02:00
Patrick Lühne a716da4af1
Finished implementing completion (unit tests to follow). 2017-04-08 16:21:24 +02:00
Patrick Lühne a23e248e7b
Omitting the universal quantifier for completion if predicate is 0-ary. 2017-04-08 14:51:16 +02:00
Patrick Lühne 811eb3054c
Partly implemented completion. 2017-04-06 17:46:16 +02:00
Patrick Lühne 27b46ceee1
Added scaffold for implementing completion. 2017-04-05 18:21:38 +02:00