Commit Graph

19 Commits

Author SHA1 Message Date
5af0c26650
Added tests for derived predicate numbering.
These tests ensure that derived predicates are numbered correctly,
whether they are introduced by the domain, the problem, or both.
2017-11-16 17:30:53 +01:00
39410ac98b
Added normalization tests for nested expressions.
These tests ensure that nested expressions in preconditions and effects
are correctly flattened via derived predicates.
2017-11-16 17:23:08 +01:00
5621820fe4
Added normalization tests for negations.
These tests ensure that multiple negations are eliminated, negated
quantifiers are replaced appropriately, negations introduced by
reduction are correctly handled, and negated disjunctions and
conjunctions are replaced according to De Morgan’s rules.
2017-11-15 18:53:43 +01:00
9e9040cac0
Added normalization tests for “forall” statements.
These tests ensure that universal quantifiers are correctly reduced to
negated existential quantifiers over the negated argument via derived
predicates in preconditions (nested and not) and goal descriptions.
2017-11-15 17:26:56 +01:00
0cf84dd5ca
Added normalization tests for implications.
These tests ensure that implications are correctly reduced to
disjunctions in preconditions (nested and not) and goal descriptions.
2017-11-15 16:34:48 +01:00
b063f5047e
Added basic normalization tests.
These tests make sure that simple PDDL descriptions are preserved by
normalization.
2017-11-15 16:01:26 +01:00
010e7bf41e
Requiring goal to contain only one statement.
Previously, the parser read the first statement of the goal as its
precondition, but didn’t check that it was properly terminated with a
closing parenthesis. This allowed arbitrary text to be included within
the goal description without error, which was incorrect.

This commit fixes this issue and adds a corresponding unit test.
2017-11-15 15:52:10 +01:00
f0e553df23
Minor formatting. 2017-11-08 17:11:36 +01:00
feaef5a3fa
Translating derived predicates of problems.
While derived predicates stemming from the domain were already
translated, the ones from the problem were missing. This commit fixes
that, although it duplicates the definition of “contains.”
2017-10-27 16:21:54 +02:00
624ddc38aa
Fixed incorrect derived predicate IDs in problems.
The IDs of derived predicates within problems were accidentally starting
with 1 again, colliding with the IDs of derived predicates in the
domain. With this fix, the IDs are continuously incremented, even after
switching from domain to problem.
2017-10-25 19:01:11 +02:00
871d3fcdb3
Renamed test suites for clarity. 2017-08-31 19:15:17 +02:00
4ad9355e47
Removed domains from blacklist that are now supported by parser. 2017-08-31 19:08:28 +02:00
1dee4655a7
Minor refactoring. 2017-08-31 19:04:10 +02:00
0a104d222c
Removed unneeded constant parsing functions. 2017-08-31 18:51:27 +02:00
80167fd21b
Removed unneeded variable parsing functions. 2017-08-31 18:48:48 +02:00
7de9980c10
Refactoring to reuse term parsing code. 2017-08-31 18:37:43 +02:00
89f3eb0306
Implemented term parser. 2017-08-31 18:34:34 +02:00
716b4801aa
Added AST representation for “equals” expressions. 2017-08-31 17:54:30 +02:00
9199b68080
Renamed “pddlparse” library to simply “pddl”. 2017-08-09 17:52:50 +02:00