WORST_CASE(Omega(0),?) Initial ITS Start location: l10 0: l0 -> l1 : __const_999^0'=__const_999^post0, i34^0'=i34^post0, i8^0'=i8^post0, i2^0'=i2^post0, i6^0'=i6^post0, (i8^0-i8^post0 == 0 /\ __const_999^0-__const_999^post0 == 0 /\ -i6^post0+i6^0 == 0 /\ -i2^post0+i2^0 == 0 /\ i34^0-i34^post0 == 0 /\ 1+i34^0 <= 0), cost: 1 1: l0 -> l2 : __const_999^0'=__const_999^post1, i34^0'=i34^post1, i8^0'=i8^post1, i2^0'=i2^post1, i6^0'=i6^post1, (-i34^0 <= 0 /\ -i8^post1+i8^0 == 0 /\ __const_999^0-__const_999^post1 == 0 /\ 1+i34^post1-i34^0 == 0 /\ i2^0-i2^post1 == 0 /\ -i6^post1+i6^0 == 0), cost: 1 12: l1 -> l4 : __const_999^0'=__const_999^post12, i34^0'=i34^post12, i8^0'=i8^post12, i2^0'=i2^post12, i6^0'=i6^post12, (-i8^post12+i8^0 == 0 /\ -__const_999^0+i6^post12 == 0 /\ __const_999^0-__const_999^post12 == 0 /\ i2^0-i2^post12 == 0 /\ -i34^post12+i34^0 == 0), cost: 1 5: l2 -> l0 : __const_999^0'=__const_999^post5, i34^0'=i34^post5, i8^0'=i8^post5, i2^0'=i2^post5, i6^0'=i6^post5, (-i6^post5+i6^0 == 0 /\ i8^0-i8^post5 == 0 /\ __const_999^0-__const_999^post5 == 0 /\ -i2^post5+i2^0 == 0 /\ i34^0-i34^post5 == 0), cost: 1 2: l3 -> l1 : __const_999^0'=__const_999^post2, i34^0'=i34^post2, i8^0'=i8^post2, i2^0'=i2^post2, i6^0'=i6^post2, (__const_999^0-__const_999^post2 == 0 /\ -i2^post2+i2^0 == 0 /\ -i8^post2+i8^0 == 0 /\ 1-i2^0 <= 0 /\ i34^0-i34^post2 == 0 /\ -i6^post2+i6^0 == 0), cost: 1 3: l3 -> l1 : __const_999^0'=__const_999^post3, i34^0'=i34^post3, i8^0'=i8^post3, i2^0'=i2^post3, i6^0'=i6^post3, (-i6^post3+i6^0 == 0 /\ i8^0-i8^post3 == 0 /\ i2^0-i2^post3 == 0 /\ i34^0-i34^post3 == 0 /\ 1+i2^0 <= 0 /\ __const_999^0-__const_999^post3 == 0), cost: 1 4: l3 -> l2 : __const_999^0'=__const_999^post4, i34^0'=i34^post4, i8^0'=i8^post4, i2^0'=i2^post4, i6^0'=i6^post4, (-i6^post4+i6^0 == 0 /\ -__const_999^0+i34^post4 == 0 /\ -i2^0 <= 0 /\ -i8^post4+i8^0 == 0 /\ -i2^post4+i2^0 == 0 /\ i2^0 <= 0 /\ __const_999^0-__const_999^post4 == 0), cost: 1 6: l4 -> l5 : __const_999^0'=__const_999^post6, i34^0'=i34^post6, i8^0'=i8^post6, i2^0'=i2^post6, i6^0'=i6^post6, (i6^0-i6^post6 == 0 /\ -i8^post6+i8^0 == 0 /\ __const_999^0-__const_999^post6 == 0 /\ i34^0-i34^post6 == 0 /\ -i2^post6+i2^0 == 0), cost: 1 10: l5 -> l8 : __const_999^0'=__const_999^post10, i34^0'=i34^post10, i8^0'=i8^post10, i2^0'=i2^post10, i6^0'=i6^post10, (-__const_999^0+i8^post10 == 0 /\ 1+i6^0 <= 0 /\ i6^0-i6^post10 == 0 /\ -i2^post10+i2^0 == 0 /\ __const_999^0-__const_999^post10 == 0 /\ i34^0-i34^post10 == 0), cost: 1 11: l5 -> l4 : __const_999^0'=__const_999^post11, i34^0'=i34^post11, i8^0'=i8^post11, i2^0'=i2^post11, i6^0'=i6^post11, (i8^0-i8^post11 == 0 /\ __const_999^0-__const_999^post11 == 0 /\ i34^0-i34^post11 == 0 /\ 1+i6^post11-i6^0 == 0 /\ -i6^0 <= 0 /\ -i2^post11+i2^0 == 0), cost: 1 7: l6 -> l7 : __const_999^0'=__const_999^post7, i34^0'=i34^post7, i8^0'=i8^post7, i2^0'=i2^post7, i6^0'=i6^post7, (-i2^post7+i2^0 == 0 /\ i34^0-i34^post7 == 0 /\ 1+i8^0 <= 0 /\ __const_999^0-__const_999^post7 == 0 /\ i8^0-i8^post7 == 0 /\ -i6^post7+i6^0 == 0), cost: 1 8: l6 -> l8 : __const_999^0'=__const_999^post8, i34^0'=i34^post8, i8^0'=i8^post8, i2^0'=i2^post8, i6^0'=i6^post8, (-i6^post8+i6^0 == 0 /\ __const_999^0-__const_999^post8 == 0 /\ -i2^post8+i2^0 == 0 /\ 1+i8^post8-i8^0 == 0 /\ -i8^0 <= 0 /\ i34^0-i34^post8 == 0), cost: 1 9: l8 -> l6 : __const_999^0'=__const_999^post9, i34^0'=i34^post9, i8^0'=i8^post9, i2^0'=i2^post9, i6^0'=i6^post9, (-i6^post9+i6^0 == 0 /\ i8^0-i8^post9 == 0 /\ -i2^post9+i2^0 == 0 /\ __const_999^0-__const_999^post9 == 0 /\ i34^0-i34^post9 == 0), cost: 1 13: l9 -> l3 : __const_999^0'=__const_999^post13, i34^0'=i34^post13, i8^0'=i8^post13, i2^0'=i2^post13, i6^0'=i6^post13, (-i6^post13+i6^0 == 0 /\ -1+i2^post13 == 0 /\ i34^0-i34^post13 == 0 /\ __const_999^0-__const_999^post13 == 0 /\ i8^0-i8^post13 == 0), cost: 1 14: l10 -> l9 : __const_999^0'=__const_999^post14, i34^0'=i34^post14, i8^0'=i8^post14, i2^0'=i2^post14, i6^0'=i6^post14, (-i6^post14+i6^0 == 0 /\ __const_999^0-__const_999^post14 == 0 /\ i2^0-i2^post14 == 0 /\ -i34^post14+i34^0 == 0 /\ -i8^post14+i8^0 == 0), cost: 1 Removed unreachable rules and leafs Start location: l10 0: l0 -> l1 : __const_999^0'=__const_999^post0, i34^0'=i34^post0, i8^0'=i8^post0, i2^0'=i2^post0, i6^0'=i6^post0, (i8^0-i8^post0 == 0 /\ __const_999^0-__const_999^post0 == 0 /\ -i6^post0+i6^0 == 0 /\ -i2^post0+i2^0 == 0 /\ i34^0-i34^post0 == 0 /\ 1+i34^0 <= 0), cost: 1 1: l0 -> l2 : __const_999^0'=__const_999^post1, i34^0'=i34^post1, i8^0'=i8^post1, i2^0'=i2^post1, i6^0'=i6^post1, (-i34^0 <= 0 /\ -i8^post1+i8^0 == 0 /\ __const_999^0-__const_999^post1 == 0 /\ 1+i34^post1-i34^0 == 0 /\ i2^0-i2^post1 == 0 /\ -i6^post1+i6^0 == 0), cost: 1 12: l1 -> l4 : __const_999^0'=__const_999^post12, i34^0'=i34^post12, i8^0'=i8^post12, i2^0'=i2^post12, i6^0'=i6^post12, (-i8^post12+i8^0 == 0 /\ -__const_999^0+i6^post12 == 0 /\ __const_999^0-__const_999^post12 == 0 /\ i2^0-i2^post12 == 0 /\ -i34^post12+i34^0 == 0), cost: 1 5: l2 -> l0 : __const_999^0'=__const_999^post5, i34^0'=i34^post5, i8^0'=i8^post5, i2^0'=i2^post5, i6^0'=i6^post5, (-i6^post5+i6^0 == 0 /\ i8^0-i8^post5 == 0 /\ __const_999^0-__const_999^post5 == 0 /\ -i2^post5+i2^0 == 0 /\ i34^0-i34^post5 == 0), cost: 1 2: l3 -> l1 : __const_999^0'=__const_999^post2, i34^0'=i34^post2, i8^0'=i8^post2, i2^0'=i2^post2, i6^0'=i6^post2, (__const_999^0-__const_999^post2 == 0 /\ -i2^post2+i2^0 == 0 /\ -i8^post2+i8^0 == 0 /\ 1-i2^0 <= 0 /\ i34^0-i34^post2 == 0 /\ -i6^post2+i6^0 == 0), cost: 1 3: l3 -> l1 : __const_999^0'=__const_999^post3, i34^0'=i34^post3, i8^0'=i8^post3, i2^0'=i2^post3, i6^0'=i6^post3, (-i6^post3+i6^0 == 0 /\ i8^0-i8^post3 == 0 /\ i2^0-i2^post3 == 0 /\ i34^0-i34^post3 == 0 /\ 1+i2^0 <= 0 /\ __const_999^0-__const_999^post3 == 0), cost: 1 4: l3 -> l2 : __const_999^0'=__const_999^post4, i34^0'=i34^post4, i8^0'=i8^post4, i2^0'=i2^post4, i6^0'=i6^post4, (-i6^post4+i6^0 == 0 /\ -__const_999^0+i34^post4 == 0 /\ -i2^0 <= 0 /\ -i8^post4+i8^0 == 0 /\ -i2^post4+i2^0 == 0 /\ i2^0 <= 0 /\ __const_999^0-__const_999^post4 == 0), cost: 1 6: l4 -> l5 : __const_999^0'=__const_999^post6, i34^0'=i34^post6, i8^0'=i8^post6, i2^0'=i2^post6, i6^0'=i6^post6, (i6^0-i6^post6 == 0 /\ -i8^post6+i8^0 == 0 /\ __const_999^0-__const_999^post6 == 0 /\ i34^0-i34^post6 == 0 /\ -i2^post6+i2^0 == 0), cost: 1 10: l5 -> l8 : __const_999^0'=__const_999^post10, i34^0'=i34^post10, i8^0'=i8^post10, i2^0'=i2^post10, i6^0'=i6^post10, (-__const_999^0+i8^post10 == 0 /\ 1+i6^0 <= 0 /\ i6^0-i6^post10 == 0 /\ -i2^post10+i2^0 == 0 /\ __const_999^0-__const_999^post10 == 0 /\ i34^0-i34^post10 == 0), cost: 1 11: l5 -> l4 : __const_999^0'=__const_999^post11, i34^0'=i34^post11, i8^0'=i8^post11, i2^0'=i2^post11, i6^0'=i6^post11, (i8^0-i8^post11 == 0 /\ __const_999^0-__const_999^post11 == 0 /\ i34^0-i34^post11 == 0 /\ 1+i6^post11-i6^0 == 0 /\ -i6^0 <= 0 /\ -i2^post11+i2^0 == 0), cost: 1 8: l6 -> l8 : __const_999^0'=__const_999^post8, i34^0'=i34^post8, i8^0'=i8^post8, i2^0'=i2^post8, i6^0'=i6^post8, (-i6^post8+i6^0 == 0 /\ __const_999^0-__const_999^post8 == 0 /\ -i2^post8+i2^0 == 0 /\ 1+i8^post8-i8^0 == 0 /\ -i8^0 <= 0 /\ i34^0-i34^post8 == 0), cost: 1 9: l8 -> l6 : __const_999^0'=__const_999^post9, i34^0'=i34^post9, i8^0'=i8^post9, i2^0'=i2^post9, i6^0'=i6^post9, (-i6^post9+i6^0 == 0 /\ i8^0-i8^post9 == 0 /\ -i2^post9+i2^0 == 0 /\ __const_999^0-__const_999^post9 == 0 /\ i34^0-i34^post9 == 0), cost: 1 13: l9 -> l3 : __const_999^0'=__const_999^post13, i34^0'=i34^post13, i8^0'=i8^post13, i2^0'=i2^post13, i6^0'=i6^post13, (-i6^post13+i6^0 == 0 /\ -1+i2^post13 == 0 /\ i34^0-i34^post13 == 0 /\ __const_999^0-__const_999^post13 == 0 /\ i8^0-i8^post13 == 0), cost: 1 14: l10 -> l9 : __const_999^0'=__const_999^post14, i34^0'=i34^post14, i8^0'=i8^post14, i2^0'=i2^post14, i6^0'=i6^post14, (-i6^post14+i6^0 == 0 /\ __const_999^0-__const_999^post14 == 0 /\ i2^0-i2^post14 == 0 /\ -i34^post14+i34^0 == 0 /\ -i8^post14+i8^0 == 0), cost: 1 Applied preprocessing Original rule: l0 -> l1 : __const_999^0'=__const_999^post0, i34^0'=i34^post0, i8^0'=i8^post0, i2^0'=i2^post0, i6^0'=i6^post0, (i8^0-i8^post0 == 0 /\ __const_999^0-__const_999^post0 == 0 /\ -i6^post0+i6^0 == 0 /\ -i2^post0+i2^0 == 0 /\ i34^0-i34^post0 == 0 /\ 1+i34^0 <= 0), cost: 1 New rule: l0 -> l1 : 1+i34^0 <= 0, cost: 1 Applied preprocessing Original rule: l0 -> l2 : __const_999^0'=__const_999^post1, i34^0'=i34^post1, i8^0'=i8^post1, i2^0'=i2^post1, i6^0'=i6^post1, (-i34^0 <= 0 /\ -i8^post1+i8^0 == 0 /\ __const_999^0-__const_999^post1 == 0 /\ 1+i34^post1-i34^0 == 0 /\ i2^0-i2^post1 == 0 /\ -i6^post1+i6^0 == 0), cost: 1 New rule: l0 -> l2 : i34^0'=-1+i34^0, i34^0 >= 0, cost: 1 Applied preprocessing Original rule: l3 -> l1 : __const_999^0'=__const_999^post2, i34^0'=i34^post2, i8^0'=i8^post2, i2^0'=i2^post2, i6^0'=i6^post2, (__const_999^0-__const_999^post2 == 0 /\ -i2^post2+i2^0 == 0 /\ -i8^post2+i8^0 == 0 /\ 1-i2^0 <= 0 /\ i34^0-i34^post2 == 0 /\ -i6^post2+i6^0 == 0), cost: 1 New rule: l3 -> l1 : -1+i2^0 >= 0, cost: 1 Applied preprocessing Original rule: l3 -> l1 : __const_999^0'=__const_999^post3, i34^0'=i34^post3, i8^0'=i8^post3, i2^0'=i2^post3, i6^0'=i6^post3, (-i6^post3+i6^0 == 0 /\ i8^0-i8^post3 == 0 /\ i2^0-i2^post3 == 0 /\ i34^0-i34^post3 == 0 /\ 1+i2^0 <= 0 /\ __const_999^0-__const_999^post3 == 0), cost: 1 New rule: l3 -> l1 : 1+i2^0 <= 0, cost: 1 Applied preprocessing Original rule: l3 -> l2 : __const_999^0'=__const_999^post4, i34^0'=i34^post4, i8^0'=i8^post4, i2^0'=i2^post4, i6^0'=i6^post4, (-i6^post4+i6^0 == 0 /\ -__const_999^0+i34^post4 == 0 /\ -i2^0 <= 0 /\ -i8^post4+i8^0 == 0 /\ -i2^post4+i2^0 == 0 /\ i2^0 <= 0 /\ __const_999^0-__const_999^post4 == 0), cost: 1 New rule: l3 -> l2 : i34^0'=__const_999^0, i2^0 == 0, cost: 1 Applied preprocessing Original rule: l2 -> l0 : __const_999^0'=__const_999^post5, i34^0'=i34^post5, i8^0'=i8^post5, i2^0'=i2^post5, i6^0'=i6^post5, (-i6^post5+i6^0 == 0 /\ i8^0-i8^post5 == 0 /\ __const_999^0-__const_999^post5 == 0 /\ -i2^post5+i2^0 == 0 /\ i34^0-i34^post5 == 0), cost: 1 New rule: l2 -> l0 : TRUE, cost: 1 Applied preprocessing Original rule: l4 -> l5 : __const_999^0'=__const_999^post6, i34^0'=i34^post6, i8^0'=i8^post6, i2^0'=i2^post6, i6^0'=i6^post6, (i6^0-i6^post6 == 0 /\ -i8^post6+i8^0 == 0 /\ __const_999^0-__const_999^post6 == 0 /\ i34^0-i34^post6 == 0 /\ -i2^post6+i2^0 == 0), cost: 1 New rule: l4 -> l5 : TRUE, cost: 1 Applied preprocessing Original rule: l6 -> l8 : __const_999^0'=__const_999^post8, i34^0'=i34^post8, i8^0'=i8^post8, i2^0'=i2^post8, i6^0'=i6^post8, (-i6^post8+i6^0 == 0 /\ __const_999^0-__const_999^post8 == 0 /\ -i2^post8+i2^0 == 0 /\ 1+i8^post8-i8^0 == 0 /\ -i8^0 <= 0 /\ i34^0-i34^post8 == 0), cost: 1 New rule: l6 -> l8 : i8^0'=-1+i8^0, i8^0 >= 0, cost: 1 Applied preprocessing Original rule: l8 -> l6 : __const_999^0'=__const_999^post9, i34^0'=i34^post9, i8^0'=i8^post9, i2^0'=i2^post9, i6^0'=i6^post9, (-i6^post9+i6^0 == 0 /\ i8^0-i8^post9 == 0 /\ -i2^post9+i2^0 == 0 /\ __const_999^0-__const_999^post9 == 0 /\ i34^0-i34^post9 == 0), cost: 1 New rule: l8 -> l6 : TRUE, cost: 1 Applied preprocessing Original rule: l5 -> l8 : __const_999^0'=__const_999^post10, i34^0'=i34^post10, i8^0'=i8^post10, i2^0'=i2^post10, i6^0'=i6^post10, (-__const_999^0+i8^post10 == 0 /\ 1+i6^0 <= 0 /\ i6^0-i6^post10 == 0 /\ -i2^post10+i2^0 == 0 /\ __const_999^0-__const_999^post10 == 0 /\ i34^0-i34^post10 == 0), cost: 1 New rule: l5 -> l8 : i8^0'=__const_999^0, 1+i6^0 <= 0, cost: 1 Applied preprocessing Original rule: l5 -> l4 : __const_999^0'=__const_999^post11, i34^0'=i34^post11, i8^0'=i8^post11, i2^0'=i2^post11, i6^0'=i6^post11, (i8^0-i8^post11 == 0 /\ __const_999^0-__const_999^post11 == 0 /\ i34^0-i34^post11 == 0 /\ 1+i6^post11-i6^0 == 0 /\ -i6^0 <= 0 /\ -i2^post11+i2^0 == 0), cost: 1 New rule: l5 -> l4 : i6^0'=-1+i6^0, i6^0 >= 0, cost: 1 Applied preprocessing Original rule: l1 -> l4 : __const_999^0'=__const_999^post12, i34^0'=i34^post12, i8^0'=i8^post12, i2^0'=i2^post12, i6^0'=i6^post12, (-i8^post12+i8^0 == 0 /\ -__const_999^0+i6^post12 == 0 /\ __const_999^0-__const_999^post12 == 0 /\ i2^0-i2^post12 == 0 /\ -i34^post12+i34^0 == 0), cost: 1 New rule: l1 -> l4 : i6^0'=__const_999^0, TRUE, cost: 1 Applied preprocessing Original rule: l9 -> l3 : __const_999^0'=__const_999^post13, i34^0'=i34^post13, i8^0'=i8^post13, i2^0'=i2^post13, i6^0'=i6^post13, (-i6^post13+i6^0 == 0 /\ -1+i2^post13 == 0 /\ i34^0-i34^post13 == 0 /\ __const_999^0-__const_999^post13 == 0 /\ i8^0-i8^post13 == 0), cost: 1 New rule: l9 -> l3 : i2^0'=1, TRUE, cost: 1 Applied preprocessing Original rule: l10 -> l9 : __const_999^0'=__const_999^post14, i34^0'=i34^post14, i8^0'=i8^post14, i2^0'=i2^post14, i6^0'=i6^post14, (-i6^post14+i6^0 == 0 /\ __const_999^0-__const_999^post14 == 0 /\ i2^0-i2^post14 == 0 /\ -i34^post14+i34^0 == 0 /\ -i8^post14+i8^0 == 0), cost: 1 New rule: l10 -> l9 : TRUE, cost: 1 Simplified rules Start location: l10 15: l0 -> l1 : 1+i34^0 <= 0, cost: 1 16: l0 -> l2 : i34^0'=-1+i34^0, i34^0 >= 0, cost: 1 26: l1 -> l4 : i6^0'=__const_999^0, TRUE, cost: 1 20: l2 -> l0 : TRUE, cost: 1 17: l3 -> l1 : -1+i2^0 >= 0, cost: 1 18: l3 -> l1 : 1+i2^0 <= 0, cost: 1 19: l3 -> l2 : i34^0'=__const_999^0, i2^0 == 0, cost: 1 21: l4 -> l5 : TRUE, cost: 1 24: l5 -> l8 : i8^0'=__const_999^0, 1+i6^0 <= 0, cost: 1 25: l5 -> l4 : i6^0'=-1+i6^0, i6^0 >= 0, cost: 1 22: l6 -> l8 : i8^0'=-1+i8^0, i8^0 >= 0, cost: 1 23: l8 -> l6 : TRUE, cost: 1 27: l9 -> l3 : i2^0'=1, TRUE, cost: 1 28: l10 -> l9 : TRUE, cost: 1 Eliminating location l9 by chaining: Applied chaining First rule: l10 -> l9 : TRUE, cost: 1 Second rule: l9 -> l3 : i2^0'=1, TRUE, cost: 1 New rule: l10 -> l3 : i2^0'=1, TRUE, cost: 2 Applied deletion Removed the following rules: 27 28 Eliminating location l6 by chaining: Applied chaining First rule: l8 -> l6 : TRUE, cost: 1 Second rule: l6 -> l8 : i8^0'=-1+i8^0, i8^0 >= 0, cost: 1 New rule: l8 -> l8 : i8^0'=-1+i8^0, i8^0 >= 0, cost: 2 Applied deletion Removed the following rules: 22 23 Eliminated locations on linear paths Start location: l10 15: l0 -> l1 : 1+i34^0 <= 0, cost: 1 16: l0 -> l2 : i34^0'=-1+i34^0, i34^0 >= 0, cost: 1 26: l1 -> l4 : i6^0'=__const_999^0, TRUE, cost: 1 20: l2 -> l0 : TRUE, cost: 1 17: l3 -> l1 : -1+i2^0 >= 0, cost: 1 18: l3 -> l1 : 1+i2^0 <= 0, cost: 1 19: l3 -> l2 : i34^0'=__const_999^0, i2^0 == 0, cost: 1 21: l4 -> l5 : TRUE, cost: 1 24: l5 -> l8 : i8^0'=__const_999^0, 1+i6^0 <= 0, cost: 1 25: l5 -> l4 : i6^0'=-1+i6^0, i6^0 >= 0, cost: 1 30: l8 -> l8 : i8^0'=-1+i8^0, i8^0 >= 0, cost: 2 29: l10 -> l3 : i2^0'=1, TRUE, cost: 2 Applied acceleration Original rule: l8 -> l8 : i8^0'=-1+i8^0, i8^0 >= 0, cost: 2 New rule: l8 -> l8 : i8^0'=i8^0-n0, (1+i8^0-n0 >= 0 /\ n0 >= 0), cost: 2*n0 Applied instantiation Original rule: l8 -> l8 : i8^0'=i8^0-n0, (1+i8^0-n0 >= 0 /\ n0 >= 0), cost: 2*n0 New rule: l8 -> l8 : i8^0'=-1, (0 >= 0 /\ 1+i8^0 >= 0), cost: 2+2*i8^0 Applied simplification Original rule: l8 -> l8 : i8^0'=-1, (0 >= 0 /\ 1+i8^0 >= 0), cost: 2+2*i8^0 New rule: l8 -> l8 : i8^0'=-1, 1+i8^0 >= 0, cost: 2+2*i8^0 Applied deletion Removed the following rules: 30 Accelerated simple loops Start location: l10 15: l0 -> l1 : 1+i34^0 <= 0, cost: 1 16: l0 -> l2 : i34^0'=-1+i34^0, i34^0 >= 0, cost: 1 26: l1 -> l4 : i6^0'=__const_999^0, TRUE, cost: 1 20: l2 -> l0 : TRUE, cost: 1 17: l3 -> l1 : -1+i2^0 >= 0, cost: 1 18: l3 -> l1 : 1+i2^0 <= 0, cost: 1 19: l3 -> l2 : i34^0'=__const_999^0, i2^0 == 0, cost: 1 21: l4 -> l5 : TRUE, cost: 1 24: l5 -> l8 : i8^0'=__const_999^0, 1+i6^0 <= 0, cost: 1 25: l5 -> l4 : i6^0'=-1+i6^0, i6^0 >= 0, cost: 1 32: l8 -> l8 : i8^0'=-1, 1+i8^0 >= 0, cost: 2+2*i8^0 29: l10 -> l3 : i2^0'=1, TRUE, cost: 2 Applied chaining First rule: l5 -> l8 : i8^0'=__const_999^0, 1+i6^0 <= 0, cost: 1 Second rule: l8 -> l8 : i8^0'=-1, 1+i8^0 >= 0, cost: 2+2*i8^0 New rule: l5 -> l8 : i8^0'=-1, (1+i6^0 <= 0 /\ 1+__const_999^0 >= 0), cost: 3+2*__const_999^0 Applied deletion Removed the following rules: 32 Chained accelerated rules with incoming rules Start location: l10 15: l0 -> l1 : 1+i34^0 <= 0, cost: 1 16: l0 -> l2 : i34^0'=-1+i34^0, i34^0 >= 0, cost: 1 26: l1 -> l4 : i6^0'=__const_999^0, TRUE, cost: 1 20: l2 -> l0 : TRUE, cost: 1 17: l3 -> l1 : -1+i2^0 >= 0, cost: 1 18: l3 -> l1 : 1+i2^0 <= 0, cost: 1 19: l3 -> l2 : i34^0'=__const_999^0, i2^0 == 0, cost: 1 21: l4 -> l5 : TRUE, cost: 1 24: l5 -> l8 : i8^0'=__const_999^0, 1+i6^0 <= 0, cost: 1 25: l5 -> l4 : i6^0'=-1+i6^0, i6^0 >= 0, cost: 1 33: l5 -> l8 : i8^0'=-1, (1+i6^0 <= 0 /\ 1+__const_999^0 >= 0), cost: 3+2*__const_999^0 29: l10 -> l3 : i2^0'=1, TRUE, cost: 2 Removed unreachable locations and irrelevant leafs Start location: l10 15: l0 -> l1 : 1+i34^0 <= 0, cost: 1 16: l0 -> l2 : i34^0'=-1+i34^0, i34^0 >= 0, cost: 1 26: l1 -> l4 : i6^0'=__const_999^0, TRUE, cost: 1 20: l2 -> l0 : TRUE, cost: 1 17: l3 -> l1 : -1+i2^0 >= 0, cost: 1 18: l3 -> l1 : 1+i2^0 <= 0, cost: 1 19: l3 -> l2 : i34^0'=__const_999^0, i2^0 == 0, cost: 1 21: l4 -> l5 : TRUE, cost: 1 25: l5 -> l4 : i6^0'=-1+i6^0, i6^0 >= 0, cost: 1 29: l10 -> l3 : i2^0'=1, TRUE, cost: 2 Eliminating location l5 by chaining: Applied chaining First rule: l4 -> l5 : TRUE, cost: 1 Second rule: l5 -> l4 : i6^0'=-1+i6^0, i6^0 >= 0, cost: 1 New rule: l4 -> l4 : i6^0'=-1+i6^0, i6^0 >= 0, cost: 2 Applied deletion Removed the following rules: 21 25 Eliminated locations on linear paths Start location: l10 15: l0 -> l1 : 1+i34^0 <= 0, cost: 1 16: l0 -> l2 : i34^0'=-1+i34^0, i34^0 >= 0, cost: 1 26: l1 -> l4 : i6^0'=__const_999^0, TRUE, cost: 1 20: l2 -> l0 : TRUE, cost: 1 17: l3 -> l1 : -1+i2^0 >= 0, cost: 1 18: l3 -> l1 : 1+i2^0 <= 0, cost: 1 19: l3 -> l2 : i34^0'=__const_999^0, i2^0 == 0, cost: 1 34: l4 -> l4 : i6^0'=-1+i6^0, i6^0 >= 0, cost: 2 29: l10 -> l3 : i2^0'=1, TRUE, cost: 2 Applied acceleration Original rule: l4 -> l4 : i6^0'=-1+i6^0, i6^0 >= 0, cost: 2 New rule: l4 -> l4 : i6^0'=-n3+i6^0, (n3 >= 0 /\ 1-n3+i6^0 >= 0), cost: 2*n3 Applied instantiation Original rule: l4 -> l4 : i6^0'=-n3+i6^0, (n3 >= 0 /\ 1-n3+i6^0 >= 0), cost: 2*n3 New rule: l4 -> l4 : i6^0'=-1, (0 >= 0 /\ 1+i6^0 >= 0), cost: 2+2*i6^0 Applied simplification Original rule: l4 -> l4 : i6^0'=-1, (0 >= 0 /\ 1+i6^0 >= 0), cost: 2+2*i6^0 New rule: l4 -> l4 : i6^0'=-1, 1+i6^0 >= 0, cost: 2+2*i6^0 Applied deletion Removed the following rules: 34 Accelerated simple loops Start location: l10 15: l0 -> l1 : 1+i34^0 <= 0, cost: 1 16: l0 -> l2 : i34^0'=-1+i34^0, i34^0 >= 0, cost: 1 26: l1 -> l4 : i6^0'=__const_999^0, TRUE, cost: 1 20: l2 -> l0 : TRUE, cost: 1 17: l3 -> l1 : -1+i2^0 >= 0, cost: 1 18: l3 -> l1 : 1+i2^0 <= 0, cost: 1 19: l3 -> l2 : i34^0'=__const_999^0, i2^0 == 0, cost: 1 36: l4 -> l4 : i6^0'=-1, 1+i6^0 >= 0, cost: 2+2*i6^0 29: l10 -> l3 : i2^0'=1, TRUE, cost: 2 Applied chaining First rule: l1 -> l4 : i6^0'=__const_999^0, TRUE, cost: 1 Second rule: l4 -> l4 : i6^0'=-1, 1+i6^0 >= 0, cost: 2+2*i6^0 New rule: l1 -> l4 : i6^0'=-1, 1+__const_999^0 >= 0, cost: 3+2*__const_999^0 Applied deletion Removed the following rules: 36 Chained accelerated rules with incoming rules Start location: l10 15: l0 -> l1 : 1+i34^0 <= 0, cost: 1 16: l0 -> l2 : i34^0'=-1+i34^0, i34^0 >= 0, cost: 1 26: l1 -> l4 : i6^0'=__const_999^0, TRUE, cost: 1 37: l1 -> l4 : i6^0'=-1, 1+__const_999^0 >= 0, cost: 3+2*__const_999^0 20: l2 -> l0 : TRUE, cost: 1 17: l3 -> l1 : -1+i2^0 >= 0, cost: 1 18: l3 -> l1 : 1+i2^0 <= 0, cost: 1 19: l3 -> l2 : i34^0'=__const_999^0, i2^0 == 0, cost: 1 29: l10 -> l3 : i2^0'=1, TRUE, cost: 2 Removed unreachable locations and irrelevant leafs Start location: l10 16: l0 -> l2 : i34^0'=-1+i34^0, i34^0 >= 0, cost: 1 20: l2 -> l0 : TRUE, cost: 1 19: l3 -> l2 : i34^0'=__const_999^0, i2^0 == 0, cost: 1 29: l10 -> l3 : i2^0'=1, TRUE, cost: 2 Eliminating location l3 by chaining: Applied deletion Removed the following rules: 19 29 Eliminated locations on linear paths Start location: l10 16: l0 -> l2 : i34^0'=-1+i34^0, i34^0 >= 0, cost: 1 20: l2 -> l0 : TRUE, cost: 1 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