5.38/4.32 NO 5.38/4.32 5.38/4.32 Solver Timeout: 4 5.38/4.32 Global Timeout: 300 5.38/4.32 Maximum number of concurrent processes: 900 5.38/4.32 ******************************************************************************************* 5.38/4.32 *********************** UNPROCESSED TRANSITION SYSTEMS PER FUNCTION *********************** 5.38/4.32 ******************************************************************************************* 5.38/4.32 5.38/4.32 5.38/4.32 List of LLVMGraphs + assumeNodes + staticAssertNodes [1] : 5.38/4.32 5.38/4.32 +++++++++++++++++++++++++++++++ main +++++++++++++++++++++++++++++++ 5.38/4.32 + + 5.38/4.32 Init Location: 0 5.38/4.32 Transitions: 5.38/4.32 0, main_x -> ¿functionCall(__VERIFIER_nondet_int)}> 5.38/4.32 5.38/4.32 = 0))> 5.38/4.32 = 0)> 5.38/4.32 5.38/4.32 5.38/4.32 (main_x - 1)}> 5.38/4.32 5.38/4.32 (main_x + 1)}> 5.38/4.32 5.38/4.32 5.38/4.32 0}> 5.38/4.33 5.38/4.33 Fresh variables: 5.38/4.33 5.38/4.33 Undef variables: 5.38/4.33 5.38/4.33 Abstraction variables: 5.38/4.33 5.38/4.33 Exit nodes: 5.38/4.33 5.38/4.33 Accepting locations: 5.38/4.33 5.38/4.33 Asserts: 5.38/4.33 5.38/4.33 + Assume Nodes [0]: ++++++++++++++++++++++++++++++++++++++++++++++++ 5.38/4.33 5.38/4.33 + Static Assert Nodes [0]: +++++++++++++++++++++++++++++++++++++++++ 5.38/4.33 5.38/4.33 + After preprocess (paralelization): ++++++++++++++++++++++++++++++ 5.38/4.33 5.38/4.33 Init Location: 0 5.38/4.33 Transitions: 5.38/4.33 0}> 5.38/4.33 ¿functionCall(__VERIFIER_nondet_int)}> 5.38/4.33 varCall_1}> 5.38/4.33 5.38/4.33 = 0)> 5.38/4.33 = 0))> 5.38/4.33 ¿functionCall(__VERIFIER_nondet_int)}> 5.38/4.33 5.38/4.33 5.38/4.33 (main_x - 1)}> 5.38/4.33 5.38/4.33 (main_x + 1)}> 5.38/4.33 5.38/4.33 5.38/4.33 0}> 5.38/4.33 5.38/4.33 Fresh variables: 5.38/4.33 5.38/4.33 Undef variables: 5.38/4.33 5.38/4.33 Abstraction variables: 5.38/4.33 5.38/4.33 Exit nodes: 5.38/4.33 10, 5.38/4.33 Accepting locations: 5.38/4.33 5.38/4.33 Asserts: 5.38/4.33 5.38/4.33 + + 5.38/4.33 +++++++++++++++++++++++++++++++ main +++++++++++++++++++++++++++++++ 5.38/4.33 5.38/4.33 5.38/4.33 Function Return and Parameters Information [2 functions]: 5.38/4.33 function name: __VERIFIER_nondet_int [1 return + 0 parameters] demangled: __VERIFIER_nondet_int 5.38/4.33 __VERIFIER_nondet_int__func_return_ [function result] : int 5.38/4.33 function name: main [1 return + 0 parameters] demangled: main 5.38/4.33 main__func_return_ [function result] : int 5.38/4.33 5.38/4.33 5.38/4.33 AST Ident Scanner Information [3 idents]: 5.38/4.33 __VERIFIER_nondet_int | function | [integer, ()] | | 5.38/4.33 main | function | [integer, ()] | 5.38/4.33 x | local variable | integer | | 5.38/4.33 5.38/4.33 Main function: main 5.38/4.33 Preprocessed LLVMGraph 5.38/4.33 Init Location: 0 5.38/4.33 Transitions: 5.38/4.33 5.38/4.33 = 0) /\ (undef4 = 0), par{main_x -> (main_x + 1)}> 5.38/4.33 = 0) /\ (undef4 = 1), par{main_x -> (main_x - 1)}> 5.38/4.33 = 0))> 5.38/4.33 5.38/4.33 Fresh variables: 5.38/4.33 undef3, undef4, 5.38/4.33 5.38/4.33 Undef variables: 5.38/4.33 undef3, undef4, 5.38/4.33 5.38/4.33 Abstraction variables: 5.38/4.33 5.38/4.33 Exit nodes: 5.38/4.33 10, 5.38/4.33 Accepting locations: 5.38/4.33 5.38/4.33 Asserts: 5.38/4.33 5.38/4.33 ************************************************************* 5.38/4.33 ******************************************************************************************* 5.38/4.33 *********************** WORKING TRANSITION SYSTEM (DAG) *********************** 5.38/4.33 ******************************************************************************************* 5.38/4.33 5.38/4.33 Init Location: 0 5.38/4.33 Graph 0: 5.38/4.33 Transitions: 5.38/4.33 Variables: 5.38/4.33 5.38/4.33 Graph 1: 5.38/4.33 Transitions: 5.38/4.33 1 + main_x, rest remain the same}> 5.38/4.33 -1 + main_x, rest remain the same}> 5.38/4.33 Variables: 5.38/4.33 main_x 5.38/4.33 5.38/4.33 Graph 2: 5.38/4.33 Transitions: 5.38/4.33 Variables: 5.38/4.33 5.38/4.33 Precedence: 5.38/4.33 Graph 0 5.38/4.33 5.38/4.33 Graph 1 5.38/4.33 5.38/4.33 5.38/4.33 Graph 2 5.38/4.33 5.38/4.33 5.38/4.33 Map Locations to Subgraph: 5.38/4.33 ( 0 , 0 ) 5.38/4.33 ( 2 , 1 ) 5.38/4.33 ( 10 , 2 ) 5.38/4.33 5.38/4.33 ******************************************************************************************* 5.38/4.33 ******************************** CHECKING ASSERTIONS ******************************** 5.38/4.33 ******************************************************************************************* 5.38/4.33 5.38/4.33 Proving termination of subgraph 0 5.38/4.33 Proving termination of subgraph 1 5.38/4.33 Checking unfeasibility... 5.38/4.33 Time used: 0.002385 5.38/4.33 5.38/4.33 Checking conditional termination of SCC {l2}... 5.38/4.33 5.38/4.33 LOG: CALL solveLinear 5.38/4.33 5.38/4.33 LOG: RETURN solveLinear - Elapsed time: 0.001191s 5.38/4.33 5.38/4.33 LOG: CALL solveLinear 5.38/4.33 5.38/4.33 LOG: RETURN solveLinear - Elapsed time: 0.003504s 5.38/4.33 [55261 : 55263] 5.38/4.33 [55261 : 55264] 5.38/4.33 Successful child: 55263 5.38/4.33 [ Invariant Graph ] 5.38/4.33 Strengthening and disabling transitions... 5.38/4.33 5.38/4.33 LOG: CALL solverLinear in Graph for feasibility 5.38/4.33 5.38/4.33 LOG: RETURN solveLinear in Graph for feasibility 5.38/4.33 It's unfeasible. Removing transition: 5.38/4.33 1 + main_x, rest remain the same}> 5.38/4.33 5.38/4.33 LOG: CALL solverLinear in Graph for feasibility 5.38/4.33 5.38/4.33 LOG: RETURN solveLinear in Graph for feasibility 5.38/4.33 It's unfeasible. Removing transition: 5.38/4.33 -1 + main_x, rest remain the same}> 5.38/4.33 [ Termination Graph ] 5.38/4.33 Strengthening and disabling transitions... 5.38/4.33 > It's unfeasible. Removing transition: 5.38/4.33 1 + main_x, rest remain the same}> 5.38/4.33 5.38/4.33 LOG: CALL solverLinear in Graph for feasibility 5.38/4.33 5.38/4.33 LOG: RETURN solveLinear in Graph for feasibility 5.38/4.33 It's unfeasible. Removing transition: 5.38/4.33 -1 + main_x, rest remain the same}> 5.38/4.33 New Graphs: 5.38/4.33 5.38/4.33 LOG: CALL check - Post:1 + main_x <= 0 - Process 1 5.38/4.33 * Exit transition: 5.38/4.33 * Postcondition : 1 + main_x <= 0 5.38/4.33 5.38/4.33 LOG: CALL solveLinear 5.38/4.33 5.38/4.33 LOG: RETURN solveLinear - Elapsed time: 0.000373s 5.38/4.33 > Postcondition is not implied! 5.38/4.33 5.38/4.33 LOG: RETURN check - Elapsed time: 0.000459s 5.38/4.33 INVARIANTS: 5.38/4.33 2: 5.38/4.33 Quasi-INVARIANTS to narrow Graph: 5.38/4.33 2: 1 + main_x <= 0 , 5.38/4.33 Narrowing transition: 5.38/4.33 1 + main_x, rest remain the same}> 5.38/4.33 5.38/4.33 LOG: Narrow transition size 1 5.38/4.33 Narrowing transition: 5.38/4.33 -1 + main_x, rest remain the same}> 5.38/4.33 5.38/4.33 LOG: Narrow transition size 1 5.38/4.33 invGraph after Narrowing: 5.38/4.33 Transitions: 5.38/4.33 1 + main_x, rest remain the same}> 5.38/4.33 -1 + main_x, rest remain the same}> 5.38/4.33 Variables: 5.38/4.33 main_x 5.38/4.33 Checking conditional termination of SCC {l2}... 5.38/4.33 5.38/4.33 LOG: CALL solveLinear 5.38/4.33 5.38/4.33 LOG: RETURN solveLinear - Elapsed time: 0.001190s 5.38/4.33 5.38/4.33 LOG: CALL solveLinear 5.38/4.33 5.38/4.33 LOG: RETURN solveLinear - Elapsed time: 0.003674s 5.38/4.33 [55261 : 55268] 5.38/4.33 [55261 : 55269] 5.38/4.33 Solving with 1 template(s). 5.38/4.33 5.38/4.33 LOG: CALL solveNonLinearGetFirstSolution 5.38/4.33 5.38/4.33 LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.010907s 5.38/4.33 Time used: 0.010506 5.38/4.33 5.38/4.33 [55261 : 55273] 5.38/4.33 [55261 : 55277] 5.38/4.33 Successful child: 55277 5.38/4.33 5.38/4.33 Program does NOT terminate 5.38/4.33 EOF