7.53/2.62 YES 7.53/2.62 7.53/2.62 Solver Timeout: 4 7.53/2.62 Global Timeout: 300 7.53/2.62 Maximum number of concurrent processes: 900 7.53/2.62 ******************************************************************************************* 7.53/2.62 *********************** UNPROCESSED TRANSITION SYSTEMS PER FUNCTION *********************** 7.53/2.62 ******************************************************************************************* 7.53/2.62 7.53/2.62 7.53/2.62 List of LLVMGraphs + assumeNodes + staticAssertNodes [1] : 7.53/2.62 7.53/2.62 +++++++++++++++++++++++++++++++ main +++++++++++++++++++++++++++++++ 7.53/2.62 + + 7.53/2.62 Init Location: 0 7.53/2.62 Transitions: 7.53/2.62 0, main_x -> ¿functionCall(__VERIFIER_nondet_int), main_d1 -> ¿functionCall(__VERIFIER_nondet_int), main_d2 -> ¿functionCall(__VERIFIER_nondet_int)}> 7.53/2.62 7.53/2.62 = 0))> 7.53/2.62 = 0)> 7.53/2.62 (main_x - main_d1), main_d1old -> main_d1, main_d1 -> (main_d2 + 1), main_d2 -> (main_d1old + 1)}> 7.53/2.62 7.53/2.62 0}> 7.53/2.62 7.53/2.62 Fresh variables: 7.53/2.62 7.53/2.62 Undef variables: 7.53/2.62 7.53/2.62 Abstraction variables: 7.53/2.62 7.53/2.62 Exit nodes: 7.53/2.62 7.53/2.62 Accepting locations: 7.53/2.62 7.53/2.62 Asserts: 7.53/2.62 7.53/2.62 + Assume Nodes [0]: ++++++++++++++++++++++++++++++++++++++++++++++++ 7.53/2.62 7.53/2.62 + Static Assert Nodes [0]: +++++++++++++++++++++++++++++++++++++++++ 7.53/2.62 7.53/2.62 + After preprocess (paralelization): ++++++++++++++++++++++++++++++ 7.53/2.62 7.53/2.62 Init Location: 0 7.53/2.62 Transitions: 7.53/2.62 0}> 7.53/2.62 ¿functionCall(__VERIFIER_nondet_int)}> 7.53/2.62 varCall_1}> 7.53/2.62 ¿functionCall(__VERIFIER_nondet_int)}> 7.53/2.62 varCall_2}> 7.53/2.62 ¿functionCall(__VERIFIER_nondet_int)}> 7.53/2.62 varCall_3}> 7.53/2.62 7.53/2.62 = 0)> 7.53/2.62 = 0))> 7.53/2.62 (main_x - main_d1), main_d1old -> main_d1, main_d1 -> (main_d2 + 1), main_d2 -> (main_d1old + 1)}> 7.53/2.62 7.53/2.62 0}> 7.53/2.62 7.53/2.62 Fresh variables: 7.53/2.62 7.53/2.62 Undef variables: 7.53/2.62 7.53/2.62 Abstraction variables: 7.53/2.62 7.53/2.62 Exit nodes: 7.53/2.62 6, 7.53/2.62 Accepting locations: 7.53/2.62 7.53/2.62 Asserts: 7.53/2.62 7.53/2.62 + + 7.53/2.62 +++++++++++++++++++++++++++++++ main +++++++++++++++++++++++++++++++ 7.53/2.62 7.53/2.62 7.53/2.62 Function Return and Parameters Information [2 functions]: 7.53/2.62 function name: __VERIFIER_nondet_int [1 return + 0 parameters] demangled: __VERIFIER_nondet_int 7.53/2.62 __VERIFIER_nondet_int__func_return_ [function result] : int 7.53/2.62 function name: main [1 return + 0 parameters] demangled: main 7.53/2.62 main__func_return_ [function result] : int 7.53/2.62 7.53/2.62 7.53/2.62 AST Ident Scanner Information [6 idents]: 7.53/2.62 __VERIFIER_nondet_int | function | [integer, ()] | | 7.53/2.62 main | function | [integer, ()] | 7.53/2.62 x | local variable | integer | | 7.53/2.62 d1 | local variable | integer | | 7.53/2.62 d2 | local variable | integer | | 7.53/2.62 d1old | local variable | integer | | 7.53/2.62 7.53/2.62 Main function: main 7.53/2.62 Preprocessed LLVMGraph 7.53/2.62 Init Location: 0 7.53/2.62 Transitions: 7.53/2.62 7.53/2.62 = 0), par{main_x -> (main_x - main_d1), main_d1 -> (main_d2 + 1), main_d2 -> (main_d1 + 1)}> 7.53/2.62 = 0))> 7.53/2.62 7.53/2.62 Fresh variables: 7.53/2.62 undef4, undef5, undef6, 7.53/2.62 7.53/2.62 Undef variables: 7.53/2.62 undef4, undef5, undef6, 7.53/2.62 7.53/2.62 Abstraction variables: 7.53/2.62 7.53/2.62 Exit nodes: 7.53/2.62 6, 7.53/2.62 Accepting locations: 7.53/2.62 7.53/2.62 Asserts: 7.53/2.62 7.53/2.62 ************************************************************* 7.53/2.62 ******************************************************************************************* 7.53/2.62 *********************** WORKING TRANSITION SYSTEM (DAG) *********************** 7.53/2.62 ******************************************************************************************* 7.53/2.62 7.53/2.62 Init Location: 0 7.53/2.62 Graph 0: 7.53/2.62 Transitions: 7.53/2.62 Variables: 7.53/2.62 7.53/2.62 Graph 1: 7.53/2.62 Transitions: 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 Variables: 7.53/2.62 main_x, main_d1, main_d2 7.53/2.62 7.53/2.62 Graph 2: 7.53/2.62 Transitions: 7.53/2.62 Variables: 7.53/2.62 7.53/2.62 Precedence: 7.53/2.62 Graph 0 7.53/2.62 7.53/2.62 Graph 1 7.53/2.62 7.53/2.62 7.53/2.62 Graph 2 7.53/2.62 7.53/2.62 7.53/2.62 Map Locations to Subgraph: 7.53/2.62 ( 0 , 0 ) 7.53/2.62 ( 2 , 1 ) 7.53/2.62 ( 6 , 2 ) 7.53/2.62 7.53/2.62 ******************************************************************************************* 7.53/2.62 ******************************** CHECKING ASSERTIONS ******************************** 7.53/2.62 ******************************************************************************************* 7.53/2.62 7.53/2.62 Proving termination of subgraph 0 7.53/2.62 Proving termination of subgraph 1 7.53/2.62 Checking unfeasibility... 7.53/2.62 Time used: 0.002508 7.53/2.62 7.53/2.62 Checking conditional termination of SCC {l2}... 7.53/2.62 7.53/2.62 LOG: CALL solveLinear 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear - Elapsed time: 0.000553s 7.53/2.62 7.53/2.62 LOG: CALL solveLinear 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear - Elapsed time: 0.001630s 7.53/2.62 [44346 : 44348] 7.53/2.62 [44346 : 44349] 7.53/2.62 Successful child: 44348 7.53/2.62 [ Invariant Graph ] 7.53/2.62 Strengthening and disabling transitions... 7.53/2.62 7.53/2.62 LOG: CALL solverLinear in Graph for feasibility 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear in Graph for feasibility 7.53/2.62 It's unfeasible. Removing transition: 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 [ Termination Graph ] 7.53/2.62 Strengthening and disabling transitions... 7.53/2.62 > It's unfeasible. Removing transition: 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 New Graphs: 7.53/2.62 7.53/2.62 LOG: CALL check - Post:1 + main_x <= 0 - Process 1 7.53/2.62 * Exit transition: 7.53/2.62 * Postcondition : 1 + main_x <= 0 7.53/2.62 7.53/2.62 LOG: CALL solveLinear 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear - Elapsed time: 0.000566s 7.53/2.62 > Postcondition is not implied! 7.53/2.62 7.53/2.62 LOG: RETURN check - Elapsed time: 0.000667s 7.53/2.62 INVARIANTS: 7.53/2.62 2: 7.53/2.62 Quasi-INVARIANTS to narrow Graph: 7.53/2.62 2: 1 + main_x <= 0 , 7.53/2.62 Narrowing transition: 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 7.53/2.62 LOG: Narrow transition size 1 7.53/2.62 invGraph after Narrowing: 7.53/2.62 Transitions: 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 Variables: 7.53/2.62 main_x, main_d1, main_d2 7.53/2.62 Checking conditional termination of SCC {l2}... 7.53/2.62 7.53/2.62 LOG: CALL solveLinear 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear - Elapsed time: 0.000528s 7.53/2.62 7.53/2.62 LOG: CALL solveLinear 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear - Elapsed time: 0.001751s 7.53/2.62 [44346 : 44353] 7.53/2.62 [44346 : 44354] 7.53/2.62 Successful child: 44353 7.53/2.62 [ Invariant Graph ] 7.53/2.62 Strengthening and disabling transitions... 7.53/2.62 7.53/2.62 LOG: CALL solverLinear in Graph for feasibility 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear in Graph for feasibility 7.53/2.62 Strengthening transition (result): 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 [ Termination Graph ] 7.53/2.62 Strengthening and disabling transitions... 7.53/2.62 7.53/2.62 LOG: CALL solverLinear in Graph for feasibility 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear in Graph for feasibility 7.53/2.62 Strengthening transition (result): 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 Ranking function: main_x 7.53/2.62 New Graphs: 7.53/2.62 [44346 : 44358] 7.53/2.62 [44346 : 44359] 7.53/2.62 INVARIANTS: 7.53/2.62 2: 7.53/2.62 Quasi-INVARIANTS to narrow Graph: 7.53/2.62 2: main_x <= main_d1 + main_d2 , 1 + main_x <= main_d1 , 7.53/2.62 Narrowing transition: 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 7.53/2.62 LOG: Narrow transition size 2 7.53/2.62 invGraph after Narrowing: 7.53/2.62 Transitions: 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 Variables: 7.53/2.62 main_x, main_d1, main_d2 7.53/2.62 Checking conditional termination of SCC {l2}... 7.53/2.62 7.53/2.62 LOG: CALL solveLinear 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear - Elapsed time: 0.001230s 7.53/2.62 7.53/2.62 LOG: CALL solveLinear 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear - Elapsed time: 0.011019s 7.53/2.62 [44346 : 44360] 7.53/2.62 [44346 : 44361] 7.53/2.62 Successful child: 44361 7.53/2.62 Ranking function: 2*main_x - main_d1 7.53/2.62 Ranking function and negation of Quasi-Invariant applied 7.53/2.62 New Graphs: 7.53/2.62 Transitions: 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 Variables: 7.53/2.62 main_x, main_d1, main_d2 7.53/2.62 Checking conditional termination of SCC {l2}... 7.53/2.62 7.53/2.62 LOG: CALL solveLinear 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear - Elapsed time: 0.000694s 7.53/2.62 7.53/2.62 LOG: CALL solveLinear 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear - Elapsed time: 0.002910s 7.53/2.62 [44346 : 44365] 7.53/2.62 [44346 : 44366] 7.53/2.62 Successful child: 44365 7.53/2.62 [ Invariant Graph ] 7.53/2.62 Strengthening and disabling transitions... 7.53/2.62 7.53/2.62 LOG: CALL solverLinear in Graph for feasibility 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear in Graph for feasibility 7.53/2.62 Strengthening transition (result): 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 7.53/2.62 LOG: CALL solverLinear in Graph for feasibility 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear in Graph for feasibility 7.53/2.62 Strengthening transition (result): 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 [ Termination Graph ] 7.53/2.62 Strengthening and disabling transitions... 7.53/2.62 7.53/2.62 LOG: CALL solverLinear in Graph for feasibility 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear in Graph for feasibility 7.53/2.62 Strengthening transition (result): 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 Ranking function: 319 + 2*main_x - main_d1 7.53/2.62 New Graphs: 7.53/2.62 [44346 : 44370] 7.53/2.62 [44346 : 44371] 7.53/2.62 INVARIANTS: 7.53/2.62 2: 7.53/2.62 Quasi-INVARIANTS to narrow Graph: 7.53/2.62 2: 0 <= main_d1 + main_d2 , 0 <= 320 + main_x + main_d2 , 7.53/2.62 It's unfeasible. Removing transition: 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 Narrowing transition: 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 7.53/2.62 LOG: Narrow transition size 2 7.53/2.62 invGraph after Narrowing: 7.53/2.62 Transitions: 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 Variables: 7.53/2.62 main_x, main_d1, main_d2 7.53/2.62 Checking conditional termination of SCC {l2}... 7.53/2.62 7.53/2.62 LOG: CALL solveLinear 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear - Elapsed time: 0.001899s 7.53/2.62 Ranking function: -1 - main_d1 - main_d2 7.53/2.62 New Graphs: 7.53/2.62 Transitions: 7.53/2.62 main_x - main_d1, main_d1 -> 1 + main_d2, main_d2 -> 1 + main_d1, rest remain the same}> 7.53/2.62 Variables: 7.53/2.62 main_x, main_d1, main_d2 7.53/2.62 Checking conditional termination of SCC {l2}... 7.53/2.62 7.53/2.62 LOG: CALL solveLinear 7.53/2.62 7.53/2.62 LOG: RETURN solveLinear - Elapsed time: 0.001099s 7.53/2.62 Ranking function: (~(321) / 323) + (~(1) / 323)*main_x + (~(1) / 323)*main_d2 7.53/2.62 New Graphs: 7.53/2.62 Proving termination of subgraph 2 7.53/2.62 Analyzing SCC {l6}... 7.53/2.62 No cycles found. 7.53/2.62 7.53/2.62 Program Terminates 7.53/2.62 EOF