You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When performing X86 verification, specification preconditions are not assumed prior to symbolically executing the function to be verified. Instead, they are only assumed during the assertPost phase, immediately before asserting the collected postconditions.
As a result, safety conditions that arise during symbolic simulation do not get to assume the specification preconditions, which can make them impossible to discharge if their safety, in fact, depends on those preconditions.
The text was updated successfully, but these errors were encountered:
See also #1095, which failed to consider this case. I suspect we can easily reuse some LLVM helper function for this (probably setupPrestateConditions), and also grab the precondition vacuity checking feature.
When performing X86 verification, specification preconditions are not assumed prior to symbolically executing the function to be verified. Instead, they are only assumed during the
assertPost
phase, immediately before asserting the collected postconditions.As a result, safety conditions that arise during symbolic simulation do not get to assume the specification preconditions, which can make them impossible to discharge if their safety, in fact, depends on those preconditions.
The text was updated successfully, but these errors were encountered: