NO Initial ITS Start location: l13 0: l0 -> l1 : i6^0'=i6^post0, tmp___09^0'=tmp___09^post0, s^0'=s^post0, tmp^0'=tmp^post0, length5^0'=length5^post0, tmp15^0'=tmp15^post0, (-s^post0+s^0 == 0 /\ -tmp15^post0+tmp15^0 == 0 /\ i6^0-i6^post0 == 0 /\ tmp___09^0-tmp___09^post0 == 0 /\ length5^0-length5^post0 == 0 /\ -tmp^post0+tmp^0 == 0), cost: 1 15: l1 -> l2 : i6^0'=i6^post15, tmp___09^0'=tmp___09^post15, s^0'=s^post15, tmp^0'=tmp^post15, length5^0'=length5^post15, tmp15^0'=tmp15^post15, (length5^0-length5^post15 == 0 /\ i6^0-i6^post15 == 0 /\ -tmp15^post15+tmp15^0 == 0 /\ -tmp^post15+tmp^0 == 0 /\ -s^post15+s^0 == 0 /\ tmp___09^0-tmp___09^post15 == 0), cost: 1 1: l2 -> l0 : i6^0'=i6^post1, tmp___09^0'=tmp___09^post1, s^0'=s^post1, tmp^0'=tmp^post1, length5^0'=length5^post1, tmp15^0'=tmp15^post1, (length5^0-length5^post1 == 0 /\ i6^0-i6^post1 == 0 /\ -tmp15^post1+tmp15^0 == 0 /\ tmp^0-tmp^post1 == 0 /\ tmp___09^0-tmp___09^post1 == 0 /\ -s^post1+s^0 == 0), cost: 1 2: l2 -> l3 : i6^0'=i6^post2, tmp___09^0'=tmp___09^post2, s^0'=s^post2, tmp^0'=tmp^post2, length5^0'=length5^post2, tmp15^0'=tmp15^post2, (-tmp^post2+tmp^0 == 0 /\ i6^0-i6^post2 == 0 /\ tmp15^0-tmp15^post2 == 0 /\ tmp___09^0-tmp___09^post2 == 0 /\ length5^0-length5^post2 == 0 /\ s^0-s^post2 == 0), cost: 1 3: l2 -> l0 : i6^0'=i6^post3, tmp___09^0'=tmp___09^post3, s^0'=s^post3, tmp^0'=tmp^post3, length5^0'=length5^post3, tmp15^0'=tmp15^post3, (-tmp15^post3+tmp15^0 == 0 /\ tmp___09^0-tmp___09^post3 == 0 /\ -tmp^post3+tmp^0 == 0 /\ s^0-s^post3 == 0 /\ -length5^post3+length5^0 == 0 /\ i6^0-i6^post3 == 0), cost: 1 4: l4 -> l5 : i6^0'=i6^post4, tmp___09^0'=tmp___09^post4, s^0'=s^post4, tmp^0'=tmp^post4, length5^0'=length5^post4, tmp15^0'=tmp15^post4, (i6^0-i6^post4 == 0 /\ tmp___09^0-tmp___09^post4 == 0 /\ s^0-s^post4 == 0 /\ -tmp^post4+tmp^0 == 0 /\ -tmp15^post4+tmp15^0 == 0 /\ -length5^post4+length5^0 == 0), cost: 1 16: l5 -> l9 : i6^0'=i6^post16, tmp___09^0'=tmp___09^post16, s^0'=s^post16, tmp^0'=tmp^post16, length5^0'=length5^post16, tmp15^0'=tmp15^post16, (s^0-s^post16 == 0 /\ tmp15^0-tmp15^post16 == 0 /\ -tmp^post16+tmp^0 == 0 /\ i6^0-i6^post16 == 0 /\ -i6^0+length5^0 <= 0 /\ tmp___09^0-tmp___09^post16 == 0 /\ -length5^post16+length5^0 == 0), cost: 1 17: l5 -> l4 : i6^0'=i6^post17, tmp___09^0'=tmp___09^post17, s^0'=s^post17, tmp^0'=tmp^post17, length5^0'=length5^post17, tmp15^0'=tmp15^post17, (0 == 0 /\ -tmp15^post17+tmp15^0 == 0 /\ -length5^post17+length5^0 == 0 /\ -1-i6^0+i6^post17 == 0 /\ 1+i6^0-length5^0 <= 0 /\ s^0-s^post17 == 0 /\ tmp^0-tmp^post17 == 0), cost: 1 5: l6 -> l7 : i6^0'=i6^post5, tmp___09^0'=tmp___09^post5, s^0'=s^post5, tmp^0'=tmp^post5, length5^0'=length5^post5, tmp15^0'=tmp15^post5, (-tmp15^post5+tmp15^0 == 0 /\ i6^0-i6^post5 == 0 /\ -length5^post5+length5^0 == 0 /\ tmp___09^0-tmp___09^post5 == 0 /\ tmp^0-tmp^post5 == 0 /\ s^0-s^post5 == 0), cost: 1 10: l7 -> l8 : i6^0'=i6^post10, tmp___09^0'=tmp___09^post10, s^0'=s^post10, tmp^0'=tmp^post10, length5^0'=length5^post10, tmp15^0'=tmp15^post10, (s^0-s^post10 == 0 /\ i6^0-i6^post10 == 0 /\ -tmp15^post10+tmp15^0 == 0 /\ -length5^post10+length5^0 == 0 /\ tmp^0-tmp^post10 == 0 /\ tmp___09^0-tmp___09^post10 == 0), cost: 1 6: l8 -> l6 : i6^0'=i6^post6, tmp___09^0'=tmp___09^post6, s^0'=s^post6, tmp^0'=tmp^post6, length5^0'=length5^post6, tmp15^0'=tmp15^post6, (tmp___09^0-tmp___09^post6 == 0 /\ i6^0-i6^post6 == 0 /\ length5^0-length5^post6 == 0 /\ tmp^0-tmp^post6 == 0 /\ -s^post6+s^0 == 0 /\ -tmp15^post6+tmp15^0 == 0), cost: 1 7: l8 -> l6 : i6^0'=i6^post7, tmp___09^0'=tmp___09^post7, s^0'=s^post7, tmp^0'=tmp^post7, length5^0'=length5^post7, tmp15^0'=tmp15^post7, (-tmp15^post7+tmp15^0 == 0 /\ i6^0-i6^post7 == 0 /\ -tmp^post7+tmp^0 == 0 /\ tmp___09^0-tmp___09^post7 == 0 /\ length5^0-length5^post7 == 0 /\ s^0-s^post7 == 0), cost: 1 8: l8 -> l1 : i6^0'=i6^post8, tmp___09^0'=tmp___09^post8, s^0'=s^post8, tmp^0'=tmp^post8, length5^0'=length5^post8, tmp15^0'=tmp15^post8, (tmp15^0-tmp15^post8 == 0 /\ -tmp^post8+tmp^0 == 0 /\ tmp___09^0-tmp___09^post8 == 0 /\ s^0-s^post8 == 0 /\ -length5^post8+length5^0 == 0 /\ i6^0-i6^post8 == 0), cost: 1 9: l9 -> l10 : i6^0'=i6^post9, tmp___09^0'=tmp___09^post9, s^0'=s^post9, tmp^0'=tmp^post9, length5^0'=length5^post9, tmp15^0'=tmp15^post9, (tmp___09^0-tmp___09^post9 == 0 /\ -tmp^post9+tmp^0 == 0 /\ -length5^post9+length5^0 == 0 /\ s^0-s^post9 == 0 /\ i6^0-i6^post9 == 0 /\ -tmp15^post9+tmp15^0 == 0), cost: 1 12: l10 -> l11 : i6^0'=i6^post12, tmp___09^0'=tmp___09^post12, s^0'=s^post12, tmp^0'=tmp^post12, length5^0'=length5^post12, tmp15^0'=tmp15^post12, (-tmp15^post12+tmp15^0 == 0 /\ i6^0-i6^post12 == 0 /\ -length5^post12+length5^0 == 0 /\ tmp^0-tmp^post12 == 0 /\ tmp___09^0-tmp___09^post12 == 0 /\ s^0-s^post12 == 0), cost: 1 13: l10 -> l7 : i6^0'=i6^post13, tmp___09^0'=tmp___09^post13, s^0'=s^post13, tmp^0'=tmp^post13, length5^0'=length5^post13, tmp15^0'=tmp15^post13, (-tmp15^post13+tmp15^0 == 0 /\ tmp^0-tmp^post13 == 0 /\ tmp___09^0-tmp___09^post13 == 0 /\ s^0-s^post13 == 0 /\ -length5^post13+length5^0 == 0 /\ i6^0-i6^post13 == 0), cost: 1 14: l10 -> l11 : i6^0'=i6^post14, tmp___09^0'=tmp___09^post14, s^0'=s^post14, tmp^0'=tmp^post14, length5^0'=length5^post14, tmp15^0'=tmp15^post14, (tmp___09^0-tmp___09^post14 == 0 /\ tmp^0-tmp^post14 == 0 /\ -s^post14+s^0 == 0 /\ length5^0-length5^post14 == 0 /\ i6^0-i6^post14 == 0 /\ -tmp15^post14+tmp15^0 == 0), cost: 1 11: l11 -> l9 : i6^0'=i6^post11, tmp___09^0'=tmp___09^post11, s^0'=s^post11, tmp^0'=tmp^post11, length5^0'=length5^post11, tmp15^0'=tmp15^post11, (0 == 0 /\ tmp___09^0-tmp___09^post11 == 0 /\ i6^0-i6^post11 == 0 /\ s^0-s^post11 == 0 /\ tmp^0-tmp^post11 == 0 /\ -length5^post11+length5^0 == 0), cost: 1 18: l12 -> l4 : i6^0'=i6^post18, tmp___09^0'=tmp___09^post18, s^0'=s^post18, tmp^0'=tmp^post18, length5^0'=length5^post18, tmp15^0'=tmp15^post18, (0 == 0 /\ s^post18-tmp^post18 == 0 /\ length5^post18-s^post18 == 0 /\ -tmp___09^post18+tmp___09^0 == 0 /\ i6^post18 == 0 /\ -tmp15^post18+tmp15^0 == 0), cost: 1 19: l13 -> l12 : i6^0'=i6^post19, tmp___09^0'=tmp___09^post19, s^0'=s^post19, tmp^0'=tmp^post19, length5^0'=length5^post19, tmp15^0'=tmp15^post19, (-tmp15^post19+tmp15^0 == 0 /\ -s^post19+s^0 == 0 /\ tmp^0-tmp^post19 == 0 /\ tmp___09^0-tmp___09^post19 == 0 /\ length5^0-length5^post19 == 0 /\ i6^0-i6^post19 == 0), cost: 1 Removed unreachable rules and leafs Start location: l13 0: l0 -> l1 : i6^0'=i6^post0, tmp___09^0'=tmp___09^post0, s^0'=s^post0, tmp^0'=tmp^post0, length5^0'=length5^post0, tmp15^0'=tmp15^post0, (-s^post0+s^0 == 0 /\ -tmp15^post0+tmp15^0 == 0 /\ i6^0-i6^post0 == 0 /\ tmp___09^0-tmp___09^post0 == 0 /\ length5^0-length5^post0 == 0 /\ -tmp^post0+tmp^0 == 0), cost: 1 15: l1 -> l2 : i6^0'=i6^post15, tmp___09^0'=tmp___09^post15, s^0'=s^post15, tmp^0'=tmp^post15, length5^0'=length5^post15, tmp15^0'=tmp15^post15, (length5^0-length5^post15 == 0 /\ i6^0-i6^post15 == 0 /\ -tmp15^post15+tmp15^0 == 0 /\ -tmp^post15+tmp^0 == 0 /\ -s^post15+s^0 == 0 /\ tmp___09^0-tmp___09^post15 == 0), cost: 1 1: l2 -> l0 : i6^0'=i6^post1, tmp___09^0'=tmp___09^post1, s^0'=s^post1, tmp^0'=tmp^post1, length5^0'=length5^post1, tmp15^0'=tmp15^post1, (length5^0-length5^post1 == 0 /\ i6^0-i6^post1 == 0 /\ -tmp15^post1+tmp15^0 == 0 /\ tmp^0-tmp^post1 == 0 /\ tmp___09^0-tmp___09^post1 == 0 /\ -s^post1+s^0 == 0), cost: 1 3: l2 -> l0 : i6^0'=i6^post3, tmp___09^0'=tmp___09^post3, s^0'=s^post3, tmp^0'=tmp^post3, length5^0'=length5^post3, tmp15^0'=tmp15^post3, (-tmp15^post3+tmp15^0 == 0 /\ tmp___09^0-tmp___09^post3 == 0 /\ -tmp^post3+tmp^0 == 0 /\ s^0-s^post3 == 0 /\ -length5^post3+length5^0 == 0 /\ i6^0-i6^post3 == 0), cost: 1 4: l4 -> l5 : i6^0'=i6^post4, tmp___09^0'=tmp___09^post4, s^0'=s^post4, tmp^0'=tmp^post4, length5^0'=length5^post4, tmp15^0'=tmp15^post4, (i6^0-i6^post4 == 0 /\ tmp___09^0-tmp___09^post4 == 0 /\ s^0-s^post4 == 0 /\ -tmp^post4+tmp^0 == 0 /\ -tmp15^post4+tmp15^0 == 0 /\ -length5^post4+length5^0 == 0), cost: 1 16: l5 -> l9 : i6^0'=i6^post16, tmp___09^0'=tmp___09^post16, s^0'=s^post16, tmp^0'=tmp^post16, length5^0'=length5^post16, tmp15^0'=tmp15^post16, (s^0-s^post16 == 0 /\ tmp15^0-tmp15^post16 == 0 /\ -tmp^post16+tmp^0 == 0 /\ i6^0-i6^post16 == 0 /\ -i6^0+length5^0 <= 0 /\ tmp___09^0-tmp___09^post16 == 0 /\ -length5^post16+length5^0 == 0), cost: 1 17: l5 -> l4 : i6^0'=i6^post17, tmp___09^0'=tmp___09^post17, s^0'=s^post17, tmp^0'=tmp^post17, length5^0'=length5^post17, tmp15^0'=tmp15^post17, (0 == 0 /\ -tmp15^post17+tmp15^0 == 0 /\ -length5^post17+length5^0 == 0 /\ -1-i6^0+i6^post17 == 0 /\ 1+i6^0-length5^0 <= 0 /\ s^0-s^post17 == 0 /\ tmp^0-tmp^post17 == 0), cost: 1 5: l6 -> l7 : i6^0'=i6^post5, tmp___09^0'=tmp___09^post5, s^0'=s^post5, tmp^0'=tmp^post5, length5^0'=length5^post5, tmp15^0'=tmp15^post5, (-tmp15^post5+tmp15^0 == 0 /\ i6^0-i6^post5 == 0 /\ -length5^post5+length5^0 == 0 /\ tmp___09^0-tmp___09^post5 == 0 /\ tmp^0-tmp^post5 == 0 /\ s^0-s^post5 == 0), cost: 1 10: l7 -> l8 : i6^0'=i6^post10, tmp___09^0'=tmp___09^post10, s^0'=s^post10, tmp^0'=tmp^post10, length5^0'=length5^post10, tmp15^0'=tmp15^post10, (s^0-s^post10 == 0 /\ i6^0-i6^post10 == 0 /\ -tmp15^post10+tmp15^0 == 0 /\ -length5^post10+length5^0 == 0 /\ tmp^0-tmp^post10 == 0 /\ tmp___09^0-tmp___09^post10 == 0), cost: 1 6: l8 -> l6 : i6^0'=i6^post6, tmp___09^0'=tmp___09^post6, s^0'=s^post6, tmp^0'=tmp^post6, length5^0'=length5^post6, tmp15^0'=tmp15^post6, (tmp___09^0-tmp___09^post6 == 0 /\ i6^0-i6^post6 == 0 /\ length5^0-length5^post6 == 0 /\ tmp^0-tmp^post6 == 0 /\ -s^post6+s^0 == 0 /\ -tmp15^post6+tmp15^0 == 0), cost: 1 7: l8 -> l6 : i6^0'=i6^post7, tmp___09^0'=tmp___09^post7, s^0'=s^post7, tmp^0'=tmp^post7, length5^0'=length5^post7, tmp15^0'=tmp15^post7, (-tmp15^post7+tmp15^0 == 0 /\ i6^0-i6^post7 == 0 /\ -tmp^post7+tmp^0 == 0 /\ tmp___09^0-tmp___09^post7 == 0 /\ length5^0-length5^post7 == 0 /\ s^0-s^post7 == 0), cost: 1 8: l8 -> l1 : i6^0'=i6^post8, tmp___09^0'=tmp___09^post8, s^0'=s^post8, tmp^0'=tmp^post8, length5^0'=length5^post8, tmp15^0'=tmp15^post8, (tmp15^0-tmp15^post8 == 0 /\ -tmp^post8+tmp^0 == 0 /\ tmp___09^0-tmp___09^post8 == 0 /\ s^0-s^post8 == 0 /\ -length5^post8+length5^0 == 0 /\ i6^0-i6^post8 == 0), cost: 1 9: l9 -> l10 : i6^0'=i6^post9, tmp___09^0'=tmp___09^post9, s^0'=s^post9, tmp^0'=tmp^post9, length5^0'=length5^post9, tmp15^0'=tmp15^post9, (tmp___09^0-tmp___09^post9 == 0 /\ -tmp^post9+tmp^0 == 0 /\ -length5^post9+length5^0 == 0 /\ s^0-s^post9 == 0 /\ i6^0-i6^post9 == 0 /\ -tmp15^post9+tmp15^0 == 0), cost: 1 12: l10 -> l11 : i6^0'=i6^post12, tmp___09^0'=tmp___09^post12, s^0'=s^post12, tmp^0'=tmp^post12, length5^0'=length5^post12, tmp15^0'=tmp15^post12, (-tmp15^post12+tmp15^0 == 0 /\ i6^0-i6^post12 == 0 /\ -length5^post12+length5^0 == 0 /\ tmp^0-tmp^post12 == 0 /\ tmp___09^0-tmp___09^post12 == 0 /\ s^0-s^post12 == 0), cost: 1 13: l10 -> l7 : i6^0'=i6^post13, tmp___09^0'=tmp___09^post13, s^0'=s^post13, tmp^0'=tmp^post13, length5^0'=length5^post13, tmp15^0'=tmp15^post13, (-tmp15^post13+tmp15^0 == 0 /\ tmp^0-tmp^post13 == 0 /\ tmp___09^0-tmp___09^post13 == 0 /\ s^0-s^post13 == 0 /\ -length5^post13+length5^0 == 0 /\ i6^0-i6^post13 == 0), cost: 1 14: l10 -> l11 : i6^0'=i6^post14, tmp___09^0'=tmp___09^post14, s^0'=s^post14, tmp^0'=tmp^post14, length5^0'=length5^post14, tmp15^0'=tmp15^post14, (tmp___09^0-tmp___09^post14 == 0 /\ tmp^0-tmp^post14 == 0 /\ -s^post14+s^0 == 0 /\ length5^0-length5^post14 == 0 /\ i6^0-i6^post14 == 0 /\ -tmp15^post14+tmp15^0 == 0), cost: 1 11: l11 -> l9 : i6^0'=i6^post11, tmp___09^0'=tmp___09^post11, s^0'=s^post11, tmp^0'=tmp^post11, length5^0'=length5^post11, tmp15^0'=tmp15^post11, (0 == 0 /\ tmp___09^0-tmp___09^post11 == 0 /\ i6^0-i6^post11 == 0 /\ s^0-s^post11 == 0 /\ tmp^0-tmp^post11 == 0 /\ -length5^post11+length5^0 == 0), cost: 1 18: l12 -> l4 : i6^0'=i6^post18, tmp___09^0'=tmp___09^post18, s^0'=s^post18, tmp^0'=tmp^post18, length5^0'=length5^post18, tmp15^0'=tmp15^post18, (0 == 0 /\ s^post18-tmp^post18 == 0 /\ length5^post18-s^post18 == 0 /\ -tmp___09^post18+tmp___09^0 == 0 /\ i6^post18 == 0 /\ -tmp15^post18+tmp15^0 == 0), cost: 1 19: l13 -> l12 : i6^0'=i6^post19, tmp___09^0'=tmp___09^post19, s^0'=s^post19, tmp^0'=tmp^post19, length5^0'=length5^post19, tmp15^0'=tmp15^post19, (-tmp15^post19+tmp15^0 == 0 /\ -s^post19+s^0 == 0 /\ tmp^0-tmp^post19 == 0 /\ tmp___09^0-tmp___09^post19 == 0 /\ length5^0-length5^post19 == 0 /\ i6^0-i6^post19 == 0), cost: 1 Applied preprocessing Original rule: l0 -> l1 : i6^0'=i6^post0, tmp___09^0'=tmp___09^post0, s^0'=s^post0, tmp^0'=tmp^post0, length5^0'=length5^post0, tmp15^0'=tmp15^post0, (-s^post0+s^0 == 0 /\ -tmp15^post0+tmp15^0 == 0 /\ i6^0-i6^post0 == 0 /\ tmp___09^0-tmp___09^post0 == 0 /\ length5^0-length5^post0 == 0 /\ -tmp^post0+tmp^0 == 0), cost: 1 New rule: l0 -> l1 : TRUE, cost: 1 Applied preprocessing Original rule: l2 -> l0 : i6^0'=i6^post1, tmp___09^0'=tmp___09^post1, s^0'=s^post1, tmp^0'=tmp^post1, length5^0'=length5^post1, tmp15^0'=tmp15^post1, (length5^0-length5^post1 == 0 /\ i6^0-i6^post1 == 0 /\ -tmp15^post1+tmp15^0 == 0 /\ tmp^0-tmp^post1 == 0 /\ tmp___09^0-tmp___09^post1 == 0 /\ -s^post1+s^0 == 0), cost: 1 New rule: l2 -> l0 : TRUE, cost: 1 Applied preprocessing Original rule: l2 -> l0 : i6^0'=i6^post3, tmp___09^0'=tmp___09^post3, s^0'=s^post3, tmp^0'=tmp^post3, length5^0'=length5^post3, tmp15^0'=tmp15^post3, (-tmp15^post3+tmp15^0 == 0 /\ tmp___09^0-tmp___09^post3 == 0 /\ -tmp^post3+tmp^0 == 0 /\ s^0-s^post3 == 0 /\ -length5^post3+length5^0 == 0 /\ i6^0-i6^post3 == 0), cost: 1 New rule: l2 -> l0 : TRUE, cost: 1 Applied preprocessing Original rule: l4 -> l5 : i6^0'=i6^post4, tmp___09^0'=tmp___09^post4, s^0'=s^post4, tmp^0'=tmp^post4, length5^0'=length5^post4, tmp15^0'=tmp15^post4, (i6^0-i6^post4 == 0 /\ tmp___09^0-tmp___09^post4 == 0 /\ s^0-s^post4 == 0 /\ -tmp^post4+tmp^0 == 0 /\ -tmp15^post4+tmp15^0 == 0 /\ -length5^post4+length5^0 == 0), cost: 1 New rule: l4 -> l5 : TRUE, cost: 1 Applied preprocessing Original rule: l6 -> l7 : i6^0'=i6^post5, tmp___09^0'=tmp___09^post5, s^0'=s^post5, tmp^0'=tmp^post5, length5^0'=length5^post5, tmp15^0'=tmp15^post5, (-tmp15^post5+tmp15^0 == 0 /\ i6^0-i6^post5 == 0 /\ -length5^post5+length5^0 == 0 /\ tmp___09^0-tmp___09^post5 == 0 /\ tmp^0-tmp^post5 == 0 /\ s^0-s^post5 == 0), cost: 1 New rule: l6 -> l7 : TRUE, cost: 1 Applied preprocessing Original rule: l8 -> l6 : i6^0'=i6^post6, tmp___09^0'=tmp___09^post6, s^0'=s^post6, tmp^0'=tmp^post6, length5^0'=length5^post6, tmp15^0'=tmp15^post6, (tmp___09^0-tmp___09^post6 == 0 /\ i6^0-i6^post6 == 0 /\ length5^0-length5^post6 == 0 /\ tmp^0-tmp^post6 == 0 /\ -s^post6+s^0 == 0 /\ -tmp15^post6+tmp15^0 == 0), cost: 1 New rule: l8 -> l6 : TRUE, cost: 1 Applied preprocessing Original rule: l8 -> l6 : i6^0'=i6^post7, tmp___09^0'=tmp___09^post7, s^0'=s^post7, tmp^0'=tmp^post7, length5^0'=length5^post7, tmp15^0'=tmp15^post7, (-tmp15^post7+tmp15^0 == 0 /\ i6^0-i6^post7 == 0 /\ -tmp^post7+tmp^0 == 0 /\ tmp___09^0-tmp___09^post7 == 0 /\ length5^0-length5^post7 == 0 /\ s^0-s^post7 == 0), cost: 1 New rule: l8 -> l6 : TRUE, cost: 1 Applied preprocessing Original rule: l8 -> l1 : i6^0'=i6^post8, tmp___09^0'=tmp___09^post8, s^0'=s^post8, tmp^0'=tmp^post8, length5^0'=length5^post8, tmp15^0'=tmp15^post8, (tmp15^0-tmp15^post8 == 0 /\ -tmp^post8+tmp^0 == 0 /\ tmp___09^0-tmp___09^post8 == 0 /\ s^0-s^post8 == 0 /\ -length5^post8+length5^0 == 0 /\ i6^0-i6^post8 == 0), cost: 1 New rule: l8 -> l1 : TRUE, cost: 1 Applied preprocessing Original rule: l9 -> l10 : i6^0'=i6^post9, tmp___09^0'=tmp___09^post9, s^0'=s^post9, tmp^0'=tmp^post9, length5^0'=length5^post9, tmp15^0'=tmp15^post9, (tmp___09^0-tmp___09^post9 == 0 /\ -tmp^post9+tmp^0 == 0 /\ -length5^post9+length5^0 == 0 /\ s^0-s^post9 == 0 /\ i6^0-i6^post9 == 0 /\ -tmp15^post9+tmp15^0 == 0), cost: 1 New rule: l9 -> l10 : TRUE, cost: 1 Applied preprocessing Original rule: l7 -> l8 : i6^0'=i6^post10, tmp___09^0'=tmp___09^post10, s^0'=s^post10, tmp^0'=tmp^post10, length5^0'=length5^post10, tmp15^0'=tmp15^post10, (s^0-s^post10 == 0 /\ i6^0-i6^post10 == 0 /\ -tmp15^post10+tmp15^0 == 0 /\ -length5^post10+length5^0 == 0 /\ tmp^0-tmp^post10 == 0 /\ tmp___09^0-tmp___09^post10 == 0), cost: 1 New rule: l7 -> l8 : TRUE, cost: 1 Applied preprocessing Original rule: l11 -> l9 : i6^0'=i6^post11, tmp___09^0'=tmp___09^post11, s^0'=s^post11, tmp^0'=tmp^post11, length5^0'=length5^post11, tmp15^0'=tmp15^post11, (0 == 0 /\ tmp___09^0-tmp___09^post11 == 0 /\ i6^0-i6^post11 == 0 /\ s^0-s^post11 == 0 /\ tmp^0-tmp^post11 == 0 /\ -length5^post11+length5^0 == 0), cost: 1 New rule: l11 -> l9 : tmp15^0'=tmp15^post11, 0 == 0, cost: 1 Applied preprocessing Original rule: l10 -> l11 : i6^0'=i6^post12, tmp___09^0'=tmp___09^post12, s^0'=s^post12, tmp^0'=tmp^post12, length5^0'=length5^post12, tmp15^0'=tmp15^post12, (-tmp15^post12+tmp15^0 == 0 /\ i6^0-i6^post12 == 0 /\ -length5^post12+length5^0 == 0 /\ tmp^0-tmp^post12 == 0 /\ tmp___09^0-tmp___09^post12 == 0 /\ s^0-s^post12 == 0), cost: 1 New rule: l10 -> l11 : TRUE, cost: 1 Applied preprocessing Original rule: l10 -> l7 : i6^0'=i6^post13, tmp___09^0'=tmp___09^post13, s^0'=s^post13, tmp^0'=tmp^post13, length5^0'=length5^post13, tmp15^0'=tmp15^post13, (-tmp15^post13+tmp15^0 == 0 /\ tmp^0-tmp^post13 == 0 /\ tmp___09^0-tmp___09^post13 == 0 /\ s^0-s^post13 == 0 /\ -length5^post13+length5^0 == 0 /\ i6^0-i6^post13 == 0), cost: 1 New rule: l10 -> l7 : TRUE, cost: 1 Applied preprocessing Original rule: l10 -> l11 : i6^0'=i6^post14, tmp___09^0'=tmp___09^post14, s^0'=s^post14, tmp^0'=tmp^post14, length5^0'=length5^post14, tmp15^0'=tmp15^post14, (tmp___09^0-tmp___09^post14 == 0 /\ tmp^0-tmp^post14 == 0 /\ -s^post14+s^0 == 0 /\ length5^0-length5^post14 == 0 /\ i6^0-i6^post14 == 0 /\ -tmp15^post14+tmp15^0 == 0), cost: 1 New rule: l10 -> l11 : TRUE, cost: 1 Applied preprocessing Original rule: l1 -> l2 : i6^0'=i6^post15, tmp___09^0'=tmp___09^post15, s^0'=s^post15, tmp^0'=tmp^post15, length5^0'=length5^post15, tmp15^0'=tmp15^post15, (length5^0-length5^post15 == 0 /\ i6^0-i6^post15 == 0 /\ -tmp15^post15+tmp15^0 == 0 /\ -tmp^post15+tmp^0 == 0 /\ -s^post15+s^0 == 0 /\ tmp___09^0-tmp___09^post15 == 0), cost: 1 New rule: l1 -> l2 : TRUE, cost: 1 Applied preprocessing Original rule: l5 -> l9 : i6^0'=i6^post16, tmp___09^0'=tmp___09^post16, s^0'=s^post16, tmp^0'=tmp^post16, length5^0'=length5^post16, tmp15^0'=tmp15^post16, (s^0-s^post16 == 0 /\ tmp15^0-tmp15^post16 == 0 /\ -tmp^post16+tmp^0 == 0 /\ i6^0-i6^post16 == 0 /\ -i6^0+length5^0 <= 0 /\ tmp___09^0-tmp___09^post16 == 0 /\ -length5^post16+length5^0 == 0), cost: 1 New rule: l5 -> l9 : -i6^0+length5^0 <= 0, cost: 1 Applied preprocessing Original rule: l5 -> l4 : i6^0'=i6^post17, tmp___09^0'=tmp___09^post17, s^0'=s^post17, tmp^0'=tmp^post17, length5^0'=length5^post17, tmp15^0'=tmp15^post17, (0 == 0 /\ -tmp15^post17+tmp15^0 == 0 /\ -length5^post17+length5^0 == 0 /\ -1-i6^0+i6^post17 == 0 /\ 1+i6^0-length5^0 <= 0 /\ s^0-s^post17 == 0 /\ tmp^0-tmp^post17 == 0), cost: 1 New rule: l5 -> l4 : i6^0'=1+i6^0, tmp___09^0'=tmp___09^post17, 1+i6^0-length5^0 <= 0, cost: 1 Applied preprocessing Original rule: l12 -> l4 : i6^0'=i6^post18, tmp___09^0'=tmp___09^post18, s^0'=s^post18, tmp^0'=tmp^post18, length5^0'=length5^post18, tmp15^0'=tmp15^post18, (0 == 0 /\ s^post18-tmp^post18 == 0 /\ length5^post18-s^post18 == 0 /\ -tmp___09^post18+tmp___09^0 == 0 /\ i6^post18 == 0 /\ -tmp15^post18+tmp15^0 == 0), cost: 1 New rule: l12 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 1 Applied preprocessing Original rule: l13 -> l12 : i6^0'=i6^post19, tmp___09^0'=tmp___09^post19, s^0'=s^post19, tmp^0'=tmp^post19, length5^0'=length5^post19, tmp15^0'=tmp15^post19, (-tmp15^post19+tmp15^0 == 0 /\ -s^post19+s^0 == 0 /\ tmp^0-tmp^post19 == 0 /\ tmp___09^0-tmp___09^post19 == 0 /\ length5^0-length5^post19 == 0 /\ i6^0-i6^post19 == 0), cost: 1 New rule: l13 -> l12 : TRUE, cost: 1 Applied deletion Removed the following rules: 21 25 31 Simplified rules Start location: l13 20: l0 -> l1 : TRUE, cost: 1 34: l1 -> l2 : TRUE, cost: 1 22: l2 -> l0 : TRUE, cost: 1 23: l4 -> l5 : TRUE, cost: 1 35: l5 -> l9 : -i6^0+length5^0 <= 0, cost: 1 36: l5 -> l4 : i6^0'=1+i6^0, tmp___09^0'=tmp___09^post17, 1+i6^0-length5^0 <= 0, cost: 1 24: l6 -> l7 : TRUE, cost: 1 29: l7 -> l8 : TRUE, cost: 1 26: l8 -> l6 : TRUE, cost: 1 27: l8 -> l1 : TRUE, cost: 1 28: l9 -> l10 : TRUE, cost: 1 32: l10 -> l7 : TRUE, cost: 1 33: l10 -> l11 : TRUE, cost: 1 30: l11 -> l9 : tmp15^0'=tmp15^post11, 0 == 0, cost: 1 37: l12 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 1 38: l13 -> l12 : TRUE, cost: 1 Eliminating location l12 by chaining: Applied chaining First rule: l13 -> l12 : TRUE, cost: 1 Second rule: l12 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 1 New rule: l13 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 2 Applied deletion Removed the following rules: 37 38 Eliminating location l11 by chaining: Applied chaining First rule: l10 -> l11 : TRUE, cost: 1 Second rule: l11 -> l9 : tmp15^0'=tmp15^post11, 0 == 0, cost: 1 New rule: l10 -> l9 : tmp15^0'=tmp15^post11, 0 == 0, cost: 2 Applied deletion Removed the following rules: 30 33 Eliminating location l6 by chaining: Applied chaining First rule: l8 -> l6 : TRUE, cost: 1 Second rule: l6 -> l7 : TRUE, cost: 1 New rule: l8 -> l7 : TRUE, cost: 2 Applied deletion Removed the following rules: 24 26 Eliminating location l2 by chaining: Applied chaining First rule: l1 -> l2 : TRUE, cost: 1 Second rule: l2 -> l0 : TRUE, cost: 1 New rule: l1 -> l0 : TRUE, cost: 2 Applied deletion Removed the following rules: 22 34 Eliminating location l0 by chaining: Applied chaining First rule: l1 -> l0 : TRUE, cost: 2 Second rule: l0 -> l1 : TRUE, cost: 1 New rule: l1 -> l1 : TRUE, cost: 3 Applied deletion Removed the following rules: 20 42 Eliminated locations on linear paths Start location: l13 43: l1 -> l1 : TRUE, cost: 3 23: l4 -> l5 : TRUE, cost: 1 35: l5 -> l9 : -i6^0+length5^0 <= 0, cost: 1 36: l5 -> l4 : i6^0'=1+i6^0, tmp___09^0'=tmp___09^post17, 1+i6^0-length5^0 <= 0, cost: 1 29: l7 -> l8 : TRUE, cost: 1 27: l8 -> l1 : TRUE, cost: 1 41: l8 -> l7 : TRUE, cost: 2 28: l9 -> l10 : TRUE, cost: 1 32: l10 -> l7 : TRUE, cost: 1 40: l10 -> l9 : tmp15^0'=tmp15^post11, 0 == 0, cost: 2 39: l13 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 2 Applied nonterm Original rule: l1 -> l1 : TRUE, cost: 3 New rule: l1 -> [14] : TRUE, cost: NONTERM Applied acceleration Original rule: l1 -> l1 : TRUE, cost: 3 New rule: l1 -> l1 : TRUE, cost: 3*n0 Applied deletion Removed the following rules: 43 Accelerated simple loops Start location: l13 44: l1 -> [14] : TRUE, cost: NONTERM 45: l1 -> l1 : TRUE, cost: 3*n0 23: l4 -> l5 : TRUE, cost: 1 35: l5 -> l9 : -i6^0+length5^0 <= 0, cost: 1 36: l5 -> l4 : i6^0'=1+i6^0, tmp___09^0'=tmp___09^post17, 1+i6^0-length5^0 <= 0, cost: 1 29: l7 -> l8 : TRUE, cost: 1 27: l8 -> l1 : TRUE, cost: 1 41: l8 -> l7 : TRUE, cost: 2 28: l9 -> l10 : TRUE, cost: 1 32: l10 -> l7 : TRUE, cost: 1 40: l10 -> l9 : tmp15^0'=tmp15^post11, 0 == 0, cost: 2 39: l13 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 2 Applied chaining First rule: l8 -> l1 : TRUE, cost: 1 Second rule: l1 -> [14] : TRUE, cost: NONTERM New rule: l8 -> [14] : TRUE, cost: NONTERM Applied chaining First rule: l8 -> l1 : TRUE, cost: 1 Second rule: l1 -> l1 : TRUE, cost: 3*n0 New rule: l8 -> l1 : TRUE, cost: 1+3*n0 Applied deletion Removed the following rules: 44 45 Chained accelerated rules with incoming rules Start location: l13 23: l4 -> l5 : TRUE, cost: 1 35: l5 -> l9 : -i6^0+length5^0 <= 0, cost: 1 36: l5 -> l4 : i6^0'=1+i6^0, tmp___09^0'=tmp___09^post17, 1+i6^0-length5^0 <= 0, cost: 1 29: l7 -> l8 : TRUE, cost: 1 27: l8 -> l1 : TRUE, cost: 1 41: l8 -> l7 : TRUE, cost: 2 46: l8 -> [14] : TRUE, cost: NONTERM 47: l8 -> l1 : TRUE, cost: 1+3*n0 28: l9 -> l10 : TRUE, cost: 1 32: l10 -> l7 : TRUE, cost: 1 40: l10 -> l9 : tmp15^0'=tmp15^post11, 0 == 0, cost: 2 39: l13 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 2 Removed unreachable locations and irrelevant leafs Start location: l13 23: l4 -> l5 : TRUE, cost: 1 35: l5 -> l9 : -i6^0+length5^0 <= 0, cost: 1 36: l5 -> l4 : i6^0'=1+i6^0, tmp___09^0'=tmp___09^post17, 1+i6^0-length5^0 <= 0, cost: 1 29: l7 -> l8 : TRUE, cost: 1 41: l8 -> l7 : TRUE, cost: 2 46: l8 -> [14] : TRUE, cost: NONTERM 28: l9 -> l10 : TRUE, cost: 1 32: l10 -> l7 : TRUE, cost: 1 40: l10 -> l9 : tmp15^0'=tmp15^post11, 0 == 0, cost: 2 39: l13 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 2 Eliminating location l5 by chaining: Applied chaining First rule: l4 -> l5 : TRUE, cost: 1 Second rule: l5 -> l9 : -i6^0+length5^0 <= 0, cost: 1 New rule: l4 -> l9 : -i6^0+length5^0 <= 0, cost: 2 Applied chaining First rule: l4 -> l5 : TRUE, cost: 1 Second rule: l5 -> l4 : i6^0'=1+i6^0, tmp___09^0'=tmp___09^post17, 1+i6^0-length5^0 <= 0, cost: 1 New rule: l4 -> l4 : i6^0'=1+i6^0, tmp___09^0'=tmp___09^post17, 1+i6^0-length5^0 <= 0, cost: 2 Applied deletion Removed the following rules: 23 35 36 Eliminating location l10 by chaining: Applied chaining First rule: l9 -> l10 : TRUE, cost: 1 Second rule: l10 -> l7 : TRUE, cost: 1 New rule: l9 -> l7 : TRUE, cost: 2 Applied chaining First rule: l9 -> l10 : TRUE, cost: 1 Second rule: l10 -> l9 : tmp15^0'=tmp15^post11, 0 == 0, cost: 2 New rule: l9 -> l9 : tmp15^0'=tmp15^post11, 0 == 0, cost: 3 Applied deletion Removed the following rules: 28 32 40 Eliminating location l8 by chaining: Applied chaining First rule: l7 -> l8 : TRUE, cost: 1 Second rule: l8 -> l7 : TRUE, cost: 2 New rule: l7 -> l7 : TRUE, cost: 3 Applied chaining First rule: l7 -> l8 : TRUE, cost: 1 Second rule: l8 -> [14] : TRUE, cost: NONTERM New rule: l7 -> [14] : TRUE, cost: NONTERM Applied deletion Removed the following rules: 29 41 46 Eliminated locations on tree-shaped paths Start location: l13 48: l4 -> l9 : -i6^0+length5^0 <= 0, cost: 2 49: l4 -> l4 : i6^0'=1+i6^0, tmp___09^0'=tmp___09^post17, 1+i6^0-length5^0 <= 0, cost: 2 52: l7 -> l7 : TRUE, cost: 3 53: l7 -> [14] : TRUE, cost: NONTERM 50: l9 -> l7 : TRUE, cost: 2 51: l9 -> l9 : tmp15^0'=tmp15^post11, 0 == 0, cost: 3 39: l13 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 2 Applied acceleration Original rule: l4 -> l4 : i6^0'=1+i6^0, tmp___09^0'=tmp___09^post17, 1+i6^0-length5^0 <= 0, cost: 2 New rule: l4 -> l4 : i6^0'=i6^0+n3, tmp___09^0'=tmp___09^post17, (-i6^0-n3+length5^0 >= 0 /\ -1+n3 >= 0), cost: 2*n3 Applied instantiation Original rule: l4 -> l4 : i6^0'=i6^0+n3, tmp___09^0'=tmp___09^post17, (-i6^0-n3+length5^0 >= 0 /\ -1+n3 >= 0), cost: 2*n3 New rule: l4 -> l4 : i6^0'=length5^0, tmp___09^0'=tmp___09^post17, (0 >= 0 /\ -1-i6^0+length5^0 >= 0), cost: -2*i6^0+2*length5^0 Applied simplification Original rule: l4 -> l4 : i6^0'=length5^0, tmp___09^0'=tmp___09^post17, (0 >= 0 /\ -1-i6^0+length5^0 >= 0), cost: -2*i6^0+2*length5^0 New rule: l4 -> l4 : i6^0'=length5^0, tmp___09^0'=tmp___09^post17, -1-i6^0+length5^0 >= 0, cost: -2*i6^0+2*length5^0 Applied deletion Removed the following rules: 49 Applied nonterm Original rule: l7 -> l7 : TRUE, cost: 3 New rule: l7 -> [16] : TRUE, cost: NONTERM Applied acceleration Original rule: l7 -> l7 : TRUE, cost: 3 New rule: l7 -> l7 : TRUE, cost: 3*n6 Applied deletion Removed the following rules: 52 Applied nonterm Original rule: l9 -> l9 : tmp15^0'=tmp15^post11, 0 == 0, cost: 3 New rule: l9 -> [17] : 0 >= 0, cost: NONTERM Applied acceleration Original rule: l9 -> l9 : tmp15^0'=tmp15^post11, 0 == 0, cost: 3 New rule: l9 -> l9 : tmp15^0'=tmp15^post11, 0 >= 0, cost: 3*n9 Applied deletion Removed the following rules: 51 Accelerated simple loops Start location: l13 48: l4 -> l9 : -i6^0+length5^0 <= 0, cost: 2 55: l4 -> l4 : i6^0'=length5^0, tmp___09^0'=tmp___09^post17, -1-i6^0+length5^0 >= 0, cost: -2*i6^0+2*length5^0 53: l7 -> [14] : TRUE, cost: NONTERM 56: l7 -> [16] : TRUE, cost: NONTERM 57: l7 -> l7 : TRUE, cost: 3*n6 50: l9 -> l7 : TRUE, cost: 2 58: l9 -> [17] : 0 >= 0, cost: NONTERM 59: l9 -> l9 : tmp15^0'=tmp15^post11, 0 >= 0, cost: 3*n9 39: l13 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 2 Applied chaining First rule: l13 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 2 Second rule: l4 -> l4 : i6^0'=length5^0, tmp___09^0'=tmp___09^post17, -1-i6^0+length5^0 >= 0, cost: -2*i6^0+2*length5^0 New rule: l13 -> l4 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, -1+tmp^post18 >= 0, cost: 2+2*tmp^post18 Applied deletion Removed the following rules: 55 Applied chaining First rule: l9 -> l7 : TRUE, cost: 2 Second rule: l7 -> [16] : TRUE, cost: NONTERM New rule: l9 -> [16] : TRUE, cost: NONTERM Applied chaining First rule: l9 -> l7 : TRUE, cost: 2 Second rule: l7 -> l7 : TRUE, cost: 3*n6 New rule: l9 -> l7 : TRUE, cost: 2+3*n6 Applied deletion Removed the following rules: 56 57 Applied chaining First rule: l4 -> l9 : -i6^0+length5^0 <= 0, cost: 2 Second rule: l9 -> [17] : 0 >= 0, cost: NONTERM New rule: l4 -> [17] : -i6^0+length5^0 <= 0, cost: NONTERM Applied chaining First rule: l4 -> l9 : -i6^0+length5^0 <= 0, cost: 2 Second rule: l9 -> l9 : tmp15^0'=tmp15^post11, 0 >= 0, cost: 3*n9 New rule: l4 -> l9 : tmp15^0'=tmp15^post11, -i6^0+length5^0 <= 0, cost: 2+3*n9 Applied deletion Removed the following rules: 58 59 Chained accelerated rules with incoming rules Start location: l13 48: l4 -> l9 : -i6^0+length5^0 <= 0, cost: 2 63: l4 -> [17] : -i6^0+length5^0 <= 0, cost: NONTERM 64: l4 -> l9 : tmp15^0'=tmp15^post11, -i6^0+length5^0 <= 0, cost: 2+3*n9 53: l7 -> [14] : TRUE, cost: NONTERM 50: l9 -> l7 : TRUE, cost: 2 61: l9 -> [16] : TRUE, cost: NONTERM 62: l9 -> l7 : TRUE, cost: 2+3*n6 39: l13 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 2 60: l13 -> l4 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, -1+tmp^post18 >= 0, cost: 2+2*tmp^post18 Eliminating location l4 by chaining: Applied chaining First rule: l13 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 2 Second rule: l4 -> l9 : -i6^0+length5^0 <= 0, cost: 2 New rule: l13 -> l9 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, (0 == 0 /\ tmp^post18 <= 0), cost: 4 Applied simplification Original rule: l13 -> l9 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, (0 == 0 /\ tmp^post18 <= 0), cost: 4 New rule: l13 -> l9 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp^post18 <= 0, cost: 4 Applied chaining First rule: l13 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 2 Second rule: l4 -> [17] : -i6^0+length5^0 <= 0, cost: NONTERM New rule: l13 -> [17] : (0 == 0 /\ tmp^post18 <= 0), cost: NONTERM Applied simplification Original rule: l13 -> [17] : (0 == 0 /\ tmp^post18 <= 0), cost: NONTERM New rule: l13 -> [17] : tmp^post18 <= 0, cost: NONTERM Applied chaining First rule: l13 -> l4 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, 0 == 0, cost: 2 Second rule: l4 -> l9 : tmp15^0'=tmp15^post11, -i6^0+length5^0 <= 0, cost: 2+3*n9 New rule: l13 -> l9 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp15^0'=tmp15^post11, (0 == 0 /\ tmp^post18 <= 0), cost: 4+3*n9 Applied simplification Original rule: l13 -> l9 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp15^0'=tmp15^post11, (0 == 0 /\ tmp^post18 <= 0), cost: 4+3*n9 New rule: l13 -> l9 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp15^0'=tmp15^post11, tmp^post18 <= 0, cost: 4+3*n9 Applied chaining First rule: l13 -> l4 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, -1+tmp^post18 >= 0, cost: 2+2*tmp^post18 Second rule: l4 -> l9 : -i6^0+length5^0 <= 0, cost: 2 New rule: l13 -> l9 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, (0 <= 0 /\ -1+tmp^post18 >= 0), cost: 4+2*tmp^post18 Applied simplification Original rule: l13 -> l9 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, (0 <= 0 /\ -1+tmp^post18 >= 0), cost: 4+2*tmp^post18 New rule: l13 -> l9 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, -1+tmp^post18 >= 0, cost: 4+2*tmp^post18 Applied chaining First rule: l13 -> l4 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, -1+tmp^post18 >= 0, cost: 2+2*tmp^post18 Second rule: l4 -> [17] : -i6^0+length5^0 <= 0, cost: NONTERM New rule: l13 -> [17] : (0 <= 0 /\ -1+tmp^post18 >= 0), cost: NONTERM Applied simplification Original rule: l13 -> [17] : (0 <= 0 /\ -1+tmp^post18 >= 0), cost: NONTERM New rule: l13 -> [17] : -1+tmp^post18 >= 0, cost: NONTERM Applied chaining First rule: l13 -> l4 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, -1+tmp^post18 >= 0, cost: 2+2*tmp^post18 Second rule: l4 -> l9 : tmp15^0'=tmp15^post11, -i6^0+length5^0 <= 0, cost: 2+3*n9 New rule: l13 -> l9 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp15^0'=tmp15^post11, (0 <= 0 /\ -1+tmp^post18 >= 0), cost: 4+2*tmp^post18+3*n9 Applied simplification Original rule: l13 -> l9 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp15^0'=tmp15^post11, (0 <= 0 /\ -1+tmp^post18 >= 0), cost: 4+2*tmp^post18+3*n9 New rule: l13 -> l9 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp15^0'=tmp15^post11, -1+tmp^post18 >= 0, cost: 4+2*tmp^post18+3*n9 Applied deletion Removed the following rules: 39 48 60 63 64 Eliminating location l7 by chaining: Applied chaining First rule: l9 -> l7 : TRUE, cost: 2 Second rule: l7 -> [14] : TRUE, cost: NONTERM New rule: l9 -> [14] : TRUE, cost: NONTERM Applied chaining First rule: l9 -> l7 : TRUE, cost: 2+3*n6 Second rule: l7 -> [14] : TRUE, cost: NONTERM New rule: l9 -> [14] : TRUE, cost: NONTERM Applied deletion Removed the following rules: 50 53 62 Eliminated locations on tree-shaped paths Start location: l13 61: l9 -> [16] : TRUE, cost: NONTERM 71: l9 -> [14] : TRUE, cost: NONTERM 72: l9 -> [14] : TRUE, cost: NONTERM 65: l13 -> l9 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp^post18 <= 0, cost: 4 66: l13 -> [17] : tmp^post18 <= 0, cost: NONTERM 67: l13 -> l9 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp15^0'=tmp15^post11, tmp^post18 <= 0, cost: 4+3*n9 68: l13 -> l9 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, -1+tmp^post18 >= 0, cost: 4+2*tmp^post18 69: l13 -> [17] : -1+tmp^post18 >= 0, cost: NONTERM 70: l13 -> l9 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp15^0'=tmp15^post11, -1+tmp^post18 >= 0, cost: 4+2*tmp^post18+3*n9 Applied merging first rule: l9 -> [14] : TRUE, cost: NONTERM second rule: l9 -> [14] : TRUE, cost: NONTERM new rule: l9 -> [14] : TRUE, cost: NONTERM Applied merging first rule: l13 -> [17] : tmp^post18 <= 0, cost: NONTERM second rule: l13 -> [17] : -1+tmp^post18 >= 0, cost: NONTERM new rule: l13 -> [17] : (tmp^post18 <= 0 \/ -1+tmp^post18 >= 0), cost: NONTERM Merged rules Start location: l13 61: l9 -> [16] : TRUE, cost: NONTERM 73: l9 -> [14] : TRUE, cost: NONTERM 65: l13 -> l9 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp^post18 <= 0, cost: 4 67: l13 -> l9 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp15^0'=tmp15^post11, tmp^post18 <= 0, cost: 4+3*n9 68: l13 -> l9 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, -1+tmp^post18 >= 0, cost: 4+2*tmp^post18 70: l13 -> l9 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp15^0'=tmp15^post11, -1+tmp^post18 >= 0, cost: 4+2*tmp^post18+3*n9 74: l13 -> [17] : (tmp^post18 <= 0 \/ -1+tmp^post18 >= 0), cost: NONTERM Eliminating location l9 by chaining: Applied chaining First rule: l13 -> l9 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp^post18 <= 0, cost: 4 Second rule: l9 -> [16] : TRUE, cost: NONTERM New rule: l13 -> [16] : tmp^post18 <= 0, cost: NONTERM Applied chaining First rule: l13 -> l9 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp^post18 <= 0, cost: 4 Second rule: l9 -> [14] : TRUE, cost: NONTERM New rule: l13 -> [14] : tmp^post18 <= 0, cost: NONTERM Applied chaining First rule: l13 -> l9 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp15^0'=tmp15^post11, tmp^post18 <= 0, cost: 4+3*n9 Second rule: l9 -> [16] : TRUE, cost: NONTERM New rule: l13 -> [16] : tmp^post18 <= 0, cost: NONTERM Applied chaining First rule: l13 -> l9 : i6^0'=0, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp15^0'=tmp15^post11, tmp^post18 <= 0, cost: 4+3*n9 Second rule: l9 -> [14] : TRUE, cost: NONTERM New rule: l13 -> [14] : tmp^post18 <= 0, cost: NONTERM Applied chaining First rule: l13 -> l9 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, -1+tmp^post18 >= 0, cost: 4+2*tmp^post18 Second rule: l9 -> [16] : TRUE, cost: NONTERM New rule: l13 -> [16] : -1+tmp^post18 >= 0, cost: NONTERM Applied chaining First rule: l13 -> l9 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, -1+tmp^post18 >= 0, cost: 4+2*tmp^post18 Second rule: l9 -> [14] : TRUE, cost: NONTERM New rule: l13 -> [14] : -1+tmp^post18 >= 0, cost: NONTERM Applied chaining First rule: l13 -> l9 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp15^0'=tmp15^post11, -1+tmp^post18 >= 0, cost: 4+2*tmp^post18+3*n9 Second rule: l9 -> [16] : TRUE, cost: NONTERM New rule: l13 -> [16] : -1+tmp^post18 >= 0, cost: NONTERM Applied chaining First rule: l13 -> l9 : i6^0'=tmp^post18, tmp___09^0'=tmp___09^post17, s^0'=tmp^post18, tmp^0'=tmp^post18, length5^0'=tmp^post18, tmp15^0'=tmp15^post11, -1+tmp^post18 >= 0, cost: 4+2*tmp^post18+3*n9 Second rule: l9 -> [14] : TRUE, cost: NONTERM New rule: l13 -> [14] : -1+tmp^post18 >= 0, cost: NONTERM Applied deletion Removed the following rules: 61 65 67 68 70 73 Eliminated locations on tree-shaped paths Start location: l13 74: l13 -> [17] : (tmp^post18 <= 0 \/ -1+tmp^post18 >= 0), cost: NONTERM 75: l13 -> [16] : tmp^post18 <= 0, cost: NONTERM 76: l13 -> [14] : tmp^post18 <= 0, cost: NONTERM 77: l13 -> [16] : tmp^post18 <= 0, cost: NONTERM 78: l13 -> [14] : tmp^post18 <= 0, cost: NONTERM 79: l13 -> [16] : -1+tmp^post18 >= 0, cost: NONTERM 80: l13 -> [14] : -1+tmp^post18 >= 0, cost: NONTERM 81: l13 -> [16] : -1+tmp^post18 >= 0, cost: NONTERM 82: l13 -> [14] : -1+tmp^post18 >= 0, cost: NONTERM Removed duplicate rules (ignoring updates) Start location: l13 74: l13 -> [17] : (tmp^post18 <= 0 \/ -1+tmp^post18 >= 0), cost: NONTERM 78: l13 -> [14] : tmp^post18 <= 0, cost: NONTERM 82: l13 -> [14] : -1+tmp^post18 >= 0, cost: NONTERM Computing asymptotic complexity Proved nontermination of rule 74 via SMT. Proved the following lower bound Complexity: Nonterm Cpx degree: Nonterm Solved cost: NONTERM Rule cost: NONTERM Rule guard: (tmp^post18 <= 0 \/ -1+tmp^post18 >= 0)