NO Initial ITS Start location: l9 0: l0 -> l1 : A^0'=A^post0, dobreak^0'=dobreak^post0, R^0'=R^post0, n^0'=n^post0, (0 == 0 /\ A^post0 == 0 /\ dobreak^0 <= 0 /\ -1+A^10 == 0 /\ -R^post0+R^0 == 0 /\ dobreak^0-dobreak^post0 == 0), cost: 1 1: l0 -> l2 : A^0'=A^post1, dobreak^0'=dobreak^post1, R^0'=R^post1, n^0'=n^post1, (1-dobreak^0 <= 0 /\ A^0-A^post1 == 0 /\ -n^post1+n^0 == 0 /\ -R^post1+R^0 == 0 /\ -dobreak^post1+dobreak^0 == 0), cost: 1 3: l1 -> l4 : A^0'=A^post3, dobreak^0'=dobreak^post3, R^0'=R^post3, n^0'=n^post3, (R^0-R^post3 == 0 /\ A^0-A^post3 == 0 /\ dobreak^0-dobreak^post3 == 0 /\ -n^post3+n^0 == 0), cost: 1 5: l2 -> l7 : A^0'=A^post5, dobreak^0'=dobreak^post5, R^0'=R^post5, n^0'=n^post5, (-dobreak^post5+dobreak^0 == 0 /\ A^0-A^post5 == 0 /\ -n^post5+n^0 == 0 /\ -R^post5+R^0 == 0), cost: 1 2: l3 -> l0 : A^0'=A^post2, dobreak^0'=dobreak^post2, R^0'=R^post2, n^0'=n^post2, (A^0-A^post2 == 0 /\ -n^post2+n^0 == 0 /\ dobreak^0-dobreak^post2 == 0 /\ -R^post2+R^0 == 0), cost: 1 7: l4 -> l1 : A^0'=A^post7, dobreak^0'=dobreak^post7, R^0'=R^post7, n^0'=n^post7, (R^0-R^post7 == 0 /\ dobreak^0-dobreak^post7 == 0 /\ A^0-A^post7 == 0 /\ 1+n^post7-n^0 == 0 /\ 1-n^0 <= 0), cost: 1 8: l4 -> l3 : A^0'=A^post8, dobreak^0'=dobreak^post8, R^0'=R^post8, n^0'=n^post8, (0 == 0 /\ n^0-n^post8 == 0 /\ A^0-A^post8 == 0 /\ R^post8 == 0 /\ n^0 <= 0 /\ -1+R^10 == 0), cost: 1 4: l5 -> l6 : A^0'=A^post4, dobreak^0'=dobreak^post4, R^0'=R^post4, n^0'=n^post4, (-n^post4+n^0 == 0 /\ A^0-A^post4 == 0 /\ -R^post4+R^0 == 0 /\ dobreak^0-dobreak^post4 == 0), cost: 1 6: l7 -> l2 : A^0'=A^post6, dobreak^0'=dobreak^post6, R^0'=R^post6, n^0'=n^post6, (-n^post6+n^0 == 0 /\ -R^post6+R^0 == 0 /\ A^0-A^post6 == 0 /\ dobreak^0-dobreak^post6 == 0), cost: 1 9: l8 -> l3 : A^0'=A^post9, dobreak^0'=dobreak^post9, R^0'=R^post9, n^0'=n^post9, (0 == 0 /\ R^post9 == 0 /\ A^post9 == 0 /\ -n^post9+n^0 == 0), cost: 1 10: l9 -> l8 : A^0'=A^post10, dobreak^0'=dobreak^post10, R^0'=R^post10, n^0'=n^post10, (-R^post10+R^0 == 0 /\ A^0-A^post10 == 0 /\ -dobreak^post10+dobreak^0 == 0 /\ -n^post10+n^0 == 0), cost: 1 Removed unreachable rules and leafs Start location: l9 0: l0 -> l1 : A^0'=A^post0, dobreak^0'=dobreak^post0, R^0'=R^post0, n^0'=n^post0, (0 == 0 /\ A^post0 == 0 /\ dobreak^0 <= 0 /\ -1+A^10 == 0 /\ -R^post0+R^0 == 0 /\ dobreak^0-dobreak^post0 == 0), cost: 1 1: l0 -> l2 : A^0'=A^post1, dobreak^0'=dobreak^post1, R^0'=R^post1, n^0'=n^post1, (1-dobreak^0 <= 0 /\ A^0-A^post1 == 0 /\ -n^post1+n^0 == 0 /\ -R^post1+R^0 == 0 /\ -dobreak^post1+dobreak^0 == 0), cost: 1 3: l1 -> l4 : A^0'=A^post3, dobreak^0'=dobreak^post3, R^0'=R^post3, n^0'=n^post3, (R^0-R^post3 == 0 /\ A^0-A^post3 == 0 /\ dobreak^0-dobreak^post3 == 0 /\ -n^post3+n^0 == 0), cost: 1 5: l2 -> l7 : A^0'=A^post5, dobreak^0'=dobreak^post5, R^0'=R^post5, n^0'=n^post5, (-dobreak^post5+dobreak^0 == 0 /\ A^0-A^post5 == 0 /\ -n^post5+n^0 == 0 /\ -R^post5+R^0 == 0), cost: 1 2: l3 -> l0 : A^0'=A^post2, dobreak^0'=dobreak^post2, R^0'=R^post2, n^0'=n^post2, (A^0-A^post2 == 0 /\ -n^post2+n^0 == 0 /\ dobreak^0-dobreak^post2 == 0 /\ -R^post2+R^0 == 0), cost: 1 7: l4 -> l1 : A^0'=A^post7, dobreak^0'=dobreak^post7, R^0'=R^post7, n^0'=n^post7, (R^0-R^post7 == 0 /\ dobreak^0-dobreak^post7 == 0 /\ A^0-A^post7 == 0 /\ 1+n^post7-n^0 == 0 /\ 1-n^0 <= 0), cost: 1 8: l4 -> l3 : A^0'=A^post8, dobreak^0'=dobreak^post8, R^0'=R^post8, n^0'=n^post8, (0 == 0 /\ n^0-n^post8 == 0 /\ A^0-A^post8 == 0 /\ R^post8 == 0 /\ n^0 <= 0 /\ -1+R^10 == 0), cost: 1 6: l7 -> l2 : A^0'=A^post6, dobreak^0'=dobreak^post6, R^0'=R^post6, n^0'=n^post6, (-n^post6+n^0 == 0 /\ -R^post6+R^0 == 0 /\ A^0-A^post6 == 0 /\ dobreak^0-dobreak^post6 == 0), cost: 1 9: l8 -> l3 : A^0'=A^post9, dobreak^0'=dobreak^post9, R^0'=R^post9, n^0'=n^post9, (0 == 0 /\ R^post9 == 0 /\ A^post9 == 0 /\ -n^post9+n^0 == 0), cost: 1 10: l9 -> l8 : A^0'=A^post10, dobreak^0'=dobreak^post10, R^0'=R^post10, n^0'=n^post10, (-R^post10+R^0 == 0 /\ A^0-A^post10 == 0 /\ -dobreak^post10+dobreak^0 == 0 /\ -n^post10+n^0 == 0), cost: 1 Applied preprocessing Original rule: l0 -> l1 : A^0'=A^post0, dobreak^0'=dobreak^post0, R^0'=R^post0, n^0'=n^post0, (0 == 0 /\ A^post0 == 0 /\ dobreak^0 <= 0 /\ -1+A^10 == 0 /\ -R^post0+R^0 == 0 /\ dobreak^0-dobreak^post0 == 0), cost: 1 New rule: l0 -> l1 : A^0'=0, n^0'=n^post0, dobreak^0 <= 0, cost: 1 Applied preprocessing Original rule: l0 -> l2 : A^0'=A^post1, dobreak^0'=dobreak^post1, R^0'=R^post1, n^0'=n^post1, (1-dobreak^0 <= 0 /\ A^0-A^post1 == 0 /\ -n^post1+n^0 == 0 /\ -R^post1+R^0 == 0 /\ -dobreak^post1+dobreak^0 == 0), cost: 1 New rule: l0 -> l2 : -1+dobreak^0 >= 0, cost: 1 Applied preprocessing Original rule: l3 -> l0 : A^0'=A^post2, dobreak^0'=dobreak^post2, R^0'=R^post2, n^0'=n^post2, (A^0-A^post2 == 0 /\ -n^post2+n^0 == 0 /\ dobreak^0-dobreak^post2 == 0 /\ -R^post2+R^0 == 0), cost: 1 New rule: l3 -> l0 : TRUE, cost: 1 Applied preprocessing Original rule: l1 -> l4 : A^0'=A^post3, dobreak^0'=dobreak^post3, R^0'=R^post3, n^0'=n^post3, (R^0-R^post3 == 0 /\ A^0-A^post3 == 0 /\ dobreak^0-dobreak^post3 == 0 /\ -n^post3+n^0 == 0), cost: 1 New rule: l1 -> l4 : TRUE, cost: 1 Applied preprocessing Original rule: l2 -> l7 : A^0'=A^post5, dobreak^0'=dobreak^post5, R^0'=R^post5, n^0'=n^post5, (-dobreak^post5+dobreak^0 == 0 /\ A^0-A^post5 == 0 /\ -n^post5+n^0 == 0 /\ -R^post5+R^0 == 0), cost: 1 New rule: l2 -> l7 : TRUE, cost: 1 Applied preprocessing Original rule: l7 -> l2 : A^0'=A^post6, dobreak^0'=dobreak^post6, R^0'=R^post6, n^0'=n^post6, (-n^post6+n^0 == 0 /\ -R^post6+R^0 == 0 /\ A^0-A^post6 == 0 /\ dobreak^0-dobreak^post6 == 0), cost: 1 New rule: l7 -> l2 : TRUE, cost: 1 Applied preprocessing Original rule: l4 -> l1 : A^0'=A^post7, dobreak^0'=dobreak^post7, R^0'=R^post7, n^0'=n^post7, (R^0-R^post7 == 0 /\ dobreak^0-dobreak^post7 == 0 /\ A^0-A^post7 == 0 /\ 1+n^post7-n^0 == 0 /\ 1-n^0 <= 0), cost: 1 New rule: l4 -> l1 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 1 Applied preprocessing Original rule: l4 -> l3 : A^0'=A^post8, dobreak^0'=dobreak^post8, R^0'=R^post8, n^0'=n^post8, (0 == 0 /\ n^0-n^post8 == 0 /\ A^0-A^post8 == 0 /\ R^post8 == 0 /\ n^0 <= 0 /\ -1+R^10 == 0), cost: 1 New rule: l4 -> l3 : dobreak^0'=dobreak^post8, R^0'=0, n^0 <= 0, cost: 1 Applied preprocessing Original rule: l8 -> l3 : A^0'=A^post9, dobreak^0'=dobreak^post9, R^0'=R^post9, n^0'=n^post9, (0 == 0 /\ R^post9 == 0 /\ A^post9 == 0 /\ -n^post9+n^0 == 0), cost: 1 New rule: l8 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 1 Applied preprocessing Original rule: l9 -> l8 : A^0'=A^post10, dobreak^0'=dobreak^post10, R^0'=R^post10, n^0'=n^post10, (-R^post10+R^0 == 0 /\ A^0-A^post10 == 0 /\ -dobreak^post10+dobreak^0 == 0 /\ -n^post10+n^0 == 0), cost: 1 New rule: l9 -> l8 : TRUE, cost: 1 Simplified rules Start location: l9 11: l0 -> l1 : A^0'=0, n^0'=n^post0, dobreak^0 <= 0, cost: 1 12: l0 -> l2 : -1+dobreak^0 >= 0, cost: 1 14: l1 -> l4 : TRUE, cost: 1 15: l2 -> l7 : TRUE, cost: 1 13: l3 -> l0 : TRUE, cost: 1 17: l4 -> l1 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 1 18: l4 -> l3 : dobreak^0'=dobreak^post8, R^0'=0, n^0 <= 0, cost: 1 16: l7 -> l2 : TRUE, cost: 1 19: l8 -> l3 : A^0'=0, 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 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 1 New rule: l9 -> l3 : A^0'=0, 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: l2 -> l7 : TRUE, cost: 1 Second rule: l7 -> l2 : TRUE, cost: 1 New rule: l2 -> l2 : TRUE, cost: 2 Applied deletion Removed the following rules: 15 16 Eliminated locations on linear paths Start location: l9 11: l0 -> l1 : A^0'=0, n^0'=n^post0, dobreak^0 <= 0, cost: 1 12: l0 -> l2 : -1+dobreak^0 >= 0, cost: 1 14: l1 -> l4 : TRUE, cost: 1 22: l2 -> l2 : TRUE, cost: 2 13: l3 -> l0 : TRUE, cost: 1 17: l4 -> l1 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 1 18: l4 -> l3 : dobreak^0'=dobreak^post8, R^0'=0, n^0 <= 0, cost: 1 21: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Applied nonterm Original rule: l2 -> l2 : TRUE, cost: 2 New rule: l2 -> [10] : TRUE, cost: NONTERM Applied acceleration Original rule: l2 -> l2 : TRUE, cost: 2 New rule: l2 -> l2 : TRUE, cost: 2*n0 Applied deletion Removed the following rules: 22 Accelerated simple loops Start location: l9 11: l0 -> l1 : A^0'=0, n^0'=n^post0, dobreak^0 <= 0, cost: 1 12: l0 -> l2 : -1+dobreak^0 >= 0, cost: 1 14: l1 -> l4 : TRUE, cost: 1 23: l2 -> [10] : TRUE, cost: NONTERM 24: l2 -> l2 : TRUE, cost: 2*n0 13: l3 -> l0 : TRUE, cost: 1 17: l4 -> l1 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 1 18: l4 -> l3 : dobreak^0'=dobreak^post8, R^0'=0, n^0 <= 0, cost: 1 21: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Applied chaining First rule: l0 -> l2 : -1+dobreak^0 >= 0, cost: 1 Second rule: l2 -> [10] : TRUE, cost: NONTERM New rule: l0 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM Applied chaining First rule: l0 -> l2 : -1+dobreak^0 >= 0, cost: 1 Second rule: l2 -> l2 : TRUE, cost: 2*n0 New rule: l0 -> l2 : -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 : A^0'=0, n^0'=n^post0, dobreak^0 <= 0, cost: 1 12: l0 -> l2 : -1+dobreak^0 >= 0, cost: 1 25: l0 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 26: l0 -> l2 : -1+dobreak^0 >= 0, cost: 1+2*n0 14: l1 -> l4 : TRUE, cost: 1 13: l3 -> l0 : TRUE, cost: 1 17: l4 -> l1 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 1 18: l4 -> l3 : dobreak^0'=dobreak^post8, R^0'=0, n^0 <= 0, cost: 1 21: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Removed unreachable locations and irrelevant leafs Start location: l9 11: l0 -> l1 : A^0'=0, n^0'=n^post0, dobreak^0 <= 0, cost: 1 25: l0 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 14: l1 -> l4 : TRUE, cost: 1 13: l3 -> l0 : TRUE, cost: 1 17: l4 -> l1 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 1 18: l4 -> l3 : dobreak^0'=dobreak^post8, R^0'=0, n^0 <= 0, cost: 1 21: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Eliminating location l0 by chaining: Applied chaining First rule: l3 -> l0 : TRUE, cost: 1 Second rule: l0 -> l1 : A^0'=0, n^0'=n^post0, dobreak^0 <= 0, cost: 1 New rule: l3 -> l1 : A^0'=0, n^0'=n^post0, dobreak^0 <= 0, cost: 2 Applied chaining First rule: l3 -> l0 : TRUE, cost: 1 Second rule: l0 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM New rule: l3 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM Applied deletion Removed the following rules: 11 13 25 Eliminating location l4 by chaining: Applied chaining First rule: l1 -> l4 : TRUE, cost: 1 Second rule: l4 -> l1 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 1 New rule: l1 -> l1 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 2 Applied chaining First rule: l1 -> l4 : TRUE, cost: 1 Second rule: l4 -> l3 : dobreak^0'=dobreak^post8, R^0'=0, n^0 <= 0, cost: 1 New rule: l1 -> l3 : dobreak^0'=dobreak^post8, R^0'=0, n^0 <= 0, cost: 2 Applied deletion Removed the following rules: 14 17 18 Eliminated locations on tree-shaped paths Start location: l9 29: l1 -> l1 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 2 30: l1 -> l3 : dobreak^0'=dobreak^post8, R^0'=0, n^0 <= 0, cost: 2 27: l3 -> l1 : A^0'=0, n^0'=n^post0, dobreak^0 <= 0, cost: 2 28: l3 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 21: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Applied acceleration Original rule: l1 -> l1 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 2 New rule: l1 -> l1 : n^0'=-n3+n^0, (n3 >= 0 /\ -n3+n^0 >= 0), cost: 2*n3 Applied instantiation Original rule: l1 -> l1 : n^0'=-n3+n^0, (n3 >= 0 /\ -n3+n^0 >= 0), cost: 2*n3 New rule: l1 -> l1 : n^0'=0, (0 >= 0 /\ n^0 >= 0), cost: 2*n^0 Applied simplification Original rule: l1 -> l1 : n^0'=0, (0 >= 0 /\ n^0 >= 0), cost: 2*n^0 New rule: l1 -> l1 : n^0'=0, n^0 >= 0, cost: 2*n^0 Applied deletion Removed the following rules: 29 Accelerated simple loops Start location: l9 30: l1 -> l3 : dobreak^0'=dobreak^post8, R^0'=0, n^0 <= 0, cost: 2 32: l1 -> l1 : n^0'=0, n^0 >= 0, cost: 2*n^0 27: l3 -> l1 : A^0'=0, n^0'=n^post0, dobreak^0 <= 0, cost: 2 28: l3 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 21: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Applied chaining First rule: l3 -> l1 : A^0'=0, n^0'=n^post0, dobreak^0 <= 0, cost: 2 Second rule: l1 -> l1 : n^0'=0, n^0 >= 0, cost: 2*n^0 New rule: l3 -> l1 : A^0'=0, n^0'=0, (dobreak^0 <= 0 /\ n^post0 >= 0), cost: 2+2*n^post0 Applied deletion Removed the following rules: 32 Chained accelerated rules with incoming rules Start location: l9 30: l1 -> l3 : dobreak^0'=dobreak^post8, R^0'=0, n^0 <= 0, cost: 2 27: l3 -> l1 : A^0'=0, n^0'=n^post0, dobreak^0 <= 0, cost: 2 28: l3 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 33: l3 -> l1 : A^0'=0, n^0'=0, (dobreak^0 <= 0 /\ n^post0 >= 0), cost: 2+2*n^post0 21: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Eliminating location l1 by chaining: Applied chaining First rule: l3 -> l1 : A^0'=0, n^0'=n^post0, dobreak^0 <= 0, cost: 2 Second rule: l1 -> l3 : dobreak^0'=dobreak^post8, R^0'=0, n^0 <= 0, cost: 2 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ n^post0 <= 0), cost: 4 Applied chaining First rule: l3 -> l1 : A^0'=0, n^0'=0, (dobreak^0 <= 0 /\ n^post0 >= 0), cost: 2+2*n^post0 Second rule: l1 -> l3 : dobreak^0'=dobreak^post8, R^0'=0, n^0 <= 0, cost: 2 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (0 <= 0 /\ dobreak^0 <= 0 /\ n^post0 >= 0), cost: 4+2*n^post0 Applied simplification Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (0 <= 0 /\ dobreak^0 <= 0 /\ n^post0 >= 0), cost: 4+2*n^post0 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ n^post0 >= 0), cost: 4+2*n^post0 Applied deletion Removed the following rules: 27 30 33 Eliminated locations on tree-shaped paths Start location: l9 28: l3 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 34: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ n^post0 <= 0), cost: 4 35: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ n^post0 >= 0), cost: 4+2*n^post0 21: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Applied acceleration Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ n^post0 <= 0), cost: 4 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ -n^post0 >= 0 /\ -1+n7 >= 0), cost: 4*n7 Applied unrolling Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ n^post0 <= 0), cost: 4 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 <= 0), cost: 8 Applied non-termination processor Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 <= 0), cost: 8 New rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 <= 0), cost: NONTERM Applied acceleration Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ n^post0 >= 0), cost: 4+2*n^post0 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ n^post0 >= 0), cost: 4*n9+2*n9*n^post0 Applied unrolling Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ n^post0 >= 0), cost: 4+2*n^post0 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: 8+4*n^post0 Applied non-termination processor Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: 8+4*n^post0 New rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: NONTERM Applied chaining First rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ n^post0 <= 0), cost: 4 Second rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ n^post0 >= 0), cost: 4+2*n^post0 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: 8 Applied nonterm Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: 8 New rule: l3 -> [12] : (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0), cost: NONTERM Applied acceleration Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: 8 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-dobreak^post8 >= 0 /\ -1+n11 >= 0 /\ ((-dobreak^0 >= 0 /\ -dobreak^post8 >= 0) \/ (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0))), cost: 8*n11 Applied chaining First rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ n^post0 >= 0), cost: 4+2*n^post0 Second rule: l3 -> [12] : (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0), cost: NONTERM New rule: l3 -> [12] : (dobreak^0 <= 0 /\ -dobreak^post8 >= 0 /\ n^post0 >= 0), cost: NONTERM Heuristically decided not to add the following rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-dobreak^post8 >= 0 /\ -1+n11 >= 0 /\ ((-dobreak^0 >= 0 /\ -dobreak^post8 >= 0) \/ (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0))), cost: 8*n11 Applied chaining First rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ n^post0 >= 0), cost: 4+2*n^post0 Second rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ n^post0 <= 0), cost: 4 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: 8 Applied nonterm Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: 8 New rule: l3 -> [12] : (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0), cost: NONTERM Applied acceleration Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: 8 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-dobreak^post8 >= 0 /\ -1+n13 >= 0 /\ ((-dobreak^0 >= 0 /\ -dobreak^post8 >= 0) \/ (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0))), cost: 8*n13 Applied chaining First rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ n^post0 <= 0), cost: 4 Second rule: l3 -> [12] : (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0), cost: NONTERM New rule: l3 -> [12] : (dobreak^0 <= 0 /\ -dobreak^post8 >= 0 /\ n^post0 <= 0), cost: NONTERM Heuristically decided not to add the following rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-dobreak^post8 >= 0 /\ -1+n13 >= 0 /\ ((-dobreak^0 >= 0 /\ -dobreak^post8 >= 0) \/ (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0))), cost: 8*n13 Applied chaining First rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ n^post0 <= 0), cost: 4 Second rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ n^post0 >= 0), cost: 4*n9+2*n9*n^post0 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: 4+4*n9 Applied nonterm Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: 4+4*n9 New rule: l3 -> [12] : (-1+n9 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post8 >= 0), cost: NONTERM Applied acceleration Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: 4+4*n9 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ -dobreak^post8 >= 0 /\ -1+n15 >= 0 /\ ((-dobreak^0 >= 0 /\ -dobreak^post8 >= 0) \/ (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0))), cost: 4*n9*n15+4*n15 Applied chaining First rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ n^post0 >= 0), cost: 4*n9+2*n9*n^post0 Second rule: l3 -> [12] : (-1+n9 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post8 >= 0), cost: NONTERM New rule: l3 -> [12] : (-1+n9 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ n^post0 >= 0), cost: NONTERM Heuristically decided not to add the following rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ -dobreak^post8 >= 0 /\ -1+n15 >= 0 /\ ((-dobreak^0 >= 0 /\ -dobreak^post8 >= 0) \/ (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0))), cost: 4*n9*n15+4*n15 Applied chaining First rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ n^post0 >= 0), cost: 4*n9+2*n9*n^post0 Second rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ n^post0 <= 0), cost: 4 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: 4+4*n9 Applied nonterm Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: 4+4*n9 New rule: l3 -> [12] : (-1+n9 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post8 >= 0), cost: NONTERM Applied acceleration Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: 4+4*n9 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ -dobreak^post8 >= 0 /\ -1+n17 >= 0 /\ ((-dobreak^0 >= 0 /\ -dobreak^post8 >= 0) \/ (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0))), cost: 4*n9*n17+4*n17 Applied chaining First rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ n^post0 <= 0), cost: 4 Second rule: l3 -> [12] : (-1+n9 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post8 >= 0), cost: NONTERM New rule: l3 -> [12] : (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ -dobreak^post8 >= 0 /\ n^post0 <= 0), cost: NONTERM Heuristically decided not to add the following rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ -dobreak^post8 >= 0 /\ -1+n17 >= 0 /\ ((-dobreak^0 >= 0 /\ -dobreak^post8 >= 0) \/ (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0))), cost: 4*n9*n17+4*n17 Applied chaining First rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ n^post0 >= 0), cost: 4+2*n^post0 Second rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ -n^post0 >= 0 /\ -1+n7 >= 0), cost: 4*n7 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0), cost: 4+4*n7 Applied nonterm Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0), cost: 4+4*n7 New rule: l3 -> [12] : (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ -1+n7 >= 0), cost: NONTERM Applied acceleration Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0), cost: 4+4*n7 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-dobreak^post8 >= 0 /\ -1+n19 >= 0 /\ -1+n7 >= 0 /\ ((-dobreak^0 >= 0 /\ -dobreak^post8 >= 0) \/ (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0))), cost: 4*n19*n7+4*n19 Applied chaining First rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ -n^post0 >= 0 /\ -1+n7 >= 0), cost: 4*n7 Second rule: l3 -> [12] : (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ -1+n7 >= 0), cost: NONTERM New rule: l3 -> [12] : (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ -n^post0 >= 0 /\ -1+n7 >= 0), cost: NONTERM Heuristically decided not to add the following rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-dobreak^post8 >= 0 /\ -1+n19 >= 0 /\ -1+n7 >= 0 /\ ((-dobreak^0 >= 0 /\ -dobreak^post8 >= 0) \/ (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0))), cost: 4*n19*n7+4*n19 Applied chaining First rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ -n^post0 >= 0 /\ -1+n7 >= 0), cost: 4*n7 Second rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ n^post0 >= 0), cost: 4+2*n^post0 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0), cost: 4+4*n7 Applied nonterm Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0), cost: 4+4*n7 New rule: l3 -> [12] : (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ -1+n7 >= 0), cost: NONTERM Applied acceleration Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0), cost: 4+4*n7 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n21 >= 0 /\ -dobreak^post8 >= 0 /\ -1+n7 >= 0 /\ ((-dobreak^0 >= 0 /\ -dobreak^post8 >= 0) \/ (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0))), cost: 4*n21*n7+4*n21 Applied chaining First rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (dobreak^0 <= 0 /\ n^post0 >= 0), cost: 4+2*n^post0 Second rule: l3 -> [12] : (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ -1+n7 >= 0), cost: NONTERM New rule: l3 -> [12] : (dobreak^0 <= 0 /\ -dobreak^post8 >= 0 /\ -1+n7 >= 0 /\ n^post0 >= 0), cost: NONTERM Heuristically decided not to add the following rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n21 >= 0 /\ -dobreak^post8 >= 0 /\ -1+n7 >= 0 /\ ((-dobreak^0 >= 0 /\ -dobreak^post8 >= 0) \/ (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0))), cost: 4*n21*n7+4*n21 Applied simplification Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ -n^post0 >= 0 /\ -1+n7 >= 0), cost: 4*n7 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 <= 0), cost: 4*n7 Applied simplification Original rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ n^post0 >= 0), cost: 4*n9+2*n9*n^post0 New rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: 4*n9+2*n9*n^post0 Applied simplification Original rule: l3 -> [12] : (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0), cost: NONTERM New rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: NONTERM Applied simplification Original rule: l3 -> [12] : (dobreak^0 <= 0 /\ -dobreak^post8 >= 0 /\ n^post0 >= 0), cost: NONTERM New rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: NONTERM Applied simplification Original rule: l3 -> [12] : (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0), cost: NONTERM New rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: NONTERM Applied simplification Original rule: l3 -> [12] : (dobreak^0 <= 0 /\ -dobreak^post8 >= 0 /\ n^post0 <= 0), cost: NONTERM New rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 <= 0), cost: NONTERM Applied simplification Original rule: l3 -> [12] : (-1+n9 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post8 >= 0), cost: NONTERM New rule: l3 -> [12] : (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: NONTERM Applied simplification Original rule: l3 -> [12] : (-1+n9 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ n^post0 >= 0), cost: NONTERM New rule: l3 -> [12] : (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: NONTERM Applied simplification Original rule: l3 -> [12] : (-1+n9 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post8 >= 0), cost: NONTERM New rule: l3 -> [12] : (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: NONTERM Applied simplification Original rule: l3 -> [12] : (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ -dobreak^post8 >= 0 /\ n^post0 <= 0), cost: NONTERM New rule: l3 -> [12] : (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 <= 0), cost: NONTERM Applied simplification Original rule: l3 -> [12] : (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ -1+n7 >= 0), cost: NONTERM New rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0), cost: NONTERM Applied simplification Original rule: l3 -> [12] : (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ -n^post0 >= 0 /\ -1+n7 >= 0), cost: NONTERM New rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 <= 0), cost: NONTERM Applied simplification Original rule: l3 -> [12] : (-dobreak^0 >= 0 /\ -dobreak^post8 >= 0 /\ -1+n7 >= 0), cost: NONTERM New rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0), cost: NONTERM Applied simplification Original rule: l3 -> [12] : (dobreak^0 <= 0 /\ -dobreak^post8 >= 0 /\ -1+n7 >= 0 /\ n^post0 >= 0), cost: NONTERM New rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 >= 0), cost: NONTERM Applied deletion Removed the following rules: 34 35 Applied deletion Removed the following rules: 37 39 54 58 62 Accelerated simple loops Start location: l9 28: l3 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 52: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 <= 0), cost: 4*n7 53: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: 4*n9+2*n9*n^post0 55: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: NONTERM 56: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: NONTERM 57: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 <= 0), cost: NONTERM 59: l3 -> [12] : (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: NONTERM 60: l3 -> [12] : (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: NONTERM 61: l3 -> [12] : (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 <= 0), cost: NONTERM 63: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 <= 0), cost: NONTERM 64: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0), cost: NONTERM 65: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 >= 0), cost: NONTERM 21: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Applied chaining First rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 <= 0), cost: 4*n7 New rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 <= 0), cost: 2+4*n7 Applied chaining First rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l3 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: 4*n9+2*n9*n^post0 New rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: 2+4*n9+2*n9*n^post0 Applied chaining First rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: NONTERM New rule: l9 -> [12] : 0 == 0, cost: NONTERM Applied chaining First rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: NONTERM New rule: l9 -> [12] : 0 == 0, cost: NONTERM Applied chaining First rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 <= 0), cost: NONTERM New rule: l9 -> [12] : 0 == 0, cost: NONTERM Applied chaining First rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l3 -> [12] : (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: NONTERM New rule: l9 -> [12] : 0 == 0, cost: NONTERM Applied chaining First rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l3 -> [12] : (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0), cost: NONTERM New rule: l9 -> [12] : 0 == 0, cost: NONTERM Applied chaining First rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l3 -> [12] : (-1+n9 >= 0 /\ dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ n^post0 <= 0), cost: NONTERM New rule: l9 -> [12] : 0 == 0, cost: NONTERM Applied chaining First rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 <= 0), cost: NONTERM New rule: l9 -> [12] : 0 == 0, cost: NONTERM Applied chaining First rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0), cost: NONTERM New rule: l9 -> [12] : 0 == 0, cost: NONTERM Applied chaining First rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l3 -> [12] : (dobreak^0 <= 0 /\ dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 >= 0), cost: NONTERM New rule: l9 -> [12] : 0 == 0, cost: NONTERM Applied deletion Removed the following rules: 52 53 55 56 57 59 60 61 63 64 65 Chained accelerated rules with incoming rules Start location: l9 28: l3 -> [10] : -1+dobreak^0 >= 0, cost: NONTERM 21: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 66: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 <= 0), cost: 2+4*n7 67: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: 2+4*n9+2*n9*n^post0 68: l9 -> [12] : 0 == 0, cost: NONTERM 69: l9 -> [12] : 0 == 0, cost: NONTERM 70: l9 -> [12] : 0 == 0, cost: NONTERM 71: l9 -> [12] : 0 == 0, cost: NONTERM 72: l9 -> [12] : 0 == 0, cost: NONTERM 73: l9 -> [12] : 0 == 0, cost: NONTERM 74: l9 -> [12] : 0 == 0, cost: NONTERM 75: l9 -> [12] : 0 == 0, cost: NONTERM 76: l9 -> [12] : 0 == 0, cost: NONTERM Eliminating location l3 by chaining: Applied chaining First rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post9, R^0'=0, 0 == 0, cost: 2 Second rule: l3 -> [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 partial deletion Original rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=n^post0, (dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 <= 0), cost: 2+4*n7 New rule: l9 -> [13] : (dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 <= 0), cost: 2+4*n7 Applied partial deletion Original rule: l9 -> l3 : A^0'=0, dobreak^0'=dobreak^post8, R^0'=0, n^0'=0, (-1+n9 >= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: 2+4*n9+2*n9*n^post0 New rule: l9 -> [13] : (-1+n9 >= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: 2+4*n9+2*n9*n^post0 Applied deletion Removed the following rules: 21 28 66 67 Eliminated locations on tree-shaped paths Start location: l9 68: l9 -> [12] : 0 == 0, cost: NONTERM 69: l9 -> [12] : 0 == 0, cost: NONTERM 70: l9 -> [12] : 0 == 0, cost: NONTERM 71: l9 -> [12] : 0 == 0, cost: NONTERM 72: l9 -> [12] : 0 == 0, cost: NONTERM 73: l9 -> [12] : 0 == 0, cost: NONTERM 74: l9 -> [12] : 0 == 0, cost: NONTERM 75: l9 -> [12] : 0 == 0, cost: NONTERM 76: l9 -> [12] : 0 == 0, cost: NONTERM 77: l9 -> [10] : -1+dobreak^post9 >= 0, cost: NONTERM 78: l9 -> [13] : (dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 <= 0), cost: 2+4*n7 79: l9 -> [13] : (-1+n9 >= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: 2+4*n9+2*n9*n^post0 Removed duplicate rules (ignoring updates) Start location: l9 76: l9 -> [12] : 0 == 0, cost: NONTERM 77: l9 -> [10] : -1+dobreak^post9 >= 0, cost: NONTERM 78: l9 -> [13] : (dobreak^post8 <= 0 /\ -1+n7 >= 0 /\ n^post0 <= 0), cost: 2+4*n7 79: l9 -> [13] : (-1+n9 >= 0 /\ dobreak^post8 <= 0 /\ n^post0 >= 0), cost: 2+4*n9+2*n9*n^post0 Computing asymptotic complexity Proved nontermination of rule 76 via SMT. Proved the following lower bound Complexity: Nonterm Cpx degree: Nonterm Solved cost: NONTERM Rule cost: NONTERM Rule guard: 0 == 0