0.00/0.10 YES 0.00/0.10 0.00/0.10 Solver Timeout: 4 0.00/0.10 Global Timeout: 300 0.00/0.10 Maximum number of concurrent processes: 900 0.00/0.10 ******************************************************************************************* 0.00/0.10 *********************** UNPROCESSED TRANSITION SYSTEMS PER FUNCTION *********************** 0.00/0.10 ******************************************************************************************* 0.00/0.10 0.00/0.10 0.00/0.10 List of LLVMGraphs + assumeNodes + staticAssertNodes [1] : 0.00/0.10 0.00/0.10 +++++++++++++++++++++++++++++++ main +++++++++++++++++++++++++++++++ 0.00/0.10 + + 0.00/0.10 Init Location: 0 0.00/0.10 Transitions: 0.00/0.10 0, main_x -> ¿functionCall(__VERIFIER_nondet_int), main_y -> ¿functionCall(__VERIFIER_nondet_int), main_z -> ¿functionCall(__VERIFIER_nondet_int)}> 0.00/0.10 = main_z)> 0.00/0.10 = main_z))> 0.00/0.10 0.00/0.10 = 0))> 0.00/0.10 = 0)> 0.00/0.10 0.00/0.10 0.00/0.10 ((main_x - (2 * main_y)) + 1)}> 0.00/0.10 0.00/0.10 0.00/0.10 0}> 0.00/0.10 0.00/0.10 Fresh variables: 0.00/0.10 0.00/0.10 Undef variables: 0.00/0.10 0.00/0.10 Abstraction variables: 0.00/0.10 0.00/0.10 Exit nodes: 0.00/0.10 0.00/0.10 Accepting locations: 0.00/0.10 0.00/0.10 Asserts: 0.00/0.10 0.00/0.10 + Assume Nodes [0]: ++++++++++++++++++++++++++++++++++++++++++++++++ 0.00/0.10 0.00/0.10 + Static Assert Nodes [0]: +++++++++++++++++++++++++++++++++++++++++ 0.00/0.10 0.00/0.10 + After preprocess (paralelization): ++++++++++++++++++++++++++++++ 0.00/0.10 0.00/0.10 Init Location: 0 0.00/0.10 Transitions: 0.00/0.10 0}> 0.00/0.10 ¿functionCall(__VERIFIER_nondet_int)}> 0.00/0.10 varCall_1}> 0.00/0.10 ¿functionCall(__VERIFIER_nondet_int)}> 0.00/0.10 varCall_2}> 0.00/0.10 ¿functionCall(__VERIFIER_nondet_int)}> 0.00/0.10 varCall_3}> 0.00/0.10 = main_z)> 0.00/0.10 = main_z))> 0.00/0.10 0.00/0.10 = 0)> 0.00/0.10 = 0))> 0.00/0.10 0.00/0.10 0.00/0.10 ((main_x - (2 * main_y)) + 1)}> 0.00/0.10 0.00/0.10 0.00/0.10 0}> 0.00/0.10 0.00/0.10 Fresh variables: 0.00/0.10 0.00/0.10 Undef variables: 0.00/0.10 0.00/0.10 Abstraction variables: 0.00/0.10 0.00/0.10 Exit nodes: 0.00/0.10 9, 0.00/0.10 Accepting locations: 0.00/0.10 0.00/0.10 Asserts: 0.00/0.10 0.00/0.10 + + 0.00/0.10 +++++++++++++++++++++++++++++++ main +++++++++++++++++++++++++++++++ 0.00/0.10 0.00/0.10 0.00/0.10 Function Return and Parameters Information [2 functions]: 0.00/0.10 function name: __VERIFIER_nondet_int [1 return + 0 parameters] demangled: __VERIFIER_nondet_int 0.00/0.10 __VERIFIER_nondet_int__func_return_ [function result] : int 0.00/0.10 function name: main [1 return + 0 parameters] demangled: main 0.00/0.10 main__func_return_ [function result] : int 0.00/0.10 0.00/0.10 0.00/0.10 AST Ident Scanner Information [5 idents]: 0.00/0.10 __VERIFIER_nondet_int | function | [integer, ()] | | 0.00/0.10 main | function | [integer, ()] | 0.00/0.10 x | local variable | integer | | 0.00/0.10 y | local variable | integer | | 0.00/0.10 z | local variable | integer | | 0.00/0.10 0.00/0.10 Main function: main 0.00/0.10 Preprocessed LLVMGraph 0.00/0.10 Init Location: 0 0.00/0.10 Transitions: 0.00/0.10 = undef6)> 0.00/0.10 = undef6))> 0.00/0.10 = 0) /\ (main_z = 1), par{main_x -> ((main_x - (2 * main_y)) + 1)}> 0.00/0.10 = 0) /\ (main_z < 1)> 0.00/0.10 = 0) /\ (main_z > 1)> 0.00/0.10 = 0))> 0.00/0.10 0.00/0.10 Fresh variables: 0.00/0.10 undef4, undef5, undef6, 0.00/0.10 0.00/0.10 Undef variables: 0.00/0.10 undef4, undef5, undef6, 0.00/0.10 0.00/0.10 Abstraction variables: 0.00/0.10 0.00/0.10 Exit nodes: 0.00/0.10 9, 0.00/0.10 Accepting locations: 0.00/0.10 0.00/0.10 Asserts: 0.00/0.10 0.00/0.10 ************************************************************* 0.00/0.10 ******************************************************************************************* 0.00/0.10 *********************** WORKING TRANSITION SYSTEM (DAG) *********************** 0.00/0.10 ******************************************************************************************* 0.00/0.10 0.00/0.10 Init Location: 0 0.00/0.10 Graph 0: 0.00/0.10 Transitions: 0.00/0.10 Variables: 0.00/0.10 0.00/0.10 Graph 1: 0.00/0.10 Transitions: 0.00/0.10 1 + main_x - 2*main_y, rest remain the same}> 0.00/0.10 Variables: 0.00/0.10 main_x, main_y, main_z 0.00/0.10 0.00/0.10 Graph 2: 0.00/0.10 Transitions: 0.00/0.10 Variables: 0.00/0.10 0.00/0.10 Precedence: 0.00/0.10 Graph 0 0.00/0.10 0.00/0.10 Graph 1 0.00/0.10 0.00/0.10 0.00/0.10 Graph 2 0.00/0.10 0.00/0.10 0.00/0.10 0.00/0.10 0.00/0.10 0.00/0.10 Map Locations to Subgraph: 0.00/0.10 ( 0 , 0 ) 0.00/0.10 ( 3 , 1 ) 0.00/0.10 ( 9 , 2 ) 0.00/0.10 0.00/0.10 ******************************************************************************************* 0.00/0.10 ******************************** CHECKING ASSERTIONS ******************************** 0.00/0.10 ******************************************************************************************* 0.00/0.10 0.00/0.10 Proving termination of subgraph 0 0.00/0.10 Proving termination of subgraph 1 0.00/0.10 Checking unfeasibility... 0.00/0.10 Time used: 0.003017 0.00/0.10 0.00/0.10 Checking conditional termination of SCC {l3}... 0.00/0.10 0.00/0.10 LOG: CALL solveLinear 0.00/0.10 0.00/0.10 LOG: RETURN solveLinear - Elapsed time: 0.000582s 0.00/0.10 0.00/0.10 LOG: CALL solveLinear 0.00/0.10 0.00/0.10 LOG: RETURN solveLinear - Elapsed time: 0.001801s 0.00/0.10 [29153 : 29155] 0.00/0.10 [29153 : 29156] 0.00/0.10 Successful child: 29155 0.00/0.10 [ Invariant Graph ] 0.00/0.10 Strengthening and disabling transitions... 0.00/0.10 0.00/0.10 LOG: CALL solverLinear in Graph for feasibility 0.00/0.10 0.00/0.10 LOG: RETURN solveLinear in Graph for feasibility 0.00/0.10 It's unfeasible. Removing transition: 0.00/0.10 1 + main_x - 2*main_y, rest remain the same}> 0.00/0.10 [ Termination Graph ] 0.00/0.10 Strengthening and disabling transitions... 0.00/0.10 > It's unfeasible. Removing transition: 0.00/0.10 1 + main_x - 2*main_y, rest remain the same}> 0.00/0.10 New Graphs: 0.00/0.10 0.00/0.10 LOG: CALL check - Post:main_z <= 0 - Process 1 0.00/0.10 * Exit transition: 0.00/0.10 * Postcondition : main_z <= 0 0.00/0.10 0.00/0.10 LOG: CALL solveLinear 0.00/0.10 0.00/0.10 LOG: RETURN solveLinear - Elapsed time: 0.000468s 0.00/0.10 > Postcondition is not implied! 0.00/0.10 0.00/0.10 LOG: RETURN check - Elapsed time: 0.000581s 0.00/0.10 INVARIANTS: 0.00/0.10 3: 0.00/0.10 Quasi-INVARIANTS to narrow Graph: 0.00/0.10 3: main_z <= 0 , 0.00/0.10 Narrowing transition: 0.00/0.10 1 + main_x - 2*main_y, rest remain the same}> 0.00/0.10 0.00/0.10 LOG: Narrow transition size 1 0.00/0.10 invGraph after Narrowing: 0.00/0.10 Transitions: 0.00/0.10 1 + main_x - 2*main_y, rest remain the same}> 0.00/0.10 Variables: 0.00/0.10 main_x, main_y, main_z 0.00/0.10 Checking conditional termination of SCC {l3}... 0.00/0.10 0.00/0.10 LOG: CALL solveLinear 0.00/0.10 0.00/0.10 LOG: RETURN solveLinear - Elapsed time: 0.000522s 0.00/0.10 0.00/0.10 LOG: CALL solveLinear 0.00/0.10 0.00/0.10 LOG: RETURN solveLinear - Elapsed time: 0.001915s 0.00/0.10 [29153 : 29160] 0.00/0.10 [29153 : 29161] 0.00/0.10 Successful child: 29160 0.00/0.10 [ Invariant Graph ] 0.00/0.10 Strengthening and disabling transitions... 0.00/0.10 0.00/0.10 LOG: CALL solverLinear in Graph for feasibility 0.00/0.10 0.00/0.10 LOG: RETURN solveLinear in Graph for feasibility 0.00/0.10 Strengthening transition (result): 0.00/0.10 1 + main_x - 2*main_y, rest remain the same}> 0.00/0.10 [ Termination Graph ] 0.00/0.10 Strengthening and disabling transitions... 0.00/0.10 0.00/0.10 LOG: CALL solverLinear in Graph for feasibility 0.00/0.10 0.00/0.10 LOG: RETURN solveLinear in Graph for feasibility 0.00/0.10 Strengthening transition (result): 0.00/0.10 1 + main_x - 2*main_y, rest remain the same}> 0.00/0.10 Ranking function: main_x 0.00/0.10 New Graphs: 0.00/0.10 INVARIANTS: 0.00/0.10 3: 1 <= main_y , 0.00/0.10 Quasi-INVARIANTS to narrow Graph: 0.00/0.10 3: 0.00/0.10 Proving termination of subgraph 2 0.00/0.10 Analyzing SCC {l9}... 0.00/0.10 No cycles found. 0.00/0.10 0.00/0.10 Program Terminates 0.00/0.10 EOF