Base type throws off witness checking #5520
Labels
during 3: execution of incorrect program
An bug in the verifier that allows Dafny to run a program that does not correctly implement its spec
kind: bug
Crashes, unsoundness, incorrect output, etc. If possible, add a `part:` label
part: verifier
Translation from Dafny to Boogie (translator)
Dafny version
4.6.0
Code to produce this issue
Command to run and resulting output
What happened?
The verifier sets up the witness check for
PurportsToBeNonempty
incorrectly. In particular, it performs the check under the assumption that there is anx: Empty
, whereas it should be checking that such anx
exists. In more detail, the bug stems from the Boogiewhere
clause given tox
. The fix is to remove thewhere
clause and to instead assumex: Empty
not for the witness check, but only for the well-formedness check of the constraint.What type of operating system are you experiencing the problem on?
Mac
The text was updated successfully, but these errors were encountered: