NO Initial ITS Start location: l5 0: l0 -> l1 : Result_4^0'=Result_4^post0, y_6^0'=y_6^post0, x_5^0'=x_5^post0, (0 == 0 /\ y_6^0-x_5^0 <= 0 /\ -y_6^0+x_5^0 <= 0 /\ y_6^0-y_6^post0 == 0 /\ -x_5^post0+x_5^0 == 0), cost: 1 1: l0 -> l2 : Result_4^0'=Result_4^post1, y_6^0'=y_6^post1, x_5^0'=x_5^post1, (y_6^0-x_5^0 <= 0 /\ 1+y_6^0-x_5^0 <= 0 /\ y_6^0-y_6^post1 == 0 /\ Result_4^0-Result_4^post1 == 0 /\ -1-x_5^0+x_5^post1 == 0), cost: 1 3: l0 -> l3 : Result_4^0'=Result_4^post3, y_6^0'=y_6^post3, x_5^0'=x_5^post3, (1-y_6^0+x_5^0 <= 0 /\ -1-x_5^0+x_5^post3 == 0 /\ Result_4^0-Result_4^post3 == 0 /\ y_6^0-y_6^post3 == 0), cost: 1 2: l2 -> l0 : Result_4^0'=Result_4^post2, y_6^0'=y_6^post2, x_5^0'=x_5^post2, (y_6^0-y_6^post2 == 0 /\ x_5^0-x_5^post2 == 0 /\ Result_4^0-Result_4^post2 == 0), cost: 1 4: l3 -> l0 : Result_4^0'=Result_4^post4, y_6^0'=y_6^post4, x_5^0'=x_5^post4, (y_6^0-y_6^post4 == 0 /\ x_5^0-x_5^post4 == 0 /\ Result_4^0-Result_4^post4 == 0), cost: 1 5: l4 -> l0 : Result_4^0'=Result_4^post5, y_6^0'=y_6^post5, x_5^0'=x_5^post5, (Result_4^0-Result_4^post5 == 0 /\ y_6^0-y_6^post5 == 0 /\ x_5^0-x_5^post5 == 0), cost: 1 6: l5 -> l4 : Result_4^0'=Result_4^post6, y_6^0'=y_6^post6, x_5^0'=x_5^post6, (x_5^0-x_5^post6 == 0 /\ Result_4^0-Result_4^post6 == 0 /\ y_6^0-y_6^post6 == 0), cost: 1 Removed unreachable rules and leafs Start location: l5 1: l0 -> l2 : Result_4^0'=Result_4^post1, y_6^0'=y_6^post1, x_5^0'=x_5^post1, (y_6^0-x_5^0 <= 0 /\ 1+y_6^0-x_5^0 <= 0 /\ y_6^0-y_6^post1 == 0 /\ Result_4^0-Result_4^post1 == 0 /\ -1-x_5^0+x_5^post1 == 0), cost: 1 3: l0 -> l3 : Result_4^0'=Result_4^post3, y_6^0'=y_6^post3, x_5^0'=x_5^post3, (1-y_6^0+x_5^0 <= 0 /\ -1-x_5^0+x_5^post3 == 0 /\ Result_4^0-Result_4^post3 == 0 /\ y_6^0-y_6^post3 == 0), cost: 1 2: l2 -> l0 : Result_4^0'=Result_4^post2, y_6^0'=y_6^post2, x_5^0'=x_5^post2, (y_6^0-y_6^post2 == 0 /\ x_5^0-x_5^post2 == 0 /\ Result_4^0-Result_4^post2 == 0), cost: 1 4: l3 -> l0 : Result_4^0'=Result_4^post4, y_6^0'=y_6^post4, x_5^0'=x_5^post4, (y_6^0-y_6^post4 == 0 /\ x_5^0-x_5^post4 == 0 /\ Result_4^0-Result_4^post4 == 0), cost: 1 5: l4 -> l0 : Result_4^0'=Result_4^post5, y_6^0'=y_6^post5, x_5^0'=x_5^post5, (Result_4^0-Result_4^post5 == 0 /\ y_6^0-y_6^post5 == 0 /\ x_5^0-x_5^post5 == 0), cost: 1 6: l5 -> l4 : Result_4^0'=Result_4^post6, y_6^0'=y_6^post6, x_5^0'=x_5^post6, (x_5^0-x_5^post6 == 0 /\ Result_4^0-Result_4^post6 == 0 /\ y_6^0-y_6^post6 == 0), cost: 1 Applied preprocessing Original rule: l0 -> l2 : Result_4^0'=Result_4^post1, y_6^0'=y_6^post1, x_5^0'=x_5^post1, (y_6^0-x_5^0 <= 0 /\ 1+y_6^0-x_5^0 <= 0 /\ y_6^0-y_6^post1 == 0 /\ Result_4^0-Result_4^post1 == 0 /\ -1-x_5^0+x_5^post1 == 0), cost: 1 New rule: l0 -> l2 : x_5^0'=1+x_5^0, 1+y_6^0-x_5^0 <= 0, cost: 1 Applied preprocessing Original rule: l2 -> l0 : Result_4^0'=Result_4^post2, y_6^0'=y_6^post2, x_5^0'=x_5^post2, (y_6^0-y_6^post2 == 0 /\ x_5^0-x_5^post2 == 0 /\ Result_4^0-Result_4^post2 == 0), cost: 1 New rule: l2 -> l0 : TRUE, cost: 1 Applied preprocessing Original rule: l0 -> l3 : Result_4^0'=Result_4^post3, y_6^0'=y_6^post3, x_5^0'=x_5^post3, (1-y_6^0+x_5^0 <= 0 /\ -1-x_5^0+x_5^post3 == 0 /\ Result_4^0-Result_4^post3 == 0 /\ y_6^0-y_6^post3 == 0), cost: 1 New rule: l0 -> l3 : x_5^0'=1+x_5^0, 1-y_6^0+x_5^0 <= 0, cost: 1 Applied preprocessing Original rule: l3 -> l0 : Result_4^0'=Result_4^post4, y_6^0'=y_6^post4, x_5^0'=x_5^post4, (y_6^0-y_6^post4 == 0 /\ x_5^0-x_5^post4 == 0 /\ Result_4^0-Result_4^post4 == 0), cost: 1 New rule: l3 -> l0 : TRUE, cost: 1 Applied preprocessing Original rule: l4 -> l0 : Result_4^0'=Result_4^post5, y_6^0'=y_6^post5, x_5^0'=x_5^post5, (Result_4^0-Result_4^post5 == 0 /\ y_6^0-y_6^post5 == 0 /\ x_5^0-x_5^post5 == 0), cost: 1 New rule: l4 -> l0 : TRUE, cost: 1 Applied preprocessing Original rule: l5 -> l4 : Result_4^0'=Result_4^post6, y_6^0'=y_6^post6, x_5^0'=x_5^post6, (x_5^0-x_5^post6 == 0 /\ Result_4^0-Result_4^post6 == 0 /\ y_6^0-y_6^post6 == 0), cost: 1 New rule: l5 -> l4 : TRUE, cost: 1 Simplified rules Start location: l5 7: l0 -> l2 : x_5^0'=1+x_5^0, 1+y_6^0-x_5^0 <= 0, cost: 1 9: l0 -> l3 : x_5^0'=1+x_5^0, 1-y_6^0+x_5^0 <= 0, cost: 1 8: l2 -> l0 : TRUE, cost: 1 10: l3 -> l0 : TRUE, cost: 1 11: l4 -> l0 : TRUE, cost: 1 12: l5 -> l4 : TRUE, cost: 1 Eliminating location l4 by chaining: Applied chaining First rule: l5 -> l4 : TRUE, cost: 1 Second rule: l4 -> l0 : TRUE, cost: 1 New rule: l5 -> l0 : TRUE, cost: 2 Applied deletion Removed the following rules: 11 12 Eliminating location l2 by chaining: Applied chaining First rule: l0 -> l2 : x_5^0'=1+x_5^0, 1+y_6^0-x_5^0 <= 0, cost: 1 Second rule: l2 -> l0 : TRUE, cost: 1 New rule: l0 -> l0 : x_5^0'=1+x_5^0, 1+y_6^0-x_5^0 <= 0, cost: 2 Applied deletion Removed the following rules: 7 8 Eliminating location l3 by chaining: Applied chaining First rule: l0 -> l3 : x_5^0'=1+x_5^0, 1-y_6^0+x_5^0 <= 0, cost: 1 Second rule: l3 -> l0 : TRUE, cost: 1 New rule: l0 -> l0 : x_5^0'=1+x_5^0, 1-y_6^0+x_5^0 <= 0, cost: 2 Applied deletion Removed the following rules: 9 10 Eliminated locations on linear paths Start location: l5 14: l0 -> l0 : x_5^0'=1+x_5^0, 1+y_6^0-x_5^0 <= 0, cost: 2 15: l0 -> l0 : x_5^0'=1+x_5^0, 1-y_6^0+x_5^0 <= 0, cost: 2 13: l5 -> l0 : TRUE, cost: 2 Applied nonterm Original rule: l0 -> l0 : x_5^0'=1+x_5^0, 1+y_6^0-x_5^0 <= 0, cost: 2 New rule: l0 -> [6] : -1-y_6^0+x_5^0 >= 0, cost: NONTERM Applied acceleration Original rule: l0 -> l0 : x_5^0'=1+x_5^0, 1+y_6^0-x_5^0 <= 0, cost: 2 New rule: l0 -> l0 : x_5^0'=n1+x_5^0, -1-y_6^0+x_5^0 >= 0, cost: 2*n1 Applied acceleration Original rule: l0 -> l0 : x_5^0'=1+x_5^0, 1-y_6^0+x_5^0 <= 0, cost: 2 New rule: l0 -> l0 : x_5^0'=x_5^0+n3, (y_6^0-x_5^0-n3 >= 0 /\ n3 >= 0), cost: 2*n3 Applied instantiation Original rule: l0 -> l0 : x_5^0'=x_5^0+n3, (y_6^0-x_5^0-n3 >= 0 /\ n3 >= 0), cost: 2*n3 New rule: l0 -> l0 : x_5^0'=y_6^0, (0 >= 0 /\ y_6^0-x_5^0 >= 0), cost: 2*y_6^0-2*x_5^0 Applied simplification Original rule: l0 -> l0 : x_5^0'=y_6^0, (0 >= 0 /\ y_6^0-x_5^0 >= 0), cost: 2*y_6^0-2*x_5^0 New rule: l0 -> l0 : x_5^0'=y_6^0, y_6^0-x_5^0 >= 0, cost: 2*y_6^0-2*x_5^0 Applied deletion Removed the following rules: 14 15 Accelerated simple loops Start location: l5 16: l0 -> [6] : -1-y_6^0+x_5^0 >= 0, cost: NONTERM 17: l0 -> l0 : x_5^0'=n1+x_5^0, -1-y_6^0+x_5^0 >= 0, cost: 2*n1 19: l0 -> l0 : x_5^0'=y_6^0, y_6^0-x_5^0 >= 0, cost: 2*y_6^0-2*x_5^0 13: l5 -> l0 : TRUE, cost: 2 Applied chaining First rule: l5 -> l0 : TRUE, cost: 2 Second rule: l0 -> [6] : -1-y_6^0+x_5^0 >= 0, cost: NONTERM New rule: l5 -> [6] : -1-y_6^0+x_5^0 >= 0, cost: NONTERM Applied chaining First rule: l5 -> l0 : TRUE, cost: 2 Second rule: l0 -> l0 : x_5^0'=n1+x_5^0, -1-y_6^0+x_5^0 >= 0, cost: 2*n1 New rule: l5 -> l0 : x_5^0'=n1+x_5^0, -1-y_6^0+x_5^0 >= 0, cost: 2+2*n1 Applied chaining First rule: l5 -> l0 : TRUE, cost: 2 Second rule: l0 -> l0 : x_5^0'=y_6^0, y_6^0-x_5^0 >= 0, cost: 2*y_6^0-2*x_5^0 New rule: l5 -> l0 : x_5^0'=y_6^0, y_6^0-x_5^0 >= 0, cost: 2+2*y_6^0-2*x_5^0 Applied deletion Removed the following rules: 16 17 19 Chained accelerated rules with incoming rules Start location: l5 13: l5 -> l0 : TRUE, cost: 2 20: l5 -> [6] : -1-y_6^0+x_5^0 >= 0, cost: NONTERM 21: l5 -> l0 : x_5^0'=n1+x_5^0, -1-y_6^0+x_5^0 >= 0, cost: 2+2*n1 22: l5 -> l0 : x_5^0'=y_6^0, y_6^0-x_5^0 >= 0, cost: 2+2*y_6^0-2*x_5^0 Removed unreachable locations and irrelevant leafs Start location: l5 20: l5 -> [6] : -1-y_6^0+x_5^0 >= 0, cost: NONTERM Computing asymptotic complexity Proved nontermination of rule 20 via SMT. Proved the following lower bound Complexity: Nonterm Cpx degree: Nonterm Solved cost: NONTERM Rule cost: NONTERM Rule guard: -1-y_6^0+x_5^0 >= 0