5.21/4.24 NO 5.21/4.24 5.21/4.24 Solver Timeout: 4 5.21/4.24 Global Timeout: 300 5.21/4.24 Maximum number of concurrent processes: 900 5.21/4.24 ******************************************************************************************* 5.21/4.24 *********************** UNPROCESSED TRANSITION SYSTEMS PER FUNCTION *********************** 5.21/4.24 ******************************************************************************************* 5.21/4.24 5.21/4.24 5.21/4.24 List of LLVMGraphs + assumeNodes + staticAssertNodes [1] : 5.21/4.24 5.21/4.24 +++++++++++++++++++++++++++++++ main +++++++++++++++++++++++++++++++ 5.21/4.24 + + 5.21/4.24 Init Location: 0 5.21/4.24 Transitions: 5.21/4.24 0, main_k -> ¿functionCall(__VERIFIER_nondet_int), main_i -> ¿functionCall(__VERIFIER_nondet_int)}> 5.21/4.24 = 0)> 5.21/4.24 = 0))> 5.21/4.24 5.21/4.24 ~(1)}> 5.21/4.24 5.21/4.24 5.21/4.24 = 0))> 5.21/4.24 = 0)> 5.21/4.24 ¿functionCall(__VERIFIER_nondet_int)}> 5.21/4.24 5.21/4.24 2, main__func_return_ -> 0}> 5.21/4.24 5.21/4.24 Fresh variables: 5.21/4.24 5.21/4.24 Undef variables: 5.21/4.24 5.21/4.24 Abstraction variables: 5.21/4.24 5.21/4.24 Exit nodes: 5.21/4.24 5.21/4.24 Accepting locations: 5.21/4.24 5.21/4.24 Asserts: 5.21/4.24 5.21/4.24 + Assume Nodes [0]: ++++++++++++++++++++++++++++++++++++++++++++++++ 5.21/4.24 5.21/4.24 + Static Assert Nodes [0]: +++++++++++++++++++++++++++++++++++++++++ 5.21/4.24 5.21/4.24 + After preprocess (paralelization): ++++++++++++++++++++++++++++++ 5.21/4.24 5.21/4.24 Init Location: 0 5.21/4.24 Transitions: 5.21/4.24 0}> 5.21/4.24 ¿functionCall(__VERIFIER_nondet_int)}> 5.21/4.24 varCall_1}> 5.21/4.24 ¿functionCall(__VERIFIER_nondet_int)}> 5.21/4.24 varCall_2}> 5.21/4.24 = 0)> 5.21/4.24 = 0))> 5.21/4.24 5.21/4.24 ~(1)}> 5.21/4.24 5.21/4.24 5.21/4.24 = 0)> 5.21/4.24 = 0))> 5.21/4.24 ¿functionCall(__VERIFIER_nondet_int)}> 5.21/4.24 varCall_3}> 5.21/4.24 5.21/4.24 2, main__func_return_ -> 0}> 5.21/4.24 5.21/4.24 Fresh variables: 5.21/4.24 5.21/4.24 Undef variables: 5.21/4.24 5.21/4.24 Abstraction variables: 5.21/4.24 5.21/4.24 Exit nodes: 5.21/4.24 10, 5.21/4.24 Accepting locations: 5.21/4.24 5.21/4.24 Asserts: 5.21/4.24 5.21/4.24 + + 5.21/4.24 +++++++++++++++++++++++++++++++ main +++++++++++++++++++++++++++++++ 5.21/4.24 5.21/4.24 5.21/4.24 Function Return and Parameters Information [2 functions]: 5.21/4.24 function name: __VERIFIER_nondet_int [1 return + 0 parameters] demangled: __VERIFIER_nondet_int 5.21/4.24 __VERIFIER_nondet_int__func_return_ [function result] : int 5.21/4.24 function name: main [1 return + 0 parameters] demangled: main 5.21/4.24 main__func_return_ [function result] : int 5.21/4.24 5.21/4.24 5.21/4.24 AST Ident Scanner Information [4 idents]: 5.21/4.24 __VERIFIER_nondet_int | function | [integer, ()] | | 5.21/4.24 main | function | [integer, ()] | 5.21/4.24 k | local variable | integer | | 5.21/4.24 i | local variable | integer | | 5.21/4.24 5.21/4.24 Main function: main 5.21/4.24 Preprocessed LLVMGraph 5.21/4.24 Init Location: 0 5.21/4.24 Transitions: 5.21/4.24 = 0), par{main_i -> undef5}> 5.21/4.24 = 0)), par{main_i -> ~(1)}> 5.21/4.24 = 0), par{main_i -> undef6}> 5.21/4.24 = 0)), par{main_i -> 2}> 5.21/4.24 5.21/4.24 Fresh variables: 5.21/4.24 undef4, undef5, undef6, 5.21/4.24 5.21/4.24 Undef variables: 5.21/4.24 undef4, undef5, undef6, 5.21/4.24 5.21/4.24 Abstraction variables: 5.21/4.24 5.21/4.24 Exit nodes: 5.21/4.24 10, 5.21/4.24 Accepting locations: 5.21/4.24 5.21/4.24 Asserts: 5.21/4.24 5.21/4.24 ************************************************************* 5.21/4.24 ******************************************************************************************* 5.21/4.24 *********************** WORKING TRANSITION SYSTEM (DAG) *********************** 5.21/4.24 ******************************************************************************************* 5.21/4.24 5.21/4.24 Init Location: 0 5.21/4.24 Graph 0: 5.21/4.24 Transitions: 5.21/4.24 Variables: 5.21/4.24 5.21/4.24 Graph 1: 5.21/4.24 Transitions: 5.21/4.24 undef6, rest remain the same}> 5.21/4.24 Variables: 5.21/4.24 main_i 5.21/4.24 5.21/4.24 Graph 2: 5.21/4.24 Transitions: 5.21/4.24 Variables: 5.21/4.24 5.21/4.24 Precedence: 5.21/4.24 Graph 0 5.21/4.24 5.21/4.24 Graph 1 5.21/4.24 undef5, rest remain the same}> 5.21/4.24 -1, rest remain the same}> 5.21/4.24 5.21/4.24 Graph 2 5.21/4.24 2, rest remain the same}> 5.21/4.24 5.21/4.24 Map Locations to Subgraph: 5.21/4.24 ( 0 , 0 ) 5.21/4.24 ( 6 , 1 ) 5.21/4.24 ( 10 , 2 ) 5.21/4.24 5.21/4.24 ******************************************************************************************* 5.21/4.24 ******************************** CHECKING ASSERTIONS ******************************** 5.21/4.24 ******************************************************************************************* 5.21/4.24 5.21/4.24 Proving termination of subgraph 0 5.21/4.24 Proving termination of subgraph 1 5.21/4.24 Checking unfeasibility... 5.21/4.24 Time used: 0.001435 5.21/4.24 5.21/4.24 Checking conditional termination of SCC {l6}... 5.21/4.24 5.21/4.24 LOG: CALL solveLinear 5.21/4.24 5.21/4.24 LOG: RETURN solveLinear - Elapsed time: 0.000715s 5.21/4.24 5.21/4.24 LOG: CALL solveLinear 5.21/4.24 5.21/4.24 LOG: RETURN solveLinear - Elapsed time: 0.001341s 5.21/4.24 [58088 : 58089] 5.21/4.24 [58088 : 58090] 5.21/4.24 Successful child: 58089 5.21/4.24 [ Invariant Graph ] 5.21/4.24 Strengthening and disabling transitions... 5.21/4.24 5.21/4.24 LOG: CALL solverLinear in Graph for feasibility 5.21/4.24 5.21/4.24 LOG: RETURN solveLinear in Graph for feasibility 5.21/4.24 It's unfeasible. Removing transition: 5.21/4.24 undef6, rest remain the same}> 5.21/4.24 [ Termination Graph ] 5.21/4.24 Strengthening and disabling transitions... 5.21/4.24 5.21/4.24 LOG: CALL solverLinear in Graph for feasibility 5.21/4.24 5.21/4.24 LOG: RETURN solveLinear in Graph for feasibility 5.21/4.24 It's unfeasible. Removing transition: 5.21/4.24 undef6, rest remain the same}> 5.21/4.24 New Graphs: 5.21/4.24 5.21/4.24 LOG: CALL check - Post:1 + main_i <= 0 - Process 1 5.21/4.24 * Exit transition: undef5, rest remain the same}> 5.21/4.24 * Postcondition : 1 + main_i <= 0 5.21/4.24 5.21/4.24 LOG: CALL solveLinear 5.21/4.24 5.21/4.24 LOG: RETURN solveLinear - Elapsed time: 0.000312s 5.21/4.24 > Postcondition is not implied! 5.21/4.24 5.21/4.24 LOG: RETURN check - Elapsed time: 0.000393s 5.21/4.24 INVARIANTS: 5.21/4.24 6: 5.21/4.24 Quasi-INVARIANTS to narrow Graph: 5.21/4.24 6: 1 + main_i <= 0 , 5.21/4.24 Narrowing transition: 5.21/4.24 undef6, rest remain the same}> 5.21/4.24 5.21/4.24 LOG: Narrow transition size 1 5.21/4.24 invGraph after Narrowing: 5.21/4.24 Transitions: 5.21/4.24 undef6, rest remain the same}> 5.21/4.24 Variables: 5.21/4.24 main_i 5.21/4.24 Checking conditional termination of SCC {l6}... 5.21/4.24 5.21/4.24 LOG: CALL solveLinear 5.21/4.24 5.21/4.24 LOG: RETURN solveLinear - Elapsed time: 0.000724s 5.21/4.24 5.21/4.24 LOG: CALL solveLinear 5.21/4.24 5.21/4.24 LOG: RETURN solveLinear - Elapsed time: 0.001460s 5.21/4.24 [58088 : 58095] 5.21/4.24 [58088 : 58096] 5.21/4.24 Solving with 1 template(s). 5.21/4.24 5.21/4.24 LOG: CALL solveNonLinearGetFirstSolution 5.21/4.24 5.21/4.24 LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.003868s 5.21/4.24 Time used: 0.003634 5.21/4.24 5.21/4.24 [58088 : 58101] 5.21/4.24 [58088 : 58105] 5.21/4.24 Successful child: 58105 5.21/4.24 5.21/4.24 Program does NOT terminate 5.21/4.24 EOF