NO Solver Timeout: 4 Global Timeout: 60 No parsing errors! Init Location: 0 Transitions: 0) /\ (arg2 > ~(1)), par{arg1 -> 0, arg2 -> 0, arg3 -> arg2}> 0) /\ (0 = arg2), par{arg1 -> 0, arg2 -> 0, arg3 -> (arg3 - 1)}> 0, arg2 -> 0, arg3 -> 9}> 0) /\ (arg3 < 10) /\ (arg1 < 2) /\ (1 = arg2), par{arg1 -> 1, arg2 -> 1, arg3 -> (arg3 + 1)}> 1, arg2 -> 1, arg3 -> 1}> 0) /\ (0 = arg2), par{arg2 -> 0, arg3 -> (arg3 - 1)}> 0, arg3 -> 9}> 0) /\ (arg3 < 10) /\ (arg1 < 2) /\ (1 = arg2), par{arg2 -> 1, arg3 -> (arg3 + 1)}> 1, arg3 -> 1}> undef28, arg2 -> undef29, arg3 -> undef30}> Fresh variables: undef28, undef29, undef30, Undef variables: undef28, undef29, undef30, Abstraction variables: Exit nodes: Accepting locations: Asserts: Preprocessed LLVMGraph Init Location: 0 Transitions: 0) /\ (undef29 > ~(1))> 0) /\ (0 = arg2), par{arg1 -> 0, arg2 -> 0, arg3 -> (arg3 - 1)}> 0, arg2 -> 0, arg3 -> 9}> 0) /\ (arg3 < 10) /\ (arg1 < 2) /\ (1 = arg2), par{arg1 -> 1, arg2 -> 1, arg3 -> (arg3 + 1)}> 1, arg2 -> 1, arg3 -> 1}> 0) /\ (0 = arg2), par{arg2 -> 0, arg3 -> (arg3 - 1)}> 0, arg3 -> 9}> 0) /\ (arg3 < 10) /\ (arg1 < 2) /\ (1 = arg2), par{arg2 -> 1, arg3 -> (arg3 + 1)}> 1, arg3 -> 1}> Fresh variables: undef28, undef29, undef30, Undef variables: undef28, undef29, undef30, Abstraction variables: Exit nodes: Accepting locations: Asserts: ************************************************************* ******************************************************************************************* *********************** WORKING TRANSITION SYSTEM (DAG) *********************** ******************************************************************************************* Init Location: 0 Graph 0: Transitions: Variables: Graph 1: Transitions: 0, arg2 -> 0, arg3 -> -1 + arg3, rest remain the same}> 0, arg2 -> 0, arg3 -> 9, rest remain the same}> 1, arg2 -> 1, arg3 -> 1 + arg3, rest remain the same}> 1, arg2 -> 1, arg3 -> 1, rest remain the same}> 0, arg3 -> -1 + arg3, rest remain the same}> 0, arg3 -> 9, rest remain the same}> 1, arg3 -> 1 + arg3, rest remain the same}> 1, arg3 -> 1, rest remain the same}> Variables: arg1, arg2, arg3 Precedence: Graph 0 Graph 1 Map Locations to Subgraph: ( 0 , 0 ) ( 2 , 1 ) ******************************************************************************************* ******************************** CHECKING ASSERTIONS ******************************** ******************************************************************************************* Proving termination of subgraph 0 Proving termination of subgraph 1 Checking unfeasibility... Time used: 0.625904 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.009224s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.187069s Trying to remove transition: 1, arg3 -> 1, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.523130s Time used: 1.52075 Trying to remove transition: 1, arg3 -> 1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.022853s Time used: 4.00131 Trying to remove transition: 0, arg3 -> 9, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.062250s Time used: 4.0313 Trying to remove transition: 0, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.009524s Time used: 4.0024 Trying to remove transition: 1, arg2 -> 1, arg3 -> 1, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 2.800025s Time used: 2.79245 Trying to remove transition: 1, arg2 -> 1, arg3 -> 1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.026611s Time used: 4.00253 Trying to remove transition: 0, arg2 -> 0, arg3 -> 9, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.038547s Time used: 4.00278 Trying to remove transition: 0, arg2 -> 0, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.038838s Time used: 4.0312 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.608559s Time used: 0.601258 Solving with 2 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.003363s Time used: 0.983016 Solving with 3 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.972210s Time used: 0.9673 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.998573s Time used: 0.991188 Termination failed. Trying to show unreachability... Proving unreachability of entry: LOG: CALL check - Post:1 <= 0 - Process 1 * Exit transition: * Postcondition : 1 <= 0 LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.028066s > Postcondition is not implied! LOG: RETURN check - Elapsed time: 0.028213s Cannot prove unreachability Proving non-termination of subgraph 1 Transitions: 0, arg2 -> 0, arg3 -> -1 + arg3, rest remain the same}> 0, arg2 -> 0, arg3 -> 9, rest remain the same}> 1, arg2 -> 1, arg3 -> 1 + arg3, rest remain the same}> 1, arg2 -> 1, arg3 -> 1, rest remain the same}> 0, arg3 -> -1 + arg3, rest remain the same}> 0, arg3 -> 9, rest remain the same}> 1, arg3 -> 1 + arg3, rest remain the same}> 1, arg3 -> 1, rest remain the same}> Variables: arg1, arg2, arg3 Checking conditional non-termination of SCC {l2}... EXIT TRANSITIONS: Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.171411s Time used: 0.170896 Improving Solution with cost 10 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.001933s Time used: 1.00185 LOG: SAT solveNonLinear - Elapsed time: 1.173344s Cost: 10; Total time: 1.17274 Non-termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: arg1 <= 1 Strengthening and disabling EXIT transitions... Closed exits from l2: 6 Strengthening exit transition (result): Strengthening exit transition (result): Strengthening exit transition (result): Strengthening exit transition (result): Strengthening exit transition (result): Strengthening exit transition (result): Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg2 -> 0, arg3 -> -1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg2 -> 0, arg3 -> 9, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg2 -> 1, arg3 -> 1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg2 -> 1, arg3 -> 1, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg3 -> -1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg3 -> 9, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg3 -> 1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg3 -> 1, rest remain the same}> Checking conditional non-termination of SCC {l2}... EXIT TRANSITIONS: Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.128799s Time used: 0.128397 Improving Solution with cost 6 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.001776s Time used: 1.00167 LOG: SAT solveNonLinear - Elapsed time: 1.130575s Cost: 6; Total time: 1.13007 Non-termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: 0 <= arg3 Strengthening and disabling EXIT transitions... Closed exits from l2: 2 Strengthening exit transition (result): Strengthening exit transition (result): Strengthening exit transition (result): Strengthening exit transition (result): Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg2 -> 0, arg3 -> -1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg2 -> 0, arg3 -> 9, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg2 -> 1, arg3 -> 1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg2 -> 1, arg3 -> 1, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg3 -> -1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg3 -> 9, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg3 -> 1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg3 -> 1, rest remain the same}> Checking conditional non-termination of SCC {l2}... EXIT TRANSITIONS: Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.058577s Time used: 0.058152 Improving Solution with cost 5 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.657056s Time used: 0.657003 Improving Solution with cost 3 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.959305s Time used: 0.959226 LOG: SAT solveNonLinear - Elapsed time: 1.674938s Cost: 3; Total time: 1.67438 Failed at location 2: arg3 <= 10 Before Improving: Quasi-invariant at l2: arg3 <= 10 Optimizing invariants... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.008601s Remaining time after improvement: 0.996333 Non-termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: arg3 <= 10 Strengthening and disabling EXIT transitions... Closed exits from l2: 2 Strengthening exit transition (result): Strengthening exit transition (result): Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg2 -> 0, arg3 -> -1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg2 -> 0, arg3 -> 9, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg2 -> 1, arg3 -> 1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg2 -> 1, arg3 -> 1, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg3 -> -1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg3 -> 9, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg3 -> 1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg3 -> 1, rest remain the same}> Checking conditional non-termination of SCC {l2}... EXIT TRANSITIONS: Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.045509s Time used: 0.04513 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.099009s Time used: 0.099 LOG: SAT solveNonLinear - Elapsed time: 0.144518s Cost: 1; Total time: 0.14413 Non-termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: arg2 <= 1 Strengthening and disabling EXIT transitions... Closed exits from l2: 1 Strengthening exit transition (result): Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg2 -> 0, arg3 -> -1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg2 -> 0, arg3 -> 9, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg2 -> 1, arg3 -> 1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg2 -> 1, arg3 -> 1, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg3 -> -1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg3 -> 9, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg3 -> 1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg3 -> 1, rest remain the same}> Checking conditional non-termination of SCC {l2}... EXIT TRANSITIONS: Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.039241s Time used: 0.039131 LOG: SAT solveNonLinear - Elapsed time: 0.039241s Cost: 0; Total time: 0.039131 Non-termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: 0 <= arg2 Strengthening and disabling EXIT transitions... Closed exits from l2: 1 Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg2 -> 0, arg3 -> -1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg2 -> 0, arg3 -> 9, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg2 -> 1, arg3 -> 1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg2 -> 1, arg3 -> 1, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg3 -> -1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 0, arg3 -> 9, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg3 -> 1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1, arg3 -> 1, rest remain the same}> Calling reachability with... Transition: Conditions: arg1 <= 1, 0 <= arg3, arg3 <= 10, arg2 <= 1, 0 <= arg2, OPEN EXITS: --- Reachability graph --- > Graph without transitions. Calling reachability with... Transition: Conditions: 0 <= arg2, 0 <= arg3, arg1 <= 1, arg2 <= 1, arg3 <= 10, OPEN EXITS: > Conditions are reachable! Program does NOT terminate