NO Solver Timeout: 4 Global Timeout: 300 No parsing errors! Init Location: 0 Transitions: 0) /\ (arg2 > ~(1)), par{arg1 -> 20, arg2 -> ~(20), arg3 -> arg2}> = arg2), par{arg1 -> arg3, arg2 -> (~(1) * arg3), arg3 -> arg1}> = arg2) /\ ((arg1 - arg3) >= 5) /\ ((arg1 + arg3) < 5), par{arg1 -> arg3, arg2 -> (~(1) * arg3), arg3 -> arg1}> arg3, arg2 -> (0 - arg3), arg3 -> arg2}> = arg2) /\ ((arg1 - arg3) >= 5) /\ ((arg1 + arg3) >= 5) /\ (arg3 < 1) /\ (arg3 < (arg1 + 1)), par{arg1 -> (arg1 + 1), arg2 -> (0 - (arg1 + 1)), arg3 -> (arg3 - 1)}> = arg2) /\ ((arg1 - arg3) >= 5) /\ ((arg1 + arg3) >= 5) /\ (arg3 > 1) /\ (arg3 < (arg1 + 1)), par{arg1 -> (arg1 + 1), arg2 -> (0 - (arg1 + 1)), arg3 -> (arg3 - 1)}> 5) /\ (arg2 < 2) /\ (1 = arg3), par{arg1 -> ~(1), arg2 -> 1, arg3 -> 0}> undef22, arg2 -> undef23, arg3 -> undef24}> Fresh variables: undef22, undef23, undef24, Undef variables: undef22, undef23, undef24, Abstraction variables: Exit nodes: Accepting locations: Asserts: Preprocessed LLVMGraph Init Location: 0 Transitions: 0) /\ (undef23 > ~(1))> = arg2) /\ (arg3 <= arg1), par{arg1 -> arg1, arg2 -> (0 - arg1), arg3 -> (~(1) * arg3)}> = arg2) /\ ((arg1 - arg3) >= 5) /\ ((arg1 + arg3) < 5) /\ (arg3 <= arg1), par{arg1 -> arg1, arg2 -> (0 - arg1), arg3 -> (~(1) * arg3)}> = arg2) /\ ((arg1 - arg3) >= 5) /\ ((arg1 + arg3) >= 5) /\ (arg3 < 1) /\ (arg3 < (arg1 + 1)), par{arg1 -> (arg1 + 1), arg2 -> (0 - (arg1 + 1)), arg3 -> (arg3 - 1)}> = arg2) /\ ((arg1 - arg3) >= 5) /\ ((arg1 + arg3) >= 5) /\ (arg3 > 1) /\ (arg3 < (arg1 + 1)), par{arg1 -> (arg1 + 1), arg2 -> (0 - (arg1 + 1)), arg3 -> (arg3 - 1)}> 5) /\ (arg2 < 2) /\ (1 = arg3), par{arg1 -> ~(1), arg2 -> 1, arg3 -> 0}> Fresh variables: undef22, undef23, undef24, Undef variables: undef22, undef23, undef24, Abstraction variables: Exit nodes: Accepting locations: Asserts: ************************************************************* ******************************************************************************************* *********************** WORKING TRANSITION SYSTEM (DAG) *********************** ******************************************************************************************* Init Location: 0 Graph 0: Transitions: Variables: Graph 1: Transitions: -arg1, arg3 -> -arg3, rest remain the same}> -arg1, arg3 -> -arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> -1, arg2 -> 1, arg3 -> 0, 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.042324 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.002372s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.018010s Piecewise ranking function: min(1 + 10*arg1 - 10*arg3,0) New Graphs: Transitions: -arg1, arg3 -> -arg3, rest remain the same}> -arg1, arg3 -> -arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Variables: arg1, arg2, arg3 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001109s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.054780s Trying to remove transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.012997s Time used: 0.012513 Trying to remove transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.010483s Time used: 0.009745 Trying to remove transition: -arg1, arg3 -> -arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.012613s Time used: 0.01189 Trying to remove transition: -arg1, arg3 -> -arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.006447s Time used: 0.00572 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.049120s Time used: 0.048194 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.000447s Time used: 1.00043 LOG: SAT solveNonLinear - Elapsed time: 1.049567s Cost: 1; Total time: 1.04862 Failed at location 2: 1 + arg1 <= arg3 Before Improving: Quasi-invariant at l2: 1 + arg1 <= arg3 Optimizing invariants... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.014686s Remaining time after improvement: 0.997335 Termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: 1 + arg1 <= arg3 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: -1, arg2 -> 1, arg3 -> 0, rest remain the same}> [ Termination Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> New Graphs: Calling Safety with literal 1 + arg1 <= arg3 and entry LOG: CALL check - Post:1 + arg1 <= arg3 - Process 1 * Exit transition: * Postcondition : 1 + arg1 <= arg3 LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000497s > Postcondition is not implied! LOG: RETURN check - Elapsed time: 0.000546s INVARIANTS: 2: Quasi-INVARIANTS to narrow Graph: 2: 1 + arg1 <= arg3 , Narrowing transition: -arg1, arg3 -> -arg3, rest remain the same}> LOG: Narrow transition size 1 Narrowing transition: -arg1, arg3 -> -arg3, rest remain the same}> LOG: Narrow transition size 1 Narrowing transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> LOG: Narrow transition size 1 Narrowing transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> LOG: Narrow transition size 1 It's unfeasible. Removing transition: -1, arg2 -> 1, arg3 -> 0, rest remain the same}> invGraph after Narrowing: Transitions: -arg1, arg3 -> -arg3, rest remain the same}> -arg1, arg3 -> -arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Variables: arg1, arg2, arg3 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001115s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.054955s Trying to remove transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.013230s Time used: 0.012735 Trying to remove transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.010835s Time used: 0.009912 Trying to remove transition: -arg1, arg3 -> -arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.012991s Time used: 0.012105 Trying to remove transition: -arg1, arg3 -> -arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.006786s Time used: 0.005898 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.001922s Time used: 4.00099 Solving with 2 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.016295s Time used: 4.00083 Solving with 3 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.028506s Time used: 1.00058 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.039260s Time used: 0.035932 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.000560s Time used: 1.00054 LOG: SAT solveNonLinear - Elapsed time: 1.039820s Cost: 1; Total time: 1.03648 Termination implied by a set of invariant(s): Invariant at l2: arg2 <= 1 + arg3 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, arg2 -> -1 - arg1, 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 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> [ Termination Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, arg2 -> -1 - arg1, 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 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Quasi-ranking function: 50000 - arg1 New Graphs: Transitions: -arg1, arg3 -> -arg3, rest remain the same}> -arg1, arg3 -> -arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Variables: arg1, arg2, arg3 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001377s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.099966s Trying to remove transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.020376s Time used: 0.019758 Trying to remove transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.012314s Time used: 0.011474 Trying to remove transition: -arg1, arg3 -> -arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.017479s Time used: 0.016428 Trying to remove transition: -arg1, arg3 -> -arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.007949s Time used: 0.006967 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.003152s Time used: 4.00206 Solving with 2 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.015894s Time used: 4.00123 Solving with 3 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.015131s Time used: 1.00157 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.043061s Time used: 0.039367 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.001002s Time used: 1.00099 LOG: SAT solveNonLinear - Elapsed time: 1.044063s Cost: 1; Total time: 1.04035 Termination implied by a set of invariant(s): Invariant at l2: arg1 + arg2 <= 0 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, arg2 -> -1 - arg1, 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 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> [ Termination Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, arg2 -> -1 - arg1, 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 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Quasi-ranking function: 50000 - 99998*arg1 - arg2 New Graphs: Transitions: -arg1, arg3 -> -arg3, rest remain the same}> -arg1, arg3 -> -arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Variables: arg1, arg2, arg3 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001606s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.417426s Trying to remove transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.021650s Time used: 0.020618 Trying to remove transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.016080s Time used: 0.015024 Trying to remove transition: -arg1, arg3 -> -arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.016696s Time used: 0.015541 Trying to remove transition: -arg1, arg3 -> -arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.008825s Time used: 0.007816 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.001789s Time used: 4.00064 Solving with 2 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.009310s Time used: 4.00117 Solving with 3 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.002237s Time used: 1.00024 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.045705s Time used: 0.042575 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.000736s Time used: 1.00072 LOG: SAT solveNonLinear - Elapsed time: 1.046441s Cost: 1; Total time: 1.0433 Termination implied by a set of invariant(s): Invariant at l2: 0 <= arg1 + arg2 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, arg2 -> -1 - arg1, 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 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> [ Termination Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, arg2 -> -1 - arg1, 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 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Quasi-ranking function: 50000 + arg2 New Graphs: Transitions: -arg1, arg3 -> -arg3, rest remain the same}> -arg1, arg3 -> -arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Variables: arg1, arg2, arg3 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001618s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.093967s Trying to remove transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.022044s Time used: 0.021281 Trying to remove transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.016769s Time used: 0.015819 Trying to remove transition: -arg1, arg3 -> -arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.020009s Time used: 0.018869 Trying to remove transition: -arg1, arg3 -> -arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.009658s Time used: 0.008697 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.001933s Time used: 4.00078 Solving with 2 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.024320s Time used: 4.0007 Solving with 3 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.014088s Time used: 1.00034 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.045066s Time used: 0.041871 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.000682s Time used: 1.00067 LOG: SAT solveNonLinear - Elapsed time: 1.045748s Cost: 1; Total time: 1.04254 Termination implied by a set of invariant(s): Invariant at l2: 0 <= 1 + arg1 + arg2 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, arg2 -> -1 - arg1, 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 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> [ Termination Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, arg2 -> -1 - arg1, 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 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Quasi-ranking function: 50000 + 2*arg1 + 3*arg2 New Graphs: Transitions: -arg1, arg3 -> -arg3, rest remain the same}> -arg1, arg3 -> -arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Variables: arg1, arg2, arg3 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001738s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.149187s Trying to remove transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.021925s Time used: 0.0209 Trying to remove transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.015730s Time used: 0.01463 Trying to remove transition: -arg1, arg3 -> -arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.022112s Time used: 0.02091 Trying to remove transition: -arg1, arg3 -> -arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.010347s Time used: 0.009421 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.000999s Time used: 4.00004 Solving with 2 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.010452s Time used: 4.00136 Solving with 3 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.002411s Time used: 1.0005 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.045396s Time used: 0.042401 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.000615s Time used: 1.00059 LOG: SAT solveNonLinear - Elapsed time: 1.046011s Cost: 1; Total time: 1.04299 Termination implied by a set of invariant(s): Invariant at l2: 1 + arg2 <= 0 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, arg2 -> -1 - arg1, 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 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> [ Termination Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, arg2 -> -1 - arg1, 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 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Quasi-ranking function: 50000 - arg1 + arg2 New Graphs: Transitions: -arg1, arg3 -> -arg3, rest remain the same}> -arg1, arg3 -> -arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Variables: arg1, arg2, arg3 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001885s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.217000s Trying to remove transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.025289s Time used: 0.024268 Trying to remove transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.018348s Time used: 0.017103 Trying to remove transition: -arg1, arg3 -> -arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.022822s Time used: 0.021673 Trying to remove transition: -arg1, arg3 -> -arg3, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.014877s Time used: 0.013731 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.002027s Time used: 4.00082 Solving with 2 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.006829s Time used: 4.00107 Solving with 3 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.013571s Time used: 1.00002 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.004191s Time used: 4.00002 Proving non-termination of subgraph 1 Transitions: -arg1, arg3 -> -arg3, rest remain the same}> -arg1, arg3 -> -arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, 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.046820s Time used: 0.046539 Improving Solution with cost 11 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.087458s Time used: 0.087455 LOG: SAT solveNonLinear - Elapsed time: 0.134277s Cost: 11; Total time: 0.133994 Non-termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: arg2 <= arg3 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 and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, arg2 -> -1 - arg1, 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 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, 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.016872s Time used: 0.01669 Improving Solution with cost 5 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.041928s Time used: 0.041922 Improving Solution with cost 3 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.044647s Time used: 0.044644 LOG: SAT solveNonLinear - Elapsed time: 0.103447s Cost: 3; Total time: 0.103256 Non-termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: 7 <= arg1 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): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, arg2 -> -1 - arg1, 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 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, 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.054671s Time used: 0.054611 Solving with 2 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.070291s Time used: 0.068154 Improving Solution with cost 2 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.134519s Time used: 0.134515 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.000679s Time used: 1.00066 LOG: SAT solveNonLinear - Elapsed time: 1.205489s Cost: 1; Total time: 1.20333 Failed at location 2: arg3 <= 0 Before Improving: Quasi-invariant at l2: arg3 <= 0 Quasi-invariant at l2: 5 <= arg1 + arg3 Optimizing invariants... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.026314s Remaining time after improvement: 0.997787 Non-termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: arg3 <= 0 Quasi-invariant at l2: 5 <= arg1 + arg3 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 It's unfeasible. Removing transition: -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: -arg1, arg3 -> -arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: 1 + arg1, arg2 -> -1 - arg1, arg3 -> -1 + arg3, rest remain the same}> Calling reachability with... Transition: Conditions: arg2 <= arg3, 7 <= arg1, arg3 <= 0, 5 <= arg1 + arg3, OPEN EXITS: --- Reachability graph --- > Graph without transitions. Calling reachability with... Transition: Conditions: arg2 <= arg3, arg3 <= 0, 5 <= arg1 + arg3, 7 <= arg1, OPEN EXITS: > Conditions are reachable! Program does NOT terminate