Added missing recursion step in PDDL reduction.
This commit is contained in:
parent
6c9ca0ccb8
commit
729ecc9475
@ -237,9 +237,10 @@ void eliminateForAll(ast::Precondition &precondition)
|
|||||||
const auto handleForAll =
|
const auto handleForAll =
|
||||||
[&](ast::ForAllPointer<ast::Precondition> &forAll)
|
[&](ast::ForAllPointer<ast::Precondition> &forAll)
|
||||||
{
|
{
|
||||||
|
eliminateForAll(forAll->argument);
|
||||||
|
|
||||||
auto negatedArgument = std::make_unique<ast::Not<ast::Precondition>>(std::move(forAll->argument));
|
auto negatedArgument = std::make_unique<ast::Not<ast::Precondition>>(std::move(forAll->argument));
|
||||||
auto exists = std::make_unique<ast::Exists<ast::Precondition>>(std::move(forAll->parameters), std::move(negatedArgument));
|
auto exists = std::make_unique<ast::Exists<ast::Precondition>>(std::move(forAll->parameters), std::move(negatedArgument));
|
||||||
|
|
||||||
precondition = std::make_unique<ast::Not<ast::Precondition>>(std::move(exists));
|
precondition = std::make_unique<ast::Not<ast::Precondition>>(std::move(exists));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user