Commit Graph
159 Commits
Author SHA1 Message Date
patrick 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
patrick 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
patrick 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
patrick f0e553df23 Minor formatting. 2017-11-08 17:11:36 +01:00
patrick 0d0a4337a2 Updated Catch to 2.0.1. 2017-11-04 20:54:39 +01:00
patrick 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
patrick 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
patrick 569b170aba Using cxxopts as a submodule. 2017-10-14 02:13:45 +02:00
patrick 871d3fcdb3 Renamed test suites for clarity. 2017-08-31 19:15:17 +02:00
patrick 4ad9355e47 Removed domains from blacklist that are now supported by parser. 2017-08-31 19:08:28 +02:00
patrick 1dee4655a7 Minor refactoring. 2017-08-31 19:04:10 +02:00
patrick 0a104d222c Removed unneeded constant parsing functions. 2017-08-31 18:51:27 +02:00
patrick 80167fd21b Removed unneeded variable parsing functions. 2017-08-31 18:48:48 +02:00
patrick 7de9980c10 Refactoring to reuse term parsing code. 2017-08-31 18:37:43 +02:00
patrick 89f3eb0306 Implemented term parser. 2017-08-31 18:34:34 +02:00
patrick 716b4801aa Added AST representation for “equals” expressions. 2017-08-31 17:54:30 +02:00
patrick 9199b68080 Renamed “pddlparse” library to simply “pddl”. 2017-08-09 17:52:50 +02:00
patrick cb333fd420 Updated Catch to 1.9.6. 2017-06-27 23:21:36 +02:00
patrick 39b885c47c Handling effects in PDDL normalization step. 2017-06-27 22:32:49 +02:00
patrick da85683f7c Changed effects in normalized PDDL effects according to recent changes. 2017-06-27 18:17:02 +02:00
patrick 0beab67bd4 Made effect variant more concise. 2017-06-27 17:50:42 +02:00
patrick 4622f31fa4 Made conditional effect variant more concise. 2017-06-27 17:43:00 +02:00
patrick 1516561a58 Allowing “not” expressions without introducing derived predicates. 2017-06-27 12:39:51 +02:00
patrick 5c93840f85 Allowing “exists” derived predicates to hold the precondition directly. 2017-06-27 12:34:15 +02:00
patrick ea50cffac9 Separating top-level and nested preconditions correctly. 2017-06-27 12:29:43 +02:00
patrick 8a48a5043a Minor refactoring for consistency. 2017-06-27 12:17:42 +02:00
patrick cc90ef3ec6 Restructured file for clarity. 2017-06-27 11:56:51 +02:00
patrick 31e5ead21e Minor refactoring. 2017-06-27 11:44:33 +02:00
patrick d451d2d548 Handling negations introduced by “forall” elimination correctly. 2017-06-27 11:35:47 +02:00
patrick 729ecc9475 Added missing recursion step in PDDL reduction. 2017-06-27 11:34:53 +02:00
patrick 6b1d079f69 Enabled test cases again by removing unsupported features from test files. 2017-06-24 21:49:13 +02:00
patrick 6e858ff52f Enabled test case again by exchanging unsupported input file. 2017-06-24 21:49:06 +02:00
patrick ca02b8ce62 Throwing exceptions for unsupported features instead of silently accepting them. 2017-06-24 20:27:01 +02:00
patrick 2b0b6570ea Excluding unsupported domains and instances from acceptance tests. 2017-06-24 20:14:06 +02:00
patrick 909949ff22 Removed unwanted test case. 2017-06-24 20:11:12 +02:00
patrick 436933f73f Added function to dermine stream location from arbitrary positions. 2017-06-24 19:01:09 +02:00
patrick 4d59732263 Minor refactoring. 2017-06-24 18:37:49 +02:00
patrick 12efe41551 Fixed issue due to undefined implementations. 2017-06-24 18:37:20 +02:00
patrick 362222c882 Finished implementing reduction. 2017-06-24 17:38:11 +02:00
patrick fcb9aa0a76 Added missing forward declaration. 2017-06-24 17:35:52 +02:00
patrick d9bae984b2 Implemented elimination of “forall” statements. 2017-06-24 17:30:08 +02:00
patrick 994801525a Implemented negation normalization (NFF). 2017-06-24 17:19:35 +02:00
patrick 939c2c735c Explicitly deleted default constructors of all variant types to avoid future errors. 2017-06-24 17:17:27 +02:00
patrick 287e1041bd Added missing inline directive. 2017-06-24 16:51:45 +02:00
patrick 9845c5ae9e Added missing parentheses in PDDL output. 2017-06-24 16:33:42 +02:00
patrick 7ae2734e9f Started implementing reduction, added support for “imply” expressions. 2017-06-24 16:03:32 +02:00
patrick d5dd8e849f Avoiding to decompose “not” expressions if they form simple literals. 2017-06-24 16:02:48 +02:00
patrick 079e2ac539 Printing arguments of “not” expressions on the same line for clarity. 2017-06-24 16:00:50 +02:00
patrick aeb8132fc7 Added missing inline directives. 2017-06-24 15:53:40 +02:00
patrick dd51f2b4fd Added missing const directive. 2017-06-24 15:53:16 +02:00