Booster's simplifier is unable to prune a #Bottom
state
#4067
Labels
enhancement
New feature or request
#Bottom
state
#4067
The integration test
test-issue3764-vacuous-branch
isolates a case where Booster's simplifier is unable to prune a bottom state.When sent given the
state-branch-in-zero.send
request,booster-dev
(andkore-rpc-booster --no-post-exec-simplify) returns a
Branchingresponse, while
kore-rpc-boosterreturns
DepthBound, making two steps. This happens because
kore-rpc-booster` will call Kore's simplify endpoint, which is more powerful (but much slower).The other request,
state-branch-after-one.send
, is basically the same, but the state is from one step before.booster-dev
branches after 1 step andkore-rpc-booster
makes 3 steps.We need to figure out exactly what allows the Kore's simplifier to prune the state. An important details is that the pruning happens not in Kore's rule unification algorithm, i.e. Kore returns
Branching
too. It is the simplify request that produces#Bottom
in the end.Note that #4020 (checking input pattern's conditions with SMT in Booster) is also not enough, i.e. even with that code Booster is unable to derive a contradiction.
To observe the relevant logs, run the following from the following from the repo root:
The text was updated successfully, but these errors were encountered: