NO Initial ITS Start location: l4 0: l0 -> l1 : R^0'=R^post0, n^0'=n^post0, A^0'=A^post0, dobreak^0'=dobreak^post0, (0 == 0 /\ R^post0 == 0 /\ -A^post0+A^0 == 0 /\ n^0 <= 0 /\ n^0-n^post0 == 0 /\ R^10 == 0), cost: 1 1: l0 -> l2 : R^0'=R^post1, n^0'=n^post1, A^0'=A^post1, dobreak^0'=dobreak^post1, (-dobreak^post1+dobreak^0 == 0 /\ 1-n^0+n^post1 == 0 /\ 1-n^0 <= 0 /\ A^0-A^post1 == 0 /\ R^0-R^post1 == 0), cost: 1 3: l1 -> l0 : R^0'=R^post3, n^0'=n^post3, A^0'=A^post3, dobreak^0'=dobreak^post3, (-dobreak^post3+dobreak^0 == 0 /\ R^0-R^post3 == 0 /\ A^post3 == 0 /\ dobreak^0 <= 0 /\ -1+A^10 == 0 /\ n^0-n^post3 == 0), cost: 1 2: l2 -> l0 : R^0'=R^post2, n^0'=n^post2, A^0'=A^post2, dobreak^0'=dobreak^post2, (R^0-R^post2 == 0 /\ -dobreak^post2+dobreak^0 == 0 /\ n^0-n^post2 == 0 /\ -A^post2+A^0 == 0), cost: 1 4: l3 -> l1 : R^0'=R^post4, n^0'=n^post4, A^0'=A^post4, dobreak^0'=dobreak^post4, (0 == 0 /\ A^post4 == 0 /\ R^post4 == 0), cost: 1 5: l4 -> l3 : R^0'=R^post5, n^0'=n^post5, A^0'=A^post5, dobreak^0'=dobreak^post5, (n^0-n^post5 == 0 /\ dobreak^0-dobreak^post5 == 0 /\ R^0-R^post5 == 0 /\ -A^post5+A^0 == 0), cost: 1 Applied preprocessing Original rule: l0 -> l1 : R^0'=R^post0, n^0'=n^post0, A^0'=A^post0, dobreak^0'=dobreak^post0, (0 == 0 /\ R^post0 == 0 /\ -A^post0+A^0 == 0 /\ n^0 <= 0 /\ n^0-n^post0 == 0 /\ R^10 == 0), cost: 1 New rule: l0 -> l1 : R^0'=0, dobreak^0'=dobreak^post0, n^0 <= 0, cost: 1 Applied preprocessing Original rule: l0 -> l2 : R^0'=R^post1, n^0'=n^post1, A^0'=A^post1, dobreak^0'=dobreak^post1, (-dobreak^post1+dobreak^0 == 0 /\ 1-n^0+n^post1 == 0 /\ 1-n^0 <= 0 /\ A^0-A^post1 == 0 /\ R^0-R^post1 == 0), cost: 1 New rule: l0 -> l2 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 1 Applied preprocessing Original rule: l2 -> l0 : R^0'=R^post2, n^0'=n^post2, A^0'=A^post2, dobreak^0'=dobreak^post2, (R^0-R^post2 == 0 /\ -dobreak^post2+dobreak^0 == 0 /\ n^0-n^post2 == 0 /\ -A^post2+A^0 == 0), cost: 1 New rule: l2 -> l0 : TRUE, cost: 1 Applied preprocessing Original rule: l1 -> l0 : R^0'=R^post3, n^0'=n^post3, A^0'=A^post3, dobreak^0'=dobreak^post3, (-dobreak^post3+dobreak^0 == 0 /\ R^0-R^post3 == 0 /\ A^post3 == 0 /\ dobreak^0 <= 0 /\ -1+A^10 == 0 /\ n^0-n^post3 == 0), cost: 1 New rule: l1 -> l0 : A^0'=0, dobreak^0 <= 0, cost: 1 Applied preprocessing Original rule: l3 -> l1 : R^0'=R^post4, n^0'=n^post4, A^0'=A^post4, dobreak^0'=dobreak^post4, (0 == 0 /\ A^post4 == 0 /\ R^post4 == 0), cost: 1 New rule: l3 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 1 Applied preprocessing Original rule: l4 -> l3 : R^0'=R^post5, n^0'=n^post5, A^0'=A^post5, dobreak^0'=dobreak^post5, (n^0-n^post5 == 0 /\ dobreak^0-dobreak^post5 == 0 /\ R^0-R^post5 == 0 /\ -A^post5+A^0 == 0), cost: 1 New rule: l4 -> l3 : TRUE, cost: 1 Simplified rules Start location: l4 6: l0 -> l1 : R^0'=0, dobreak^0'=dobreak^post0, n^0 <= 0, cost: 1 7: l0 -> l2 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 1 9: l1 -> l0 : A^0'=0, dobreak^0 <= 0, cost: 1 8: l2 -> l0 : TRUE, cost: 1 10: l3 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 1 11: l4 -> l3 : TRUE, cost: 1 Eliminating location l3 by chaining: Applied chaining First rule: l4 -> l3 : TRUE, cost: 1 Second rule: l3 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 1 New rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Applied deletion Removed the following rules: 10 11 Eliminating location l2 by chaining: Applied chaining First rule: l0 -> l2 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 1 Second rule: l2 -> l0 : TRUE, cost: 1 New rule: l0 -> l0 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 2 Applied deletion Removed the following rules: 7 8 Eliminated locations on linear paths Start location: l4 6: l0 -> l1 : R^0'=0, dobreak^0'=dobreak^post0, n^0 <= 0, cost: 1 13: l0 -> l0 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 2 9: l1 -> l0 : A^0'=0, dobreak^0 <= 0, cost: 1 12: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Applied acceleration Original rule: l0 -> l0 : n^0'=-1+n^0, -1+n^0 >= 0, cost: 2 New rule: l0 -> l0 : n^0'=n^0-n, (n >= 0 /\ n^0-n >= 0), cost: 2*n Sub-proof via acceration calculus written to file:///tmp/tmpnam_ogddIK.txt Applied instantiation Original rule: l0 -> l0 : n^0'=n^0-n, (n >= 0 /\ n^0-n >= 0), cost: 2*n New rule: l0 -> l0 : n^0'=0, (0 >= 0 /\ n^0 >= 0), cost: 2*n^0 Applied simplification Original rule: l0 -> l0 : n^0'=0, (0 >= 0 /\ n^0 >= 0), cost: 2*n^0 New rule: l0 -> l0 : n^0'=0, n^0 >= 0, cost: 2*n^0 Applied deletion Removed the following rules: 13 Accelerated simple loops Start location: l4 6: l0 -> l1 : R^0'=0, dobreak^0'=dobreak^post0, n^0 <= 0, cost: 1 15: l0 -> l0 : n^0'=0, n^0 >= 0, cost: 2*n^0 9: l1 -> l0 : A^0'=0, dobreak^0 <= 0, cost: 1 12: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Applied chaining First rule: l1 -> l0 : A^0'=0, dobreak^0 <= 0, cost: 1 Second rule: l0 -> l0 : n^0'=0, n^0 >= 0, cost: 2*n^0 New rule: l1 -> l0 : n^0'=0, A^0'=0, (n^0 >= 0 /\ dobreak^0 <= 0), cost: 1+2*n^0 Applied deletion Removed the following rules: 15 Chained accelerated rules with incoming rules Start location: l4 6: l0 -> l1 : R^0'=0, dobreak^0'=dobreak^post0, n^0 <= 0, cost: 1 9: l1 -> l0 : A^0'=0, dobreak^0 <= 0, cost: 1 16: l1 -> l0 : n^0'=0, A^0'=0, (n^0 >= 0 /\ dobreak^0 <= 0), cost: 1+2*n^0 12: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Eliminating location l0 by chaining: Applied chaining First rule: l1 -> l0 : A^0'=0, dobreak^0 <= 0, cost: 1 Second rule: l0 -> l1 : R^0'=0, dobreak^0'=dobreak^post0, n^0 <= 0, cost: 1 New rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 <= 0 /\ dobreak^0 <= 0), cost: 2 Applied chaining First rule: l1 -> l0 : n^0'=0, A^0'=0, (n^0 >= 0 /\ dobreak^0 <= 0), cost: 1+2*n^0 Second rule: l0 -> l1 : R^0'=0, dobreak^0'=dobreak^post0, n^0 <= 0, cost: 1 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (0 <= 0 /\ n^0 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0 Applied simplification Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (0 <= 0 /\ n^0 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0 Applied deletion Removed the following rules: 6 9 16 Eliminated locations on tree-shaped paths Start location: l4 17: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 <= 0 /\ dobreak^0 <= 0), cost: 2 18: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0 12: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Applied acceleration Original rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 <= 0 /\ dobreak^0 <= 0), cost: 2 New rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-n^0 >= 0 /\ -1+n0 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post0 >= 0), cost: 2*n0 Sub-proof via acceration calculus written to file:///tmp/tmpnam_AElnBl.txt Applied nonterm Original rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 <= 0 /\ dobreak^0 <= 0), cost: 2 New rule: l1 -> [6] : (-n^0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0), cost: NONTERM Sub-proof via acceration calculus written to file:///tmp/tmpnam_DMaEbB.txt Applied acceleration Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0), cost: 2*n1 Sub-proof via acceration calculus written to file:///tmp/tmpnam_kAEHkK.txt Applied nonterm Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0 New rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0), cost: NONTERM Sub-proof via acceration calculus written to file:///tmp/tmpnam_idaAeB.txt Applied chaining First rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0 Second rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 <= 0 /\ dobreak^0 <= 0), cost: 2 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 4+2*n^0 Applied acceleration Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 4+2*n^0 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-1+n2 >= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: 4*n2 Sub-proof via acceration calculus written to file:///tmp/tmpnam_pnJJpN.txt Applied nonterm Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 4+2*n^0 New rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM Sub-proof via acceration calculus written to file:///tmp/tmpnam_ehdidi.txt Applied chaining First rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 <= 0 /\ dobreak^0 <= 0), cost: 2 Second rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM New rule: l1 -> [6] : (0 <= 0 /\ n^0 <= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0 /\ dobreak^0 <= 0), cost: NONTERM Applied chaining First rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 <= 0 /\ dobreak^0 <= 0), cost: 2 Second rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 == 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 4+2*n^0 Applied acceleration Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 == 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 4+2*n^0 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-n^0 >= 0 /\ -1+n3 >= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: 4*n3 Sub-proof via acceration calculus written to file:///tmp/tmpnam_EcfOBe.txt Applied nonterm Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 == 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 4+2*n^0 New rule: l1 -> [6] : (-n^0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM Sub-proof via acceration calculus written to file:///tmp/tmpnam_KKePce.txt Applied chaining First rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0 Second rule: l1 -> [6] : (-n^0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM New rule: l1 -> [6] : (0 <= 0 /\ 0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0 /\ dobreak^0 <= 0), cost: NONTERM Applied chaining First rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0 Second rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-n^0 >= 0 /\ -1+n0 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post0 >= 0), cost: 2*n0 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-1+n0 >= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0+2*n0 Applied acceleration Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-1+n0 >= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0+2*n0 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-1+n0 >= 0 /\ -dobreak^0 >= 0 /\ -1+n4 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: 2*n4+2*n4*n0 Sub-proof via acceration calculus written to file:///tmp/tmpnam_NKGDOa.txt Applied nonterm Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-1+n0 >= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0+2*n0 New rule: l1 -> [6] : (-1+n0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM Sub-proof via acceration calculus written to file:///tmp/tmpnam_ohHKLa.txt Applied chaining First rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-n^0 >= 0 /\ -1+n0 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post0 >= 0), cost: 2*n0 Second rule: l1 -> [6] : (-1+n0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM New rule: l1 -> [6] : (0 <= 0 /\ -n^0 >= 0 /\ -1+n0 >= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM Applied chaining First rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-n^0 >= 0 /\ -1+n0 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post0 >= 0), cost: 2*n0 Second rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-1+n0 >= 0 /\ n^0 == 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0+2*n0 Applied acceleration Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-1+n0 >= 0 /\ n^0 == 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0+2*n0 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-n^0 >= 0 /\ -1+n0 >= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n5 >= 0 /\ -dobreak^post0 >= 0), cost: 2*n5+2*n5*n0 Sub-proof via acceration calculus written to file:///tmp/tmpnam_IhJlBM.txt Applied nonterm Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-1+n0 >= 0 /\ n^0 == 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0+2*n0 New rule: l1 -> [6] : (-n^0 >= 0 /\ -1+n0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM Sub-proof via acceration calculus written to file:///tmp/tmpnam_HpDGaj.txt Applied chaining First rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n^0 Second rule: l1 -> [6] : (-n^0 >= 0 /\ -1+n0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM New rule: l1 -> [6] : (0 <= 0 /\ 0 >= 0 /\ -1+n0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0 /\ dobreak^0 <= 0), cost: NONTERM Applied chaining First rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 <= 0 /\ dobreak^0 <= 0), cost: 2 Second rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0), cost: 2*n1 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 == 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n1 Applied acceleration Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 == 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n1 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-n^0 >= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0 /\ -1+n6 >= 0), cost: 2*n6+2*n6*n1 Sub-proof via acceration calculus written to file:///tmp/tmpnam_miPDCB.txt Applied nonterm Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 == 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n1 New rule: l1 -> [6] : (-n^0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM Sub-proof via acceration calculus written to file:///tmp/tmpnam_lCHOgc.txt Applied chaining First rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0), cost: 2*n1 Second rule: l1 -> [6] : (-n^0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM New rule: l1 -> [6] : (0 <= 0 /\ 0 >= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM Applied chaining First rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0), cost: 2*n1 Second rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 <= 0 /\ dobreak^0 <= 0), cost: 2 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n1 Applied acceleration Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n1 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0 /\ -1+n7 >= 0), cost: 2*n7*n1+2*n7 Sub-proof via acceration calculus written to file:///tmp/tmpnam_eBOpMA.txt Applied nonterm Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: 2+2*n1 New rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM Sub-proof via acceration calculus written to file:///tmp/tmpnam_pkCcDp.txt Applied chaining First rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 <= 0 /\ dobreak^0 <= 0), cost: 2 Second rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM New rule: l1 -> [6] : (0 <= 0 /\ n^0 <= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0 /\ dobreak^0 <= 0), cost: NONTERM Applied simplification Original rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-n^0 >= 0 /\ -1+n0 >= 0 /\ -dobreak^0 >= 0 /\ -dobreak^post0 >= 0), cost: 2*n0 New rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-1+n0 >= 0 /\ n^0 <= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 2*n0 Applied simplification Original rule: l1 -> [6] : (-n^0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0), cost: NONTERM New rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 <= 0), cost: NONTERM Applied simplification Original rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0), cost: 2*n1 New rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: 2*n1 Applied simplification Original rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM New rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0), cost: NONTERM Applied simplification Original rule: l1 -> [6] : (0 <= 0 /\ n^0 <= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0 /\ dobreak^0 <= 0), cost: NONTERM New rule: l1 -> [6] : (n^0 <= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: NONTERM Applied simplification Original rule: l1 -> [6] : (-n^0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM New rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 <= 0 /\ n^0 >= 0), cost: NONTERM Applied simplification Original rule: l1 -> [6] : (0 <= 0 /\ 0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0 /\ dobreak^0 <= 0), cost: NONTERM New rule: l1 -> [6] : (n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: NONTERM Applied simplification Original rule: l1 -> [6] : (-1+n0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM New rule: l1 -> [6] : (-1+n0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0), cost: NONTERM Applied simplification Original rule: l1 -> [6] : (0 <= 0 /\ -n^0 >= 0 /\ -1+n0 >= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM New rule: l1 -> [6] : (-1+n0 >= 0 /\ n^0 <= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: NONTERM Applied simplification Original rule: l1 -> [6] : (-n^0 >= 0 /\ -1+n0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM New rule: l1 -> [6] : (-1+n0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 <= 0 /\ n^0 >= 0), cost: NONTERM Applied simplification Original rule: l1 -> [6] : (0 <= 0 /\ 0 >= 0 /\ -1+n0 >= 0 /\ n^0 >= 0 /\ -dobreak^post0 >= 0 /\ dobreak^0 <= 0), cost: NONTERM New rule: l1 -> [6] : (-1+n0 >= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: NONTERM Applied simplification Original rule: l1 -> [6] : (-n^0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM New rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 <= 0 /\ n^0 >= 0 /\ -1+n1 >= 0), cost: NONTERM Applied simplification Original rule: l1 -> [6] : (0 <= 0 /\ 0 >= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM New rule: l1 -> [6] : (n^0 >= 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: NONTERM Applied simplification Original rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0), cost: NONTERM New rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0), cost: NONTERM Applied simplification Original rule: l1 -> [6] : (0 <= 0 /\ n^0 <= 0 /\ n^0 >= 0 /\ -1+n1 >= 0 /\ -dobreak^post0 >= 0 /\ dobreak^0 <= 0), cost: NONTERM New rule: l1 -> [6] : (n^0 <= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: NONTERM Applied deletion Removed the following rules: 17 18 Accelerated simple loops Start location: l4 22: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0), cost: NONTERM 35: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-1+n0 >= 0 /\ n^0 <= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 2*n0 36: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 <= 0), cost: NONTERM 37: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: 2*n1 38: l1 -> [6] : (n^0 <= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: NONTERM 39: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 <= 0 /\ n^0 >= 0), cost: NONTERM 40: l1 -> [6] : (n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: NONTERM 41: l1 -> [6] : (-1+n0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0), cost: NONTERM 42: l1 -> [6] : (-1+n0 >= 0 /\ n^0 <= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: NONTERM 43: l1 -> [6] : (-1+n0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 <= 0 /\ n^0 >= 0), cost: NONTERM 44: l1 -> [6] : (-1+n0 >= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: NONTERM 45: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 <= 0 /\ n^0 >= 0 /\ -1+n1 >= 0), cost: NONTERM 46: l1 -> [6] : (n^0 >= 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: NONTERM 47: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0), cost: NONTERM 48: l1 -> [6] : (n^0 <= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: NONTERM 12: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0), cost: NONTERM New rule: l4 -> [6] : 0 == 0, cost: NONTERM Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> l1 : R^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (-1+n0 >= 0 /\ n^0 <= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: 2*n0 New rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post0, (-1+n0 >= 0 /\ n^post4 <= 0 /\ dobreak^post0 <= 0), cost: 2+2*n0 Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 <= 0), cost: NONTERM New rule: l4 -> [6] : 0 == 0, cost: NONTERM Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (n^0 >= 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: 2*n1 New rule: l4 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (dobreak^post0 <= 0 /\ -1+n1 >= 0), cost: 2+2*n1 Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> [6] : (n^0 <= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: NONTERM New rule: l4 -> [6] : 0 == 0, cost: NONTERM Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 <= 0 /\ n^0 >= 0), cost: NONTERM New rule: l4 -> [6] : 0 == 0, cost: NONTERM Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> [6] : (n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: NONTERM New rule: l4 -> [6] : 0 == 0, cost: NONTERM Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> [6] : (-1+n0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0), cost: NONTERM New rule: l4 -> [6] : 0 == 0, cost: NONTERM Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> [6] : (-1+n0 >= 0 /\ n^0 <= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: NONTERM New rule: l4 -> [6] : 0 == 0, cost: NONTERM Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> [6] : (-1+n0 >= 0 /\ dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 <= 0 /\ n^0 >= 0), cost: NONTERM New rule: l4 -> [6] : 0 == 0, cost: NONTERM Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> [6] : (-1+n0 >= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ dobreak^0 <= 0), cost: NONTERM New rule: l4 -> [6] : 0 == 0, cost: NONTERM Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 <= 0 /\ n^0 >= 0 /\ -1+n1 >= 0), cost: NONTERM New rule: l4 -> [6] : 0 == 0, cost: NONTERM Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> [6] : (n^0 >= 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: NONTERM New rule: l4 -> [6] : 0 == 0, cost: NONTERM Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> [6] : (dobreak^post0-dobreak^0 <= 0 /\ -dobreak^0 >= 0 /\ n^0 >= 0 /\ -1+n1 >= 0), cost: NONTERM New rule: l4 -> [6] : 0 == 0, cost: NONTERM Applied chaining First rule: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 Second rule: l1 -> [6] : (n^0 <= 0 /\ n^0 >= 0 /\ dobreak^post0 <= 0 /\ -1+n1 >= 0 /\ dobreak^0 <= 0), cost: NONTERM New rule: l4 -> [6] : 0 == 0, cost: NONTERM Applied deletion Removed the following rules: 22 35 36 37 38 39 40 41 42 43 44 45 46 47 48 Chained accelerated rules with incoming rules Start location: l4 12: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post4, 0 == 0, cost: 2 49: l4 -> [6] : 0 == 0, cost: NONTERM 50: l4 -> l1 : R^0'=0, n^0'=n^post4, A^0'=0, dobreak^0'=dobreak^post0, (-1+n0 >= 0 /\ n^post4 <= 0 /\ dobreak^post0 <= 0), cost: 2+2*n0 51: l4 -> l1 : R^0'=0, n^0'=0, A^0'=0, dobreak^0'=dobreak^post0, (dobreak^post0 <= 0 /\ -1+n1 >= 0), cost: 2+2*n1 Removed unreachable locations and irrelevant leafs Start location: l4 49: l4 -> [6] : 0 == 0, cost: NONTERM Computing asymptotic complexity Proved nontermination of rule 49 via SMT. Proved the following lower bound Complexity: Nonterm Cpx degree: Nonterm Solved cost: NONTERM Rule cost: NONTERM Rule guard: 0 == 0