WORST_CASE(Omega(0),?) Initial ITS Start location: l9 0: l0 -> l1 : a4^0'=a4^post0, ret_complex6^0'=ret_complex6^post0, answer^0'=answer^post0, b^0'=b^post0, a^0'=a^post0, b5^0'=b5^post0, (-1+ret_complex6^post0 == 0 /\ -b5^post0+b5^0 == 0 /\ a4^0-a4^post0 == 0 /\ answer^post0-ret_complex6^post0 == 0 /\ a^0-a^post0 == 0 /\ -b^post0+b^0 == 0 /\ 30-a4^0 <= 0), cost: 1 1: l0 -> l2 : a4^0'=a4^post1, ret_complex6^0'=ret_complex6^post1, answer^0'=answer^post1, b^0'=b^post1, a^0'=a^post1, b5^0'=b5^post1, (a^0-a^post1 == 0 /\ a4^0-a4^post1 == 0 /\ -b5^post1+b5^0 == 0 /\ -29+a4^0 <= 0 /\ b^0-b^post1 == 0 /\ ret_complex6^0-ret_complex6^post1 == 0 /\ -answer^post1+answer^0 == 0), cost: 1 3: l2 -> l4 : a4^0'=a4^post3, ret_complex6^0'=ret_complex6^post3, answer^0'=answer^post3, b^0'=b^post3, a^0'=a^post3, b5^0'=b5^post3, (-b5^post3+b5^0 == 0 /\ ret_complex6^0-ret_complex6^post3 == 0 /\ -b^post3+b^0 == 0 /\ answer^0-answer^post3 == 0 /\ -a^post3+a^0 == 0 /\ a4^0-a4^post3 == 0), cost: 1 2: l3 -> l0 : a4^0'=a4^post2, ret_complex6^0'=ret_complex6^post2, answer^0'=answer^post2, b^0'=b^post2, a^0'=a^post2, b5^0'=b5^post2, (-b^post2+b^0 == 0 /\ a4^0-a4^post2 == 0 /\ b5^0-b5^post2 == 0 /\ ret_complex6^0-ret_complex6^post2 == 0 /\ a^0-a^post2 == 0 /\ answer^0-answer^post2 == 0), cost: 1 10: l4 -> l3 : a4^0'=a4^post10, ret_complex6^0'=ret_complex6^post10, answer^0'=answer^post10, b^0'=b^post10, a^0'=a^post10, b5^0'=b5^post10, (answer^0-answer^post10 == 0 /\ -2-a4^0+a4^post10 == 0 /\ a4^0-b5^0 <= 0 /\ -a^post10+a^0 == 0 /\ b^0-b^post10 == 0 /\ ret_complex6^0-ret_complex6^post10 == 0 /\ 10+b5^post10-b5^0 == 0), cost: 1 11: l4 -> l7 : a4^0'=a4^post11, ret_complex6^0'=ret_complex6^post11, answer^0'=answer^post11, b^0'=b^post11, a^0'=a^post11, b5^0'=b5^post11, (ret_complex6^0-ret_complex6^post11 == 0 /\ a4^0-a4^post11 == 0 /\ 1-a4^0+b5^0 <= 0 /\ answer^0-answer^post11 == 0 /\ -b5^post11+b5^0 == 0 /\ b^0-b^post11 == 0 /\ -a^post11+a^0 == 0), cost: 1 4: l5 -> l2 : a4^0'=a4^post4, ret_complex6^0'=ret_complex6^post4, answer^0'=answer^post4, b^0'=b^post4, a^0'=a^post4, b5^0'=b5^post4, (ret_complex6^0-ret_complex6^post4 == 0 /\ answer^0-answer^post4 == 0 /\ -b^post4+b^0 == 0 /\ -1-a4^0+a4^post4 == 0 /\ -b5^post4+b5^0 == 0 /\ 13-b5^0 <= 0 /\ -a^post4+a^0 == 0), cost: 1 5: l5 -> l2 : a4^0'=a4^post5, ret_complex6^0'=ret_complex6^post5, answer^0'=answer^post5, b^0'=b^post5, a^0'=a^post5, b5^0'=b5^post5, (-b5^post5+b5^0 == 0 /\ -a^post5+a^0 == 0 /\ -12+b5^0 <= 0 /\ -10-a4^0+a4^post5 == 0 /\ ret_complex6^0-ret_complex6^post5 == 0 /\ b^0-b^post5 == 0 /\ answer^0-answer^post5 == 0), cost: 1 6: l6 -> l2 : a4^0'=a4^post6, ret_complex6^0'=ret_complex6^post6, answer^0'=answer^post6, b^0'=b^post6, a^0'=a^post6, b5^0'=b5^post6, (ret_complex6^0-ret_complex6^post6 == 0 /\ -9+b5^0 <= 0 /\ a^0-a^post6 == 0 /\ b^0-b^post6 == 0 /\ -answer^post6+answer^0 == 0 /\ -1-a4^0+a4^post6 == 0 /\ -b5^post6+b5^0 == 0), cost: 1 7: l6 -> l5 : a4^0'=a4^post7, ret_complex6^0'=ret_complex6^post7, answer^0'=answer^post7, b^0'=b^post7, a^0'=a^post7, b5^0'=b5^post7, (-b5^post7+b5^0 == 0 /\ 10-b5^0 <= 0 /\ a4^0-a4^post7 == 0 /\ -b^post7+b^0 == 0 /\ ret_complex6^0-ret_complex6^post7 == 0 /\ a^0-a^post7 == 0 /\ answer^0-answer^post7 == 0), cost: 1 8: l7 -> l6 : a4^0'=a4^post8, ret_complex6^0'=ret_complex6^post8, answer^0'=answer^post8, b^0'=b^post8, a^0'=a^post8, b5^0'=b5^post8, (-5+b5^0 <= 0 /\ -2-b5^0+b5^post8 == 0 /\ -b^post8+b^0 == 0 /\ ret_complex6^0-ret_complex6^post8 == 0 /\ answer^0-answer^post8 == 0 /\ -a^post8+a^0 == 0 /\ a4^0-a4^post8 == 0), cost: 1 9: l7 -> l6 : a4^0'=a4^post9, ret_complex6^0'=ret_complex6^post9, answer^0'=answer^post9, b^0'=b^post9, a^0'=a^post9, b5^0'=b5^post9, (0 == 0 /\ ret_complex6^0-ret_complex6^post9 == 0 /\ -b^post9+b^0 == 0 /\ -a^post9+a^0 == 0 /\ answer^0-answer^post9 == 0 /\ 6-b5^0 <= 0 /\ a4^0-a4^post9 == 0), cost: 1 12: l8 -> l3 : a4^0'=a4^post12, ret_complex6^0'=ret_complex6^post12, answer^0'=answer^post12, b^0'=b^post12, a^0'=a^post12, b5^0'=b5^post12, (b5^post12-b^post12 == 0 /\ -1+a^post12 == 0 /\ answer^post12 == 0 /\ -1+b^post12 == 0 /\ -a^post12+a4^post12 == 0 /\ ret_complex6^0-ret_complex6^post12 == 0), cost: 1 13: l9 -> l8 : a4^0'=a4^post13, ret_complex6^0'=ret_complex6^post13, answer^0'=answer^post13, b^0'=b^post13, a^0'=a^post13, b5^0'=b5^post13, (-b5^post13+b5^0 == 0 /\ b^0-b^post13 == 0 /\ ret_complex6^0-ret_complex6^post13 == 0 /\ answer^0-answer^post13 == 0 /\ -a^post13+a^0 == 0 /\ a4^0-a4^post13 == 0), cost: 1 Removed unreachable rules and leafs Start location: l9 1: l0 -> l2 : a4^0'=a4^post1, ret_complex6^0'=ret_complex6^post1, answer^0'=answer^post1, b^0'=b^post1, a^0'=a^post1, b5^0'=b5^post1, (a^0-a^post1 == 0 /\ a4^0-a4^post1 == 0 /\ -b5^post1+b5^0 == 0 /\ -29+a4^0 <= 0 /\ b^0-b^post1 == 0 /\ ret_complex6^0-ret_complex6^post1 == 0 /\ -answer^post1+answer^0 == 0), cost: 1 3: l2 -> l4 : a4^0'=a4^post3, ret_complex6^0'=ret_complex6^post3, answer^0'=answer^post3, b^0'=b^post3, a^0'=a^post3, b5^0'=b5^post3, (-b5^post3+b5^0 == 0 /\ ret_complex6^0-ret_complex6^post3 == 0 /\ -b^post3+b^0 == 0 /\ answer^0-answer^post3 == 0 /\ -a^post3+a^0 == 0 /\ a4^0-a4^post3 == 0), cost: 1 2: l3 -> l0 : a4^0'=a4^post2, ret_complex6^0'=ret_complex6^post2, answer^0'=answer^post2, b^0'=b^post2, a^0'=a^post2, b5^0'=b5^post2, (-b^post2+b^0 == 0 /\ a4^0-a4^post2 == 0 /\ b5^0-b5^post2 == 0 /\ ret_complex6^0-ret_complex6^post2 == 0 /\ a^0-a^post2 == 0 /\ answer^0-answer^post2 == 0), cost: 1 10: l4 -> l3 : a4^0'=a4^post10, ret_complex6^0'=ret_complex6^post10, answer^0'=answer^post10, b^0'=b^post10, a^0'=a^post10, b5^0'=b5^post10, (answer^0-answer^post10 == 0 /\ -2-a4^0+a4^post10 == 0 /\ a4^0-b5^0 <= 0 /\ -a^post10+a^0 == 0 /\ b^0-b^post10 == 0 /\ ret_complex6^0-ret_complex6^post10 == 0 /\ 10+b5^post10-b5^0 == 0), cost: 1 11: l4 -> l7 : a4^0'=a4^post11, ret_complex6^0'=ret_complex6^post11, answer^0'=answer^post11, b^0'=b^post11, a^0'=a^post11, b5^0'=b5^post11, (ret_complex6^0-ret_complex6^post11 == 0 /\ a4^0-a4^post11 == 0 /\ 1-a4^0+b5^0 <= 0 /\ answer^0-answer^post11 == 0 /\ -b5^post11+b5^0 == 0 /\ b^0-b^post11 == 0 /\ -a^post11+a^0 == 0), cost: 1 4: l5 -> l2 : a4^0'=a4^post4, ret_complex6^0'=ret_complex6^post4, answer^0'=answer^post4, b^0'=b^post4, a^0'=a^post4, b5^0'=b5^post4, (ret_complex6^0-ret_complex6^post4 == 0 /\ answer^0-answer^post4 == 0 /\ -b^post4+b^0 == 0 /\ -1-a4^0+a4^post4 == 0 /\ -b5^post4+b5^0 == 0 /\ 13-b5^0 <= 0 /\ -a^post4+a^0 == 0), cost: 1 5: l5 -> l2 : a4^0'=a4^post5, ret_complex6^0'=ret_complex6^post5, answer^0'=answer^post5, b^0'=b^post5, a^0'=a^post5, b5^0'=b5^post5, (-b5^post5+b5^0 == 0 /\ -a^post5+a^0 == 0 /\ -12+b5^0 <= 0 /\ -10-a4^0+a4^post5 == 0 /\ ret_complex6^0-ret_complex6^post5 == 0 /\ b^0-b^post5 == 0 /\ answer^0-answer^post5 == 0), cost: 1 6: l6 -> l2 : a4^0'=a4^post6, ret_complex6^0'=ret_complex6^post6, answer^0'=answer^post6, b^0'=b^post6, a^0'=a^post6, b5^0'=b5^post6, (ret_complex6^0-ret_complex6^post6 == 0 /\ -9+b5^0 <= 0 /\ a^0-a^post6 == 0 /\ b^0-b^post6 == 0 /\ -answer^post6+answer^0 == 0 /\ -1-a4^0+a4^post6 == 0 /\ -b5^post6+b5^0 == 0), cost: 1 7: l6 -> l5 : a4^0'=a4^post7, ret_complex6^0'=ret_complex6^post7, answer^0'=answer^post7, b^0'=b^post7, a^0'=a^post7, b5^0'=b5^post7, (-b5^post7+b5^0 == 0 /\ 10-b5^0 <= 0 /\ a4^0-a4^post7 == 0 /\ -b^post7+b^0 == 0 /\ ret_complex6^0-ret_complex6^post7 == 0 /\ a^0-a^post7 == 0 /\ answer^0-answer^post7 == 0), cost: 1 8: l7 -> l6 : a4^0'=a4^post8, ret_complex6^0'=ret_complex6^post8, answer^0'=answer^post8, b^0'=b^post8, a^0'=a^post8, b5^0'=b5^post8, (-5+b5^0 <= 0 /\ -2-b5^0+b5^post8 == 0 /\ -b^post8+b^0 == 0 /\ ret_complex6^0-ret_complex6^post8 == 0 /\ answer^0-answer^post8 == 0 /\ -a^post8+a^0 == 0 /\ a4^0-a4^post8 == 0), cost: 1 9: l7 -> l6 : a4^0'=a4^post9, ret_complex6^0'=ret_complex6^post9, answer^0'=answer^post9, b^0'=b^post9, a^0'=a^post9, b5^0'=b5^post9, (0 == 0 /\ ret_complex6^0-ret_complex6^post9 == 0 /\ -b^post9+b^0 == 0 /\ -a^post9+a^0 == 0 /\ answer^0-answer^post9 == 0 /\ 6-b5^0 <= 0 /\ a4^0-a4^post9 == 0), cost: 1 12: l8 -> l3 : a4^0'=a4^post12, ret_complex6^0'=ret_complex6^post12, answer^0'=answer^post12, b^0'=b^post12, a^0'=a^post12, b5^0'=b5^post12, (b5^post12-b^post12 == 0 /\ -1+a^post12 == 0 /\ answer^post12 == 0 /\ -1+b^post12 == 0 /\ -a^post12+a4^post12 == 0 /\ ret_complex6^0-ret_complex6^post12 == 0), cost: 1 13: l9 -> l8 : a4^0'=a4^post13, ret_complex6^0'=ret_complex6^post13, answer^0'=answer^post13, b^0'=b^post13, a^0'=a^post13, b5^0'=b5^post13, (-b5^post13+b5^0 == 0 /\ b^0-b^post13 == 0 /\ ret_complex6^0-ret_complex6^post13 == 0 /\ answer^0-answer^post13 == 0 /\ -a^post13+a^0 == 0 /\ a4^0-a4^post13 == 0), cost: 1 Applied preprocessing Original rule: l0 -> l2 : a4^0'=a4^post1, ret_complex6^0'=ret_complex6^post1, answer^0'=answer^post1, b^0'=b^post1, a^0'=a^post1, b5^0'=b5^post1, (a^0-a^post1 == 0 /\ a4^0-a4^post1 == 0 /\ -b5^post1+b5^0 == 0 /\ -29+a4^0 <= 0 /\ b^0-b^post1 == 0 /\ ret_complex6^0-ret_complex6^post1 == 0 /\ -answer^post1+answer^0 == 0), cost: 1 New rule: l0 -> l2 : -29+a4^0 <= 0, cost: 1 Applied preprocessing Original rule: l3 -> l0 : a4^0'=a4^post2, ret_complex6^0'=ret_complex6^post2, answer^0'=answer^post2, b^0'=b^post2, a^0'=a^post2, b5^0'=b5^post2, (-b^post2+b^0 == 0 /\ a4^0-a4^post2 == 0 /\ b5^0-b5^post2 == 0 /\ ret_complex6^0-ret_complex6^post2 == 0 /\ a^0-a^post2 == 0 /\ answer^0-answer^post2 == 0), cost: 1 New rule: l3 -> l0 : TRUE, cost: 1 Applied preprocessing Original rule: l2 -> l4 : a4^0'=a4^post3, ret_complex6^0'=ret_complex6^post3, answer^0'=answer^post3, b^0'=b^post3, a^0'=a^post3, b5^0'=b5^post3, (-b5^post3+b5^0 == 0 /\ ret_complex6^0-ret_complex6^post3 == 0 /\ -b^post3+b^0 == 0 /\ answer^0-answer^post3 == 0 /\ -a^post3+a^0 == 0 /\ a4^0-a4^post3 == 0), cost: 1 New rule: l2 -> l4 : TRUE, cost: 1 Applied preprocessing Original rule: l5 -> l2 : a4^0'=a4^post4, ret_complex6^0'=ret_complex6^post4, answer^0'=answer^post4, b^0'=b^post4, a^0'=a^post4, b5^0'=b5^post4, (ret_complex6^0-ret_complex6^post4 == 0 /\ answer^0-answer^post4 == 0 /\ -b^post4+b^0 == 0 /\ -1-a4^0+a4^post4 == 0 /\ -b5^post4+b5^0 == 0 /\ 13-b5^0 <= 0 /\ -a^post4+a^0 == 0), cost: 1 New rule: l5 -> l2 : a4^0'=1+a4^0, -13+b5^0 >= 0, cost: 1 Applied preprocessing Original rule: l5 -> l2 : a4^0'=a4^post5, ret_complex6^0'=ret_complex6^post5, answer^0'=answer^post5, b^0'=b^post5, a^0'=a^post5, b5^0'=b5^post5, (-b5^post5+b5^0 == 0 /\ -a^post5+a^0 == 0 /\ -12+b5^0 <= 0 /\ -10-a4^0+a4^post5 == 0 /\ ret_complex6^0-ret_complex6^post5 == 0 /\ b^0-b^post5 == 0 /\ answer^0-answer^post5 == 0), cost: 1 New rule: l5 -> l2 : a4^0'=10+a4^0, -12+b5^0 <= 0, cost: 1 Applied preprocessing Original rule: l6 -> l2 : a4^0'=a4^post6, ret_complex6^0'=ret_complex6^post6, answer^0'=answer^post6, b^0'=b^post6, a^0'=a^post6, b5^0'=b5^post6, (ret_complex6^0-ret_complex6^post6 == 0 /\ -9+b5^0 <= 0 /\ a^0-a^post6 == 0 /\ b^0-b^post6 == 0 /\ -answer^post6+answer^0 == 0 /\ -1-a4^0+a4^post6 == 0 /\ -b5^post6+b5^0 == 0), cost: 1 New rule: l6 -> l2 : a4^0'=1+a4^0, -9+b5^0 <= 0, cost: 1 Applied preprocessing Original rule: l6 -> l5 : a4^0'=a4^post7, ret_complex6^0'=ret_complex6^post7, answer^0'=answer^post7, b^0'=b^post7, a^0'=a^post7, b5^0'=b5^post7, (-b5^post7+b5^0 == 0 /\ 10-b5^0 <= 0 /\ a4^0-a4^post7 == 0 /\ -b^post7+b^0 == 0 /\ ret_complex6^0-ret_complex6^post7 == 0 /\ a^0-a^post7 == 0 /\ answer^0-answer^post7 == 0), cost: 1 New rule: l6 -> l5 : -10+b5^0 >= 0, cost: 1 Applied preprocessing Original rule: l7 -> l6 : a4^0'=a4^post8, ret_complex6^0'=ret_complex6^post8, answer^0'=answer^post8, b^0'=b^post8, a^0'=a^post8, b5^0'=b5^post8, (-5+b5^0 <= 0 /\ -2-b5^0+b5^post8 == 0 /\ -b^post8+b^0 == 0 /\ ret_complex6^0-ret_complex6^post8 == 0 /\ answer^0-answer^post8 == 0 /\ -a^post8+a^0 == 0 /\ a4^0-a4^post8 == 0), cost: 1 New rule: l7 -> l6 : b5^0'=2+b5^0, -5+b5^0 <= 0, cost: 1 Applied preprocessing Original rule: l7 -> l6 : a4^0'=a4^post9, ret_complex6^0'=ret_complex6^post9, answer^0'=answer^post9, b^0'=b^post9, a^0'=a^post9, b5^0'=b5^post9, (0 == 0 /\ ret_complex6^0-ret_complex6^post9 == 0 /\ -b^post9+b^0 == 0 /\ -a^post9+a^0 == 0 /\ answer^0-answer^post9 == 0 /\ 6-b5^0 <= 0 /\ a4^0-a4^post9 == 0), cost: 1 New rule: l7 -> l6 : b5^0'=b5^post9, -6+b5^0 >= 0, cost: 1 Applied preprocessing Original rule: l4 -> l3 : a4^0'=a4^post10, ret_complex6^0'=ret_complex6^post10, answer^0'=answer^post10, b^0'=b^post10, a^0'=a^post10, b5^0'=b5^post10, (answer^0-answer^post10 == 0 /\ -2-a4^0+a4^post10 == 0 /\ a4^0-b5^0 <= 0 /\ -a^post10+a^0 == 0 /\ b^0-b^post10 == 0 /\ ret_complex6^0-ret_complex6^post10 == 0 /\ 10+b5^post10-b5^0 == 0), cost: 1 New rule: l4 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 1 Applied preprocessing Original rule: l4 -> l7 : a4^0'=a4^post11, ret_complex6^0'=ret_complex6^post11, answer^0'=answer^post11, b^0'=b^post11, a^0'=a^post11, b5^0'=b5^post11, (ret_complex6^0-ret_complex6^post11 == 0 /\ a4^0-a4^post11 == 0 /\ 1-a4^0+b5^0 <= 0 /\ answer^0-answer^post11 == 0 /\ -b5^post11+b5^0 == 0 /\ b^0-b^post11 == 0 /\ -a^post11+a^0 == 0), cost: 1 New rule: l4 -> l7 : 1-a4^0+b5^0 <= 0, cost: 1 Applied preprocessing Original rule: l8 -> l3 : a4^0'=a4^post12, ret_complex6^0'=ret_complex6^post12, answer^0'=answer^post12, b^0'=b^post12, a^0'=a^post12, b5^0'=b5^post12, (b5^post12-b^post12 == 0 /\ -1+a^post12 == 0 /\ answer^post12 == 0 /\ -1+b^post12 == 0 /\ -a^post12+a4^post12 == 0 /\ ret_complex6^0-ret_complex6^post12 == 0), cost: 1 New rule: l8 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 1 Applied preprocessing Original rule: l9 -> l8 : a4^0'=a4^post13, ret_complex6^0'=ret_complex6^post13, answer^0'=answer^post13, b^0'=b^post13, a^0'=a^post13, b5^0'=b5^post13, (-b5^post13+b5^0 == 0 /\ b^0-b^post13 == 0 /\ ret_complex6^0-ret_complex6^post13 == 0 /\ answer^0-answer^post13 == 0 /\ -a^post13+a^0 == 0 /\ a4^0-a4^post13 == 0), cost: 1 New rule: l9 -> l8 : TRUE, cost: 1 Simplified rules Start location: l9 14: l0 -> l2 : -29+a4^0 <= 0, cost: 1 16: l2 -> l4 : TRUE, cost: 1 15: l3 -> l0 : TRUE, cost: 1 23: l4 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 1 24: l4 -> l7 : 1-a4^0+b5^0 <= 0, cost: 1 17: l5 -> l2 : a4^0'=1+a4^0, -13+b5^0 >= 0, cost: 1 18: l5 -> l2 : a4^0'=10+a4^0, -12+b5^0 <= 0, cost: 1 19: l6 -> l2 : a4^0'=1+a4^0, -9+b5^0 <= 0, cost: 1 20: l6 -> l5 : -10+b5^0 >= 0, cost: 1 21: l7 -> l6 : b5^0'=2+b5^0, -5+b5^0 <= 0, cost: 1 22: l7 -> l6 : b5^0'=b5^post9, -6+b5^0 >= 0, cost: 1 25: l8 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 1 26: l9 -> l8 : TRUE, cost: 1 Eliminating location l8 by chaining: Applied chaining First rule: l9 -> l8 : TRUE, cost: 1 Second rule: l8 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 1 New rule: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Applied deletion Removed the following rules: 25 26 Eliminating location l0 by chaining: Applied chaining First rule: l3 -> l0 : TRUE, cost: 1 Second rule: l0 -> l2 : -29+a4^0 <= 0, cost: 1 New rule: l3 -> l2 : -29+a4^0 <= 0, cost: 2 Applied deletion Removed the following rules: 14 15 Eliminated locations on linear paths Start location: l9 16: l2 -> l4 : TRUE, cost: 1 28: l3 -> l2 : -29+a4^0 <= 0, cost: 2 23: l4 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 1 24: l4 -> l7 : 1-a4^0+b5^0 <= 0, cost: 1 17: l5 -> l2 : a4^0'=1+a4^0, -13+b5^0 >= 0, cost: 1 18: l5 -> l2 : a4^0'=10+a4^0, -12+b5^0 <= 0, cost: 1 19: l6 -> l2 : a4^0'=1+a4^0, -9+b5^0 <= 0, cost: 1 20: l6 -> l5 : -10+b5^0 >= 0, cost: 1 21: l7 -> l6 : b5^0'=2+b5^0, -5+b5^0 <= 0, cost: 1 22: l7 -> l6 : b5^0'=b5^post9, -6+b5^0 >= 0, cost: 1 27: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Eliminating location l4 by chaining: Applied chaining First rule: l2 -> l4 : TRUE, cost: 1 Second rule: l4 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 1 New rule: l2 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 2 Applied chaining First rule: l2 -> l4 : TRUE, cost: 1 Second rule: l4 -> l7 : 1-a4^0+b5^0 <= 0, cost: 1 New rule: l2 -> l7 : 1-a4^0+b5^0 <= 0, cost: 2 Applied deletion Removed the following rules: 16 23 24 Eliminating location l6 by chaining: Applied chaining First rule: l7 -> l6 : b5^0'=2+b5^0, -5+b5^0 <= 0, cost: 1 Second rule: l6 -> l2 : a4^0'=1+a4^0, -9+b5^0 <= 0, cost: 1 New rule: l7 -> l2 : a4^0'=1+a4^0, b5^0'=2+b5^0, (-5+b5^0 <= 0 /\ -7+b5^0 <= 0), cost: 2 Applied simplification Original rule: l7 -> l2 : a4^0'=1+a4^0, b5^0'=2+b5^0, (-5+b5^0 <= 0 /\ -7+b5^0 <= 0), cost: 2 New rule: l7 -> l2 : a4^0'=1+a4^0, b5^0'=2+b5^0, -5+b5^0 <= 0, cost: 2 Applied chaining First rule: l7 -> l6 : b5^0'=b5^post9, -6+b5^0 >= 0, cost: 1 Second rule: l6 -> l2 : a4^0'=1+a4^0, -9+b5^0 <= 0, cost: 1 New rule: l7 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (-6+b5^0 >= 0 /\ -9+b5^post9 <= 0), cost: 2 Applied chaining First rule: l7 -> l6 : b5^0'=b5^post9, -6+b5^0 >= 0, cost: 1 Second rule: l6 -> l5 : -10+b5^0 >= 0, cost: 1 New rule: l7 -> l5 : b5^0'=b5^post9, (-10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 2 Applied deletion Removed the following rules: 19 20 21 22 Eliminated locations on tree-shaped paths Start location: l9 29: l2 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 2 30: l2 -> l7 : 1-a4^0+b5^0 <= 0, cost: 2 28: l3 -> l2 : -29+a4^0 <= 0, cost: 2 17: l5 -> l2 : a4^0'=1+a4^0, -13+b5^0 >= 0, cost: 1 18: l5 -> l2 : a4^0'=10+a4^0, -12+b5^0 <= 0, cost: 1 31: l7 -> l2 : a4^0'=1+a4^0, b5^0'=2+b5^0, -5+b5^0 <= 0, cost: 2 32: l7 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (-6+b5^0 >= 0 /\ -9+b5^post9 <= 0), cost: 2 33: l7 -> l5 : b5^0'=b5^post9, (-10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 2 27: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Eliminating location l7 by chaining: Applied chaining First rule: l2 -> l7 : 1-a4^0+b5^0 <= 0, cost: 2 Second rule: l7 -> l2 : a4^0'=1+a4^0, b5^0'=2+b5^0, -5+b5^0 <= 0, cost: 2 New rule: l2 -> l2 : a4^0'=1+a4^0, b5^0'=2+b5^0, (1-a4^0+b5^0 <= 0 /\ -5+b5^0 <= 0), cost: 4 Applied chaining First rule: l2 -> l7 : 1-a4^0+b5^0 <= 0, cost: 2 Second rule: l7 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (-6+b5^0 >= 0 /\ -9+b5^post9 <= 0), cost: 2 New rule: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -9+b5^post9 <= 0), cost: 4 Applied chaining First rule: l2 -> l7 : 1-a4^0+b5^0 <= 0, cost: 2 Second rule: l7 -> l5 : b5^0'=b5^post9, (-10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 2 New rule: l2 -> l5 : b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 4 Applied deletion Removed the following rules: 30 31 32 33 Eliminated locations on tree-shaped paths Start location: l9 29: l2 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 2 34: l2 -> l2 : a4^0'=1+a4^0, b5^0'=2+b5^0, (1-a4^0+b5^0 <= 0 /\ -5+b5^0 <= 0), cost: 4 35: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -9+b5^post9 <= 0), cost: 4 36: l2 -> l5 : b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 4 28: l3 -> l2 : -29+a4^0 <= 0, cost: 2 17: l5 -> l2 : a4^0'=1+a4^0, -13+b5^0 >= 0, cost: 1 18: l5 -> l2 : a4^0'=10+a4^0, -12+b5^0 <= 0, cost: 1 27: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Applied acceleration Original rule: l2 -> l2 : a4^0'=1+a4^0, b5^0'=2+b5^0, (1-a4^0+b5^0 <= 0 /\ -5+b5^0 <= 0), cost: 4 New rule: l2 -> l2 : a4^0'=a4^0+n1, b5^0'=2*n1+b5^0, (n1 >= 0 /\ a4^0-n1-b5^0 >= 0 /\ 7-2*n1-b5^0 >= 0), cost: 4*n1 Applied instantiation Original rule: l2 -> l2 : a4^0'=a4^0+n1, b5^0'=2*n1+b5^0, (n1 >= 0 /\ a4^0-n1-b5^0 >= 0 /\ 7-2*n1-b5^0 >= 0), cost: 4*n1 New rule: l2 -> l2 : a4^0'=2*a4^0-b5^0, b5^0'=2*a4^0-b5^0, (0 >= 0 /\ a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 4*a4^0-4*b5^0 Applied unrolling Original rule: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -9+b5^post9 <= 0), cost: 4 New rule: l2 -> l2 : a4^0'=2+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -6+b5^post9 >= 0 /\ -9+b5^post9 <= 0 /\ -a4^0+b5^post9 <= 0), cost: 8 Applied non-termination processor Original rule: l2 -> l2 : a4^0'=2+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -6+b5^post9 >= 0 /\ -9+b5^post9 <= 0 /\ -a4^0+b5^post9 <= 0), cost: 8 New rule: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -6+b5^post9 >= 0 /\ -9+b5^post9 <= 0 /\ -a4^0+b5^post9 <= 0), cost: NONTERM Applied simplification Original rule: l2 -> l2 : a4^0'=2*a4^0-b5^0, b5^0'=2*a4^0-b5^0, (0 >= 0 /\ a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 4*a4^0-4*b5^0 New rule: l2 -> l2 : a4^0'=2*a4^0-b5^0, b5^0'=2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 4*a4^0-4*b5^0 Applied deletion Removed the following rules: 34 Accelerated simple loops Start location: l9 29: l2 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 2 35: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -9+b5^post9 <= 0), cost: 4 36: l2 -> l5 : b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 4 38: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -6+b5^post9 >= 0 /\ -9+b5^post9 <= 0 /\ -a4^0+b5^post9 <= 0), cost: NONTERM 39: l2 -> l2 : a4^0'=2*a4^0-b5^0, b5^0'=2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 4*a4^0-4*b5^0 28: l3 -> l2 : -29+a4^0 <= 0, cost: 2 17: l5 -> l2 : a4^0'=1+a4^0, -13+b5^0 >= 0, cost: 1 18: l5 -> l2 : a4^0'=10+a4^0, -12+b5^0 <= 0, cost: 1 27: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Applied chaining First rule: l5 -> l2 : a4^0'=1+a4^0, -13+b5^0 >= 0, cost: 1 Second rule: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -9+b5^post9 <= 0), cost: 4 New rule: l5 -> l2 : a4^0'=2+a4^0, b5^0'=b5^post9, (-a4^0+b5^0 <= 0 /\ -13+b5^0 >= 0 /\ -9+b5^post9 <= 0), cost: 5 Applied chaining First rule: l5 -> l2 : a4^0'=10+a4^0, -12+b5^0 <= 0, cost: 1 Second rule: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -9+b5^post9 <= 0), cost: 4 New rule: l5 -> l2 : a4^0'=11+a4^0, b5^0'=b5^post9, (-9-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -12+b5^0 <= 0 /\ -9+b5^post9 <= 0), cost: 5 Applied chaining First rule: l3 -> l2 : -29+a4^0 <= 0, cost: 2 Second rule: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -9+b5^post9 <= 0), cost: 4 New rule: l3 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -9+b5^post9 <= 0), cost: 6 Applied chaining First rule: l5 -> l2 : a4^0'=1+a4^0, -13+b5^0 >= 0, cost: 1 Second rule: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -6+b5^post9 >= 0 /\ -9+b5^post9 <= 0 /\ -a4^0+b5^post9 <= 0), cost: NONTERM New rule: l5 -> [10] : (-a4^0+b5^0 <= 0 /\ -13+b5^0 >= 0), cost: NONTERM Applied chaining First rule: l5 -> l2 : a4^0'=10+a4^0, -12+b5^0 <= 0, cost: 1 Second rule: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -6+b5^post9 >= 0 /\ -9+b5^post9 <= 0 /\ -a4^0+b5^post9 <= 0), cost: NONTERM New rule: l5 -> [10] : (-9-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -12+b5^0 <= 0), cost: NONTERM Applied chaining First rule: l3 -> l2 : -29+a4^0 <= 0, cost: 2 Second rule: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -6+b5^post9 >= 0 /\ -9+b5^post9 <= 0 /\ -a4^0+b5^post9 <= 0), cost: NONTERM New rule: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM Applied chaining First rule: l5 -> l2 : a4^0'=10+a4^0, -12+b5^0 <= 0, cost: 1 Second rule: l2 -> l2 : a4^0'=2*a4^0-b5^0, b5^0'=2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 4*a4^0-4*b5^0 New rule: l5 -> l2 : a4^0'=20+2*a4^0-b5^0, b5^0'=20+2*a4^0-b5^0, (10+a4^0-b5^0 >= 0 /\ -13-2*a4^0+b5^0 >= 0), cost: 41+4*a4^0-4*b5^0 Applied chaining First rule: l3 -> l2 : -29+a4^0 <= 0, cost: 2 Second rule: l2 -> l2 : a4^0'=2*a4^0-b5^0, b5^0'=2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 4*a4^0-4*b5^0 New rule: l3 -> l2 : a4^0'=2*a4^0-b5^0, b5^0'=2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 2+4*a4^0-4*b5^0 Applied deletion Removed the following rules: 35 38 39 Chained accelerated rules with incoming rules Start location: l9 29: l2 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 2 36: l2 -> l5 : b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 4 28: l3 -> l2 : -29+a4^0 <= 0, cost: 2 42: l3 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -9+b5^post9 <= 0), cost: 6 45: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 47: l3 -> l2 : a4^0'=2*a4^0-b5^0, b5^0'=2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 2+4*a4^0-4*b5^0 17: l5 -> l2 : a4^0'=1+a4^0, -13+b5^0 >= 0, cost: 1 18: l5 -> l2 : a4^0'=10+a4^0, -12+b5^0 <= 0, cost: 1 40: l5 -> l2 : a4^0'=2+a4^0, b5^0'=b5^post9, (-a4^0+b5^0 <= 0 /\ -13+b5^0 >= 0 /\ -9+b5^post9 <= 0), cost: 5 41: l5 -> l2 : a4^0'=11+a4^0, b5^0'=b5^post9, (-9-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -12+b5^0 <= 0 /\ -9+b5^post9 <= 0), cost: 5 43: l5 -> [10] : (-a4^0+b5^0 <= 0 /\ -13+b5^0 >= 0), cost: NONTERM 44: l5 -> [10] : (-9-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -12+b5^0 <= 0), cost: NONTERM 46: l5 -> l2 : a4^0'=20+2*a4^0-b5^0, b5^0'=20+2*a4^0-b5^0, (10+a4^0-b5^0 >= 0 /\ -13-2*a4^0+b5^0 >= 0), cost: 41+4*a4^0-4*b5^0 27: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Eliminating location l5 by chaining: Applied chaining First rule: l2 -> l5 : b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 4 Second rule: l5 -> l2 : a4^0'=1+a4^0, -13+b5^0 >= 0, cost: 1 New rule: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0 /\ -13+b5^post9 >= 0), cost: 5 Applied simplification Original rule: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0 /\ -13+b5^post9 >= 0), cost: 5 New rule: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -13+b5^post9 >= 0), cost: 5 Applied chaining First rule: l2 -> l5 : b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 4 Second rule: l5 -> l2 : a4^0'=10+a4^0, -12+b5^0 <= 0, cost: 1 New rule: l2 -> l2 : a4^0'=10+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 5 Applied chaining First rule: l2 -> l5 : b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 4 Second rule: l5 -> [10] : (-a4^0+b5^0 <= 0 /\ -13+b5^0 >= 0), cost: NONTERM New rule: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: NONTERM Applied simplification Original rule: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: NONTERM New rule: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: NONTERM Applied chaining First rule: l2 -> l5 : b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 4 Second rule: l5 -> [10] : (-9-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -12+b5^0 <= 0), cost: NONTERM New rule: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0 /\ -6+b5^post9 >= 0 /\ -9-a4^0+b5^post9 <= 0), cost: NONTERM Applied simplification Original rule: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0 /\ -6+b5^post9 >= 0 /\ -9-a4^0+b5^post9 <= 0), cost: NONTERM New rule: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: NONTERM Applied deletion Removed the following rules: 17 18 36 40 41 43 44 46 Eliminated locations on tree-shaped paths Start location: l9 29: l2 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 2 48: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -13+b5^post9 >= 0), cost: 5 49: l2 -> l2 : a4^0'=10+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 5 50: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: NONTERM 51: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: NONTERM 28: l3 -> l2 : -29+a4^0 <= 0, cost: 2 42: l3 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -9+b5^post9 <= 0), cost: 6 45: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 47: l3 -> l2 : a4^0'=2*a4^0-b5^0, b5^0'=2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 2+4*a4^0-4*b5^0 27: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Applied merging first rule: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: NONTERM second rule: l2 -> [10] : (1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: NONTERM new rule: l2 -> [10] : ((1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0) \/ (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0)), cost: NONTERM Merged rules Start location: l9 29: l2 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 2 48: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -13+b5^post9 >= 0), cost: 5 49: l2 -> l2 : a4^0'=10+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 5 52: l2 -> [10] : ((1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0) \/ (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0)), cost: NONTERM 28: l3 -> l2 : -29+a4^0 <= 0, cost: 2 42: l3 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -9+b5^post9 <= 0), cost: 6 45: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 47: l3 -> l2 : a4^0'=2*a4^0-b5^0, b5^0'=2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 2+4*a4^0-4*b5^0 27: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Applied unrolling Original rule: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -13+b5^post9 >= 0), cost: 5 New rule: l2 -> l2 : a4^0'=2+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -6+b5^post9 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: 10 Applied non-termination processor Original rule: l2 -> l2 : a4^0'=2+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -6+b5^post9 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: 10 New rule: l2 -> [11] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -6+b5^post9 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: NONTERM Applied nonterm Original rule: l2 -> l2 : a4^0'=10+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 5 New rule: l2 -> [11] : (-10+b5^post9 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ 12-b5^post9 >= 0), cost: NONTERM Applied acceleration Original rule: l2 -> l2 : a4^0'=10+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0), cost: 5 New rule: l2 -> l2 : a4^0'=a4^0+10*n10, b5^0'=b5^post9, (-10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ 12-b5^post9 >= 0 /\ ((-6+b5^0 >= 0 /\ -6+b5^post9 >= 0) \/ (-10+b5^post9 >= 0 /\ -6+b5^0 >= 0))), cost: 5*n10 Applied simplification Original rule: l2 -> [11] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -6+b5^post9 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: NONTERM New rule: l2 -> [11] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: NONTERM Applied simplification Original rule: l2 -> [11] : (-10+b5^post9 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ 12-b5^post9 >= 0), cost: NONTERM New rule: l2 -> [11] : (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0), cost: NONTERM Applied simplification Original rule: l2 -> l2 : a4^0'=a4^0+10*n10, b5^0'=b5^post9, (-10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ 12-b5^post9 >= 0 /\ ((-6+b5^0 >= 0 /\ -6+b5^post9 >= 0) \/ (-10+b5^post9 >= 0 /\ -6+b5^0 >= 0))), cost: 5*n10 New rule: l2 -> l2 : a4^0'=a4^0+10*n10, b5^0'=b5^post9, (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0), cost: 5*n10 Applied deletion Removed the following rules: 49 Accelerated simple loops Start location: l9 29: l2 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 2 48: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -13+b5^post9 >= 0), cost: 5 52: l2 -> [10] : ((1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0) \/ (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0)), cost: NONTERM 56: l2 -> [11] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: NONTERM 57: l2 -> [11] : (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0), cost: NONTERM 58: l2 -> l2 : a4^0'=a4^0+10*n10, b5^0'=b5^post9, (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0), cost: 5*n10 28: l3 -> l2 : -29+a4^0 <= 0, cost: 2 42: l3 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -9+b5^post9 <= 0), cost: 6 45: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 47: l3 -> l2 : a4^0'=2*a4^0-b5^0, b5^0'=2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 2+4*a4^0-4*b5^0 27: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Applied chaining First rule: l3 -> l2 : -29+a4^0 <= 0, cost: 2 Second rule: l2 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -13+b5^post9 >= 0), cost: 5 New rule: l3 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -13+b5^post9 >= 0), cost: 7 Applied chaining First rule: l3 -> l2 : -29+a4^0 <= 0, cost: 2 Second rule: l2 -> [11] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: NONTERM New rule: l3 -> [11] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -13+a4^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM Applied chaining First rule: l3 -> l2 : -29+a4^0 <= 0, cost: 2 Second rule: l2 -> [11] : (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0), cost: NONTERM New rule: l3 -> [11] : (-6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM Applied chaining First rule: l3 -> l2 : -29+a4^0 <= 0, cost: 2 Second rule: l2 -> l2 : a4^0'=a4^0+10*n10, b5^0'=b5^post9, (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0), cost: 5*n10 New rule: l3 -> l2 : a4^0'=a4^0+10*n10, b5^0'=b5^post9, (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: 2+5*n10 Applied deletion Removed the following rules: 48 56 57 58 Chained accelerated rules with incoming rules Start location: l9 29: l2 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 2 52: l2 -> [10] : ((1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0) \/ (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0)), cost: NONTERM 28: l3 -> l2 : -29+a4^0 <= 0, cost: 2 42: l3 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -9+b5^post9 <= 0), cost: 6 45: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 47: l3 -> l2 : a4^0'=2*a4^0-b5^0, b5^0'=2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 2+4*a4^0-4*b5^0 59: l3 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -13+b5^post9 >= 0), cost: 7 60: l3 -> [11] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -13+a4^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 61: l3 -> [11] : (-6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 62: l3 -> l2 : a4^0'=a4^0+10*n10, b5^0'=b5^post9, (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: 2+5*n10 27: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Eliminating location l2 by chaining: Applied chaining First rule: l3 -> l2 : -29+a4^0 <= 0, cost: 2 Second rule: l2 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 2 New rule: l3 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, (a4^0-b5^0 <= 0 /\ -29+a4^0 <= 0), cost: 4 Applied chaining First rule: l3 -> l2 : -29+a4^0 <= 0, cost: 2 Second rule: l2 -> [10] : ((1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0) \/ (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0)), cost: NONTERM New rule: l3 -> [10] : (-29+a4^0 <= 0 /\ ((1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0) \/ (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0))), cost: NONTERM Applied chaining First rule: l3 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -9+b5^post9 <= 0), cost: 6 Second rule: l2 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 2 New rule: l3 -> l3 : a4^0'=3+a4^0, b5^0'=-10+b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ 1+a4^0-b5^post9 <= 0 /\ -29+a4^0 <= 0 /\ -9+b5^post9 <= 0), cost: 8 Applied simplification Original rule: l3 -> l3 : a4^0'=3+a4^0, b5^0'=-10+b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ 1+a4^0-b5^post9 <= 0 /\ -29+a4^0 <= 0 /\ -9+b5^post9 <= 0), cost: 8 New rule: l3 -> l3 : a4^0'=3+a4^0, b5^0'=-10+b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ 1+a4^0-b5^post9 <= 0 /\ -9+b5^post9 <= 0), cost: 8 Applied chaining First rule: l3 -> l2 : a4^0'=2*a4^0-b5^0, b5^0'=2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 2+4*a4^0-4*b5^0 Second rule: l2 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 2 New rule: l3 -> l3 : a4^0'=2+2*a4^0-b5^0, b5^0'=-10+2*a4^0-b5^0, (0 <= 0 /\ a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 4+4*a4^0-4*b5^0 Applied simplification Original rule: l3 -> l3 : a4^0'=2+2*a4^0-b5^0, b5^0'=-10+2*a4^0-b5^0, (0 <= 0 /\ a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 4+4*a4^0-4*b5^0 New rule: l3 -> l3 : a4^0'=2+2*a4^0-b5^0, b5^0'=-10+2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 4+4*a4^0-4*b5^0 Applied chaining First rule: l3 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -13+b5^post9 >= 0), cost: 7 Second rule: l2 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, a4^0-b5^0 <= 0, cost: 2 New rule: l3 -> l3 : a4^0'=3+a4^0, b5^0'=-10+b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ 1+a4^0-b5^post9 <= 0 /\ -29+a4^0 <= 0 /\ -13+b5^post9 >= 0), cost: 9 Applied chaining First rule: l3 -> l2 : a4^0'=1+a4^0, b5^0'=b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -13+b5^post9 >= 0), cost: 7 Second rule: l2 -> [10] : ((1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0) \/ (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0)), cost: NONTERM New rule: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -13+b5^post9 >= 0 /\ ((-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^post9 >= 0 /\ -a4^0+b5^post9 <= 0) \/ (-1-a4^0+b5^post9 <= 0 /\ -6+b5^post9 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0))), cost: NONTERM Applied simplification Original rule: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -13+b5^post9 >= 0 /\ ((-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^post9 >= 0 /\ -a4^0+b5^post9 <= 0) \/ (-1-a4^0+b5^post9 <= 0 /\ -6+b5^post9 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0))), cost: NONTERM New rule: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: NONTERM Applied chaining First rule: l3 -> l2 : a4^0'=a4^0+10*n10, b5^0'=b5^post9, (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: 2+5*n10 Second rule: l2 -> [10] : ((1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0) \/ (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0)), cost: NONTERM New rule: l3 -> [10] : (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0 /\ ((1-a4^0-10*n10+b5^post9 <= 0 /\ -a4^0-10*n10+b5^post9 <= 0 /\ -6+b5^post9 >= 0 /\ -13+b5^post9 >= 0) \/ (1-a4^0-10*n10+b5^post9 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^post9 >= 0))), cost: NONTERM Applied simplification Original rule: l3 -> [10] : (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0 /\ ((1-a4^0-10*n10+b5^post9 <= 0 /\ -a4^0-10*n10+b5^post9 <= 0 /\ -6+b5^post9 >= 0 /\ -13+b5^post9 >= 0) \/ (1-a4^0-10*n10+b5^post9 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^post9 >= 0))), cost: NONTERM New rule: l3 -> [10] : (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM Applied partial deletion Original rule: l3 -> l2 : a4^0'=2*a4^0-b5^0, b5^0'=2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 2+4*a4^0-4*b5^0 New rule: l3 -> [12] : (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 2+4*a4^0-4*b5^0 Applied partial deletion Original rule: l3 -> l2 : a4^0'=a4^0+10*n10, b5^0'=b5^post9, (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: 2+5*n10 New rule: l3 -> [12] : (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: 2+5*n10 Applied deletion Removed the following rules: 28 29 42 47 52 59 62 Eliminated locations on tree-shaped paths Start location: l9 45: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 60: l3 -> [11] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -13+a4^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 61: l3 -> [11] : (-6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 63: l3 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, (a4^0-b5^0 <= 0 /\ -29+a4^0 <= 0), cost: 4 64: l3 -> [10] : (-29+a4^0 <= 0 /\ ((1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0) \/ (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0))), cost: NONTERM 65: l3 -> l3 : a4^0'=3+a4^0, b5^0'=-10+b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ 1+a4^0-b5^post9 <= 0 /\ -9+b5^post9 <= 0), cost: 8 66: l3 -> l3 : a4^0'=2+2*a4^0-b5^0, b5^0'=-10+2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 4+4*a4^0-4*b5^0 67: l3 -> l3 : a4^0'=3+a4^0, b5^0'=-10+b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ 1+a4^0-b5^post9 <= 0 /\ -29+a4^0 <= 0 /\ -13+b5^post9 >= 0), cost: 9 68: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: NONTERM 69: l3 -> [10] : (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 70: l3 -> [12] : (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 2+4*a4^0-4*b5^0 71: l3 -> [12] : (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: 2+5*n10 27: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Applied merging first rule: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM second rule: l3 -> [10] : (-29+a4^0 <= 0 /\ ((1-a4^0+b5^0 <= 0 /\ -12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -6+b5^0 >= 0) \/ (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0))), cost: NONTERM new rule: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM Applied merging first rule: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0), cost: NONTERM second rule: l3 -> [10] : (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM new rule: l3 -> [10] : ((1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0) \/ (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0)), cost: NONTERM Applied merging first rule: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM second rule: l3 -> [10] : ((1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0 /\ -a4^0+b5^post9 <= 0 /\ -13+b5^post9 >= 0) \/ (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0)), cost: NONTERM new rule: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM Applied merging first rule: l3 -> [11] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -13+a4^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM second rule: l3 -> [11] : (-6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM new rule: l3 -> [11] : (-6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM Applied merging first rule: l3 -> [12] : (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 2+4*a4^0-4*b5^0 second rule: l3 -> [12] : (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: 2+5*n10 new rule: l3 -> [12] : ((a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0) \/ (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0)), cost: 2+4*a4^0-4*b5^0 Merged rules Start location: l9 63: l3 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, (a4^0-b5^0 <= 0 /\ -29+a4^0 <= 0), cost: 4 65: l3 -> l3 : a4^0'=3+a4^0, b5^0'=-10+b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ 1+a4^0-b5^post9 <= 0 /\ -9+b5^post9 <= 0), cost: 8 66: l3 -> l3 : a4^0'=2+2*a4^0-b5^0, b5^0'=-10+2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 4+4*a4^0-4*b5^0 67: l3 -> l3 : a4^0'=3+a4^0, b5^0'=-10+b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ 1+a4^0-b5^post9 <= 0 /\ -29+a4^0 <= 0 /\ -13+b5^post9 >= 0), cost: 9 74: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 75: l3 -> [11] : (-6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 76: l3 -> [12] : ((a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0) \/ (-12+b5^post9 <= 0 /\ -10+b5^post9 >= 0 /\ -1+n10 >= 0 /\ -6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0)), cost: 2+4*a4^0-4*b5^0 27: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Applied pruning (of leafs and parallel rules): Start location: l9 63: l3 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, (a4^0-b5^0 <= 0 /\ -29+a4^0 <= 0), cost: 4 65: l3 -> l3 : a4^0'=3+a4^0, b5^0'=-10+b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ 1+a4^0-b5^post9 <= 0 /\ -9+b5^post9 <= 0), cost: 8 66: l3 -> l3 : a4^0'=2+2*a4^0-b5^0, b5^0'=-10+2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 4+4*a4^0-4*b5^0 67: l3 -> l3 : a4^0'=3+a4^0, b5^0'=-10+b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ 1+a4^0-b5^post9 <= 0 /\ -29+a4^0 <= 0 /\ -13+b5^post9 >= 0), cost: 9 74: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 75: l3 -> [11] : (-6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 27: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Applied acceleration Original rule: l3 -> l3 : a4^0'=2+a4^0, b5^0'=-10+b5^0, (a4^0-b5^0 <= 0 /\ -29+a4^0 <= 0), cost: 4 New rule: l3 -> l3 : a4^0'=a4^0+2*n16, b5^0'=-10*n16+b5^0, (12-a4^0-12*n16+b5^0 >= 0 /\ n16 >= 0 /\ 31-a4^0-2*n16 >= 0), cost: 4*n16 Applied deletion Removed the following rules: 63 Accelerated simple loops Start location: l9 65: l3 -> l3 : a4^0'=3+a4^0, b5^0'=-10+b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ 1+a4^0-b5^post9 <= 0 /\ -9+b5^post9 <= 0), cost: 8 66: l3 -> l3 : a4^0'=2+2*a4^0-b5^0, b5^0'=-10+2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 4+4*a4^0-4*b5^0 67: l3 -> l3 : a4^0'=3+a4^0, b5^0'=-10+b5^post9, (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ 1+a4^0-b5^post9 <= 0 /\ -29+a4^0 <= 0 /\ -13+b5^post9 >= 0), cost: 9 74: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 75: l3 -> [11] : (-6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 77: l3 -> l3 : a4^0'=a4^0+2*n16, b5^0'=-10*n16+b5^0, (12-a4^0-12*n16+b5^0 >= 0 /\ n16 >= 0 /\ 31-a4^0-2*n16 >= 0), cost: 4*n16 27: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Applied chaining First rule: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Second rule: l3 -> l3 : a4^0'=2+2*a4^0-b5^0, b5^0'=-10+2*a4^0-b5^0, (a4^0-b5^0 >= 0 /\ 7-2*a4^0+b5^0 >= 0), cost: 4+4*a4^0-4*b5^0 New rule: l9 -> l3 : a4^0'=3, answer^0'=0, b^0'=1, a^0'=1, b5^0'=-9, (0 >= 0 /\ 6 >= 0), cost: 6 Applied chaining First rule: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 Second rule: l3 -> l3 : a4^0'=a4^0+2*n16, b5^0'=-10*n16+b5^0, (12-a4^0-12*n16+b5^0 >= 0 /\ n16 >= 0 /\ 31-a4^0-2*n16 >= 0), cost: 4*n16 New rule: l9 -> l3 : a4^0'=1+2*n16, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1-10*n16, (n16 >= 0 /\ -1+n16 <= 0), cost: 2+4*n16 Applied deletion Removed the following rules: 65 66 67 77 Chained accelerated rules with incoming rules Start location: l9 74: l3 -> [10] : (1-a4^0+b5^0 <= 0 /\ -6+b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 75: l3 -> [11] : (-6+b5^0 >= 0 /\ -1+a4^0-b5^0 >= 0 /\ -29+a4^0 <= 0), cost: NONTERM 27: l9 -> l3 : a4^0'=1, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1, TRUE, cost: 2 78: l9 -> l3 : a4^0'=3, answer^0'=0, b^0'=1, a^0'=1, b5^0'=-9, (0 >= 0 /\ 6 >= 0), cost: 6 79: l9 -> l3 : a4^0'=1+2*n16, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1-10*n16, (n16 >= 0 /\ -1+n16 <= 0), cost: 2+4*n16 Eliminating location l3 by chaining: Applied partial deletion Original rule: l9 -> l3 : a4^0'=1+2*n16, answer^0'=0, b^0'=1, a^0'=1, b5^0'=1-10*n16, (n16 >= 0 /\ -1+n16 <= 0), cost: 2+4*n16 New rule: l9 -> [14] : (n16 >= 0 /\ -1+n16 <= 0), cost: 2+4*n16 Applied deletion Removed the following rules: 27 74 75 78 79 Eliminated locations on tree-shaped paths Start location: l9 80: l9 -> [14] : (n16 >= 0 /\ -1+n16 <= 0), cost: 2+4*n16 Computing asymptotic complexity Proved the following lower bound Complexity: Unknown Cpx degree: ? Solved cost: 0 Rule cost: 0