./verifast-validate-witness.sh sv-benchmarks/c/loop-new/half.i ./results/automizer-verification-files/SV-COMP24_unreach-call/half.yml/witness-2.1.yml -------------------------------------------------------------------------------- + PROGRAM=sv-benchmarks/c/loop-new/half.i + WITNESS=./results/automizer-verification-files/SV-COMP24_unreach-call/half.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/loop-new/half.i + FILE=half.i ++ echo half ++ sed 's/[-\.]/_/g' - + SANITIZED=half + MODULE=half__verifast_instrumented_modified + INSTRUMENTED_PROGRAM=half__verifast_instrumented.c ++ basename ./results/automizer-verification-files/SV-COMP24_unreach-call/half.yml/witness-2.1.yml + TRANSLATED_WITNESS=verifast_translated.witness-2.1.yml + FINAL_PROGRAM=half__verifast_instrumented_modified.c + change_format_cli.py -w ./results/automizer-verification-files/SV-COMP24_unreach-call/half.yml/witness-2.1.yml -p sv-benchmarks/c/loop-new/half.i -o verifast_translated.witness-2.1.yml --from acsl_expression --to verifast_expression -n half__verifast_instrumented_modified + instrument_program_cli.py -w verifast_translated.witness-2.1.yml -p sv-benchmarks/c/loop-new/half.i -o half__verifast_instrumented.c + program_modifications_cli.py -p half__verifast_instrumented.c -o half__verifast_instrumented_modified.c + verifast -stats -verbose 4 -allow_dead_code -prover Z3v4.5 -read_options_from_source_file -c half__verifast_instrumented_modified.c half__verifast_instrumented_modified.c 0.042808s: half__verifast_instrumented_modified.c(27,5-9): Function 'main': Function type implementation check 0.042871s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1084,18-24): Producing assertion 0.042887s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1084,49-51): Producing assertion 0.042900s: Z3 assume (<= 0 argc): 0.000684 seconds 0.043657s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1084,61-62): Producing assertion 0.043688s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1084,64-68): Producing assertion 0.043704s: half__verifast_instrumented_modified.c(27,25-31): Consuming assertion 0.043744s: Consuming chunk module(half__verifast_instrumented_modified, true) 0.043764s: half__verifast_instrumented_modified.c(28,13-17): Producing assertion 0.043776s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1085,17-21): Consuming assertion 0.043791s: half__verifast_instrumented_modified.c(27,5-9): Cleaning up dummy fraction chunks 0.043799s: half__verifast_instrumented_modified.c(27,5-9): Leak check. 0.043883s: half__verifast_instrumented_modified.c(8,6-17): Verifying function 'reach_error' 0.043896s: half__verifast_instrumented_modified.c(8,33-38): Producing assertion 0.043915s: Z3 assume false: 0.000007 seconds 0.043978s: half__verifast_instrumented_modified.c(11,6-25): Verifying function 'assume_abort_if_not' 0.043998s: half__verifast_instrumented_modified.c(11,49-53): Producing assertion 0.044007s: Z3 assume true: 0.000411 seconds 0.044442s: half__verifast_instrumented_modified.c(11,6-25): Executing statement 0.044465s: half__verifast_instrumented_modified.c(14,3-5): Executing statement 0.044493s: Z3 assume (not (not (= cond 0))): 0.000437 seconds 0.044981s: half__verifast_instrumented_modified.c(14,13-14): Executing statement 0.045008s: half__verifast_instrumented_modified.c(14,14-19): Executing statement 0.045042s: half__verifast_instrumented_modified.c(14,14-19): Verifying call 0.045052s: half__verifast_instrumented_modified.c(3,38-42): Consuming assertion 0.045061s: Z3 query true returns true: 0.000035 seconds 0.045112s: half__verifast_instrumented_modified.c(4,13-18): Producing assertion 0.045123s: Z3 assume false: 0.000003 seconds 0.045144s: Z3 assume (not (not (not (= cond 0)))): 0.000413 seconds 0.045618s: half__verifast_instrumented_modified.c(15,1-2): Executing return statement 0.045639s: half__verifast_instrumented_modified.c(12,13-17): Consuming assertion 0.045648s: Z3 query true returns true: 0.000011 seconds 0.045670s: half__verifast_instrumented_modified.c(15,1-2): Cleaning up dummy fraction chunks 0.045680s: half__verifast_instrumented_modified.c(15,1-2): Leak check. 0.045736s: half__verifast_instrumented_modified.c(16,6-23): Verifying function '__VERIFIER_assert' 0.045753s: half__verifast_instrumented_modified.c(16,53-55): Producing assertion 0.045765s: Z3 assume (not (= cond 0)): 0.000427 seconds 0.046232s: half__verifast_instrumented_modified.c(16,6-23): Executing statement 0.046250s: half__verifast_instrumented_modified.c(19,3-5): Executing statement 0.046265s: Z3 assume (not (not (= cond 0))): 0.000009 seconds 0.046312s: Z3 assume (not (not (not (= cond 0)))): 0.000386 seconds 0.046747s: half__verifast_instrumented_modified.c(22,3-9): Executing return statement 0.046767s: half__verifast_instrumented_modified.c(17,19-21): Consuming assertion 0.046777s: Z3 query (not (= cond 0)) returns true: 0.000007 seconds 0.046809s: half__verifast_instrumented_modified.c(23,1-2): Cleaning up dummy fraction chunks 0.046820s: half__verifast_instrumented_modified.c(23,1-2): Leak check. 0.046848s: half__verifast_instrumented_modified.c(27,5-9): Verifying function 'main' 0.046858s: half__verifast_instrumented_modified.c(27,25-31): Producing assertion 0.046875s: half__verifast_instrumented_modified.c(27,5-9): Executing statement 0.046894s: half__verifast_instrumented_modified.c(31,1-2): Executing statement 0.046903s: half__verifast_instrumented_modified.c(33,1-34,1): Executing statement 0.046947s: Consuming chunk [_]module(half__verifast_instrumented_modified, true) 0.046959s: half__verifast_instrumented_modified.c(35,11-12): Executing statement 0.046971s: half__verifast_instrumented_modified.c(36,11-12): Executing statement 0.046981s: half__verifast_instrumented_modified.c(37,11-12): Executing statement 0.047008s: half__verifast_instrumented_modified.c(37,13-34): Verifying call 0.047018s: half__verifast_instrumented_modified.c(24,42-46): Consuming assertion 0.047026s: Z3 query true returns true: 0.000033 seconds 0.047099s: half__verifast_instrumented_modified.c(25,13-17): Producing assertion 0.047111s: Z3 assume true: 0.000404 seconds 0.047529s: half__verifast_instrumented_modified.c(38,5-7): Executing statement 0.047552s: Z3 assume (<= k 1000000): 0.000405 seconds 0.047987s: Z3 assume (not (<= (- 0 1000000) k)): 0.000419 seconds 0.048451s: half__verifast_instrumented_modified.c(38,43-49): Executing return statement 0.048474s: half__verifast_instrumented_modified.c(28,13-17): Consuming assertion 0.048483s: half__verifast_instrumented_modified.c(47,1-2): Cleaning up dummy fraction chunks 0.048491s: half__verifast_instrumented_modified.c(47,1-2): Leak check. 0.048508s: Z3 assume (not (not (<= (- 0 1000000) k))): 0.000425 seconds 0.048990s: half__verifast_instrumented_modified.c(39,5-8): Executing statement 0.049016s: half__verifast_instrumented_modified.c(39,11-12): Executing statement 0.049029s: half__verifast_instrumented_modified.c(39,5-8): Executing statement 0.049049s: half__verifast_instrumented_modified.c(39,131-133): Consuming assertion 0.049065s: Z3 query (or (and (= (* 0 2) (+ 0 1)) (<= 0 k)) (and (= 0 0) (= 0 0)) (and (= 0 (* 0 2)) (<= 0 k))) returns true: 0.000026 seconds 0.049242s: half__verifast_instrumented_modified.c(39,131-133): Producing assertion 0.049299s: Z3 assume (or (and (= (* n 2) (+ i 1)) (<= n k)) (and (= n 0) (= i 0)) (and (= i (* n 2)) (<= n k))): 0.000547 seconds 0.049984s: half__verifast_instrumented_modified.c(39,5-8): Evaluating loop condition 0.050010s: Z3 assume (< i (* 2 k)): 0.000487 seconds 0.050537s: half__verifast_instrumented_modified.c(40,2-3): Executing statement 0.050555s: half__verifast_instrumented_modified.c(41,2-4): Executing statement 0.050570s: Z3 query (not (= 2 0)) returns true: 0.000014 seconds 0.050619s: Z3 assume (= (mod i 2) 0): 0.000460 seconds 0.051119s: half__verifast_instrumented_modified.c(41,18-19): Executing statement 0.051146s: half__verifast_instrumented_modified.c(42,8-10): Executing statement 0.051172s: half__verifast_instrumented_modified.c(39,26-28): Executing statement 0.051188s: half__verifast_instrumented_modified.c(39,131-133): Consuming assertion 0.051203s: Z3 query (or (and (= (* (+ n 1) 2) (+ (+ i 1) 1)) (<= (+ n 1) k)) (and (= (+ n 1) 0) (= (+ i 1) 0)) (and (= (+ i 1) (* (+ n 1) 2)) (<= (+ n 1) k))) returns false: 0.000582 seconds 0.051997s: half__verifast_instrumented_modified.c(39,131-133): Consuming expression 0.052026s: Z3 query (or (and (= (* (+ n 1) 2) (+ (+ i 1) 1)) (<= (+ n 1) k)) (and (= (+ n 1) 0) (= (+ i 1) 0)) (and (= (+ i 1) (* (+ n 1) 2)) (<= (+ n 1) k))) returns false: 0.000553 seconds half__verifast_instrumented_modified.c(39,131-133): Cannot prove condition. (Cannot prove (or (and (= (* (+ n 1) 2) (+ (+ i 1) 1)) (<= (+ n 1) k)) (and (= (+ n 1) 0) (= (+ i 1) 0)) (and (= (+ i 1) (* (+ n 1) 2)) (<= (+ n 1) k))).)