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}> undef16, arg2 -> undef17, arg3 -> undef18}> Fresh variables: undef16, undef17, undef18, Undef variables: undef16, undef17, undef18, Abstraction variables: Exit nodes: Accepting locations: Asserts: Preprocessed LLVMGraph Init Location: 0 Transitions: 0) /\ (undef17 > ~(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}> Fresh variables: undef16, undef17, undef18, Undef variables: undef16, undef17, undef18, 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}> 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.404758 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.004385s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.052950s 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: 4.001413s Time used: 4.00086 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.025263s Time used: 4.00057 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.011174s Time used: 4.00095 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.025894s Time used: 4.0006 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.005934s Time used: 4.0004 Solving with 2 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.015857s Time used: 4.00009 Solving with 3 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.022883s Time used: 1.00046 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.036890s Time used: 4.03202 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.016931s > Postcondition is not implied! LOG: RETURN check - Elapsed time: 0.017092s 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}> 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.134783s Time used: 0.134366 Improving Solution with cost 10 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.115386s Time used: 1.11543 LOG: SAT solveNonLinear - Elapsed time: 1.250169s Cost: 10; Total time: 1.24979 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}> Checking conditional non-termination of SCC {l2}... EXIT TRANSITIONS: Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.039166s Time used: 0.038842 Improving Solution with cost 6 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.001097s Time used: 1.00112 LOG: SAT solveNonLinear - Elapsed time: 1.040263s Cost: 6; Total time: 1.03996 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}> Checking conditional non-termination of SCC {l2}... EXIT TRANSITIONS: Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.053263s Time used: 0.052946 Improving Solution with cost 5 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.000508s Time used: 1.00054 LOG: SAT solveNonLinear - Elapsed time: 1.053771s Cost: 5; Total time: 1.05349 Non-termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: arg2 <= arg1 Strengthening and disabling EXIT transitions... Closed exits from l2: 1 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}> Checking conditional non-termination of SCC {l2}... EXIT TRANSITIONS: Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.041112s Time used: 0.040783 Improving Solution with cost 4 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.001255s Time used: 1.00129 LOG: SAT solveNonLinear - Elapsed time: 1.042366s Cost: 4; Total time: 1.04207 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 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}> Checking conditional non-termination of SCC {l2}... EXIT TRANSITIONS: Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.583372s Time used: 4.58321 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.048135s Time used: 0.048131 LOG: SAT solveNonLinear - Elapsed time: 4.631507s Cost: 1; Total time: 4.63134 Failed at location 2: arg3 <= 9 + arg1 Before Improving: Quasi-invariant at l2: arg3 <= 9 + arg1 Optimizing invariants... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.018498s Remaining time after improvement: 0.997259 Non-termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: arg3 <= 9 + arg1 Strengthening and disabling EXIT transitions... Closed exits from l2: 2 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}> Calling reachability with... Transition: Conditions: arg1 <= 1, 0 <= arg3, arg2 <= arg1, 0 <= arg2, arg3 <= 9 + arg1, OPEN EXITS: --- Reachability graph --- > Graph without transitions. Calling reachability with... Transition: Conditions: arg2 <= arg1, 0 <= arg2, 0 <= arg3, arg1 <= 1, arg3 <= 9 + arg1, OPEN EXITS: > Conditions are reachable! Program does NOT terminate