Strange behaviour in the UserPropagate propagate
function
#7465
-
Hi, I am implementing a user propagator for a planning as SMT approach in Python. Given an assignment on whether some actions are selected in a given timestep, I am able to infer whether other actions have to be assigned either True or False. I am attempting to propagate this information, to prevent them to semantically interfere with each other on the same step for the final plan. More concretely, I aim to implement a "lemmas on demand" approach for mutexes between actions that can happen in parallel. For example, given 2 actions However I have found when validating solutions, the number of steps increases significantly from an eager approach. This is incorrect as just giving a part of the formula on demand to the solver should not change the number of steps. The problem becomes overconstrained, so maybe the lemmas propagated are not forgot when a Surprisingly, I have found that passing the same action for justification in twice (e.g. I just wanted to double check how to correctly use the propagate function and ask about the difference I am seeing. Thanks in advance! |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 7 replies
-
|
Beta Was this translation helpful? Give feedback.
-
@NikolajBjorner I'm wondering if you had some time to look at this, or if we should move it to an issue? |
Beta Was this translation helpful? Give feedback.
-
add @CEisenhofer |
Beta Was this translation helpful? Give feedback.
Should be fixed with #7551