WORST_CASE(Omega(0),?) Initial ITS Start location: l10 0: l0 -> l1 : __const_1023^0'=__const_1023^post0, tmp^0'=tmp^post0, i^0'=i^post0, n^0'=n^post0, b^0'=b^post0, j^0'=j^post0, (-i^post0+i^0 == 0 /\ -j^post0+j^0 == 0 /\ __const_1023^0-__const_1023^post0 == 0 /\ 1-i^0+n^0 <= 0 /\ tmp^0-tmp^post0 == 0 /\ b^0-b^post0 == 0 /\ -n^post0+n^0 == 0), cost: 1 1: l0 -> l2 : __const_1023^0'=__const_1023^post1, tmp^0'=tmp^post1, i^0'=i^post1, n^0'=n^post1, b^0'=b^post1, j^0'=j^post1, (-2+j^post1-j^0 == 0 /\ b^0-b^post1 == 0 /\ __const_1023^0-__const_1023^post1 == 0 /\ -1+i^post1-i^0 == 0 /\ i^0-n^0 <= 0 /\ n^0-n^post1 == 0 /\ tmp^0-tmp^post1 == 0), cost: 1 11: l1 -> l6 : __const_1023^0'=__const_1023^post11, tmp^0'=tmp^post11, i^0'=i^post11, n^0'=n^post11, b^0'=b^post11, j^0'=j^post11, (tmp^0-tmp^post11 == 0 /\ __const_1023^0-__const_1023^post11 == 0 /\ i^0-i^post11 == 0 /\ -j^post11+j^0 == 0 /\ n^0-n^post11 == 0 /\ 1+b^0 <= 0 /\ -b^post11+b^0 == 0), cost: 1 12: l1 -> l8 : __const_1023^0'=__const_1023^post12, tmp^0'=tmp^post12, i^0'=i^post12, n^0'=n^post12, b^0'=b^post12, j^0'=j^post12, (-j^post12+j^0 == 0 /\ __const_1023^0-__const_1023^post12 == 0 /\ -b^post12+b^0 == 0 /\ -b^0 <= 0 /\ n^0-n^post12 == 0 /\ tmp^0-tmp^post12 == 0 /\ i^0-i^post12 == 0), cost: 1 7: l2 -> l0 : __const_1023^0'=__const_1023^post7, tmp^0'=tmp^post7, i^0'=i^post7, n^0'=n^post7, b^0'=b^post7, j^0'=j^post7, (-j^post7+j^0 == 0 /\ __const_1023^0-__const_1023^post7 == 0 /\ -n^post7+n^0 == 0 /\ tmp^0-tmp^post7 == 0 /\ b^0-b^post7 == 0 /\ i^0-i^post7 == 0), cost: 1 2: l3 -> l2 : __const_1023^0'=__const_1023^post2, tmp^0'=tmp^post2, i^0'=i^post2, n^0'=n^post2, b^0'=b^post2, j^0'=j^post2, (-n^post2+n^0 == 0 /\ __const_1023^0-__const_1023^post2 == 0 /\ j^0-j^post2 == 0 /\ tmp^0-tmp^post2 == 0 /\ b^0-b^post2 == 0 /\ i^post2 == 0), cost: 1 3: l4 -> l3 : __const_1023^0'=__const_1023^post3, tmp^0'=tmp^post3, i^0'=i^post3, n^0'=n^post3, b^0'=b^post3, j^0'=j^post3, (n^post3 == 0 /\ -j^post3+j^0 == 0 /\ tmp^0-tmp^post3 == 0 /\ i^0-i^post3 == 0 /\ -b^post3+b^0 == 0 /\ __const_1023^0-__const_1023^post3 == 0), cost: 1 4: l5 -> l3 : __const_1023^0'=__const_1023^post4, tmp^0'=tmp^post4, i^0'=i^post4, n^0'=n^post4, b^0'=b^post4, j^0'=j^post4, (__const_1023^0-__const_1023^post4 == 0 /\ tmp^0 <= 0 /\ tmp^0-tmp^post4 == 0 /\ i^0-i^post4 == 0 /\ -tmp^0 <= 0 /\ -j^post4+j^0 == 0 /\ -__const_1023^0+n^post4 == 0 /\ -b^post4+b^0 == 0), cost: 1 5: l5 -> l4 : __const_1023^0'=__const_1023^post5, tmp^0'=tmp^post5, i^0'=i^post5, n^0'=n^post5, b^0'=b^post5, j^0'=j^post5, (-j^post5+j^0 == 0 /\ __const_1023^0-__const_1023^post5 == 0 /\ -b^post5+b^0 == 0 /\ 1-tmp^0 <= 0 /\ tmp^0-tmp^post5 == 0 /\ n^0-n^post5 == 0 /\ i^0-i^post5 == 0), cost: 1 6: l5 -> l4 : __const_1023^0'=__const_1023^post6, tmp^0'=tmp^post6, i^0'=i^post6, n^0'=n^post6, b^0'=b^post6, j^0'=j^post6, (tmp^0-tmp^post6 == 0 /\ __const_1023^0-__const_1023^post6 == 0 /\ b^0-b^post6 == 0 /\ n^0-n^post6 == 0 /\ -i^post6+i^0 == 0 /\ 1+tmp^0 <= 0 /\ -j^post6+j^0 == 0), cost: 1 8: l6 -> l7 : __const_1023^0'=__const_1023^post8, tmp^0'=tmp^post8, i^0'=i^post8, n^0'=n^post8, b^0'=b^post8, j^0'=j^post8, (j^0-j^post8 == 0 /\ -n^post8+n^0 == 0 /\ tmp^0-tmp^post8 == 0 /\ i^0-i^post8 == 0 /\ -b^post8+b^0 == 0 /\ __const_1023^0-__const_1023^post8 == 0), cost: 1 9: l8 -> l6 : __const_1023^0'=__const_1023^post9, tmp^0'=tmp^post9, i^0'=i^post9, n^0'=n^post9, b^0'=b^post9, j^0'=j^post9, (tmp^0-tmp^post9 == 0 /\ -n^post9+n^0 == 0 /\ -b^post9+b^0 == 0 /\ i^0-i^post9 == 0 /\ __const_1023^0-b^0 <= 0 /\ __const_1023^0-__const_1023^post9 == 0 /\ -j^post9+j^0 == 0), cost: 1 10: l8 -> l6 : __const_1023^0'=__const_1023^post10, tmp^0'=tmp^post10, i^0'=i^post10, n^0'=n^post10, b^0'=b^post10, j^0'=j^post10, (i^0-i^post10 == 0 /\ __const_1023^0-__const_1023^post10 == 0 /\ -j^post10+j^0 == 0 /\ 1-__const_1023^0+b^0 <= 0 /\ -b^post10+b^0 == 0 /\ n^0-n^post10 == 0 /\ tmp^0-tmp^post10 == 0), cost: 1 13: l9 -> l5 : __const_1023^0'=__const_1023^post13, tmp^0'=tmp^post13, i^0'=i^post13, n^0'=n^post13, b^0'=b^post13, j^0'=j^post13, (0 == 0 /\ -j^post13+j^0 == 0 /\ n^0-n^post13 == 0 /\ i^0-i^post13 == 0 /\ -b^post13+b^0 == 0 /\ __const_1023^0-__const_1023^post13 == 0), cost: 1 14: l10 -> l9 : __const_1023^0'=__const_1023^post14, tmp^0'=tmp^post14, i^0'=i^post14, n^0'=n^post14, b^0'=b^post14, j^0'=j^post14, (tmp^0-tmp^post14 == 0 /\ n^0-n^post14 == 0 /\ -i^post14+i^0 == 0 /\ b^0-b^post14 == 0 /\ __const_1023^0-__const_1023^post14 == 0 /\ -j^post14+j^0 == 0), cost: 1 Removed unreachable rules and leafs Start location: l10 1: l0 -> l2 : __const_1023^0'=__const_1023^post1, tmp^0'=tmp^post1, i^0'=i^post1, n^0'=n^post1, b^0'=b^post1, j^0'=j^post1, (-2+j^post1-j^0 == 0 /\ b^0-b^post1 == 0 /\ __const_1023^0-__const_1023^post1 == 0 /\ -1+i^post1-i^0 == 0 /\ i^0-n^0 <= 0 /\ n^0-n^post1 == 0 /\ tmp^0-tmp^post1 == 0), cost: 1 7: l2 -> l0 : __const_1023^0'=__const_1023^post7, tmp^0'=tmp^post7, i^0'=i^post7, n^0'=n^post7, b^0'=b^post7, j^0'=j^post7, (-j^post7+j^0 == 0 /\ __const_1023^0-__const_1023^post7 == 0 /\ -n^post7+n^0 == 0 /\ tmp^0-tmp^post7 == 0 /\ b^0-b^post7 == 0 /\ i^0-i^post7 == 0), cost: 1 2: l3 -> l2 : __const_1023^0'=__const_1023^post2, tmp^0'=tmp^post2, i^0'=i^post2, n^0'=n^post2, b^0'=b^post2, j^0'=j^post2, (-n^post2+n^0 == 0 /\ __const_1023^0-__const_1023^post2 == 0 /\ j^0-j^post2 == 0 /\ tmp^0-tmp^post2 == 0 /\ b^0-b^post2 == 0 /\ i^post2 == 0), cost: 1 3: l4 -> l3 : __const_1023^0'=__const_1023^post3, tmp^0'=tmp^post3, i^0'=i^post3, n^0'=n^post3, b^0'=b^post3, j^0'=j^post3, (n^post3 == 0 /\ -j^post3+j^0 == 0 /\ tmp^0-tmp^post3 == 0 /\ i^0-i^post3 == 0 /\ -b^post3+b^0 == 0 /\ __const_1023^0-__const_1023^post3 == 0), cost: 1 4: l5 -> l3 : __const_1023^0'=__const_1023^post4, tmp^0'=tmp^post4, i^0'=i^post4, n^0'=n^post4, b^0'=b^post4, j^0'=j^post4, (__const_1023^0-__const_1023^post4 == 0 /\ tmp^0 <= 0 /\ tmp^0-tmp^post4 == 0 /\ i^0-i^post4 == 0 /\ -tmp^0 <= 0 /\ -j^post4+j^0 == 0 /\ -__const_1023^0+n^post4 == 0 /\ -b^post4+b^0 == 0), cost: 1 5: l5 -> l4 : __const_1023^0'=__const_1023^post5, tmp^0'=tmp^post5, i^0'=i^post5, n^0'=n^post5, b^0'=b^post5, j^0'=j^post5, (-j^post5+j^0 == 0 /\ __const_1023^0-__const_1023^post5 == 0 /\ -b^post5+b^0 == 0 /\ 1-tmp^0 <= 0 /\ tmp^0-tmp^post5 == 0 /\ n^0-n^post5 == 0 /\ i^0-i^post5 == 0), cost: 1 6: l5 -> l4 : __const_1023^0'=__const_1023^post6, tmp^0'=tmp^post6, i^0'=i^post6, n^0'=n^post6, b^0'=b^post6, j^0'=j^post6, (tmp^0-tmp^post6 == 0 /\ __const_1023^0-__const_1023^post6 == 0 /\ b^0-b^post6 == 0 /\ n^0-n^post6 == 0 /\ -i^post6+i^0 == 0 /\ 1+tmp^0 <= 0 /\ -j^post6+j^0 == 0), cost: 1 13: l9 -> l5 : __const_1023^0'=__const_1023^post13, tmp^0'=tmp^post13, i^0'=i^post13, n^0'=n^post13, b^0'=b^post13, j^0'=j^post13, (0 == 0 /\ -j^post13+j^0 == 0 /\ n^0-n^post13 == 0 /\ i^0-i^post13 == 0 /\ -b^post13+b^0 == 0 /\ __const_1023^0-__const_1023^post13 == 0), cost: 1 14: l10 -> l9 : __const_1023^0'=__const_1023^post14, tmp^0'=tmp^post14, i^0'=i^post14, n^0'=n^post14, b^0'=b^post14, j^0'=j^post14, (tmp^0-tmp^post14 == 0 /\ n^0-n^post14 == 0 /\ -i^post14+i^0 == 0 /\ b^0-b^post14 == 0 /\ __const_1023^0-__const_1023^post14 == 0 /\ -j^post14+j^0 == 0), cost: 1 Applied preprocessing Original rule: l0 -> l2 : __const_1023^0'=__const_1023^post1, tmp^0'=tmp^post1, i^0'=i^post1, n^0'=n^post1, b^0'=b^post1, j^0'=j^post1, (-2+j^post1-j^0 == 0 /\ b^0-b^post1 == 0 /\ __const_1023^0-__const_1023^post1 == 0 /\ -1+i^post1-i^0 == 0 /\ i^0-n^0 <= 0 /\ n^0-n^post1 == 0 /\ tmp^0-tmp^post1 == 0), cost: 1 New rule: l0 -> l2 : i^0'=1+i^0, j^0'=2+j^0, i^0-n^0 <= 0, cost: 1 Applied preprocessing Original rule: l3 -> l2 : __const_1023^0'=__const_1023^post2, tmp^0'=tmp^post2, i^0'=i^post2, n^0'=n^post2, b^0'=b^post2, j^0'=j^post2, (-n^post2+n^0 == 0 /\ __const_1023^0-__const_1023^post2 == 0 /\ j^0-j^post2 == 0 /\ tmp^0-tmp^post2 == 0 /\ b^0-b^post2 == 0 /\ i^post2 == 0), cost: 1 New rule: l3 -> l2 : i^0'=0, TRUE, cost: 1 Applied preprocessing Original rule: l4 -> l3 : __const_1023^0'=__const_1023^post3, tmp^0'=tmp^post3, i^0'=i^post3, n^0'=n^post3, b^0'=b^post3, j^0'=j^post3, (n^post3 == 0 /\ -j^post3+j^0 == 0 /\ tmp^0-tmp^post3 == 0 /\ i^0-i^post3 == 0 /\ -b^post3+b^0 == 0 /\ __const_1023^0-__const_1023^post3 == 0), cost: 1 New rule: l4 -> l3 : n^0'=0, TRUE, cost: 1 Applied preprocessing Original rule: l5 -> l3 : __const_1023^0'=__const_1023^post4, tmp^0'=tmp^post4, i^0'=i^post4, n^0'=n^post4, b^0'=b^post4, j^0'=j^post4, (__const_1023^0-__const_1023^post4 == 0 /\ tmp^0 <= 0 /\ tmp^0-tmp^post4 == 0 /\ i^0-i^post4 == 0 /\ -tmp^0 <= 0 /\ -j^post4+j^0 == 0 /\ -__const_1023^0+n^post4 == 0 /\ -b^post4+b^0 == 0), cost: 1 New rule: l5 -> l3 : n^0'=__const_1023^0, tmp^0 == 0, cost: 1 Applied preprocessing Original rule: l5 -> l4 : __const_1023^0'=__const_1023^post5, tmp^0'=tmp^post5, i^0'=i^post5, n^0'=n^post5, b^0'=b^post5, j^0'=j^post5, (-j^post5+j^0 == 0 /\ __const_1023^0-__const_1023^post5 == 0 /\ -b^post5+b^0 == 0 /\ 1-tmp^0 <= 0 /\ tmp^0-tmp^post5 == 0 /\ n^0-n^post5 == 0 /\ i^0-i^post5 == 0), cost: 1 New rule: l5 -> l4 : -1+tmp^0 >= 0, cost: 1 Applied preprocessing Original rule: l5 -> l4 : __const_1023^0'=__const_1023^post6, tmp^0'=tmp^post6, i^0'=i^post6, n^0'=n^post6, b^0'=b^post6, j^0'=j^post6, (tmp^0-tmp^post6 == 0 /\ __const_1023^0-__const_1023^post6 == 0 /\ b^0-b^post6 == 0 /\ n^0-n^post6 == 0 /\ -i^post6+i^0 == 0 /\ 1+tmp^0 <= 0 /\ -j^post6+j^0 == 0), cost: 1 New rule: l5 -> l4 : 1+tmp^0 <= 0, cost: 1 Applied preprocessing Original rule: l2 -> l0 : __const_1023^0'=__const_1023^post7, tmp^0'=tmp^post7, i^0'=i^post7, n^0'=n^post7, b^0'=b^post7, j^0'=j^post7, (-j^post7+j^0 == 0 /\ __const_1023^0-__const_1023^post7 == 0 /\ -n^post7+n^0 == 0 /\ tmp^0-tmp^post7 == 0 /\ b^0-b^post7 == 0 /\ i^0-i^post7 == 0), cost: 1 New rule: l2 -> l0 : TRUE, cost: 1 Applied preprocessing Original rule: l9 -> l5 : __const_1023^0'=__const_1023^post13, tmp^0'=tmp^post13, i^0'=i^post13, n^0'=n^post13, b^0'=b^post13, j^0'=j^post13, (0 == 0 /\ -j^post13+j^0 == 0 /\ n^0-n^post13 == 0 /\ i^0-i^post13 == 0 /\ -b^post13+b^0 == 0 /\ __const_1023^0-__const_1023^post13 == 0), cost: 1 New rule: l9 -> l5 : tmp^0'=tmp^post13, 0 == 0, cost: 1 Applied preprocessing Original rule: l10 -> l9 : __const_1023^0'=__const_1023^post14, tmp^0'=tmp^post14, i^0'=i^post14, n^0'=n^post14, b^0'=b^post14, j^0'=j^post14, (tmp^0-tmp^post14 == 0 /\ n^0-n^post14 == 0 /\ -i^post14+i^0 == 0 /\ b^0-b^post14 == 0 /\ __const_1023^0-__const_1023^post14 == 0 /\ -j^post14+j^0 == 0), cost: 1 New rule: l10 -> l9 : TRUE, cost: 1 Simplified rules Start location: l10 15: l0 -> l2 : i^0'=1+i^0, j^0'=2+j^0, i^0-n^0 <= 0, cost: 1 21: l2 -> l0 : TRUE, cost: 1 16: l3 -> l2 : i^0'=0, TRUE, cost: 1 17: l4 -> l3 : n^0'=0, TRUE, cost: 1 18: l5 -> l3 : n^0'=__const_1023^0, tmp^0 == 0, cost: 1 19: l5 -> l4 : -1+tmp^0 >= 0, cost: 1 20: l5 -> l4 : 1+tmp^0 <= 0, cost: 1 22: l9 -> l5 : tmp^0'=tmp^post13, 0 == 0, cost: 1 23: l10 -> l9 : TRUE, cost: 1 Eliminating location l9 by chaining: Applied chaining First rule: l10 -> l9 : TRUE, cost: 1 Second rule: l9 -> l5 : tmp^0'=tmp^post13, 0 == 0, cost: 1 New rule: l10 -> l5 : tmp^0'=tmp^post13, 0 == 0, cost: 2 Applied deletion Removed the following rules: 22 23 Eliminating location l0 by chaining: Applied chaining First rule: l2 -> l0 : TRUE, cost: 1 Second rule: l0 -> l2 : i^0'=1+i^0, j^0'=2+j^0, i^0-n^0 <= 0, cost: 1 New rule: l2 -> l2 : i^0'=1+i^0, j^0'=2+j^0, i^0-n^0 <= 0, cost: 2 Applied deletion Removed the following rules: 15 21 Eliminated locations on linear paths Start location: l10 25: l2 -> l2 : i^0'=1+i^0, j^0'=2+j^0, i^0-n^0 <= 0, cost: 2 16: l3 -> l2 : i^0'=0, TRUE, cost: 1 17: l4 -> l3 : n^0'=0, TRUE, cost: 1 18: l5 -> l3 : n^0'=__const_1023^0, tmp^0 == 0, cost: 1 19: l5 -> l4 : -1+tmp^0 >= 0, cost: 1 20: l5 -> l4 : 1+tmp^0 <= 0, cost: 1 24: l10 -> l5 : tmp^0'=tmp^post13, 0 == 0, cost: 2 Applied acceleration Original rule: l2 -> l2 : i^0'=1+i^0, j^0'=2+j^0, i^0-n^0 <= 0, cost: 2 New rule: l2 -> l2 : i^0'=n0+i^0, j^0'=2*n0+j^0, (n0 >= 0 /\ 1-n0-i^0+n^0 >= 0), cost: 2*n0 Applied instantiation Original rule: l2 -> l2 : i^0'=n0+i^0, j^0'=2*n0+j^0, (n0 >= 0 /\ 1-n0-i^0+n^0 >= 0), cost: 2*n0 New rule: l2 -> l2 : i^0'=1+n^0, j^0'=2-2*i^0+2*n^0+j^0, (0 >= 0 /\ 1-i^0+n^0 >= 0), cost: 2-2*i^0+2*n^0 Applied simplification Original rule: l2 -> l2 : i^0'=1+n^0, j^0'=2-2*i^0+2*n^0+j^0, (0 >= 0 /\ 1-i^0+n^0 >= 0), cost: 2-2*i^0+2*n^0 New rule: l2 -> l2 : i^0'=1+n^0, j^0'=2-2*i^0+2*n^0+j^0, 1-i^0+n^0 >= 0, cost: 2-2*i^0+2*n^0 Applied deletion Removed the following rules: 25 Accelerated simple loops Start location: l10 27: l2 -> l2 : i^0'=1+n^0, j^0'=2-2*i^0+2*n^0+j^0, 1-i^0+n^0 >= 0, cost: 2-2*i^0+2*n^0 16: l3 -> l2 : i^0'=0, TRUE, cost: 1 17: l4 -> l3 : n^0'=0, TRUE, cost: 1 18: l5 -> l3 : n^0'=__const_1023^0, tmp^0 == 0, cost: 1 19: l5 -> l4 : -1+tmp^0 >= 0, cost: 1 20: l5 -> l4 : 1+tmp^0 <= 0, cost: 1 24: l10 -> l5 : tmp^0'=tmp^post13, 0 == 0, cost: 2 Applied chaining First rule: l3 -> l2 : i^0'=0, TRUE, cost: 1 Second rule: l2 -> l2 : i^0'=1+n^0, j^0'=2-2*i^0+2*n^0+j^0, 1-i^0+n^0 >= 0, cost: 2-2*i^0+2*n^0 New rule: l3 -> l2 : i^0'=1+n^0, j^0'=2+2*n^0+j^0, 1+n^0 >= 0, cost: 3+2*n^0 Applied deletion Removed the following rules: 27 Chained accelerated rules with incoming rules Start location: l10 16: l3 -> l2 : i^0'=0, TRUE, cost: 1 28: l3 -> l2 : i^0'=1+n^0, j^0'=2+2*n^0+j^0, 1+n^0 >= 0, cost: 3+2*n^0 17: l4 -> l3 : n^0'=0, TRUE, cost: 1 18: l5 -> l3 : n^0'=__const_1023^0, tmp^0 == 0, cost: 1 19: l5 -> l4 : -1+tmp^0 >= 0, cost: 1 20: l5 -> l4 : 1+tmp^0 <= 0, cost: 1 24: l10 -> l5 : tmp^0'=tmp^post13, 0 == 0, cost: 2 Removed unreachable locations and irrelevant leafs Start location: l10 Computing asymptotic complexity Proved the following lower bound Complexity: Unknown Cpx degree: ? Solved cost: 0 Rule cost: 0