1.49/0.55 YES 1.49/0.55 1.49/0.55 Solver Timeout: 4 1.49/0.55 Global Timeout: 300 1.49/0.55 Maximum number of concurrent processes: 900 1.49/0.55 ******************************************************************************************* 1.49/0.55 *********************** UNPROCESSED TRANSITION SYSTEMS PER FUNCTION *********************** 1.49/0.55 ******************************************************************************************* 1.49/0.55 1.49/0.55 1.49/0.55 List of LLVMGraphs + assumeNodes + staticAssertNodes [1] : 1.49/0.55 1.49/0.55 +++++++++++++++++++++++++++++++ main +++++++++++++++++++++++++++++++ 1.49/0.55 + + 1.49/0.55 Init Location: 0 1.49/0.55 Transitions: 1.49/0.55 0, main_x -> ¿functionCall(__VERIFIER_nondet_int), main_y -> ¿functionCall(__VERIFIER_nondet_int), main_z -> ¿functionCall(__VERIFIER_nondet_int)}> 1.49/0.55 1.49/0.55 0))> 1.49/0.55 0)> 1.49/0.55 (~(main_x) + main_y), main_y -> main_z, main_z -> (main_z + 1)}> 1.49/0.55 1.49/0.55 0}> 1.49/0.55 1.49/0.55 Fresh variables: 1.49/0.55 1.49/0.55 Undef variables: 1.49/0.55 1.49/0.55 Abstraction variables: 1.49/0.55 1.49/0.55 Exit nodes: 1.49/0.55 1.49/0.55 Accepting locations: 1.49/0.55 1.49/0.55 Asserts: 1.49/0.55 1.49/0.55 + Assume Nodes [0]: ++++++++++++++++++++++++++++++++++++++++++++++++ 1.49/0.55 1.49/0.55 + Static Assert Nodes [0]: +++++++++++++++++++++++++++++++++++++++++ 1.49/0.55 1.49/0.55 + After preprocess (paralelization): ++++++++++++++++++++++++++++++ 1.49/0.55 1.49/0.55 Init Location: 0 1.49/0.55 Transitions: 1.49/0.55 0}> 1.49/0.55 ¿functionCall(__VERIFIER_nondet_int)}> 1.49/0.55 varCall_1}> 1.49/0.55 ¿functionCall(__VERIFIER_nondet_int)}> 1.49/0.55 varCall_2}> 1.49/0.55 ¿functionCall(__VERIFIER_nondet_int)}> 1.49/0.55 varCall_3}> 1.49/0.55 1.49/0.55 0)> 1.49/0.55 0))> 1.49/0.55 (~(main_x) + main_y), main_y -> main_z, main_z -> (main_z + 1)}> 1.49/0.55 1.49/0.55 0}> 1.49/0.55 1.49/0.55 Fresh variables: 1.49/0.55 1.49/0.55 Undef variables: 1.49/0.55 1.49/0.55 Abstraction variables: 1.49/0.55 1.49/0.55 Exit nodes: 1.49/0.55 6, 1.49/0.55 Accepting locations: 1.49/0.55 1.49/0.55 Asserts: 1.49/0.55 1.49/0.55 + + 1.49/0.55 +++++++++++++++++++++++++++++++ main +++++++++++++++++++++++++++++++ 1.49/0.55 1.49/0.55 1.49/0.55 Function Return and Parameters Information [2 functions]: 1.49/0.55 function name: __VERIFIER_nondet_int [1 return + 0 parameters] demangled: __VERIFIER_nondet_int 1.49/0.55 __VERIFIER_nondet_int__func_return_ [function result] : int 1.49/0.55 function name: main [1 return + 0 parameters] demangled: main 1.49/0.55 main__func_return_ [function result] : int 1.49/0.55 1.49/0.55 1.49/0.55 AST Ident Scanner Information [5 idents]: 1.49/0.55 __VERIFIER_nondet_int | function | [integer, ()] | | 1.49/0.55 main | function | [integer, ()] | 1.49/0.55 x | local variable | integer | | 1.49/0.55 y | local variable | integer | | 1.49/0.55 z | local variable | integer | | 1.49/0.55 1.49/0.55 Main function: main 1.49/0.55 Preprocessed LLVMGraph 1.49/0.55 Init Location: 0 1.49/0.55 Transitions: 1.49/0.55 1.49/0.55 0), par{main_x -> (~(main_x) + main_y), main_y -> main_z, main_z -> (main_z + 1)}> 1.49/0.55 0))> 1.49/0.55 1.49/0.55 Fresh variables: 1.49/0.55 undef4, undef5, undef6, 1.49/0.55 1.49/0.55 Undef variables: 1.49/0.55 undef4, undef5, undef6, 1.49/0.55 1.49/0.55 Abstraction variables: 1.49/0.55 1.49/0.55 Exit nodes: 1.49/0.55 6, 1.49/0.55 Accepting locations: 1.49/0.55 1.49/0.55 Asserts: 1.49/0.55 1.49/0.55 ************************************************************* 1.49/0.55 ******************************************************************************************* 1.49/0.55 *********************** WORKING TRANSITION SYSTEM (DAG) *********************** 1.49/0.55 ******************************************************************************************* 1.49/0.55 1.49/0.55 Init Location: 0 1.49/0.55 Graph 0: 1.49/0.56 Transitions: 1.49/0.56 Variables: 1.49/0.56 1.49/0.56 Graph 1: 1.49/0.56 Transitions: 1.49/0.56 -main_x + main_y, main_y -> main_z, main_z -> 1 + main_z, rest remain the same}> 1.49/0.56 Variables: 1.49/0.56 main_x, main_y, main_z 1.49/0.56 1.49/0.56 Graph 2: 1.49/0.56 Transitions: 1.49/0.56 Variables: 1.49/0.56 1.49/0.56 Precedence: 1.49/0.56 Graph 0 1.49/0.56 1.49/0.56 Graph 1 1.49/0.56 1.49/0.56 1.49/0.56 Graph 2 1.49/0.56 1.49/0.56 1.49/0.56 Map Locations to Subgraph: 1.49/0.56 ( 0 , 0 ) 1.49/0.56 ( 2 , 1 ) 1.49/0.56 ( 6 , 2 ) 1.49/0.56 1.49/0.56 ******************************************************************************************* 1.49/0.56 ******************************** CHECKING ASSERTIONS ******************************** 1.49/0.56 ******************************************************************************************* 1.49/0.56 1.49/0.56 Proving termination of subgraph 0 1.49/0.56 Proving termination of subgraph 1 1.49/0.56 Checking unfeasibility... 1.49/0.56 Time used: 0.00244 1.49/0.56 1.49/0.56 Checking conditional termination of SCC {l2}... 1.49/0.56 1.49/0.56 LOG: CALL solveLinear 1.49/0.56 1.49/0.56 LOG: RETURN solveLinear - Elapsed time: 0.000674s 1.49/0.56 1.49/0.56 LOG: CALL solveLinear 1.49/0.56 1.49/0.56 LOG: RETURN solveLinear - Elapsed time: 0.002178s 1.49/0.56 [43136 : 43138] 1.49/0.56 [43136 : 43139] 1.49/0.56 Successful child: 43138 1.49/0.56 [ Invariant Graph ] 1.49/0.56 Strengthening and disabling transitions... 1.49/0.56 1.49/0.56 LOG: CALL solverLinear in Graph for feasibility 1.49/0.56 1.49/0.56 LOG: RETURN solveLinear in Graph for feasibility 1.49/0.56 It's unfeasible. Removing transition: 1.49/0.56 -main_x + main_y, main_y -> main_z, main_z -> 1 + main_z, rest remain the same}> 1.49/0.56 [ Termination Graph ] 1.49/0.56 Strengthening and disabling transitions... 1.49/0.56 > It's unfeasible. Removing transition: 1.49/0.56 -main_x + main_y, main_y -> main_z, main_z -> 1 + main_z, rest remain the same}> 1.49/0.56 New Graphs: 1.49/0.56 1.49/0.56 LOG: CALL check - Post:1 + main_x <= main_y - Process 1 1.49/0.56 * Exit transition: 1.49/0.56 * Postcondition : 1 + main_x <= main_y 1.49/0.56 1.49/0.56 LOG: CALL solveLinear 1.49/0.56 1.49/0.56 LOG: RETURN solveLinear - Elapsed time: 0.000580s 1.49/0.56 > Postcondition is not implied! 1.49/0.56 1.49/0.56 LOG: RETURN check - Elapsed time: 0.000700s 1.49/0.56 INVARIANTS: 1.49/0.56 2: 1.49/0.56 Quasi-INVARIANTS to narrow Graph: 1.49/0.56 2: 1 + main_x <= main_y , 1.49/0.56 Narrowing transition: 1.49/0.56 -main_x + main_y, main_y -> main_z, main_z -> 1 + main_z, rest remain the same}> 1.49/0.56 1.49/0.56 LOG: Narrow transition size 1 1.49/0.56 invGraph after Narrowing: 1.49/0.56 Transitions: 1.49/0.56 -main_x + main_y, main_y -> main_z, main_z -> 1 + main_z, rest remain the same}> 1.49/0.56 Variables: 1.49/0.56 main_x, main_y, main_z 1.49/0.56 Checking conditional termination of SCC {l2}... 1.49/0.56 1.49/0.56 LOG: CALL solveLinear 1.49/0.56 1.49/0.56 LOG: RETURN solveLinear - Elapsed time: 0.000633s 1.49/0.56 1.49/0.56 LOG: CALL solveLinear 1.49/0.56 1.49/0.56 LOG: RETURN solveLinear - Elapsed time: 0.002320s 1.49/0.56 [43136 : 43143] 1.49/0.56 [43136 : 43144] 1.49/0.56 Successful child: 43143 1.49/0.56 [ Invariant Graph ] 1.49/0.56 Strengthening and disabling transitions... 1.49/0.56 1.49/0.56 LOG: CALL solverLinear in Graph for feasibility 1.49/0.56 1.49/0.56 LOG: RETURN solveLinear in Graph for feasibility 1.49/0.56 It's unfeasible. Removing transition: 1.49/0.56 -main_x + main_y, main_y -> main_z, main_z -> 1 + main_z, rest remain the same}> 1.49/0.56 [ Termination Graph ] 1.49/0.56 Strengthening and disabling transitions... 1.49/0.56 > It's unfeasible. Removing transition: 1.49/0.56 -main_x + main_y, main_y -> main_z, main_z -> 1 + main_z, rest remain the same}> 1.49/0.56 New Graphs: 1.49/0.56 1.49/0.56 LOG: CALL check - Post:main_x <= main_y - Process 2 1.49/0.56 * Exit transition: 1.49/0.56 * Postcondition : main_x <= main_y 1.49/0.56 1.49/0.56 LOG: CALL solveLinear 1.49/0.56 1.49/0.56 LOG: RETURN solveLinear - Elapsed time: 0.000696s 1.49/0.56 > Postcondition is not implied! 1.49/0.56 1.49/0.56 LOG: RETURN check - Elapsed time: 0.000828s 1.49/0.56 INVARIANTS: 1.49/0.56 2: 1.49/0.56 Quasi-INVARIANTS to narrow Graph: 1.49/0.56 2: main_x <= main_y , 1.49/0.56 Narrowing transition: 1.49/0.56 -main_x + main_y, main_y -> main_z, main_z -> 1 + main_z, rest remain the same}> 1.49/0.56 1.49/0.56 LOG: Narrow transition size 1 1.49/0.56 invGraph after Narrowing: 1.49/0.56 Transitions: 1.49/0.56 -main_x + main_y, main_y -> main_z, main_z -> 1 + main_z, rest remain the same}> 1.49/0.56 Variables: 1.49/0.56 main_x, main_y, main_z 1.49/0.56 Checking conditional termination of SCC {l2}... 1.49/0.56 1.49/0.56 LOG: CALL solveLinear 1.49/0.56 1.49/0.56 LOG: RETURN solveLinear - Elapsed time: 0.000640s 1.49/0.56 1.49/0.56 LOG: CALL solveLinear 1.49/0.56 1.49/0.56 LOG: RETURN solveLinear - Elapsed time: 0.002344s 1.49/0.56 [43136 : 43148] 1.49/0.56 [43136 : 43149] 1.49/0.56 Successful child: 43148 1.49/0.56 [ Invariant Graph ] 1.49/0.56 Strengthening and disabling transitions... 1.49/0.56 1.49/0.56 LOG: CALL solverLinear in Graph for feasibility 1.49/0.56 1.49/0.56 LOG: RETURN solveLinear in Graph for feasibility 1.49/0.56 Strengthening transition (result): 1.49/0.56 -main_x + main_y, main_y -> main_z, main_z -> 1 + main_z, rest remain the same}> 1.49/0.56 [ Termination Graph ] 1.49/0.56 Strengthening and disabling transitions... 1.49/0.56 1.49/0.56 LOG: CALL solverLinear in Graph for feasibility 1.49/0.56 1.49/0.56 LOG: RETURN solveLinear in Graph for feasibility 1.49/0.56 Strengthening transition (result): 1.49/0.56 -main_x + main_y, main_y -> main_z, main_z -> 1 + main_z, rest remain the same}> 1.49/0.56 Ranking function: main_x - main_y 1.49/0.56 New Graphs: 1.49/0.56 1.49/0.56 LOG: CALL check - Post:0 <= 1 + main_z - Process 3 1.49/0.56 * Exit transition: 1.49/0.56 * Postcondition : 0 <= 1 + main_z 1.49/0.56 1.49/0.56 LOG: CALL solveLinear 1.49/0.56 1.49/0.56 LOG: RETURN solveLinear - Elapsed time: 0.000653s 1.49/0.56 > Postcondition is not implied! 1.49/0.56 1.49/0.56 LOG: RETURN check - Elapsed time: 0.000762s 1.49/0.56 INVARIANTS: 1.49/0.56 2: 1.49/0.56 Quasi-INVARIANTS to narrow Graph: 1.49/0.56 2: 0 <= 1 + main_z , 1.49/0.56 Narrowing transition: 1.49/0.56 -main_x + main_y, main_y -> main_z, main_z -> 1 + main_z, rest remain the same}> 1.49/0.56 1.49/0.56 LOG: Narrow transition size 1 1.49/0.56 invGraph after Narrowing: 1.49/0.56 Transitions: 1.49/0.56 -main_x + main_y, main_y -> main_z, main_z -> 1 + main_z, rest remain the same}> 1.49/0.56 Variables: 1.49/0.56 main_x, main_y, main_z 1.49/0.56 Checking conditional termination of SCC {l2}... 1.49/0.56 1.49/0.56 LOG: CALL solveLinear 1.49/0.56 1.49/0.56 LOG: RETURN solveLinear - Elapsed time: 0.000868s 1.49/0.56 Ranking function: -2 - main_z 1.49/0.56 New Graphs: 1.49/0.56 Proving termination of subgraph 2 1.49/0.56 Analyzing SCC {l6}... 1.49/0.56 No cycles found. 1.49/0.56 1.49/0.56 Program Terminates 1.49/0.56 EOF