-
Notifications
You must be signed in to change notification settings - Fork 274
SVCOMP-benchmark incorrect (reachability false alarm) #3435
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
results in: Violated property: VERIFICATION FAILED (should've also been successful). |
results in: Violated property: VERIFICATION FAILED (should've also been successful). |
results in: Violated property: VERIFICATION FAILED (I'm not sure what the correct result should be). |
results in: Violated property: VERIFICATION FAILED (should've also been successful). |
results in: Violated property: VERIFICATION FAILED (should've also been successful). |
results in: Violated property: VERIFICATION FAILED (I'm not sure what the correct result should be). |
So basically for line
we create a VCC stating that the source and destination pointers cannot point to the same address. I guess we can't really follow the pointer arithmetic needed for the exact value of |
Thanks @xbauch. I might pick up some more src/dst overlaps over the next few days (these may be the same as yours, or different ones). When I do so, I'll open a PR against the I'm not sure what to do about |
The problem is that Last year we did some fixes by adding preconditions to the benchmarks before calling library functions (e.g. sosy-lab/sv-benchmarks@786a943) which was not so much appreciated. Ideally, the benchmark should be fixed by allocating memory for |
Or something like PR #3251, given that we know that |
Yes, but this must be the same for all participating verification tools. Such a harness must be part of the benchmark. |
Closing as the benchmarks are no longer available and it is unclear if this can be reproduced. Please reopen if you believe this is erroneous/if you can show a current example. |
Is |
The benchmark https://github.com/sosy-lab/sv-benchmarks/blob/master/c/loop-floats-scientific-comp/loop4_true-unreach-call.c.i
is incorrectly marked as violating assertion (should be "no property violated").
CBMC version: 5.10
Operating system: 64-bit linux
Exact command line resulting in the issue: ./cbmc-wrapper --graphml-witness witness.graphml --32 --propertyfile ../sv-benchmarks/c/ReachSafety.prp ../sv-benchmarks/c/loop-floats-scientific-comp/loop4_true-unreach-call.c.i
What behaviour did you expect: VERIFICATION SUCCESSFUL
What happened instead:
Violated property:
file ../sv-benchmarks/c/loop-floats-scientific-comp/loop4_true-unreach-call.c.i function __VERIFIER_assert line 974 thread 0
assertion
FALSE
VERIFICATION FAILED
EC=10
FALSE
The text was updated successfully, but these errors were encountered: