NO Initial ITS Start location: l9 0: l0 -> l1 : A^0'=A^post0, n^0'=n^post0, __rho_1_^0'=__rho_1_^post0, dobreak^0'=dobreak^post0, R^0'=R^post0, __rho_2_^0'=__rho_2_^post0, (-__rho_1_^post0+__rho_1_^0 == 0 /\ -__rho_2_^post0+__rho_2_^0 == 0 /\ A^0-A^post0 == 0 /\ n^0-n^post0 == 0 /\ R^0-R^post0 == 0 /\ -dobreak^post0+dobreak^0 == 0), cost: 1 7: l1 -> l2 : A^0'=A^post7, n^0'=n^post7, __rho_1_^0'=__rho_1_^post7, dobreak^0'=dobreak^post7, R^0'=R^post7, __rho_2_^0'=__rho_2_^post7, (0 == 0 /\ A^post7 == 0 /\ dobreak^0 <= 0 /\ __rho_1_^0-__rho_1_^post7 == 0 /\ n^post7-__rho_2_^post7 == 0 /\ -R^post7+R^0 == 0 /\ -1+A^10 == 0 /\ dobreak^0-dobreak^post7 == 0), cost: 1 8: l1 -> l6 : A^0'=A^post8, n^0'=n^post8, __rho_1_^0'=__rho_1_^post8, dobreak^0'=dobreak^post8, R^0'=R^post8, __rho_2_^0'=__rho_2_^post8, (n^0-n^post8 == 0 /\ -dobreak^post8+dobreak^0 == 0 /\ -R^post8+R^0 == 0 /\ __rho_1_^0-__rho_1_^post8 == 0 /\ 1-dobreak^0 <= 0 /\ A^0-A^post8 == 0 /\ -__rho_2_^post8+__rho_2_^0 == 0), cost: 1 1: l2 -> l3 : A^0'=A^post1, n^0'=n^post1, __rho_1_^0'=__rho_1_^post1, dobreak^0'=dobreak^post1, R^0'=R^post1, __rho_2_^0'=__rho_2_^post1, (R^0-R^post1 == 0 /\ A^0-A^post1 == 0 /\ -__rho_2_^post1+__rho_2_^0 == 0 /\ dobreak^0-dobreak^post1 == 0 /\ n^0-n^post1 == 0 /\ -__rho_1_^post1+__rho_1_^0 == 0), cost: 1 5: l3 -> l2 : A^0'=A^post5, n^0'=n^post5, __rho_1_^0'=__rho_1_^post5, dobreak^0'=dobreak^post5, R^0'=R^post5, __rho_2_^0'=__rho_2_^post5, (-__rho_2_^post5+__rho_2_^0 == 0 /\ A^0-A^post5 == 0 /\ -R^post5+R^0 == 0 /\ 1-n^0 <= 0 /\ n^0-n^post5 == 0 /\ dobreak^0-dobreak^post5 == 0 /\ __rho_1_^0-__rho_1_^post5 == 0), cost: 1 6: l3 -> l0 : A^0'=A^post6, n^0'=n^post6, __rho_1_^0'=__rho_1_^post6, dobreak^0'=dobreak^post6, R^0'=R^post6, __rho_2_^0'=__rho_2_^post6, (0 == 0 /\ -__rho_2_^post6+__rho_2_^0 == 0 /\ n^0 <= 0 /\ R^post6 == 0 /\ -1+R^10 == 0 /\ A^0-A^post6 == 0 /\ n^0-n^post6 == 0 /\ -__rho_1_^post6+dobreak^post6 == 0), cost: 1 2: l4 -> l5 : A^0'=A^post2, n^0'=n^post2, __rho_1_^0'=__rho_1_^post2, dobreak^0'=dobreak^post2, R^0'=R^post2, __rho_2_^0'=__rho_2_^post2, (-dobreak^post2+dobreak^0 == 0 /\ A^0-A^post2 == 0 /\ __rho_2_^0-__rho_2_^post2 == 0 /\ n^0-n^post2 == 0 /\ R^0-R^post2 == 0 /\ __rho_1_^0-__rho_1_^post2 == 0), cost: 1 3: l6 -> l7 : A^0'=A^post3, n^0'=n^post3, __rho_1_^0'=__rho_1_^post3, dobreak^0'=dobreak^post3, R^0'=R^post3, __rho_2_^0'=__rho_2_^post3, (-__rho_2_^post3+__rho_2_^0 == 0 /\ n^0-n^post3 == 0 /\ -dobreak^post3+dobreak^0 == 0 /\ __rho_1_^0-__rho_1_^post3 == 0 /\ -R^post3+R^0 == 0 /\ A^0-A^post3 == 0), cost: 1 4: l7 -> l6 : A^0'=A^post4, n^0'=n^post4, __rho_1_^0'=__rho_1_^post4, dobreak^0'=dobreak^post4, R^0'=R^post4, __rho_2_^0'=__rho_2_^post4, (A^0-A^post4 == 0 /\ n^0-n^post4 == 0 /\ __rho_1_^0-__rho_1_^post4 == 0 /\ -dobreak^post4+dobreak^0 == 0 /\ -__rho_2_^post4+__rho_2_^0 == 0 /\ -R^post4+R^0 == 0), cost: 1 9: l8 -> l0 : A^0'=A^post9, n^0'=n^post9, __rho_1_^0'=__rho_1_^post9, dobreak^0'=dobreak^post9, R^0'=R^post9, __rho_2_^0'=__rho_2_^post9, (0 == 0 /\ -__rho_1_^post9+dobreak^post9 == 0 /\ R^post9 == 0 /\ -__rho_2_^post9+__rho_2_^0 == 0 /\ A^post9 == 0 /\ n^0-n^post9 == 0), cost: 1 10: l9 -> l8 : A^0'=A^post10, n^0'=n^post10, __rho_1_^0'=__rho_1_^post10, dobreak^0'=dobreak^post10, R^0'=R^post10, __rho_2_^0'=__rho_2_^post10, (n^0-n^post10 == 0 /\ A^0-A^post10 == 0 /\ __rho_1_^0-__rho_1_^post10 == 0 /\ -__rho_2_^post10+__rho_2_^0 == 0 /\ dobreak^0-dobreak^post10 == 0 /\ -R^post10+R^0 == 0), cost: 1 Removed unreachable rules and leafs Start location: l9 0: l0 -> l1 : A^0'=A^post0, n^0'=n^post0, __rho_1_^0'=__rho_1_^post0, dobreak^0'=dobreak^post0, R^0'=R^post0, __rho_2_^0'=__rho_2_^post0, (-__rho_1_^post0+__rho_1_^0 == 0 /\ -__rho_2_^post0+__rho_2_^0 == 0 /\ A^0-A^post0 == 0 /\ n^0-n^post0 == 0 /\ R^0-R^post0 == 0 /\ -dobreak^post0+dobreak^0 == 0), cost: 1 7: l1 -> l2 : A^0'=A^post7, n^0'=n^post7, __rho_1_^0'=__rho_1_^post7, dobreak^0'=dobreak^post7, R^0'=R^post7, __rho_2_^0'=__rho_2_^post7, (0 == 0 /\ A^post7 == 0 /\ dobreak^0 <= 0 /\ __rho_1_^0-__rho_1_^post7 == 0 /\ n^post7-__rho_2_^post7 == 0 /\ -R^post7+R^0 == 0 /\ -1+A^10 == 0 /\ dobreak^0-dobreak^post7 == 0), cost: 1 8: l1 -> l6 : A^0'=A^post8, n^0'=n^post8, __rho_1_^0'=__rho_1_^post8, dobreak^0'=dobreak^post8, R^0'=R^post8, __rho_2_^0'=__rho_2_^post8, (n^0-n^post8 == 0 /\ -dobreak^post8+dobreak^0 == 0 /\ -R^post8+R^0 == 0 /\ __rho_1_^0-__rho_1_^post8 == 0 /\ 1-dobreak^0 <= 0 /\ A^0-A^post8 == 0 /\ -__rho_2_^post8+__rho_2_^0 == 0), cost: 1 1: l2 -> l3 : A^0'=A^post1, n^0'=n^post1, __rho_1_^0'=__rho_1_^post1, dobreak^0'=dobreak^post1, R^0'=R^post1, __rho_2_^0'=__rho_2_^post1, (R^0-R^post1 == 0 /\ A^0-A^post1 == 0 /\ -__rho_2_^post1+__rho_2_^0 == 0 /\ dobreak^0-dobreak^post1 == 0 /\ n^0-n^post1 == 0 /\ -__rho_1_^post1+__rho_1_^0 == 0), cost: 1 5: l3 -> l2 : A^0'=A^post5, n^0'=n^post5, __rho_1_^0'=__rho_1_^post5, dobreak^0'=dobreak^post5, R^0'=R^post5, __rho_2_^0'=__rho_2_^post5, (-__rho_2_^post5+__rho_2_^0 == 0 /\ A^0-A^post5 == 0 /\ -R^post5+R^0 == 0 /\ 1-n^0 <= 0 /\ n^0-n^post5 == 0 /\ dobreak^0-dobreak^post5 == 0 /\ __rho_1_^0-__rho_1_^post5 == 0), cost: 1 6: l3 -> l0 : A^0'=A^post6, n^0'=n^post6, __rho_1_^0'=__rho_1_^post6, dobreak^0'=dobreak^post6, R^0'=R^post6, __rho_2_^0'=__rho_2_^post6, (0 == 0 /\ -__rho_2_^post6+__rho_2_^0 == 0 /\ n^0 <= 0 /\ R^post6 == 0 /\ -1+R^10 == 0 /\ A^0-A^post6 == 0 /\ n^0-n^post6 == 0 /\ -__rho_1_^post6+dobreak^post6 == 0), cost: 1 3: l6 -> l7 : A^0'=A^post3, n^0'=n^post3, __rho_1_^0'=__rho_1_^post3, dobreak^0'=dobreak^post3, R^0'=R^post3, __rho_2_^0'=__rho_2_^post3, (-__rho_2_^post3+__rho_2_^0 == 0 /\ n^0-n^post3 == 0 /\ -dobreak^post3+dobreak^0 == 0 /\ __rho_1_^0-__rho_1_^post3 == 0 /\ -R^post3+R^0 == 0 /\ A^0-A^post3 == 0), cost: 1 4: l7 -> l6 : A^0'=A^post4, n^0'=n^post4, __rho_1_^0'=__rho_1_^post4, dobreak^0'=dobreak^post4, R^0'=R^post4, __rho_2_^0'=__rho_2_^post4, (A^0-A^post4 == 0 /\ n^0-n^post4 == 0 /\ __rho_1_^0-__rho_1_^post4 == 0 /\ -dobreak^post4+dobreak^0 == 0 /\ -__rho_2_^post4+__rho_2_^0 == 0 /\ -R^post4+R^0 == 0), cost: 1 9: l8 -> l0 : A^0'=A^post9, n^0'=n^post9, __rho_1_^0'=__rho_1_^post9, dobreak^0'=dobreak^post9, R^0'=R^post9, __rho_2_^0'=__rho_2_^post9, (0 == 0 /\ -__rho_1_^post9+dobreak^post9 == 0 /\ R^post9 == 0 /\ -__rho_2_^post9+__rho_2_^0 == 0 /\ A^post9 == 0 /\ n^0-n^post9 == 0), cost: 1 10: l9 -> l8 : A^0'=A^post10, n^0'=n^post10, __rho_1_^0'=__rho_1_^post10, dobreak^0'=dobreak^post10, R^0'=R^post10, __rho_2_^0'=__rho_2_^post10, (n^0-n^post10 == 0 /\ A^0-A^post10 == 0 /\ __rho_1_^0-__rho_1_^post10 == 0 /\ -__rho_2_^post10+__rho_2_^0 == 0 /\ dobreak^0-dobreak^post10 == 0 /\ -R^post10+R^0 == 0), cost: 1 Applied preprocessing Original rule: l0 -> l1 : A^0'=A^post0, n^0'=n^post0, __rho_1_^0'=__rho_1_^post0, dobreak^0'=dobreak^post0, R^0'=R^post0, __rho_2_^0'=__rho_2_^post0, (-__rho_1_^post0+__rho_1_^0 == 0 /\ -__rho_2_^post0+__rho_2_^0 == 0 /\ A^0-A^post0 == 0 /\ n^0-n^post0 == 0 /\ R^0-R^post0 == 0 /\ -dobreak^post0+dobreak^0 == 0), cost: 1 New rule: l0 -> l1 : TRUE, cost: 1 Applied preprocessing Original rule: l2 -> l3 : A^0'=A^post1, n^0'=n^post1, __rho_1_^0'=__rho_1_^post1, dobreak^0'=dobreak^post1, R^0'=R^post1, __rho_2_^0'=__rho_2_^post1, (R^0-R^post1 == 0 /\ A^0-A^post1 == 0 /\ -__rho_2_^post1+__rho_2_^0 == 0 /\ dobreak^0-dobreak^post1 == 0 /\ n^0-n^post1 == 0 /\ -__rho_1_^post1+__rho_1_^0 == 0), cost: 1 New rule: l2 -> l3 : TRUE, cost: 1 Applied preprocessing Original rule: l6 -> l7 : A^0'=A^post3, n^0'=n^post3, __rho_1_^0'=__rho_1_^post3, dobreak^0'=dobreak^post3, R^0'=R^post3, __rho_2_^0'=__rho_2_^post3, (-__rho_2_^post3+__rho_2_^0 == 0 /\ n^0-n^post3 == 0 /\ -dobreak^post3+dobreak^0 == 0 /\ __rho_1_^0-__rho_1_^post3 == 0 /\ -R^post3+R^0 == 0 /\ A^0-A^post3 == 0), cost: 1 New rule: l6 -> l7 : TRUE, cost: 1 Applied preprocessing Original rule: l7 -> l6 : A^0'=A^post4, n^0'=n^post4, __rho_1_^0'=__rho_1_^post4, dobreak^0'=dobreak^post4, R^0'=R^post4, __rho_2_^0'=__rho_2_^post4, (A^0-A^post4 == 0 /\ n^0-n^post4 == 0 /\ __rho_1_^0-__rho_1_^post4 == 0 /\ -dobreak^post4+dobreak^0 == 0 /\ -__rho_2_^post4+__rho_2_^0 == 0 /\ -R^post4+R^0 == 0), cost: 1 New rule: l7 -> l6 : TRUE, cost: 1 Applied preprocessing Original rule: l3 -> l2 : A^0'=A^post5, n^0'=n^post5, __rho_1_^0'=__rho_1_^post5, dobreak^0'=dobreak^post5, R^0'=R^post5, __rho_2_^0'=__rho_2_^post5, (-__rho_2_^post5+__rho_2_^0 == 0 /\ A^0-A^post5 == 0 /\ -R^post5+R^0 == 0 /\ 1-n^0 <= 0 /\ n^0-n^post5 == 0 /\ dobreak^0-dobreak^post5 == 0 /\ __rho_1_^0-__rho_1_^post5 == 0), cost: 1 New rule: l3 -> l2 : -1+n^0 >= 0, cost: 1 Applied preprocessing Original rule: l3 -> l0 : A^0'=A^post6, n^0'=n^post6, __rho_1_^0'=__rho_1_^post6, dobreak^0'=dobreak^post6, R^0'=R^post6, __rho_2_^0'=__rho_2_^post6, (0 == 0 /\ -__rho_2_^post6+__rho_2_^0 == 0 /\ n^0 <= 0 /\ R^post6 == 0 /\ -1+R^10 == 0 /\ A^0-A^post6 == 0 /\ n^0-n^post6 == 0 /\ -__rho_1_^post6+dobreak^post6 == 0), cost: 1 New rule: l3 -> l0 : __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, n^0 <= 0, cost: 1 Applied preprocessing Original rule: l1 -> l2 : A^0'=A^post7, n^0'=n^post7, __rho_1_^0'=__rho_1_^post7, dobreak^0'=dobreak^post7, R^0'=R^post7, __rho_2_^0'=__rho_2_^post7, (0 == 0 /\ A^post7 == 0 /\ dobreak^0 <= 0 /\ __rho_1_^0-__rho_1_^post7 == 0 /\ n^post7-__rho_2_^post7 == 0 /\ -R^post7+R^0 == 0 /\ -1+A^10 == 0 /\ dobreak^0-dobreak^post7 == 0), cost: 1 New rule: l1 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, dobreak^0 <= 0, cost: 1 Applied preprocessing Original rule: l1 -> l6 : A^0'=A^post8, n^0'=n^post8, __rho_1_^0'=__rho_1_^post8, dobreak^0'=dobreak^post8, R^0'=R^post8, __rho_2_^0'=__rho_2_^post8, (n^0-n^post8 == 0 /\ -dobreak^post8+dobreak^0 == 0 /\ -R^post8+R^0 == 0 /\ __rho_1_^0-__rho_1_^post8 == 0 /\ 1-dobreak^0 <= 0 /\ A^0-A^post8 == 0 /\ -__rho_2_^post8+__rho_2_^0 == 0), cost: 1 New rule: l1 -> l6 : -1+dobreak^0 >= 0, cost: 1 Applied preprocessing Original rule: l8 -> l0 : A^0'=A^post9, n^0'=n^post9, __rho_1_^0'=__rho_1_^post9, dobreak^0'=dobreak^post9, R^0'=R^post9, __rho_2_^0'=__rho_2_^post9, (0 == 0 /\ -__rho_1_^post9+dobreak^post9 == 0 /\ R^post9 == 0 /\ -__rho_2_^post9+__rho_2_^0 == 0 /\ A^post9 == 0 /\ n^0-n^post9 == 0), cost: 1 New rule: l8 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 1 Applied preprocessing Original rule: l9 -> l8 : A^0'=A^post10, n^0'=n^post10, __rho_1_^0'=__rho_1_^post10, dobreak^0'=dobreak^post10, R^0'=R^post10, __rho_2_^0'=__rho_2_^post10, (n^0-n^post10 == 0 /\ A^0-A^post10 == 0 /\ __rho_1_^0-__rho_1_^post10 == 0 /\ -__rho_2_^post10+__rho_2_^0 == 0 /\ dobreak^0-dobreak^post10 == 0 /\ -R^post10+R^0 == 0), cost: 1 New rule: l9 -> l8 : TRUE, cost: 1 Simplified rules Start location: l9 11: l0 -> l1 : TRUE, cost: 1 17: l1 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, dobreak^0 <= 0, cost: 1 18: l1 -> l6 : -1+dobreak^0 >= 0, cost: 1 12: l2 -> l3 : TRUE, cost: 1 15: l3 -> l2 : -1+n^0 >= 0, cost: 1 16: l3 -> l0 : __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, n^0 <= 0, cost: 1 13: l6 -> l7 : TRUE, cost: 1 14: l7 -> l6 : TRUE, cost: 1 19: l8 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 1 20: l9 -> l8 : TRUE, cost: 1 Eliminating location l8 by chaining: Applied chaining First rule: l9 -> l8 : TRUE, cost: 1 Second rule: l8 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 1 New rule: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Applied deletion Removed the following rules: 19 20 Eliminating location l7 by chaining: Applied chaining First rule: l6 -> l7 : TRUE, cost: 1 Second rule: l7 -> l6 : TRUE, cost: 1 New rule: l6 -> l6 : TRUE, cost: 2 Applied deletion Removed the following rules: 13 14 Eliminated locations on linear paths Start location: l9 11: l0 -> l1 : TRUE, cost: 1 17: l1 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, dobreak^0 <= 0, cost: 1 18: l1 -> l6 : -1+dobreak^0 >= 0, cost: 1 12: l2 -> l3 : TRUE, cost: 1 15: l3 -> l2 : -1+n^0 >= 0, cost: 1 16: l3 -> l0 : __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, n^0 <= 0, cost: 1 22: l6 -> l6 : TRUE, cost: 2 21: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Applied nonterm Original rule: l6 -> l6 : TRUE, cost: 2 New rule: l6 -> [10] : TRUE, cost: NONTERM Applied acceleration Original rule: l6 -> l6 : TRUE, cost: 2 New rule: l6 -> l6 : TRUE, cost: 2*n0 Applied deletion Removed the following rules: 22 Accelerated simple loops Start location: l9 11: l0 -> l1 : TRUE, cost: 1 17: l1 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, dobreak^0 <= 0, cost: 1 18: l1 -> l6 : -1+dobreak^0 >= 0, cost: 1 12: l2 -> l3 : TRUE, cost: 1 15: l3 -> l2 : -1+n^0 >= 0, cost: 1 16: l3 -> l0 : __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, n^0 <= 0, cost: 1 23: l6 -> [10] : TRUE, cost: NONTERM 24: l6 -> l6 : TRUE, cost: 2*n0 21: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Applied chaining First rule: l1 -> l6 : -1+dobreak^0 >= 0, cost: 1 Second rule: l6 -> [10] : TRUE, cost: NONTERM New rule: l1 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM Applied chaining First rule: l1 -> l6 : -1+dobreak^0 >= 0, cost: 1 Second rule: l6 -> l6 : TRUE, cost: 2*n0 New rule: l1 -> l6 : -1+dobreak^0 >= 0, cost: 1+2*n0 Applied deletion Removed the following rules: 23 24 Chained accelerated rules with incoming rules Start location: l9 11: l0 -> l1 : TRUE, cost: 1 17: l1 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, dobreak^0 <= 0, cost: 1 18: l1 -> l6 : -1+dobreak^0 >= 0, cost: 1 25: l1 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 26: l1 -> l6 : -1+dobreak^0 >= 0, cost: 1+2*n0 12: l2 -> l3 : TRUE, cost: 1 15: l3 -> l2 : -1+n^0 >= 0, cost: 1 16: l3 -> l0 : __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, n^0 <= 0, cost: 1 21: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Removed unreachable locations and irrelevant leafs Start location: l9 11: l0 -> l1 : TRUE, cost: 1 17: l1 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, dobreak^0 <= 0, cost: 1 25: l1 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 12: l2 -> l3 : TRUE, cost: 1 15: l3 -> l2 : -1+n^0 >= 0, cost: 1 16: l3 -> l0 : __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, n^0 <= 0, cost: 1 21: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Eliminating location l1 by chaining: Applied chaining First rule: l0 -> l1 : TRUE, cost: 1 Second rule: l1 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, dobreak^0 <= 0, cost: 1 New rule: l0 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, dobreak^0 <= 0, cost: 2 Applied chaining First rule: l0 -> l1 : TRUE, cost: 1 Second rule: l1 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM New rule: l0 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM Applied deletion Removed the following rules: 11 17 25 Eliminating location l3 by chaining: Applied chaining First rule: l2 -> l3 : TRUE, cost: 1 Second rule: l3 -> l2 : -1+n^0 >= 0, cost: 1 New rule: l2 -> l2 : -1+n^0 >= 0, cost: 2 Applied chaining First rule: l2 -> l3 : TRUE, cost: 1 Second rule: l3 -> l0 : __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, n^0 <= 0, cost: 1 New rule: l2 -> l0 : __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, n^0 <= 0, cost: 2 Applied deletion Removed the following rules: 12 15 16 Eliminated locations on tree-shaped paths Start location: l9 27: l0 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, dobreak^0 <= 0, cost: 2 28: l0 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 29: l2 -> l2 : -1+n^0 >= 0, cost: 2 30: l2 -> l0 : __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, n^0 <= 0, cost: 2 21: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Applied nonterm Original rule: l2 -> l2 : -1+n^0 >= 0, cost: 2 New rule: l2 -> [11] : -1+n^0 >= 0, cost: NONTERM Applied acceleration Original rule: l2 -> l2 : -1+n^0 >= 0, cost: 2 New rule: l2 -> l2 : -1+n^0 >= 0, cost: 2*n3 Applied deletion Removed the following rules: 29 Accelerated simple loops Start location: l9 27: l0 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, dobreak^0 <= 0, cost: 2 28: l0 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 30: l2 -> l0 : __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, n^0 <= 0, cost: 2 31: l2 -> [11] : -1+n^0 >= 0, cost: NONTERM 32: l2 -> l2 : -1+n^0 >= 0, cost: 2*n3 21: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Applied chaining First rule: l0 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, dobreak^0 <= 0, cost: 2 Second rule: l2 -> [11] : -1+n^0 >= 0, cost: NONTERM New rule: l0 -> [11] : dobreak^0 <= 0, cost: NONTERM Applied chaining First rule: l0 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, dobreak^0 <= 0, cost: 2 Second rule: l2 -> l2 : -1+n^0 >= 0, cost: 2*n3 New rule: l0 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, (dobreak^0 <= 0 /\ -1+__rho_2_^post7 >= 0), cost: 2+2*n3 Applied deletion Removed the following rules: 31 32 Chained accelerated rules with incoming rules Start location: l9 27: l0 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, dobreak^0 <= 0, cost: 2 28: l0 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 33: l0 -> [11] : dobreak^0 <= 0, cost: NONTERM 34: l0 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, (dobreak^0 <= 0 /\ -1+__rho_2_^post7 >= 0), cost: 2+2*n3 30: l2 -> l0 : __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, n^0 <= 0, cost: 2 21: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Eliminating location l2 by chaining: Applied chaining First rule: l0 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, dobreak^0 <= 0, cost: 2 Second rule: l2 -> l0 : __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, n^0 <= 0, cost: 2 New rule: l0 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (dobreak^0 <= 0 /\ __rho_2_^post7 <= 0), cost: 4 Applied partial deletion Original rule: l0 -> l2 : A^0'=0, n^0'=__rho_2_^post7, __rho_2_^0'=__rho_2_^post7, (dobreak^0 <= 0 /\ -1+__rho_2_^post7 >= 0), cost: 2+2*n3 New rule: l0 -> [12] : (dobreak^0 <= 0 /\ -1+__rho_2_^post7 >= 0), cost: 2+2*n3 Applied deletion Removed the following rules: 27 30 34 Eliminated locations on tree-shaped paths Start location: l9 28: l0 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 33: l0 -> [11] : dobreak^0 <= 0, cost: NONTERM 35: l0 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (dobreak^0 <= 0 /\ __rho_2_^post7 <= 0), cost: 4 36: l0 -> [12] : (dobreak^0 <= 0 /\ -1+__rho_2_^post7 >= 0), cost: 2+2*n3 21: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Applied pruning (of leafs and parallel rules): Start location: l9 28: l0 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 33: l0 -> [11] : dobreak^0 <= 0, cost: NONTERM 35: l0 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (dobreak^0 <= 0 /\ __rho_2_^post7 <= 0), cost: 4 21: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Applied acceleration Original rule: l0 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (dobreak^0 <= 0 /\ __rho_2_^post7 <= 0), cost: 4 New rule: l0 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (-1+n6 >= 0 /\ -dobreak^post6 >= 0 /\ -dobreak^0 >= 0 /\ -__rho_2_^post7 >= 0), cost: 4*n6 Applied unrolling Original rule: l0 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (dobreak^0 <= 0 /\ __rho_2_^post7 <= 0), cost: 4 New rule: l0 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (dobreak^post6 <= 0 /\ dobreak^0 <= 0 /\ __rho_2_^post7 <= 0), cost: 8 Applied non-termination processor Original rule: l0 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (dobreak^post6 <= 0 /\ dobreak^0 <= 0 /\ __rho_2_^post7 <= 0), cost: 8 New rule: l0 -> [13] : (dobreak^post6 <= 0 /\ dobreak^0 <= 0 /\ __rho_2_^post7 <= 0), cost: NONTERM Applied simplification Original rule: l0 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (-1+n6 >= 0 /\ -dobreak^post6 >= 0 /\ -dobreak^0 >= 0 /\ -__rho_2_^post7 >= 0), cost: 4*n6 New rule: l0 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (-1+n6 >= 0 /\ dobreak^post6 <= 0 /\ dobreak^0 <= 0 /\ __rho_2_^post7 <= 0), cost: 4*n6 Applied deletion Removed the following rules: 35 Accelerated simple loops Start location: l9 28: l0 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 33: l0 -> [11] : dobreak^0 <= 0, cost: NONTERM 38: l0 -> [13] : (dobreak^post6 <= 0 /\ dobreak^0 <= 0 /\ __rho_2_^post7 <= 0), cost: NONTERM 39: l0 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (-1+n6 >= 0 /\ dobreak^post6 <= 0 /\ dobreak^0 <= 0 /\ __rho_2_^post7 <= 0), cost: 4*n6 21: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Applied chaining First rule: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l0 -> [13] : (dobreak^post6 <= 0 /\ dobreak^0 <= 0 /\ __rho_2_^post7 <= 0), cost: NONTERM New rule: l9 -> [13] : 0 == 0, cost: NONTERM Applied chaining First rule: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l0 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (-1+n6 >= 0 /\ dobreak^post6 <= 0 /\ dobreak^0 <= 0 /\ __rho_2_^post7 <= 0), cost: 4*n6 New rule: l9 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (-1+n6 >= 0 /\ dobreak^post6 <= 0 /\ __rho_2_^post7 <= 0), cost: 2+4*n6 Applied deletion Removed the following rules: 38 39 Chained accelerated rules with incoming rules Start location: l9 28: l0 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 33: l0 -> [11] : dobreak^0 <= 0, cost: NONTERM 21: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 40: l9 -> [13] : 0 == 0, cost: NONTERM 41: l9 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (-1+n6 >= 0 /\ dobreak^post6 <= 0 /\ __rho_2_^post7 <= 0), cost: 2+4*n6 Eliminating location l0 by chaining: Applied chaining First rule: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l0 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM New rule: l9 -> [10] : (0 == 0 /\ -1+dobreak^post9 >= 0), cost: NONTERM Applied simplification Original rule: l9 -> [10] : (0 == 0 /\ -1+dobreak^post9 >= 0), cost: NONTERM New rule: l9 -> [10] : -1+dobreak^post9 >= 0, cost: NONTERM Applied chaining First rule: l9 -> l0 : A^0'=0, __rho_1_^0'=dobreak^post9, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l0 -> [11] : dobreak^0 <= 0, cost: NONTERM New rule: l9 -> [11] : (0 == 0 /\ dobreak^post9 <= 0), cost: NONTERM Applied simplification Original rule: l9 -> [11] : (0 == 0 /\ dobreak^post9 <= 0), cost: NONTERM New rule: l9 -> [11] : dobreak^post9 <= 0, cost: NONTERM Applied chaining First rule: l9 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (-1+n6 >= 0 /\ dobreak^post6 <= 0 /\ __rho_2_^post7 <= 0), cost: 2+4*n6 Second rule: l0 -> [11] : dobreak^0 <= 0, cost: NONTERM New rule: l9 -> [11] : (-1+n6 >= 0 /\ dobreak^post6 <= 0 /\ __rho_2_^post7 <= 0), cost: NONTERM Applied partial deletion Original rule: l9 -> l0 : A^0'=0, n^0'=__rho_2_^post7, __rho_1_^0'=dobreak^post6, dobreak^0'=dobreak^post6, R^0'=0, __rho_2_^0'=__rho_2_^post7, (-1+n6 >= 0 /\ dobreak^post6 <= 0 /\ __rho_2_^post7 <= 0), cost: 2+4*n6 New rule: l9 -> [14] : (-1+n6 >= 0 /\ dobreak^post6 <= 0 /\ __rho_2_^post7 <= 0), cost: 2+4*n6 Applied deletion Removed the following rules: 21 28 33 41 Eliminated locations on tree-shaped paths Start location: l9 40: l9 -> [13] : 0 == 0, cost: NONTERM 42: l9 -> [10] : -1+dobreak^post9 >= 0, cost: NONTERM 43: l9 -> [11] : dobreak^post9 <= 0, cost: NONTERM 44: l9 -> [11] : (-1+n6 >= 0 /\ dobreak^post6 <= 0 /\ __rho_2_^post7 <= 0), cost: NONTERM 45: l9 -> [14] : (-1+n6 >= 0 /\ dobreak^post6 <= 0 /\ __rho_2_^post7 <= 0), cost: 2+4*n6 Computing asymptotic complexity Proved nontermination of rule 40 via SMT. Proved the following lower bound Complexity: Nonterm Cpx degree: Nonterm Solved cost: NONTERM Rule cost: NONTERM Rule guard: 0 == 0