./verifast-validate-witness.sh sv-benchmarks/c/recursive/Ackermann01-2.c ./results/automizer-verification-files/SV-COMP24_unreach-call/Ackermann01-2.yml/witness-2.1.yml -------------------------------------------------------------------------------- + PROGRAM=sv-benchmarks/c/recursive/Ackermann01-2.c + WITNESS=./results/automizer-verification-files/SV-COMP24_unreach-call/Ackermann01-2.yml/witness-2.1.yml ++ basename sv-benchmarks/c/recursive/Ackermann01-2.c + FILE=Ackermann01-2.c ++ echo Ackermann01-2 ++ sed 's/[-\.]/_/g' - + SANITIZED=Ackermann01_2 + INSTRUMENTED_PROGRAM=Ackermann01_2__verifast_instrumented.c + instrument_program_cli.py --program sv-benchmarks/c/recursive/Ackermann01-2.c --witness ./results/automizer-verification-files/SV-COMP24_unreach-call/Ackermann01-2.yml/witness-2.1.yml --output-file Ackermann01_2__verifast_instrumented.c --verifast True ['abort', 'reach_error', '__VERIFIER_nondet_int', 'ackermann', 'main'] [] [] [('ackermann', '', '(((0 < \\old(m)) || ((\\old(m) == 0) && (((long long) \\old(n) + 1) <= \\result))) && (((((((2 <= \\old(m)) && (0 <= \\result)) && (\\old(n) <= 0)) || ((\\old(m) == 1) && (3 <= \\result))) || (\\old(m) < 1)) || (((2 <= \\result) && (\\old(n) <= 0)) && (\\old(m) == 1))) || ((2 <= \\old(m)) && (0 <= \\result))))')] [] [('abort', 'true', 'true'), ('reach_error', 'false', 'true'), ('__VERIFIER_nondet_int', 'true', 'true'), ('ackermann', 'true', '(((0 < m) || ((m == 0) && ((n + 1) <= result))) && (((((((2 <= m) && (0 <= result)) && (n <= 0)) || ((m == 1) && (3 <= result))) || (m < 1)) || (((2 <= result) && (n <= 0)) && (m == 1))) || ((2 <= m) && (0 <= result))))'), ('main', 'module(Ackermann01_2__verifast_instrumented, true)', 'junk()')] + sed -i 's|__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__))||g' Ackermann01_2__verifast_instrumented.c + verifast -stats -verbose 2 -disable_overflow_check -allow_dead_code -target ILP32 -read_options_from_source_file -c Ackermann01_2__verifast_instrumented.c Ackermann01_2__verifast_instrumented.c 0.037682s: Ackermann01_2__verifast_instrumented.c(34,5-9): Function 'main': Function type implementation check 0.037729s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1084,18-24): Producing assertion 0.037743s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1084,49-51): Producing assertion 0.037756s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1084,61-62): Producing assertion 0.037766s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1084,64-68): Producing assertion 0.037784s: Ackermann01_2__verifast_instrumented.c(34,25-31): Consuming assertion 0.037798s: Ackermann01_2__verifast_instrumented.c(35,13-17): Producing assertion 0.037810s: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h(1085,17-21): Consuming assertion 0.037817s: Ackermann01_2__verifast_instrumented.c(34,5-9): Cleaning up dummy fraction chunks 0.037825s: Ackermann01_2__verifast_instrumented.c(34,5-9): Leak check. 0.037866s: Ackermann01_2__verifast_instrumented.c(5,6-17): Verifying function 'reach_error' 0.037876s: Ackermann01_2__verifast_instrumented.c(5,33-38): Producing assertion 0.037897s: Ackermann01_2__verifast_instrumented.c(22,5-14): Verifying function 'ackermann' 0.037905s: Ackermann01_2__verifast_instrumented.c(22,42-46): Producing assertion 0.037917s: Ackermann01_2__verifast_instrumented.c(22,5-14): Executing statement 0.037931s: Ackermann01_2__verifast_instrumented.c(24,6-8): Executing statement 0.037966s: Ackermann01_2__verifast_instrumented.c(24,16-17): Executing statement 0.037977s: Ackermann01_2__verifast_instrumented.c(25,9-15): Executing return statement 0.037988s: Ackermann01_2__verifast_instrumented.c(23,61-63): Consuming assertion 0.038181s: Ackermann01_2__verifast_instrumented.c(31,1-2): Cleaning up dummy fraction chunks 0.038192s: Ackermann01_2__verifast_instrumented.c(31,1-2): Leak check. 0.038207s: Ackermann01_2__verifast_instrumented.c(27,5-7): Executing statement 0.038236s: Ackermann01_2__verifast_instrumented.c(27,15-16): Executing statement 0.038257s: Ackermann01_2__verifast_instrumented.c(28,9-15): Executing return statement 0.038275s: Ackermann01_2__verifast_instrumented.c(28,16-25): Verifying call 0.038286s: Ackermann01_2__verifast_instrumented.c(22,42-46): Consuming assertion 0.038302s: Ackermann01_2__verifast_instrumented.c(23,61-63): Producing assertion 0.039263s: Ackermann01_2__verifast_instrumented.c(23,61-63): Consuming assertion 0.039684s: Ackermann01_2__verifast_instrumented.c(31,1-2): Cleaning up dummy fraction chunks 0.039696s: Ackermann01_2__verifast_instrumented.c(31,1-2): Leak check. 0.039728s: Ackermann01_2__verifast_instrumented.c(30,5-11): Executing return statement 0.039749s: Ackermann01_2__verifast_instrumented.c(30,26-35): Verifying call 0.039760s: Ackermann01_2__verifast_instrumented.c(22,42-46): Consuming assertion 0.039775s: Ackermann01_2__verifast_instrumented.c(23,61-63): Producing assertion 0.039861s: Ackermann01_2__verifast_instrumented.c(30,12-21): Verifying call 0.039873s: Ackermann01_2__verifast_instrumented.c(22,42-46): Consuming assertion 0.039906s: Ackermann01_2__verifast_instrumented.c(23,61-63): Producing assertion 0.040294s: Ackermann01_2__verifast_instrumented.c(23,61-63): Consuming assertion 0.042056s: Ackermann01_2__verifast_instrumented.c(31,1-2): Cleaning up dummy fraction chunks 0.042070s: Ackermann01_2__verifast_instrumented.c(31,1-2): Leak check. 0.042119s: Ackermann01_2__verifast_instrumented.c(34,5-9): Verifying function 'main' 0.042129s: Ackermann01_2__verifast_instrumented.c(34,25-31): Producing assertion 0.042143s: Ackermann01_2__verifast_instrumented.c(37,9-20): Executing statement 0.042162s: Ackermann01_2__verifast_instrumented.c(34,5-9): Executing statement 0.042174s: Ackermann01_2__verifast_instrumented.c(38,11-12): Executing statement 0.042196s: Ackermann01_2__verifast_instrumented.c(38,13-34): Verifying call 0.042206s: Ackermann01_2__verifast_instrumented.c(19,14-18): Consuming assertion 0.042226s: Ackermann01_2__verifast_instrumented.c(20,13-17): Producing assertion 0.042238s: Ackermann01_2__verifast_instrumented.c(39,5-7): Executing statement 0.042299s: Ackermann01_2__verifast_instrumented.c(39,25-26): Executing statement 0.042313s: Ackermann01_2__verifast_instrumented.c(42,9-15): Executing return statement 0.042323s: Ackermann01_2__verifast_instrumented.c(35,13-17): Consuming assertion 0.042331s: Ackermann01_2__verifast_instrumented.c(57,1-2): Cleaning up dummy fraction chunks 0.042345s: Ackermann01_2__verifast_instrumented.c(57,1-2): Leak check. 0.042363s: Ackermann01_2__verifast_instrumented.c(39,25-26): Executing statement 0.042373s: Ackermann01_2__verifast_instrumented.c(42,9-15): Executing return statement 0.042383s: Ackermann01_2__verifast_instrumented.c(35,13-17): Consuming assertion 0.042391s: Ackermann01_2__verifast_instrumented.c(57,1-2): Cleaning up dummy fraction chunks 0.042399s: Ackermann01_2__verifast_instrumented.c(57,1-2): Leak check. 0.042419s: Ackermann01_2__verifast_instrumented.c(44,11-12): Executing statement 0.042433s: Ackermann01_2__verifast_instrumented.c(44,13-34): Verifying call 0.042441s: Ackermann01_2__verifast_instrumented.c(19,14-18): Consuming assertion 0.042455s: Ackermann01_2__verifast_instrumented.c(20,13-17): Producing assertion 0.042464s: Ackermann01_2__verifast_instrumented.c(45,5-7): Executing statement 0.042480s: Ackermann01_2__verifast_instrumented.c(45,26-27): Executing statement 0.042496s: Ackermann01_2__verifast_instrumented.c(49,9-15): Executing return statement 0.042505s: Ackermann01_2__verifast_instrumented.c(35,13-17): Consuming assertion 0.042514s: Ackermann01_2__verifast_instrumented.c(57,1-2): Cleaning up dummy fraction chunks 0.042522s: Ackermann01_2__verifast_instrumented.c(57,1-2): Leak check. 0.042538s: Ackermann01_2__verifast_instrumented.c(45,26-27): Executing statement 0.042549s: Ackermann01_2__verifast_instrumented.c(49,9-15): Executing return statement 0.042563s: Ackermann01_2__verifast_instrumented.c(35,13-17): Consuming assertion 0.042571s: Ackermann01_2__verifast_instrumented.c(57,1-2): Cleaning up dummy fraction chunks 0.042579s: Ackermann01_2__verifast_instrumented.c(57,1-2): Leak check. 0.042593s: Ackermann01_2__verifast_instrumented.c(51,16-17): Executing statement 0.042605s: Ackermann01_2__verifast_instrumented.c(51,18-27): Verifying call 0.042614s: Ackermann01_2__verifast_instrumented.c(22,42-46): Consuming assertion 0.042632s: Ackermann01_2__verifast_instrumented.c(23,61-63): Producing assertion 0.042690s: Ackermann01_2__verifast_instrumented.c(52,5-7): Executing statement 0.042781s: Ackermann01_2__verifast_instrumented.c(52,40-41): Executing statement 0.042794s: Ackermann01_2__verifast_instrumented.c(53,9-15): Executing return statement 0.042805s: Ackermann01_2__verifast_instrumented.c(35,13-17): Consuming assertion 0.042814s: Ackermann01_2__verifast_instrumented.c(57,1-2): Cleaning up dummy fraction chunks 0.042827s: Ackermann01_2__verifast_instrumented.c(57,1-2): Leak check. Syntactic annotation overhead statistics: /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude.h : lines: code: 6; annot: 807; mixed: 1; overhead: 13467% /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/list.gh : lines: code: 0; annot: 187; mixed: 0; overhead: inf% /storage/repos/SV-Transformer-Library/verifast-24.08.30-2-gb1220004/bin/prelude_core.gh: lines: code: 0; annot: 33; mixed: 0; overhead: inf% Ackermann01_2__verifast_instrumented.c : lines: code: 23; annot: 11; mixed: 3; overhead: 61% Statements parsed: 111 Open statements parsed: 0 Close statements parsed: 0 Statement executions: 9 Execution steps (including assertion production/consumption steps): 96 Symbolic execution forks: 11 Prover assumes: 31 Term equality tests -- same term: 3 Term equality tests -- prover query: 0 Term equality tests -- total: 3 Other prover queries: 9 Prover statistics: # toplevel assumes and queries (with # pending case splits) = 211 (0), 3 (1), 7 (2), 1 (3), 0 (more than 30) assume_core_count = 619 number of case splits = 260 simplex_assert_ge_count = 383 simplex_assert_eq_count = 16 simplex_assert_neq_count = 0 max_truenode_childcount = 23 max_falsenode_childcount = 30 axiom triggered counts: ptr_provenance_max_addr_limits 1 ptr_provenance_min_addr_limits 1 boxed_bool_unboxed_bool_x_eq_x 1 Time spent in query, assume, push, pop: 0.004296s Time spent in Simplex: 0.002189s Time spent parsing: 0.018756s Function timings (> 0.1s): Total time: 0.04 seconds 0 errors found (9 statements verified)