WORST_CASE(Omega(0),?) Initial ITS Start location: l8 0: l0 -> l1 : oldX0^0'=oldX0^post0, x1^0'=x1^post0, oldX2^0'=oldX2^post0, x0^0'=x0^post0, oldX1^0'=oldX1^post0, oldX3^0'=oldX3^post0, (0 == 0 /\ oldX0^post0-x0^0 == 0 /\ -oldX2^post0+x0^post0 == 0 /\ -x1^0+oldX1^post0 == 0 /\ -oldX3^post0+x1^post0 == 0), cost: 1 1: l2 -> l1 : oldX0^0'=oldX0^post1, x1^0'=x1^post1, oldX2^0'=oldX2^post1, x0^0'=x0^post1, oldX1^0'=oldX1^post1, oldX3^0'=oldX3^post1, (0 == 0 /\ -x1^0+oldX1^post1 == 0 /\ -oldX2^post1+x0^post1 == 0 /\ -oldX3^post1+x1^post1 == 0 /\ oldX0^post1-x0^0 == 0), cost: 1 2: l2 -> l3 : oldX0^0'=oldX0^post2, x1^0'=x1^post2, oldX2^0'=oldX2^post2, x0^0'=x0^post2, oldX1^0'=oldX1^post2, oldX3^0'=oldX3^post2, (oldX0^post2-x0^0 == 0 /\ oldX3^0-oldX3^post2 == 0 /\ 2+x1^post2-oldX1^post2 == 0 /\ -x1^0+oldX1^post2 == 0 /\ -1-oldX0^post2+x0^post2 == 0 /\ oldX2^0-oldX2^post2 == 0), cost: 1 9: l3 -> l6 : oldX0^0'=oldX0^post9, x1^0'=x1^post9, oldX2^0'=oldX2^post9, x0^0'=x0^post9, oldX1^0'=oldX1^post9, oldX3^0'=oldX3^post9, (-x1^0+oldX1^post9 == 0 /\ oldX0^post9-x0^0 == 0 /\ oldX2^0-oldX2^post9 == 0 /\ x1^post9-oldX1^post9 == 0 /\ -oldX0^post9+x0^post9 == 0 /\ -oldX3^post9+oldX3^0 == 0), cost: 1 3: l4 -> l0 : oldX0^0'=oldX0^post3, x1^0'=x1^post3, oldX2^0'=oldX2^post3, x0^0'=x0^post3, oldX1^0'=oldX1^post3, oldX3^0'=oldX3^post3, (x1^post3-oldX1^post3 == 0 /\ -oldX0^post3+x0^post3 == 0 /\ -oldX3^post3+oldX3^0 == 0 /\ oldX2^0-oldX2^post3 == 0 /\ oldX0^post3-x0^0 == 0 /\ -2+oldX1^post3 <= 0 /\ -x1^0+oldX1^post3 == 0), cost: 1 4: l4 -> l2 : oldX0^0'=oldX0^post4, x1^0'=x1^post4, oldX2^0'=oldX2^post4, x0^0'=x0^post4, oldX1^0'=oldX1^post4, oldX3^0'=oldX3^post4, (x0^post4-oldX0^post4 == 0 /\ oldX2^0-oldX2^post4 == 0 /\ -x1^0+oldX1^post4 == 0 /\ x1^post4-oldX1^post4 == 0 /\ 3-oldX1^post4 <= 0 /\ -oldX3^post4+oldX3^0 == 0 /\ -x0^0+oldX0^post4 == 0), cost: 1 5: l5 -> l1 : oldX0^0'=oldX0^post5, x1^0'=x1^post5, oldX2^0'=oldX2^post5, x0^0'=x0^post5, oldX1^0'=oldX1^post5, oldX3^0'=oldX3^post5, (0 == 0 /\ x1^post5-oldX3^post5 == 0 /\ -oldX2^post5+x0^post5 == 0 /\ -x1^0+oldX1^post5 == 0 /\ -x0^0+oldX0^post5 == 0), cost: 1 6: l5 -> l3 : oldX0^0'=oldX0^post6, x1^0'=x1^post6, oldX2^0'=oldX2^post6, x0^0'=x0^post6, oldX1^0'=oldX1^post6, oldX3^0'=oldX3^post6, (-x1^0+oldX1^post6 == 0 /\ -oldX2^post6+oldX2^0 == 0 /\ -1+x1^post6-oldX1^post6 == 0 /\ -oldX3^post6+oldX3^0 == 0 /\ 1-oldX0^post6+x0^post6 == 0 /\ oldX0^post6-x0^0 == 0), cost: 1 7: l6 -> l4 : oldX0^0'=oldX0^post7, x1^0'=x1^post7, oldX2^0'=oldX2^post7, x0^0'=x0^post7, oldX1^0'=oldX1^post7, oldX3^0'=oldX3^post7, (-oldX3^post7+oldX3^0 == 0 /\ x1^post7-oldX1^post7 == 0 /\ -oldX0^post7+x0^post7 == 0 /\ oldX0^post7-x0^0 == 0 /\ oldX0^post7 <= 0 /\ -x1^0+oldX1^post7 == 0 /\ oldX2^0-oldX2^post7 == 0), cost: 1 8: l6 -> l5 : oldX0^0'=oldX0^post8, x1^0'=x1^post8, oldX2^0'=oldX2^post8, x0^0'=x0^post8, oldX1^0'=oldX1^post8, oldX3^0'=oldX3^post8, (x1^post8-oldX1^post8 == 0 /\ 1-oldX0^post8 <= 0 /\ oldX3^0-oldX3^post8 == 0 /\ oldX2^0-oldX2^post8 == 0 /\ -oldX0^post8+x0^post8 == 0 /\ oldX0^post8-x0^0 == 0 /\ -x1^0+oldX1^post8 == 0), cost: 1 10: l7 -> l0 : oldX0^0'=oldX0^post10, x1^0'=x1^post10, oldX2^0'=oldX2^post10, x0^0'=x0^post10, oldX1^0'=oldX1^post10, oldX3^0'=oldX3^post10, (oldX2^0-oldX2^post10 == 0 /\ oldX0^0-oldX0^post10 == 0 /\ -oldX3^post10+oldX3^0 == 0 /\ -oldX1^post10+oldX1^0 == 0 /\ x0^0-x0^post10 == 0 /\ x1^0-x1^post10 == 0), cost: 1 11: l7 -> l2 : oldX0^0'=oldX0^post11, x1^0'=x1^post11, oldX2^0'=oldX2^post11, x0^0'=x0^post11, oldX1^0'=oldX1^post11, oldX3^0'=oldX3^post11, (x1^0-x1^post11 == 0 /\ oldX0^0-oldX0^post11 == 0 /\ oldX2^0-oldX2^post11 == 0 /\ -oldX3^post11+oldX3^0 == 0 /\ x0^0-x0^post11 == 0 /\ -oldX1^post11+oldX1^0 == 0), cost: 1 12: l7 -> l1 : oldX0^0'=oldX0^post12, x1^0'=x1^post12, oldX2^0'=oldX2^post12, x0^0'=x0^post12, oldX1^0'=oldX1^post12, oldX3^0'=oldX3^post12, (-oldX3^post12+oldX3^0 == 0 /\ oldX0^0-oldX0^post12 == 0 /\ -oldX1^post12+oldX1^0 == 0 /\ x0^0-x0^post12 == 0 /\ x1^0-x1^post12 == 0 /\ oldX2^0-oldX2^post12 == 0), cost: 1 13: l7 -> l4 : oldX0^0'=oldX0^post13, x1^0'=x1^post13, oldX2^0'=oldX2^post13, x0^0'=x0^post13, oldX1^0'=oldX1^post13, oldX3^0'=oldX3^post13, (-oldX3^post13+oldX3^0 == 0 /\ x0^0-x0^post13 == 0 /\ x1^0-x1^post13 == 0 /\ oldX2^0-oldX2^post13 == 0 /\ -oldX1^post13+oldX1^0 == 0 /\ oldX0^0-oldX0^post13 == 0), cost: 1 14: l7 -> l5 : oldX0^0'=oldX0^post14, x1^0'=x1^post14, oldX2^0'=oldX2^post14, x0^0'=x0^post14, oldX1^0'=oldX1^post14, oldX3^0'=oldX3^post14, (x1^0-x1^post14 == 0 /\ x0^0-x0^post14 == 0 /\ -oldX2^post14+oldX2^0 == 0 /\ oldX1^0-oldX1^post14 == 0 /\ oldX0^0-oldX0^post14 == 0 /\ -oldX3^post14+oldX3^0 == 0), cost: 1 15: l7 -> l6 : oldX0^0'=oldX0^post15, x1^0'=x1^post15, oldX2^0'=oldX2^post15, x0^0'=x0^post15, oldX1^0'=oldX1^post15, oldX3^0'=oldX3^post15, (oldX1^0-oldX1^post15 == 0 /\ oldX0^0-oldX0^post15 == 0 /\ -oldX3^post15+oldX3^0 == 0 /\ -x0^post15+x0^0 == 0 /\ -oldX2^post15+oldX2^0 == 0 /\ x1^0-x1^post15 == 0), cost: 1 16: l7 -> l3 : oldX0^0'=oldX0^post16, x1^0'=x1^post16, oldX2^0'=oldX2^post16, x0^0'=x0^post16, oldX1^0'=oldX1^post16, oldX3^0'=oldX3^post16, (oldX2^0-oldX2^post16 == 0 /\ oldX3^0-oldX3^post16 == 0 /\ -x0^post16+x0^0 == 0 /\ oldX0^0-oldX0^post16 == 0 /\ x1^0-x1^post16 == 0 /\ -oldX1^post16+oldX1^0 == 0), cost: 1 17: l8 -> l7 : oldX0^0'=oldX0^post17, x1^0'=x1^post17, oldX2^0'=oldX2^post17, x0^0'=x0^post17, oldX1^0'=oldX1^post17, oldX3^0'=oldX3^post17, (-oldX3^post17+oldX3^0 == 0 /\ oldX0^0-oldX0^post17 == 0 /\ -oldX1^post17+oldX1^0 == 0 /\ x1^0-x1^post17 == 0 /\ oldX2^0-oldX2^post17 == 0 /\ x0^0-x0^post17 == 0), cost: 1 Removed unreachable rules and leafs Start location: l8 2: l2 -> l3 : oldX0^0'=oldX0^post2, x1^0'=x1^post2, oldX2^0'=oldX2^post2, x0^0'=x0^post2, oldX1^0'=oldX1^post2, oldX3^0'=oldX3^post2, (oldX0^post2-x0^0 == 0 /\ oldX3^0-oldX3^post2 == 0 /\ 2+x1^post2-oldX1^post2 == 0 /\ -x1^0+oldX1^post2 == 0 /\ -1-oldX0^post2+x0^post2 == 0 /\ oldX2^0-oldX2^post2 == 0), cost: 1 9: l3 -> l6 : oldX0^0'=oldX0^post9, x1^0'=x1^post9, oldX2^0'=oldX2^post9, x0^0'=x0^post9, oldX1^0'=oldX1^post9, oldX3^0'=oldX3^post9, (-x1^0+oldX1^post9 == 0 /\ oldX0^post9-x0^0 == 0 /\ oldX2^0-oldX2^post9 == 0 /\ x1^post9-oldX1^post9 == 0 /\ -oldX0^post9+x0^post9 == 0 /\ -oldX3^post9+oldX3^0 == 0), cost: 1 4: l4 -> l2 : oldX0^0'=oldX0^post4, x1^0'=x1^post4, oldX2^0'=oldX2^post4, x0^0'=x0^post4, oldX1^0'=oldX1^post4, oldX3^0'=oldX3^post4, (x0^post4-oldX0^post4 == 0 /\ oldX2^0-oldX2^post4 == 0 /\ -x1^0+oldX1^post4 == 0 /\ x1^post4-oldX1^post4 == 0 /\ 3-oldX1^post4 <= 0 /\ -oldX3^post4+oldX3^0 == 0 /\ -x0^0+oldX0^post4 == 0), cost: 1 6: l5 -> l3 : oldX0^0'=oldX0^post6, x1^0'=x1^post6, oldX2^0'=oldX2^post6, x0^0'=x0^post6, oldX1^0'=oldX1^post6, oldX3^0'=oldX3^post6, (-x1^0+oldX1^post6 == 0 /\ -oldX2^post6+oldX2^0 == 0 /\ -1+x1^post6-oldX1^post6 == 0 /\ -oldX3^post6+oldX3^0 == 0 /\ 1-oldX0^post6+x0^post6 == 0 /\ oldX0^post6-x0^0 == 0), cost: 1 7: l6 -> l4 : oldX0^0'=oldX0^post7, x1^0'=x1^post7, oldX2^0'=oldX2^post7, x0^0'=x0^post7, oldX1^0'=oldX1^post7, oldX3^0'=oldX3^post7, (-oldX3^post7+oldX3^0 == 0 /\ x1^post7-oldX1^post7 == 0 /\ -oldX0^post7+x0^post7 == 0 /\ oldX0^post7-x0^0 == 0 /\ oldX0^post7 <= 0 /\ -x1^0+oldX1^post7 == 0 /\ oldX2^0-oldX2^post7 == 0), cost: 1 8: l6 -> l5 : oldX0^0'=oldX0^post8, x1^0'=x1^post8, oldX2^0'=oldX2^post8, x0^0'=x0^post8, oldX1^0'=oldX1^post8, oldX3^0'=oldX3^post8, (x1^post8-oldX1^post8 == 0 /\ 1-oldX0^post8 <= 0 /\ oldX3^0-oldX3^post8 == 0 /\ oldX2^0-oldX2^post8 == 0 /\ -oldX0^post8+x0^post8 == 0 /\ oldX0^post8-x0^0 == 0 /\ -x1^0+oldX1^post8 == 0), cost: 1 11: l7 -> l2 : oldX0^0'=oldX0^post11, x1^0'=x1^post11, oldX2^0'=oldX2^post11, x0^0'=x0^post11, oldX1^0'=oldX1^post11, oldX3^0'=oldX3^post11, (x1^0-x1^post11 == 0 /\ oldX0^0-oldX0^post11 == 0 /\ oldX2^0-oldX2^post11 == 0 /\ -oldX3^post11+oldX3^0 == 0 /\ x0^0-x0^post11 == 0 /\ -oldX1^post11+oldX1^0 == 0), cost: 1 13: l7 -> l4 : oldX0^0'=oldX0^post13, x1^0'=x1^post13, oldX2^0'=oldX2^post13, x0^0'=x0^post13, oldX1^0'=oldX1^post13, oldX3^0'=oldX3^post13, (-oldX3^post13+oldX3^0 == 0 /\ x0^0-x0^post13 == 0 /\ x1^0-x1^post13 == 0 /\ oldX2^0-oldX2^post13 == 0 /\ -oldX1^post13+oldX1^0 == 0 /\ oldX0^0-oldX0^post13 == 0), cost: 1 14: l7 -> l5 : oldX0^0'=oldX0^post14, x1^0'=x1^post14, oldX2^0'=oldX2^post14, x0^0'=x0^post14, oldX1^0'=oldX1^post14, oldX3^0'=oldX3^post14, (x1^0-x1^post14 == 0 /\ x0^0-x0^post14 == 0 /\ -oldX2^post14+oldX2^0 == 0 /\ oldX1^0-oldX1^post14 == 0 /\ oldX0^0-oldX0^post14 == 0 /\ -oldX3^post14+oldX3^0 == 0), cost: 1 15: l7 -> l6 : oldX0^0'=oldX0^post15, x1^0'=x1^post15, oldX2^0'=oldX2^post15, x0^0'=x0^post15, oldX1^0'=oldX1^post15, oldX3^0'=oldX3^post15, (oldX1^0-oldX1^post15 == 0 /\ oldX0^0-oldX0^post15 == 0 /\ -oldX3^post15+oldX3^0 == 0 /\ -x0^post15+x0^0 == 0 /\ -oldX2^post15+oldX2^0 == 0 /\ x1^0-x1^post15 == 0), cost: 1 16: l7 -> l3 : oldX0^0'=oldX0^post16, x1^0'=x1^post16, oldX2^0'=oldX2^post16, x0^0'=x0^post16, oldX1^0'=oldX1^post16, oldX3^0'=oldX3^post16, (oldX2^0-oldX2^post16 == 0 /\ oldX3^0-oldX3^post16 == 0 /\ -x0^post16+x0^0 == 0 /\ oldX0^0-oldX0^post16 == 0 /\ x1^0-x1^post16 == 0 /\ -oldX1^post16+oldX1^0 == 0), cost: 1 17: l8 -> l7 : oldX0^0'=oldX0^post17, x1^0'=x1^post17, oldX2^0'=oldX2^post17, x0^0'=x0^post17, oldX1^0'=oldX1^post17, oldX3^0'=oldX3^post17, (-oldX3^post17+oldX3^0 == 0 /\ oldX0^0-oldX0^post17 == 0 /\ -oldX1^post17+oldX1^0 == 0 /\ x1^0-x1^post17 == 0 /\ oldX2^0-oldX2^post17 == 0 /\ x0^0-x0^post17 == 0), cost: 1 Applied preprocessing Original rule: l2 -> l3 : oldX0^0'=oldX0^post2, x1^0'=x1^post2, oldX2^0'=oldX2^post2, x0^0'=x0^post2, oldX1^0'=oldX1^post2, oldX3^0'=oldX3^post2, (oldX0^post2-x0^0 == 0 /\ oldX3^0-oldX3^post2 == 0 /\ 2+x1^post2-oldX1^post2 == 0 /\ -x1^0+oldX1^post2 == 0 /\ -1-oldX0^post2+x0^post2 == 0 /\ oldX2^0-oldX2^post2 == 0), cost: 1 New rule: l2 -> l3 : oldX0^0'=x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=x1^0, TRUE, cost: 1 Applied preprocessing Original rule: l4 -> l2 : oldX0^0'=oldX0^post4, x1^0'=x1^post4, oldX2^0'=oldX2^post4, x0^0'=x0^post4, oldX1^0'=oldX1^post4, oldX3^0'=oldX3^post4, (x0^post4-oldX0^post4 == 0 /\ oldX2^0-oldX2^post4 == 0 /\ -x1^0+oldX1^post4 == 0 /\ x1^post4-oldX1^post4 == 0 /\ 3-oldX1^post4 <= 0 /\ -oldX3^post4+oldX3^0 == 0 /\ -x0^0+oldX0^post4 == 0), cost: 1 New rule: l4 -> l2 : oldX0^0'=x0^0, oldX1^0'=x1^0, -3+x1^0 >= 0, cost: 1 Applied preprocessing Original rule: l5 -> l3 : oldX0^0'=oldX0^post6, x1^0'=x1^post6, oldX2^0'=oldX2^post6, x0^0'=x0^post6, oldX1^0'=oldX1^post6, oldX3^0'=oldX3^post6, (-x1^0+oldX1^post6 == 0 /\ -oldX2^post6+oldX2^0 == 0 /\ -1+x1^post6-oldX1^post6 == 0 /\ -oldX3^post6+oldX3^0 == 0 /\ 1-oldX0^post6+x0^post6 == 0 /\ oldX0^post6-x0^0 == 0), cost: 1 New rule: l5 -> l3 : oldX0^0'=x0^0, x1^0'=1+x1^0, x0^0'=-1+x0^0, oldX1^0'=x1^0, TRUE, cost: 1 Applied preprocessing Original rule: l6 -> l4 : oldX0^0'=oldX0^post7, x1^0'=x1^post7, oldX2^0'=oldX2^post7, x0^0'=x0^post7, oldX1^0'=oldX1^post7, oldX3^0'=oldX3^post7, (-oldX3^post7+oldX3^0 == 0 /\ x1^post7-oldX1^post7 == 0 /\ -oldX0^post7+x0^post7 == 0 /\ oldX0^post7-x0^0 == 0 /\ oldX0^post7 <= 0 /\ -x1^0+oldX1^post7 == 0 /\ oldX2^0-oldX2^post7 == 0), cost: 1 New rule: l6 -> l4 : oldX0^0'=x0^0, oldX1^0'=x1^0, x0^0 <= 0, cost: 1 Applied preprocessing Original rule: l6 -> l5 : oldX0^0'=oldX0^post8, x1^0'=x1^post8, oldX2^0'=oldX2^post8, x0^0'=x0^post8, oldX1^0'=oldX1^post8, oldX3^0'=oldX3^post8, (x1^post8-oldX1^post8 == 0 /\ 1-oldX0^post8 <= 0 /\ oldX3^0-oldX3^post8 == 0 /\ oldX2^0-oldX2^post8 == 0 /\ -oldX0^post8+x0^post8 == 0 /\ oldX0^post8-x0^0 == 0 /\ -x1^0+oldX1^post8 == 0), cost: 1 New rule: l6 -> l5 : oldX0^0'=x0^0, oldX1^0'=x1^0, -1+x0^0 >= 0, cost: 1 Applied preprocessing Original rule: l3 -> l6 : oldX0^0'=oldX0^post9, x1^0'=x1^post9, oldX2^0'=oldX2^post9, x0^0'=x0^post9, oldX1^0'=oldX1^post9, oldX3^0'=oldX3^post9, (-x1^0+oldX1^post9 == 0 /\ oldX0^post9-x0^0 == 0 /\ oldX2^0-oldX2^post9 == 0 /\ x1^post9-oldX1^post9 == 0 /\ -oldX0^post9+x0^post9 == 0 /\ -oldX3^post9+oldX3^0 == 0), cost: 1 New rule: l3 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 1 Applied preprocessing Original rule: l7 -> l2 : oldX0^0'=oldX0^post11, x1^0'=x1^post11, oldX2^0'=oldX2^post11, x0^0'=x0^post11, oldX1^0'=oldX1^post11, oldX3^0'=oldX3^post11, (x1^0-x1^post11 == 0 /\ oldX0^0-oldX0^post11 == 0 /\ oldX2^0-oldX2^post11 == 0 /\ -oldX3^post11+oldX3^0 == 0 /\ x0^0-x0^post11 == 0 /\ -oldX1^post11+oldX1^0 == 0), cost: 1 New rule: l7 -> l2 : TRUE, cost: 1 Applied preprocessing Original rule: l7 -> l4 : oldX0^0'=oldX0^post13, x1^0'=x1^post13, oldX2^0'=oldX2^post13, x0^0'=x0^post13, oldX1^0'=oldX1^post13, oldX3^0'=oldX3^post13, (-oldX3^post13+oldX3^0 == 0 /\ x0^0-x0^post13 == 0 /\ x1^0-x1^post13 == 0 /\ oldX2^0-oldX2^post13 == 0 /\ -oldX1^post13+oldX1^0 == 0 /\ oldX0^0-oldX0^post13 == 0), cost: 1 New rule: l7 -> l4 : TRUE, cost: 1 Applied preprocessing Original rule: l7 -> l5 : oldX0^0'=oldX0^post14, x1^0'=x1^post14, oldX2^0'=oldX2^post14, x0^0'=x0^post14, oldX1^0'=oldX1^post14, oldX3^0'=oldX3^post14, (x1^0-x1^post14 == 0 /\ x0^0-x0^post14 == 0 /\ -oldX2^post14+oldX2^0 == 0 /\ oldX1^0-oldX1^post14 == 0 /\ oldX0^0-oldX0^post14 == 0 /\ -oldX3^post14+oldX3^0 == 0), cost: 1 New rule: l7 -> l5 : TRUE, cost: 1 Applied preprocessing Original rule: l7 -> l6 : oldX0^0'=oldX0^post15, x1^0'=x1^post15, oldX2^0'=oldX2^post15, x0^0'=x0^post15, oldX1^0'=oldX1^post15, oldX3^0'=oldX3^post15, (oldX1^0-oldX1^post15 == 0 /\ oldX0^0-oldX0^post15 == 0 /\ -oldX3^post15+oldX3^0 == 0 /\ -x0^post15+x0^0 == 0 /\ -oldX2^post15+oldX2^0 == 0 /\ x1^0-x1^post15 == 0), cost: 1 New rule: l7 -> l6 : TRUE, cost: 1 Applied preprocessing Original rule: l7 -> l3 : oldX0^0'=oldX0^post16, x1^0'=x1^post16, oldX2^0'=oldX2^post16, x0^0'=x0^post16, oldX1^0'=oldX1^post16, oldX3^0'=oldX3^post16, (oldX2^0-oldX2^post16 == 0 /\ oldX3^0-oldX3^post16 == 0 /\ -x0^post16+x0^0 == 0 /\ oldX0^0-oldX0^post16 == 0 /\ x1^0-x1^post16 == 0 /\ -oldX1^post16+oldX1^0 == 0), cost: 1 New rule: l7 -> l3 : TRUE, cost: 1 Applied preprocessing Original rule: l8 -> l7 : oldX0^0'=oldX0^post17, x1^0'=x1^post17, oldX2^0'=oldX2^post17, x0^0'=x0^post17, oldX1^0'=oldX1^post17, oldX3^0'=oldX3^post17, (-oldX3^post17+oldX3^0 == 0 /\ oldX0^0-oldX0^post17 == 0 /\ -oldX1^post17+oldX1^0 == 0 /\ x1^0-x1^post17 == 0 /\ oldX2^0-oldX2^post17 == 0 /\ x0^0-x0^post17 == 0), cost: 1 New rule: l8 -> l7 : TRUE, cost: 1 Simplified rules Start location: l8 18: l2 -> l3 : oldX0^0'=x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=x1^0, TRUE, cost: 1 23: l3 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 1 19: l4 -> l2 : oldX0^0'=x0^0, oldX1^0'=x1^0, -3+x1^0 >= 0, cost: 1 20: l5 -> l3 : oldX0^0'=x0^0, x1^0'=1+x1^0, x0^0'=-1+x0^0, oldX1^0'=x1^0, TRUE, cost: 1 21: l6 -> l4 : oldX0^0'=x0^0, oldX1^0'=x1^0, x0^0 <= 0, cost: 1 22: l6 -> l5 : oldX0^0'=x0^0, oldX1^0'=x1^0, -1+x0^0 >= 0, cost: 1 24: l7 -> l2 : TRUE, cost: 1 25: l7 -> l4 : TRUE, cost: 1 26: l7 -> l5 : TRUE, cost: 1 27: l7 -> l6 : TRUE, cost: 1 28: l7 -> l3 : TRUE, cost: 1 29: l8 -> l7 : TRUE, cost: 1 Eliminating location l7 by chaining: Applied chaining First rule: l8 -> l7 : TRUE, cost: 1 Second rule: l7 -> l2 : TRUE, cost: 1 New rule: l8 -> l2 : TRUE, cost: 2 Applied chaining First rule: l8 -> l7 : TRUE, cost: 1 Second rule: l7 -> l4 : TRUE, cost: 1 New rule: l8 -> l4 : TRUE, cost: 2 Applied chaining First rule: l8 -> l7 : TRUE, cost: 1 Second rule: l7 -> l5 : TRUE, cost: 1 New rule: l8 -> l5 : TRUE, cost: 2 Applied chaining First rule: l8 -> l7 : TRUE, cost: 1 Second rule: l7 -> l6 : TRUE, cost: 1 New rule: l8 -> l6 : TRUE, cost: 2 Applied chaining First rule: l8 -> l7 : TRUE, cost: 1 Second rule: l7 -> l3 : TRUE, cost: 1 New rule: l8 -> l3 : TRUE, cost: 2 Applied deletion Removed the following rules: 24 25 26 27 28 29 Eliminated locations on tree-shaped paths Start location: l8 18: l2 -> l3 : oldX0^0'=x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=x1^0, TRUE, cost: 1 23: l3 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 1 19: l4 -> l2 : oldX0^0'=x0^0, oldX1^0'=x1^0, -3+x1^0 >= 0, cost: 1 20: l5 -> l3 : oldX0^0'=x0^0, x1^0'=1+x1^0, x0^0'=-1+x0^0, oldX1^0'=x1^0, TRUE, cost: 1 21: l6 -> l4 : oldX0^0'=x0^0, oldX1^0'=x1^0, x0^0 <= 0, cost: 1 22: l6 -> l5 : oldX0^0'=x0^0, oldX1^0'=x1^0, -1+x0^0 >= 0, cost: 1 30: l8 -> l2 : TRUE, cost: 2 31: l8 -> l4 : TRUE, cost: 2 32: l8 -> l5 : TRUE, cost: 2 33: l8 -> l6 : TRUE, cost: 2 34: l8 -> l3 : TRUE, cost: 2 Eliminated location l2 Start location: l8 23: l3 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 1 35: l4 -> l3 : oldX0^0'=x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=x1^0, -3+x1^0 >= 0, cost: 2 20: l5 -> l3 : oldX0^0'=x0^0, x1^0'=1+x1^0, x0^0'=-1+x0^0, oldX1^0'=x1^0, TRUE, cost: 1 21: l6 -> l4 : oldX0^0'=x0^0, oldX1^0'=x1^0, x0^0 <= 0, cost: 1 22: l6 -> l5 : oldX0^0'=x0^0, oldX1^0'=x1^0, -1+x0^0 >= 0, cost: 1 31: l8 -> l4 : TRUE, cost: 2 32: l8 -> l5 : TRUE, cost: 2 33: l8 -> l6 : TRUE, cost: 2 34: l8 -> l3 : TRUE, cost: 2 36: l8 -> l3 : oldX0^0'=x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=x1^0, TRUE, cost: 3 Eliminated location l3 Start location: l8 39: l4 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, -3+x1^0 >= 0, cost: 3 37: l5 -> l6 : oldX0^0'=-1+x0^0, x1^0'=1+x1^0, x0^0'=-1+x0^0, oldX1^0'=1+x1^0, TRUE, cost: 2 21: l6 -> l4 : oldX0^0'=x0^0, oldX1^0'=x1^0, x0^0 <= 0, cost: 1 22: l6 -> l5 : oldX0^0'=x0^0, oldX1^0'=x1^0, -1+x0^0 >= 0, cost: 1 31: l8 -> l4 : TRUE, cost: 2 32: l8 -> l5 : TRUE, cost: 2 33: l8 -> l6 : TRUE, cost: 2 38: l8 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 3 40: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, TRUE, cost: 4 Eliminated location l4 Start location: l8 37: l5 -> l6 : oldX0^0'=-1+x0^0, x1^0'=1+x1^0, x0^0'=-1+x0^0, oldX1^0'=1+x1^0, TRUE, cost: 2 22: l6 -> l5 : oldX0^0'=x0^0, oldX1^0'=x1^0, -1+x0^0 >= 0, cost: 1 41: l6 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, (x0^0 <= 0 /\ -3+x1^0 >= 0), cost: 4 32: l8 -> l5 : TRUE, cost: 2 33: l8 -> l6 : TRUE, cost: 2 38: l8 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 3 40: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, TRUE, cost: 4 42: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, -3+x1^0 >= 0, cost: 5 Applied acceleration Original rule: l6 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, (x0^0 <= 0 /\ -3+x1^0 >= 0), cost: 4 New rule: l6 -> l6 : oldX0^0'=n0+x0^0, x1^0'=x1^0-2*n0, x0^0'=n0+x0^0, oldX1^0'=x1^0-2*n0, (-1+x1^0-2*n0 >= 0 /\ 1-n0-x0^0 >= 0 /\ -1+n0 >= 0), cost: 4*n0 Applied instantiation Original rule: l6 -> l6 : oldX0^0'=n0+x0^0, x1^0'=x1^0-2*n0, x0^0'=n0+x0^0, oldX1^0'=x1^0-2*n0, (-1+x1^0-2*n0 >= 0 /\ 1-n0-x0^0 >= 0 /\ -1+n0 >= 0), cost: 4*n0 New rule: l6 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (0 >= 0 /\ -x0^0 >= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 4-4*x0^0 Applied simplification Original rule: l6 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (0 >= 0 /\ -x0^0 >= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 4-4*x0^0 New rule: l6 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 4-4*x0^0 Applied deletion Removed the following rules: 41 Accelerated simple loops Start location: l8 37: l5 -> l6 : oldX0^0'=-1+x0^0, x1^0'=1+x1^0, x0^0'=-1+x0^0, oldX1^0'=1+x1^0, TRUE, cost: 2 22: l6 -> l5 : oldX0^0'=x0^0, oldX1^0'=x1^0, -1+x0^0 >= 0, cost: 1 44: l6 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 4-4*x0^0 32: l8 -> l5 : TRUE, cost: 2 33: l8 -> l6 : TRUE, cost: 2 38: l8 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 3 40: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, TRUE, cost: 4 42: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, -3+x1^0 >= 0, cost: 5 Applied chaining First rule: l8 -> l6 : TRUE, cost: 2 Second rule: l6 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 4-4*x0^0 New rule: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 6-4*x0^0 Applied chaining First rule: l5 -> l6 : oldX0^0'=-1+x0^0, x1^0'=1+x1^0, x0^0'=-1+x0^0, oldX1^0'=1+x1^0, TRUE, cost: 2 Second rule: l6 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 4-4*x0^0 New rule: l5 -> l6 : oldX0^0'=1, x1^0'=-3+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-3+x1^0+2*x0^0, (-1+x0^0 <= 0 /\ -4+x1^0+2*x0^0 >= 0), cost: 10-4*x0^0 Applied chaining First rule: l8 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 3 Second rule: l6 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 4-4*x0^0 New rule: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 7-4*x0^0 Applied chaining First rule: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, TRUE, cost: 4 Second rule: l6 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 4-4*x0^0 New rule: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (1+x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 4-4*x0^0 Applied chaining First rule: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, -3+x1^0 >= 0, cost: 5 Second rule: l6 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 4-4*x0^0 New rule: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (1+x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 5-4*x0^0 Applied deletion Removed the following rules: 44 Chained accelerated rules with incoming rules Start location: l8 37: l5 -> l6 : oldX0^0'=-1+x0^0, x1^0'=1+x1^0, x0^0'=-1+x0^0, oldX1^0'=1+x1^0, TRUE, cost: 2 46: l5 -> l6 : oldX0^0'=1, x1^0'=-3+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-3+x1^0+2*x0^0, (-1+x0^0 <= 0 /\ -4+x1^0+2*x0^0 >= 0), cost: 10-4*x0^0 22: l6 -> l5 : oldX0^0'=x0^0, oldX1^0'=x1^0, -1+x0^0 >= 0, cost: 1 32: l8 -> l5 : TRUE, cost: 2 33: l8 -> l6 : TRUE, cost: 2 38: l8 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 3 40: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, TRUE, cost: 4 42: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, -3+x1^0 >= 0, cost: 5 45: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 6-4*x0^0 47: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 7-4*x0^0 48: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (1+x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 4-4*x0^0 49: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (1+x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 5-4*x0^0 Eliminated location l5 Start location: l8 50: l6 -> l6 : oldX0^0'=-1+x0^0, x1^0'=1+x1^0, x0^0'=-1+x0^0, oldX1^0'=1+x1^0, -1+x0^0 >= 0, cost: 3 51: l6 -> l6 : oldX0^0'=1, x1^0'=-3+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-3+x1^0+2*x0^0, (-1+x0^0 <= 0 /\ -1+x0^0 >= 0 /\ -4+x1^0+2*x0^0 >= 0), cost: 11-4*x0^0 33: l8 -> l6 : TRUE, cost: 2 38: l8 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 3 40: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, TRUE, cost: 4 42: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, -3+x1^0 >= 0, cost: 5 45: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 6-4*x0^0 47: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 7-4*x0^0 48: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (1+x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 4-4*x0^0 49: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (1+x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 5-4*x0^0 52: l8 -> l6 : oldX0^0'=-1+x0^0, x1^0'=1+x1^0, x0^0'=-1+x0^0, oldX1^0'=1+x1^0, TRUE, cost: 4 53: l8 -> l6 : oldX0^0'=1, x1^0'=-3+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-3+x1^0+2*x0^0, (-1+x0^0 <= 0 /\ -4+x1^0+2*x0^0 >= 0), cost: 12-4*x0^0 Applied pruning (of leafs and parallel rules): Start location: l8 50: l6 -> l6 : oldX0^0'=-1+x0^0, x1^0'=1+x1^0, x0^0'=-1+x0^0, oldX1^0'=1+x1^0, -1+x0^0 >= 0, cost: 3 51: l6 -> l6 : oldX0^0'=1, x1^0'=-3+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-3+x1^0+2*x0^0, (-1+x0^0 <= 0 /\ -1+x0^0 >= 0 /\ -4+x1^0+2*x0^0 >= 0), cost: 11-4*x0^0 33: l8 -> l6 : TRUE, cost: 2 38: l8 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 3 42: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, -3+x1^0 >= 0, cost: 5 47: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 7-4*x0^0 49: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (1+x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 5-4*x0^0 Applied simplification Original rule: l6 -> l6 : oldX0^0'=1, x1^0'=-3+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-3+x1^0+2*x0^0, (-1+x0^0 <= 0 /\ -1+x0^0 >= 0 /\ -4+x1^0+2*x0^0 >= 0), cost: 11-4*x0^0 New rule: l6 -> l6 : oldX0^0'=1, x1^0'=-3+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-3+x1^0+2*x0^0, (-1+x0^0 == 0 /\ -4+x1^0+2*x0^0 >= 0), cost: 11-4*x0^0 Simplified simple loops Start location: l8 50: l6 -> l6 : oldX0^0'=-1+x0^0, x1^0'=1+x1^0, x0^0'=-1+x0^0, oldX1^0'=1+x1^0, -1+x0^0 >= 0, cost: 3 54: l6 -> l6 : oldX0^0'=1, x1^0'=-3+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-3+x1^0+2*x0^0, (-1+x0^0 == 0 /\ -4+x1^0+2*x0^0 >= 0), cost: 11-4*x0^0 33: l8 -> l6 : TRUE, cost: 2 38: l8 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 3 42: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, -3+x1^0 >= 0, cost: 5 47: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 7-4*x0^0 49: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (1+x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 5-4*x0^0 Applied acceleration Original rule: l6 -> l6 : oldX0^0'=-1+x0^0, x1^0'=1+x1^0, x0^0'=-1+x0^0, oldX1^0'=1+x1^0, -1+x0^0 >= 0, cost: 3 New rule: l6 -> l6 : oldX0^0'=-n12+x0^0, x1^0'=n12+x1^0, x0^0'=-n12+x0^0, oldX1^0'=n12+x1^0, (-n12+x0^0 >= 0 /\ -1+n12 >= 0), cost: 3*n12 Applied instantiation Original rule: l6 -> l6 : oldX0^0'=-n12+x0^0, x1^0'=n12+x1^0, x0^0'=-n12+x0^0, oldX1^0'=n12+x1^0, (-n12+x0^0 >= 0 /\ -1+n12 >= 0), cost: 3*n12 New rule: l6 -> l6 : oldX0^0'=0, x1^0'=x1^0+x0^0, x0^0'=0, oldX1^0'=x1^0+x0^0, (0 >= 0 /\ -1+x0^0 >= 0), cost: 3*x0^0 Applied acceleration Original rule: l6 -> l6 : oldX0^0'=1, x1^0'=-3+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-3+x1^0+2*x0^0, (-1+x0^0 == 0 /\ -4+x1^0+2*x0^0 >= 0), cost: 11-4*x0^0 New rule: l6 -> l6 : oldX0^0'=1, x1^0'=x1^0-n14, x0^0'=1, oldX1^0'=x1^0-n14, (-2+n14 >= 0 /\ -1+x1^0-n14 >= 0 /\ 1-x0^0 >= 0 /\ -1+x0^0 >= 0), cost: 7*n14 Applied instantiation Original rule: l6 -> l6 : oldX0^0'=1, x1^0'=x1^0-n14, x0^0'=1, oldX1^0'=x1^0-n14, (-2+n14 >= 0 /\ -1+x1^0-n14 >= 0 /\ 1-x0^0 >= 0 /\ -1+x0^0 >= 0), cost: 7*n14 New rule: l6 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (0 >= 0 /\ -3+x1^0 >= 0 /\ 1-x0^0 >= 0 /\ -1+x0^0 >= 0), cost: -7+7*x1^0 Applied simplification Original rule: l6 -> l6 : oldX0^0'=0, x1^0'=x1^0+x0^0, x0^0'=0, oldX1^0'=x1^0+x0^0, (0 >= 0 /\ -1+x0^0 >= 0), cost: 3*x0^0 New rule: l6 -> l6 : oldX0^0'=0, x1^0'=x1^0+x0^0, x0^0'=0, oldX1^0'=x1^0+x0^0, -1+x0^0 >= 0, cost: 3*x0^0 Applied simplification Original rule: l6 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (0 >= 0 /\ -3+x1^0 >= 0 /\ 1-x0^0 >= 0 /\ -1+x0^0 >= 0), cost: -7+7*x1^0 New rule: l6 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (-3+x1^0 >= 0 /\ -1+x0^0 <= 0 /\ -1+x0^0 >= 0), cost: -7+7*x1^0 Applied deletion Removed the following rules: 50 54 Accelerated simple loops Start location: l8 57: l6 -> l6 : oldX0^0'=0, x1^0'=x1^0+x0^0, x0^0'=0, oldX1^0'=x1^0+x0^0, -1+x0^0 >= 0, cost: 3*x0^0 58: l6 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (-3+x1^0 >= 0 /\ -1+x0^0 <= 0 /\ -1+x0^0 >= 0), cost: -7+7*x1^0 33: l8 -> l6 : TRUE, cost: 2 38: l8 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 3 42: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, -3+x1^0 >= 0, cost: 5 47: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 7-4*x0^0 49: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (1+x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 5-4*x0^0 Applied chaining First rule: l8 -> l6 : TRUE, cost: 2 Second rule: l6 -> l6 : oldX0^0'=0, x1^0'=x1^0+x0^0, x0^0'=0, oldX1^0'=x1^0+x0^0, -1+x0^0 >= 0, cost: 3*x0^0 New rule: l8 -> l6 : oldX0^0'=0, x1^0'=x1^0+x0^0, x0^0'=0, oldX1^0'=x1^0+x0^0, -1+x0^0 >= 0, cost: 2+3*x0^0 Applied chaining First rule: l8 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 3 Second rule: l6 -> l6 : oldX0^0'=0, x1^0'=x1^0+x0^0, x0^0'=0, oldX1^0'=x1^0+x0^0, -1+x0^0 >= 0, cost: 3*x0^0 New rule: l8 -> l6 : oldX0^0'=0, x1^0'=x1^0+x0^0, x0^0'=0, oldX1^0'=x1^0+x0^0, -1+x0^0 >= 0, cost: 3+3*x0^0 Applied chaining First rule: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, -3+x1^0 >= 0, cost: 5 Second rule: l6 -> l6 : oldX0^0'=0, x1^0'=x1^0+x0^0, x0^0'=0, oldX1^0'=x1^0+x0^0, -1+x0^0 >= 0, cost: 3*x0^0 New rule: l8 -> l6 : oldX0^0'=0, x1^0'=-1+x1^0+x0^0, x0^0'=0, oldX1^0'=-1+x1^0+x0^0, (x0^0 >= 0 /\ -3+x1^0 >= 0), cost: 8+3*x0^0 Applied chaining First rule: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 7-4*x0^0 Second rule: l6 -> l6 : oldX0^0'=0, x1^0'=x1^0+x0^0, x0^0'=0, oldX1^0'=x1^0+x0^0, -1+x0^0 >= 0, cost: 3*x0^0 New rule: l8 -> l6 : oldX0^0'=0, x1^0'=-1+x1^0+2*x0^0, x0^0'=0, oldX1^0'=-1+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 10-4*x0^0 Applied chaining First rule: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (1+x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 5-4*x0^0 Second rule: l6 -> l6 : oldX0^0'=0, x1^0'=x1^0+x0^0, x0^0'=0, oldX1^0'=x1^0+x0^0, -1+x0^0 >= 0, cost: 3*x0^0 New rule: l8 -> l6 : oldX0^0'=0, x1^0'=-1+x1^0+2*x0^0, x0^0'=0, oldX1^0'=-1+x1^0+2*x0^0, (1+x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 8-4*x0^0 Applied chaining First rule: l8 -> l6 : TRUE, cost: 2 Second rule: l6 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (-3+x1^0 >= 0 /\ -1+x0^0 <= 0 /\ -1+x0^0 >= 0), cost: -7+7*x1^0 New rule: l8 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (-3+x1^0 >= 0 /\ -1+x0^0 == 0), cost: -5+7*x1^0 Applied chaining First rule: l8 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 3 Second rule: l6 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (-3+x1^0 >= 0 /\ -1+x0^0 <= 0 /\ -1+x0^0 >= 0), cost: -7+7*x1^0 New rule: l8 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (-3+x1^0 >= 0 /\ -1+x0^0 == 0), cost: -4+7*x1^0 Applied chaining First rule: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, -3+x1^0 >= 0, cost: 5 Second rule: l6 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (-3+x1^0 >= 0 /\ -1+x0^0 <= 0 /\ -1+x0^0 >= 0), cost: -7+7*x1^0 New rule: l8 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (x0^0 == 0 /\ -5+x1^0 >= 0), cost: -16+7*x1^0 Applied chaining First rule: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 7-4*x0^0 Second rule: l6 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (-3+x1^0 >= 0 /\ -1+x0^0 <= 0 /\ -1+x0^0 >= 0), cost: -7+7*x1^0 New rule: l8 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (x0^0 <= 0 /\ -5+x1^0+2*x0^0 >= 0), cost: -14+7*x1^0+10*x0^0 Applied chaining First rule: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (1+x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 5-4*x0^0 Second rule: l6 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (-3+x1^0 >= 0 /\ -1+x0^0 <= 0 /\ -1+x0^0 >= 0), cost: -7+7*x1^0 New rule: l8 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (1+x0^0 <= 0 /\ -5+x1^0+2*x0^0 >= 0), cost: -16+7*x1^0+10*x0^0 Applied deletion Removed the following rules: 57 58 Chained accelerated rules with incoming rules Start location: l8 33: l8 -> l6 : TRUE, cost: 2 38: l8 -> l6 : oldX0^0'=x0^0, oldX1^0'=x1^0, TRUE, cost: 3 42: l8 -> l6 : oldX0^0'=1+x0^0, x1^0'=-2+x1^0, x0^0'=1+x0^0, oldX1^0'=-2+x1^0, -3+x1^0 >= 0, cost: 5 47: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 7-4*x0^0 49: l8 -> l6 : oldX0^0'=1, x1^0'=-2+x1^0+2*x0^0, x0^0'=1, oldX1^0'=-2+x1^0+2*x0^0, (1+x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 5-4*x0^0 59: l8 -> l6 : oldX0^0'=0, x1^0'=x1^0+x0^0, x0^0'=0, oldX1^0'=x1^0+x0^0, -1+x0^0 >= 0, cost: 2+3*x0^0 60: l8 -> l6 : oldX0^0'=0, x1^0'=x1^0+x0^0, x0^0'=0, oldX1^0'=x1^0+x0^0, -1+x0^0 >= 0, cost: 3+3*x0^0 61: l8 -> l6 : oldX0^0'=0, x1^0'=-1+x1^0+x0^0, x0^0'=0, oldX1^0'=-1+x1^0+x0^0, (x0^0 >= 0 /\ -3+x1^0 >= 0), cost: 8+3*x0^0 62: l8 -> l6 : oldX0^0'=0, x1^0'=-1+x1^0+2*x0^0, x0^0'=0, oldX1^0'=-1+x1^0+2*x0^0, (x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 10-4*x0^0 63: l8 -> l6 : oldX0^0'=0, x1^0'=-1+x1^0+2*x0^0, x0^0'=0, oldX1^0'=-1+x1^0+2*x0^0, (1+x0^0 <= 0 /\ -3+x1^0+2*x0^0 >= 0), cost: 8-4*x0^0 64: l8 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (-3+x1^0 >= 0 /\ -1+x0^0 == 0), cost: -5+7*x1^0 65: l8 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (-3+x1^0 >= 0 /\ -1+x0^0 == 0), cost: -4+7*x1^0 66: l8 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (x0^0 == 0 /\ -5+x1^0 >= 0), cost: -16+7*x1^0 67: l8 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (x0^0 <= 0 /\ -5+x1^0+2*x0^0 >= 0), cost: -14+7*x1^0+10*x0^0 68: l8 -> l6 : oldX0^0'=1, x1^0'=1, x0^0'=1, oldX1^0'=1, (1+x0^0 <= 0 /\ -5+x1^0+2*x0^0 >= 0), cost: -16+7*x1^0+10*x0^0 Removed unreachable locations and irrelevant leafs Start location: l8 Computing asymptotic complexity Proved the following lower bound Complexity: Unknown Cpx degree: ? Solved cost: 0 Rule cost: 0