0ce4e54d1a
Fix precedence of interval operator
...
The interval operator has a lower precedence than, for example, binary
operations. This was unexpected and incorrectly implemented in the
output functions. For now, this is fixed by enclosing intervals in
parentheses to avoid misinterpretations.
The existing unit tests are adjusted to the updated output format.
2018-05-04 17:06:28 +02:00
04094eee23
Remove unnecessary parentheses
...
The unary modulus operation does not require extra parentheses to be
printed in cases like “|X + Y|”. This adds a new option to the printing
routine to omit parentheses in cases where the parent expression already
defines a parenthesis-like scope (currently only with unary operations).
2018-04-12 00:59:03 +02:00
8c250f5c59
Support modulus operation (absolute value)
...
This adds support for computing the absolute value of a term along with
an according unit test.
2018-04-12 00:38:48 +02:00
797660d6de
Add new simplification rule
...
This adds the rule “(not F [comparison] G) === (F [negated comparison]
G)” to the simplification rule tableau.
2018-04-11 21:39:27 +02:00
40ddee8444
Add new simplification rule
...
This adds the rule “(not F or G) === (F -> G)” to the simplification
rule tableau.
2018-04-10 22:34:47 +02:00
6f7b021712
Add new simplification rule
...
This adds the rule “(not (F and G)) === (not F or not G)” to the
simplification rule tableau.
2018-04-10 22:34:47 +02:00
6d7b91c391
Add new simplification rule
...
This adds the rule “(F <-> (F and G)) === (F -> G)” to the
simplification rule tableau.
2018-04-10 22:34:47 +02:00
5f8c144628
Fixed regression in simplifying predicates with more than one argument.
2017-06-12 18:27:39 +02:00
7665cb7bf1
Added unit test for the completion of predicates with nested arguments.
2017-06-12 15:32:05 +02:00
649489a1eb
Renamed unit test for clarity.
2017-06-09 22:10:43 +02:00
cbe87d8cb7
Fixed issue with simplifying binary operations in arguments.
2017-06-09 22:00:00 +02:00
0285c1cbbb
Renamed internal variables for clarity.
2017-06-06 01:44:44 +02:00
7ae0a1f289
Removed unnecessary parentheses after simplification.
2017-06-05 03:58:39 +02:00
dcc504ebc0
Added another simplification step after completion.
2017-06-04 20:55:24 +02:00
4baed6fbc6
Added back completion support.
2017-06-01 02:37:45 +02:00
0d8b1e94da
Refactored error handling.
2017-05-31 18:03:19 +02:00
1c925d661b
Major refactoring to uniquely link variables to their declarations (breaks simplification and completion).
2017-05-30 03:56:35 +02:00
48271cea88
Removed obsolete to-do.
2017-05-05 13:51:07 +02:00
5948d30e5c
Refactored implementation of completion.
2017-04-10 16:32:12 +02:00
d4ce0d54e8
Fixed typo.
2017-04-10 14:30:35 +02:00
b0388b9b28
Added example from the completion paper as unit test.
2017-04-08 20:22:50 +02:00
37526bcc8e
Fixed incorrect handling of implications with Booleans.
2017-04-08 20:17:01 +02:00
2ef3ef24a1
Fixed typos in unit test case.
2017-04-08 20:02:20 +02:00
2ae5cfbfa6
Enforcing unit tests not to throw exceptions.
2017-04-08 19:59:59 +02:00
a1648e27c9
Added tests covering completion of integrity constraints and facts.
2017-04-08 18:50:42 +02:00
350f31d0fd
Added simple unit tests for completion.
2017-04-08 18:47:06 +02:00