Open maichmueller opened 1 month ago
Negative literals in the initial state only make sense if you use the open world assumption, otherwise all omitted ground atoms are false by default. Currently we have no plans to support the open world assumption, although the interface allows it.
If you don't plan to support the open world assumption, wouldn't it make more sense to refer to the init conditions as atoms and rename accordingly + return respective Atom
types?
You are correct that returning atoms instead of literals makes more sense with this restriction in mind. We'll probably make this change at some point.
A parsed problem can be queried for static/fluent/derived initial literals, e.g.
problem.get_static_initial_literals()
. This suggests that I should be able to use negated literals in the init statement of a problem, such as:but this leads to an error:
Is this not yet supported or the function name
get_static_initial_literals
simply a misnomer (literal --> atom)?