./verifast-validate-witness.sh sv-benchmarks/c/nla-digbench-scaling/prodbin-ll_valuebound20.c ./results/automizer-verification-files/SV-COMP24_unreach-call/prodbin-ll_valuebound20.yml/witness-2.1.yml -------------------------------------------------------------------------------- + PROGRAM=sv-benchmarks/c/nla-digbench-scaling/prodbin-ll_valuebound20.c + WITNESS=./results/automizer-verification-files/SV-COMP24_unreach-call/prodbin-ll_valuebound20.yml/witness-2.1.yml + '[' -z x ']' + echo 'Using prover supplied by environment variable PROVER: Z3v4.5' Using prover supplied by environment variable PROVER: Z3v4.5 ++ basename sv-benchmarks/c/nla-digbench-scaling/prodbin-ll_valuebound20.c + FILE=prodbin-ll_valuebound20.c ++ echo prodbin-ll_valuebound20 ++ sed 's/[-\.]/_/g' - + SANITIZED=prodbin_ll_valuebound20 + MODULE=prodbin_ll_valuebound20__verifast_instrumented_modified + INSTRUMENTED_PROGRAM=prodbin_ll_valuebound20__verifast_instrumented.c ++ basename ./results/automizer-verification-files/SV-COMP24_unreach-call/prodbin-ll_valuebound20.yml/witness-2.1.yml + TRANSLATED_WITNESS=verifast_translated.witness-2.1.yml + FINAL_PROGRAM=prodbin_ll_valuebound20__verifast_instrumented_modified.c + change_format_cli.py -w ./results/automizer-verification-files/SV-COMP24_unreach-call/prodbin-ll_valuebound20.yml/witness-2.1.yml -p sv-benchmarks/c/nla-digbench-scaling/prodbin-ll_valuebound20.c -o verifast_translated.witness-2.1.yml --from acsl_expression --to verifast_expression -n prodbin_ll_valuebound20__verifast_instrumented_modified + instrument_program_cli.py -w verifast_translated.witness-2.1.yml -p sv-benchmarks/c/nla-digbench-scaling/prodbin-ll_valuebound20.c -o prodbin_ll_valuebound20__verifast_instrumented.c + program_modifications_cli.py -p prodbin_ll_valuebound20__verifast_instrumented.c -o prodbin_ll_valuebound20__verifast_instrumented_modified.c + verifast -stats -verbose 4 -allow_dead_code -prover Z3v4.5 -read_options_from_source_file -c prodbin_ll_valuebound20__verifast_instrumented_modified.c prodbin_ll_valuebound20__verifast_instrumented_modified.c 0.046151s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(30,5-9): Function 'main': Function type implementation check 0.046235s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1084,18-24): Producing assertion 0.046259s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1084,49-51): Producing assertion 0.046275s: Z3 assume (<= 0 argc): 0.000588 seconds 0.046946s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1084,61-62): Producing assertion 0.046982s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1084,64-68): Producing assertion 0.047000s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(30,25-31): Consuming assertion 0.047043s: Consuming chunk module(prodbin_ll_valuebound20__verifast_instrumented_modified, true) 0.047065s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(31,13-17): Producing assertion 0.047083s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1085,17-21): Consuming assertion 0.047092s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(30,5-9): Cleaning up dummy fraction chunks 0.047100s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(30,5-9): Leak check. 0.047233s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(9,6-17): Verifying function 'reach_error' 0.047246s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(9,33-38): Producing assertion 0.047262s: Z3 assume false: 0.000008 seconds 0.047328s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(15,6-25): Verifying function 'assume_abort_if_not' 0.047340s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(15,49-53): Producing assertion 0.047350s: Z3 assume true: 0.000438 seconds 0.047820s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(15,6-25): Executing statement 0.047845s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(18,3-5): Executing statement 0.047886s: Z3 assume (not (not (= cond 0))): 0.000435 seconds 0.048374s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(18,13-14): Executing statement 0.048394s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(18,14-19): Executing statement 0.048430s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(18,14-19): Verifying call 0.048441s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(6,38-42): Consuming assertion 0.048456s: Z3 query true returns true: 0.000030 seconds 0.048503s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(7,13-18): Producing assertion 0.048515s: Z3 assume false: 0.000002 seconds 0.048535s: Z3 assume (not (not (not (= cond 0)))): 0.000449 seconds 0.049042s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(19,1-2): Executing return statement 0.049058s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(16,19-21): Consuming assertion 0.049069s: Z3 query (not (= cond 0)) returns true: 0.000012 seconds 0.049109s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(19,1-2): Cleaning up dummy fraction chunks 0.049126s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(19,1-2): Leak check. 0.049185s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(20,6-23): Verifying function '__VERIFIER_assert' 0.049198s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(20,50-52): Producing assertion 0.049210s: Z3 assume (<= 1 cond): 0.000420 seconds 0.049658s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(20,6-23): Executing statement 0.049683s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(23,5-7): Executing statement 0.049700s: Z3 assume (not (not (= cond 0))): 0.000058 seconds 0.049816s: Z3 assume (not (not (not (= cond 0)))): 0.000410 seconds 0.050276s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(27,5-11): Executing return statement 0.050291s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(21,16-18): Consuming assertion 0.050307s: Z3 query (<= 1 cond) returns true: 0.000018 seconds 0.050345s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(28,1-2): Cleaning up dummy fraction chunks 0.050355s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(28,1-2): Leak check. 0.050385s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(30,5-9): Verifying function 'main' 0.050395s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(30,25-31): Producing assertion 0.050427s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(30,5-9): Executing statement 0.050442s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(34,1-2): Executing statement 0.050452s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(36,1-37,1): Executing statement 0.050487s: Consuming chunk [_]module(prodbin_ll_valuebound20__verifast_instrumented_modified, true) 0.050500s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(38,5-8): Executing statement 0.050533s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(39,5-9): Executing statement 0.050560s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(41,7-8): Executing statement 0.050586s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(41,9-30): Verifying call 0.050595s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(12,53-57): Consuming assertion 0.050603s: Z3 query true returns true: 0.000073 seconds 0.050727s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(13,13-17): Producing assertion 0.050749s: Z3 assume true: 0.000417 seconds 0.051181s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(42,5-24): Executing statement 0.051209s: Z3 assume (<= 0 a0): 0.000412 seconds 0.051650s: Z3 assume (<= a0 20): 0.000437 seconds 0.052112s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(42,5-24): Verifying call 0.052126s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(15,49-53): Consuming assertion 0.052134s: Z3 query true returns true: 0.000014 seconds 0.052160s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(16,19-21): Producing assertion 0.052179s: Z3 assume (not (= 1 0)): 0.000394 seconds 0.052604s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(43,7-8): Executing statement 0.052628s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(43,9-30): Verifying call 0.052639s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(12,53-57): Consuming assertion 0.052654s: Z3 query true returns true: 0.000026 seconds 0.052737s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(13,13-17): Producing assertion 0.052752s: Z3 assume true: 0.000462 seconds 0.053229s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(44,5-24): Executing statement 0.053255s: Z3 assume (<= 0 b0): 0.000430 seconds 0.053729s: Z3 assume (<= b0 20): 0.000430 seconds 0.054184s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(44,5-24): Verifying call 0.054198s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(15,49-53): Consuming assertion 0.054213s: Z3 query true returns true: 0.000018 seconds 0.054245s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(16,19-21): Producing assertion 0.054257s: Z3 assume (not (= 1 0)): 0.000404 seconds 0.054692s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(45,5-24): Executing statement 0.054728s: Z3 assume (<= 1 b0): 0.000430 seconds 0.055183s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(45,5-24): Verifying call 0.055202s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(15,49-53): Consuming assertion 0.055210s: Z3 query true returns true: 0.000015 seconds 0.055237s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(16,19-21): Producing assertion 0.055249s: Z3 assume (not (= 1 0)): 0.000398 seconds 0.055678s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(47,7-8): Executing statement 0.055698s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(48,7-8): Executing statement 0.055729s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(49,7-8): Executing statement 0.055742s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(51,5-10): Executing statement 0.055815s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(51,616-618): Consuming assertion 0.055889s: Z3 query (or (and (<= 0 b0) (= (+ 0 (* b0 a0)) (* b0 a0)) (<= a0 20) (<= b0 4) (<= b0 20) (<= 0 a0) (<= 1 b0)) (and (= 0 0) (<= a0 20) (= b0 b0) (<= 0 a0) (<= b0 20) (<= 1 b0) (= a0 a0)) (and (= 0 0) (= b0 (ite (<= 0 b0) (div b0 2) (- (div b0 2) 1))) (<= a0 20) (<= b0 20) (= (* a0 2) a0) (<= 0 a0) (not (= (ite (<= 0 b0) (mod b0 2) (+ (mod b0 2) 2)) 1)) (<= 1 b0)) (and (= 0 0) (= (* b0 a0) (* b0 a0)) (<= a0 20) (<= b0 20) (<= 0 a0) (<= 1 b0) (<= 1 b0) (<= b0 5)) (and (<= 1 (ite (<= 0 b0) (mod b0 2) (+ (mod b0 2) 2))) (<= a0 20) (<= b0 20) (= (* a0 2) a0) (<= 0 a0) (= a0 (* 0 2)) (<= 1 b0) (= (ite (<= 0 (+ (- 0 1) b0)) (div (+ (- 0 1) b0) 2) (- (div (+ (- 0 1) b0) 2) 1)) b0))) returns true: 0.000094 seconds 0.056823s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(51,616-618): Producing assertion 0.057658s: Z3 assume (or (and (<= 0 y0) (= (+ z0 (* y0 x0)) (* b0 a0)) (<= a0 20) (<= y0 4) (<= b0 20) (<= 0 a0) (<= 1 b0)) (and (= z0 0) (<= a0 20) (= b0 y0) (<= 0 a0) (<= y0 20) (<= 1 y0) (= a0 x0)) (and (= z0 0) (= y0 (ite (<= 0 b0) (div b0 2) (- (div b0 2) 1))) (<= a0 20) (<= b0 20) (= (* a0 2) x0) (<= 0 a0) (not (= (ite (<= 0 b0) (mod b0 2) (+ (mod b0 2) 2)) 1)) (<= 1 y0)) (and (= z0 0) (= (* y0 x0) (* b0 a0)) (<= a0 20) (<= b0 20) (<= 0 a0) (<= 1 b0) (<= 1 y0) (<= y0 5)) (and (<= 1 (ite (<= 0 b0) (mod b0 2) (+ (mod b0 2) 2))) (<= a0 20) (<= b0 20) (= (* a0 2) x0) (<= 0 a0) (= x0 (* z0 2)) (<= 1 b0) (= (ite (<= 0 (+ (- 0 1) b0)) (div (+ (- 0 1) b0) 2) (- (div (+ (- 0 1) b0) 2) 1)) y0))): 0.000869 seconds 0.059295s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(51,5-10): Evaluating loop condition 0.059355s: Z3 assume (not (= 1 0)): 0.000505 seconds 0.059907s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(52,2-3): Executing statement 0.059933s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(53,9-26): Executing statement 0.059974s: Z3 assume (= (+ z0 (* x0 y0)) (* a0 b0)): 0.000510 seconds 0.060537s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(53,9-26): Verifying call 0.060553s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(20,50-52): Consuming assertion 0.060573s: Z3 query (<= 1 1) returns true: 0.000020 seconds 0.060616s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(21,16-18): Producing assertion 0.060629s: Z3 assume (<= 1 1): 0.000471 seconds 0.061124s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(54,9-11): Executing statement 0.061154s: Z3 assume (not (not (= y0 0))): 0.000468 seconds 0.061669s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(55,13-18): Executing statement 0.061693s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(64,5-22): Executing statement 0.061727s: Z3 assume (= z0 (* a0 b0)): 0.000497 seconds 0.062259s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(64,5-22): Verifying call 0.062274s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(20,50-52): Consuming assertion 0.062284s: Z3 query (<= 1 1) returns true: 0.000019 seconds 0.062325s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(21,16-18): Producing assertion 0.062346s: Z3 assume (<= 1 1): 0.000469 seconds 0.062840s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(66,5-11): Executing return statement 0.062858s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(31,13-17): Consuming assertion 0.062868s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(67,1-2): Cleaning up dummy fraction chunks 0.062877s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(67,1-2): Leak check. 0.062909s: Z3 assume (not (= z0 (* a0 b0))): 0.000051 seconds 0.063010s: Z3 assume (not (not (not (= y0 0)))): 0.001145 seconds 0.064230s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(57,9-11): Executing statement 0.064256s: Z3 query (not (= 2 0)) returns true: 0.000018 seconds 0.064307s: Z3 assume (= (mod y0 2) 1): 0.001906 seconds 0.066273s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(57,25-26): Executing statement 0.066300s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(58,15-16): Executing statement 0.066328s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(59,15-16): Executing statement 0.066345s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(61,11-12): Executing statement 0.066358s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(62,11-12): Executing statement 0.066371s: Z3 query (not (= 2 0)) returns true: 0.000017 seconds 0.066428s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(51,616-618): Consuming assertion 0.066528s: Z3 query (or (and (<= 0 (div (- y0 1) 2)) (= (+ (+ z0 x0) (* (div (- y0 1) 2) (* 2 x0))) (* b0 a0)) (<= a0 20) (<= (div (- y0 1) 2) 4) (<= b0 20) (<= 0 a0) (<= 1 b0)) (and (= (+ z0 x0) 0) (<= a0 20) (= b0 (div (- y0 1) 2)) (<= 0 a0) (<= (div (- y0 1) 2) 20) (<= 1 (div (- y0 1) 2)) (= a0 (* 2 x0))) (and (= (+ z0 x0) 0) (= (div (- y0 1) 2) (ite (<= 0 b0) (div b0 2) (- (div b0 2) 1))) (<= a0 20) (<= b0 20) (= (* a0 2) (* 2 x0)) (<= 0 a0) (not (= (ite (<= 0 b0) (mod b0 2) (+ (mod b0 2) 2)) 1)) (<= 1 (div (- y0 1) 2))) (and (= (+ z0 x0) 0) (= (* (div (- y0 1) 2) (* 2 x0)) (* b0 a0)) (<= a0 20) (<= b0 20) (<= 0 a0) (<= 1 b0) (<= 1 (div (- y0 1) 2)) (<= (div (- y0 1) 2) 5)) (and (<= 1 (ite (<= 0 b0) (mod b0 2) (+ (mod b0 2) 2))) (<= a0 20) (<= b0 20) (= (* a0 2) (* 2 x0)) (<= 0 a0) (= (* 2 x0) (* (+ z0 x0) 2)) (<= 1 b0) (= (ite (<= 0 (+ (- 0 1) b0)) (div (+ (- 0 1) b0) 2) (- (div (+ (- 0 1) b0) 2) 1)) (div (- y0 1) 2)))) returns false: 0.202914 seconds 0.270569s: prodbin_ll_valuebound20__verifast_instrumented_modified.c(51,616-618): Consuming expression 0.270766s: Z3 query (or (and (<= 0 (div (- y0 1) 2)) (= (+ (+ z0 x0) (* (div (- y0 1) 2) (* 2 x0))) (* b0 a0)) (<= a0 20) (<= (div (- y0 1) 2) 4) (<= b0 20) (<= 0 a0) (<= 1 b0)) (and (= (+ z0 x0) 0) (<= a0 20) (= b0 (div (- y0 1) 2)) (<= 0 a0) (<= (div (- y0 1) 2) 20) (<= 1 (div (- y0 1) 2)) (= a0 (* 2 x0))) (and (= (+ z0 x0) 0) (= (div (- y0 1) 2) (ite (<= 0 b0) (div b0 2) (- (div b0 2) 1))) (<= a0 20) (<= b0 20) (= (* a0 2) (* 2 x0)) (<= 0 a0) (not (= (ite (<= 0 b0) (mod b0 2) (+ (mod b0 2) 2)) 1)) (<= 1 (div (- y0 1) 2))) (and (= (+ z0 x0) 0) (= (* (div (- y0 1) 2) (* 2 x0)) (* b0 a0)) (<= a0 20) (<= b0 20) (<= 0 a0) (<= 1 b0) (<= 1 (div (- y0 1) 2)) (<= (div (- y0 1) 2) 5)) (and (<= 1 (ite (<= 0 b0) (mod b0 2) (+ (mod b0 2) 2))) (<= a0 20) (<= b0 20) (= (* a0 2) (* 2 x0)) (<= 0 a0) (= (* 2 x0) (* (+ z0 x0) 2)) (<= 1 b0) (= (ite (<= 0 (+ (- 0 1) b0)) (div (+ (- 0 1) b0) 2) (- (div (+ (- 0 1) b0) 2) 1)) (div (- y0 1) 2)))) returns false: 0.259798 seconds prodbin_ll_valuebound20__verifast_instrumented_modified.c(51,616-618): Cannot prove condition. (Cannot prove (or (and (<= 0 (div (- y0 1) 2)) (= (+ (+ z0 x0) (* (div (- y0 1) 2) (* 2 x0))) (* b0 a0)) (<= a0 20) (<= (div (- y0 1) 2) 4) (<= b0 20) (<= 0 a0) (<= 1 b0)) (and (= (+ z0 x0) 0) (<= a0 20) (= b0 (div (- y0 1) 2)) (<= 0 a0) (<= (div (- y0 1) 2) 20) (<= 1 (div (- y0 1) 2)) (= a0 (* 2 x0))) (and (= (+ z0 x0) 0) (= (div (- y0 1) 2) (ite (<= 0 b0) (div b0 2) (- (div b0 2) 1))) (<= a0 20) (<= b0 20) (= (* a0 2) (* 2 x0)) (<= 0 a0) (not (= (ite (<= 0 b0) (mod b0 2) (+ (mod b0 2) 2)) 1)) (<= 1 (div (- y0 1) 2))) (and (= (+ z0 x0) 0) (= (* (div (- y0 1) 2) (* 2 x0)) (* b0 a0)) (<= a0 20) (<= b0 20) (<= 0 a0) (<= 1 b0) (<= 1 (div (- y0 1) 2)) (<= (div (- y0 1) 2) 5)) (and (<= 1 (ite (<= 0 b0) (mod b0 2) (+ (mod b0 2) 2))) (<= a0 20) (<= b0 20) (= (* a0 2) (* 2 x0)) (<= 0 a0) (= (* 2 x0) (* (+ z0 x0) 2)) (<= 1 b0) (= (ite (<= 0 (+ (- 0 1) b0)) (div (+ (- 0 1) b0) 2) (- (div (+ (- 0 1) b0) 2) 1)) (div (- y0 1) 2)))).)