NO Initial ITS Start location: l9 0: l0 -> l1 : Result_4^0'=Result_4^post0, x_5^0'=x_5^post0, tmp_6^0'=tmp_6^post0, (Result_4^0-Result_4^post0 == 0 /\ x_5^0-x_5^post0 == 0 /\ -tmp_6^post0+tmp_6^0 == 0), cost: 1 1: l1 -> l2 : Result_4^0'=Result_4^post1, x_5^0'=x_5^post1, tmp_6^0'=tmp_6^post1, (0 == 0 /\ x_5^0 <= 0 /\ x_5^0-x_5^post1 == 0 /\ -tmp_6^post1 <= 0 /\ tmp_6^post1 <= 0), cost: 1 2: l1 -> l3 : Result_4^0'=Result_4^post2, x_5^0'=x_5^post2, tmp_6^0'=tmp_6^post2, (0 == 0 /\ 1-x_5^0 <= 0 /\ x_5^0-x_5^post2 == 0 /\ -tmp_6^post2 <= 0 /\ Result_4^0-Result_4^post2 == 0 /\ tmp_6^post2 <= 0), cost: 1 4: l1 -> l4 : Result_4^0'=Result_4^post4, x_5^0'=x_5^post4, tmp_6^0'=tmp_6^post4, (0 == 0 /\ x_5^0-x_5^post4 == 0 /\ Result_4^0-Result_4^post4 == 0), cost: 1 8: l1 -> l7 : Result_4^0'=Result_4^post8, x_5^0'=x_5^post8, tmp_6^0'=tmp_6^post8, (0 == 0 /\ Result_4^0-Result_4^post8 == 0 /\ x_5^0-x_5^post8 == 0), cost: 1 3: l3 -> l1 : Result_4^0'=Result_4^post3, x_5^0'=x_5^post3, tmp_6^0'=tmp_6^post3, (tmp_6^0-tmp_6^post3 == 0 /\ Result_4^0-Result_4^post3 == 0 /\ x_5^0-x_5^post3 == 0), cost: 1 5: l4 -> l5 : Result_4^0'=Result_4^post5, x_5^0'=x_5^post5, tmp_6^0'=tmp_6^post5, (Result_4^0-Result_4^post5 == 0 /\ x_5^0-x_5^post5 == 0 /\ 1+tmp_6^0 <= 0 /\ tmp_6^0-tmp_6^post5 == 0), cost: 1 6: l4 -> l5 : Result_4^0'=Result_4^post6, x_5^0'=x_5^post6, tmp_6^0'=tmp_6^post6, (tmp_6^0-tmp_6^post6 == 0 /\ 1-tmp_6^0 <= 0 /\ Result_4^0-Result_4^post6 == 0 /\ x_5^0-x_5^post6 == 0), cost: 1 7: l5 -> l2 : Result_4^0'=Result_4^post7, x_5^0'=x_5^post7, tmp_6^0'=tmp_6^post7, (0 == 0 /\ x_5^post7 <= 0 /\ 1-x_5^0+x_5^post7 == 0 /\ tmp_6^0-tmp_6^post7 == 0), cost: 1 9: l7 -> l8 : Result_4^0'=Result_4^post9, x_5^0'=x_5^post9, tmp_6^0'=tmp_6^post9, (Result_4^0-Result_4^post9 == 0 /\ x_5^0-x_5^post9 == 0 /\ 1+tmp_6^0 <= 0 /\ -tmp_6^post9+tmp_6^0 == 0), cost: 1 10: l7 -> l8 : Result_4^0'=Result_4^post10, x_5^0'=x_5^post10, tmp_6^0'=tmp_6^post10, (-x_5^post10+x_5^0 == 0 /\ Result_4^0-Result_4^post10 == 0 /\ 1-tmp_6^0 <= 0 /\ -tmp_6^post10+tmp_6^0 == 0), cost: 1 11: l8 -> l6 : Result_4^0'=Result_4^post11, x_5^0'=x_5^post11, tmp_6^0'=tmp_6^post11, (1+x_5^post11-x_5^0 == 0 /\ 1-x_5^post11 <= 0 /\ -tmp_6^post11+tmp_6^0 == 0 /\ Result_4^0-Result_4^post11 == 0), cost: 1 12: l6 -> l1 : Result_4^0'=Result_4^post12, x_5^0'=x_5^post12, tmp_6^0'=tmp_6^post12, (Result_4^0-Result_4^post12 == 0 /\ -x_5^post12+x_5^0 == 0 /\ -tmp_6^post12+tmp_6^0 == 0), cost: 1 13: l9 -> l0 : Result_4^0'=Result_4^post13, x_5^0'=x_5^post13, tmp_6^0'=tmp_6^post13, (-tmp_6^post13+tmp_6^0 == 0 /\ Result_4^0-Result_4^post13 == 0 /\ x_5^0-x_5^post13 == 0), cost: 1 Removed unreachable rules and leafs Start location: l9 0: l0 -> l1 : Result_4^0'=Result_4^post0, x_5^0'=x_5^post0, tmp_6^0'=tmp_6^post0, (Result_4^0-Result_4^post0 == 0 /\ x_5^0-x_5^post0 == 0 /\ -tmp_6^post0+tmp_6^0 == 0), cost: 1 2: l1 -> l3 : Result_4^0'=Result_4^post2, x_5^0'=x_5^post2, tmp_6^0'=tmp_6^post2, (0 == 0 /\ 1-x_5^0 <= 0 /\ x_5^0-x_5^post2 == 0 /\ -tmp_6^post2 <= 0 /\ Result_4^0-Result_4^post2 == 0 /\ tmp_6^post2 <= 0), cost: 1 8: l1 -> l7 : Result_4^0'=Result_4^post8, x_5^0'=x_5^post8, tmp_6^0'=tmp_6^post8, (0 == 0 /\ Result_4^0-Result_4^post8 == 0 /\ x_5^0-x_5^post8 == 0), cost: 1 3: l3 -> l1 : Result_4^0'=Result_4^post3, x_5^0'=x_5^post3, tmp_6^0'=tmp_6^post3, (tmp_6^0-tmp_6^post3 == 0 /\ Result_4^0-Result_4^post3 == 0 /\ x_5^0-x_5^post3 == 0), cost: 1 9: l7 -> l8 : Result_4^0'=Result_4^post9, x_5^0'=x_5^post9, tmp_6^0'=tmp_6^post9, (Result_4^0-Result_4^post9 == 0 /\ x_5^0-x_5^post9 == 0 /\ 1+tmp_6^0 <= 0 /\ -tmp_6^post9+tmp_6^0 == 0), cost: 1 10: l7 -> l8 : Result_4^0'=Result_4^post10, x_5^0'=x_5^post10, tmp_6^0'=tmp_6^post10, (-x_5^post10+x_5^0 == 0 /\ Result_4^0-Result_4^post10 == 0 /\ 1-tmp_6^0 <= 0 /\ -tmp_6^post10+tmp_6^0 == 0), cost: 1 11: l8 -> l6 : Result_4^0'=Result_4^post11, x_5^0'=x_5^post11, tmp_6^0'=tmp_6^post11, (1+x_5^post11-x_5^0 == 0 /\ 1-x_5^post11 <= 0 /\ -tmp_6^post11+tmp_6^0 == 0 /\ Result_4^0-Result_4^post11 == 0), cost: 1 12: l6 -> l1 : Result_4^0'=Result_4^post12, x_5^0'=x_5^post12, tmp_6^0'=tmp_6^post12, (Result_4^0-Result_4^post12 == 0 /\ -x_5^post12+x_5^0 == 0 /\ -tmp_6^post12+tmp_6^0 == 0), cost: 1 13: l9 -> l0 : Result_4^0'=Result_4^post13, x_5^0'=x_5^post13, tmp_6^0'=tmp_6^post13, (-tmp_6^post13+tmp_6^0 == 0 /\ Result_4^0-Result_4^post13 == 0 /\ x_5^0-x_5^post13 == 0), cost: 1 Applied preprocessing Original rule: l0 -> l1 : Result_4^0'=Result_4^post0, x_5^0'=x_5^post0, tmp_6^0'=tmp_6^post0, (Result_4^0-Result_4^post0 == 0 /\ x_5^0-x_5^post0 == 0 /\ -tmp_6^post0+tmp_6^0 == 0), cost: 1 New rule: l0 -> l1 : TRUE, cost: 1 Applied preprocessing Original rule: l1 -> l3 : Result_4^0'=Result_4^post2, x_5^0'=x_5^post2, tmp_6^0'=tmp_6^post2, (0 == 0 /\ 1-x_5^0 <= 0 /\ x_5^0-x_5^post2 == 0 /\ -tmp_6^post2 <= 0 /\ Result_4^0-Result_4^post2 == 0 /\ tmp_6^post2 <= 0), cost: 1 New rule: l1 -> l3 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 1 Applied preprocessing Original rule: l3 -> l1 : Result_4^0'=Result_4^post3, x_5^0'=x_5^post3, tmp_6^0'=tmp_6^post3, (tmp_6^0-tmp_6^post3 == 0 /\ Result_4^0-Result_4^post3 == 0 /\ x_5^0-x_5^post3 == 0), cost: 1 New rule: l3 -> l1 : TRUE, cost: 1 Applied preprocessing Original rule: l1 -> l7 : Result_4^0'=Result_4^post8, x_5^0'=x_5^post8, tmp_6^0'=tmp_6^post8, (0 == 0 /\ Result_4^0-Result_4^post8 == 0 /\ x_5^0-x_5^post8 == 0), cost: 1 New rule: l1 -> l7 : tmp_6^0'=tmp_6^post8, 0 == 0, cost: 1 Applied preprocessing Original rule: l7 -> l8 : Result_4^0'=Result_4^post9, x_5^0'=x_5^post9, tmp_6^0'=tmp_6^post9, (Result_4^0-Result_4^post9 == 0 /\ x_5^0-x_5^post9 == 0 /\ 1+tmp_6^0 <= 0 /\ -tmp_6^post9+tmp_6^0 == 0), cost: 1 New rule: l7 -> l8 : 1+tmp_6^0 <= 0, cost: 1 Applied preprocessing Original rule: l7 -> l8 : Result_4^0'=Result_4^post10, x_5^0'=x_5^post10, tmp_6^0'=tmp_6^post10, (-x_5^post10+x_5^0 == 0 /\ Result_4^0-Result_4^post10 == 0 /\ 1-tmp_6^0 <= 0 /\ -tmp_6^post10+tmp_6^0 == 0), cost: 1 New rule: l7 -> l8 : -1+tmp_6^0 >= 0, cost: 1 Applied preprocessing Original rule: l8 -> l6 : Result_4^0'=Result_4^post11, x_5^0'=x_5^post11, tmp_6^0'=tmp_6^post11, (1+x_5^post11-x_5^0 == 0 /\ 1-x_5^post11 <= 0 /\ -tmp_6^post11+tmp_6^0 == 0 /\ Result_4^0-Result_4^post11 == 0), cost: 1 New rule: l8 -> l6 : x_5^0'=-1+x_5^0, -2+x_5^0 >= 0, cost: 1 Applied preprocessing Original rule: l6 -> l1 : Result_4^0'=Result_4^post12, x_5^0'=x_5^post12, tmp_6^0'=tmp_6^post12, (Result_4^0-Result_4^post12 == 0 /\ -x_5^post12+x_5^0 == 0 /\ -tmp_6^post12+tmp_6^0 == 0), cost: 1 New rule: l6 -> l1 : TRUE, cost: 1 Applied preprocessing Original rule: l9 -> l0 : Result_4^0'=Result_4^post13, x_5^0'=x_5^post13, tmp_6^0'=tmp_6^post13, (-tmp_6^post13+tmp_6^0 == 0 /\ Result_4^0-Result_4^post13 == 0 /\ x_5^0-x_5^post13 == 0), cost: 1 New rule: l9 -> l0 : TRUE, cost: 1 Simplified rules Start location: l9 14: l0 -> l1 : TRUE, cost: 1 15: l1 -> l3 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 1 17: l1 -> l7 : tmp_6^0'=tmp_6^post8, 0 == 0, cost: 1 16: l3 -> l1 : TRUE, cost: 1 18: l7 -> l8 : 1+tmp_6^0 <= 0, cost: 1 19: l7 -> l8 : -1+tmp_6^0 >= 0, cost: 1 20: l8 -> l6 : x_5^0'=-1+x_5^0, -2+x_5^0 >= 0, cost: 1 21: l6 -> l1 : TRUE, cost: 1 22: l9 -> l0 : TRUE, cost: 1 Eliminating location l0 by chaining: Applied chaining First rule: l9 -> l0 : TRUE, cost: 1 Second rule: l0 -> l1 : TRUE, cost: 1 New rule: l9 -> l1 : TRUE, cost: 2 Applied deletion Removed the following rules: 14 22 Eliminating location l3 by chaining: Applied chaining First rule: l1 -> l3 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 1 Second rule: l3 -> l1 : TRUE, cost: 1 New rule: l1 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2 Applied deletion Removed the following rules: 15 16 Eliminating location l6 by chaining: Applied chaining First rule: l8 -> l6 : x_5^0'=-1+x_5^0, -2+x_5^0 >= 0, cost: 1 Second rule: l6 -> l1 : TRUE, cost: 1 New rule: l8 -> l1 : x_5^0'=-1+x_5^0, -2+x_5^0 >= 0, cost: 2 Applied deletion Removed the following rules: 20 21 Eliminated locations on linear paths Start location: l9 17: l1 -> l7 : tmp_6^0'=tmp_6^post8, 0 == 0, cost: 1 24: l1 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2 18: l7 -> l8 : 1+tmp_6^0 <= 0, cost: 1 19: l7 -> l8 : -1+tmp_6^0 >= 0, cost: 1 25: l8 -> l1 : x_5^0'=-1+x_5^0, -2+x_5^0 >= 0, cost: 2 23: l9 -> l1 : TRUE, cost: 2 Applied nonterm Original rule: l1 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2 New rule: l1 -> [10] : -1+x_5^0 >= 0, cost: NONTERM Applied acceleration Original rule: l1 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2 New rule: l1 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2*n0 Applied deletion Removed the following rules: 24 Accelerated simple loops Start location: l9 17: l1 -> l7 : tmp_6^0'=tmp_6^post8, 0 == 0, cost: 1 26: l1 -> [10] : -1+x_5^0 >= 0, cost: NONTERM 27: l1 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2*n0 18: l7 -> l8 : 1+tmp_6^0 <= 0, cost: 1 19: l7 -> l8 : -1+tmp_6^0 >= 0, cost: 1 25: l8 -> l1 : x_5^0'=-1+x_5^0, -2+x_5^0 >= 0, cost: 2 23: l9 -> l1 : TRUE, cost: 2 Applied chaining First rule: l9 -> l1 : TRUE, cost: 2 Second rule: l1 -> [10] : -1+x_5^0 >= 0, cost: NONTERM New rule: l9 -> [10] : -1+x_5^0 >= 0, cost: NONTERM Applied chaining First rule: l8 -> l1 : x_5^0'=-1+x_5^0, -2+x_5^0 >= 0, cost: 2 Second rule: l1 -> [10] : -1+x_5^0 >= 0, cost: NONTERM New rule: l8 -> [10] : -2+x_5^0 >= 0, cost: NONTERM Applied chaining First rule: l9 -> l1 : TRUE, cost: 2 Second rule: l1 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2*n0 New rule: l9 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2+2*n0 Applied chaining First rule: l8 -> l1 : x_5^0'=-1+x_5^0, -2+x_5^0 >= 0, cost: 2 Second rule: l1 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2*n0 New rule: l8 -> l1 : x_5^0'=-1+x_5^0, tmp_6^0'=0, -2+x_5^0 >= 0, cost: 2+2*n0 Applied deletion Removed the following rules: 26 27 Chained accelerated rules with incoming rules Start location: l9 17: l1 -> l7 : tmp_6^0'=tmp_6^post8, 0 == 0, cost: 1 18: l7 -> l8 : 1+tmp_6^0 <= 0, cost: 1 19: l7 -> l8 : -1+tmp_6^0 >= 0, cost: 1 25: l8 -> l1 : x_5^0'=-1+x_5^0, -2+x_5^0 >= 0, cost: 2 29: l8 -> [10] : -2+x_5^0 >= 0, cost: NONTERM 31: l8 -> l1 : x_5^0'=-1+x_5^0, tmp_6^0'=0, -2+x_5^0 >= 0, cost: 2+2*n0 23: l9 -> l1 : TRUE, cost: 2 28: l9 -> [10] : -1+x_5^0 >= 0, cost: NONTERM 30: l9 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2+2*n0 Eliminating location l7 by chaining: Applied chaining First rule: l1 -> l7 : tmp_6^0'=tmp_6^post8, 0 == 0, cost: 1 Second rule: l7 -> l8 : 1+tmp_6^0 <= 0, cost: 1 New rule: l1 -> l8 : tmp_6^0'=tmp_6^post8, (0 == 0 /\ 1+tmp_6^post8 <= 0), cost: 2 Applied simplification Original rule: l1 -> l8 : tmp_6^0'=tmp_6^post8, (0 == 0 /\ 1+tmp_6^post8 <= 0), cost: 2 New rule: l1 -> l8 : tmp_6^0'=tmp_6^post8, 1+tmp_6^post8 <= 0, cost: 2 Applied chaining First rule: l1 -> l7 : tmp_6^0'=tmp_6^post8, 0 == 0, cost: 1 Second rule: l7 -> l8 : -1+tmp_6^0 >= 0, cost: 1 New rule: l1 -> l8 : tmp_6^0'=tmp_6^post8, (0 == 0 /\ -1+tmp_6^post8 >= 0), cost: 2 Applied simplification Original rule: l1 -> l8 : tmp_6^0'=tmp_6^post8, (0 == 0 /\ -1+tmp_6^post8 >= 0), cost: 2 New rule: l1 -> l8 : tmp_6^0'=tmp_6^post8, -1+tmp_6^post8 >= 0, cost: 2 Applied deletion Removed the following rules: 17 18 19 Eliminated locations on tree-shaped paths Start location: l9 32: l1 -> l8 : tmp_6^0'=tmp_6^post8, 1+tmp_6^post8 <= 0, cost: 2 33: l1 -> l8 : tmp_6^0'=tmp_6^post8, -1+tmp_6^post8 >= 0, cost: 2 25: l8 -> l1 : x_5^0'=-1+x_5^0, -2+x_5^0 >= 0, cost: 2 29: l8 -> [10] : -2+x_5^0 >= 0, cost: NONTERM 31: l8 -> l1 : x_5^0'=-1+x_5^0, tmp_6^0'=0, -2+x_5^0 >= 0, cost: 2+2*n0 23: l9 -> l1 : TRUE, cost: 2 28: l9 -> [10] : -1+x_5^0 >= 0, cost: NONTERM 30: l9 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2+2*n0 Applied merging first rule: l1 -> l8 : tmp_6^0'=tmp_6^post8, 1+tmp_6^post8 <= 0, cost: 2 second rule: l1 -> l8 : tmp_6^0'=tmp_6^post8, -1+tmp_6^post8 >= 0, cost: 2 new rule: l1 -> l8 : tmp_6^0'=tmp_6^post8, (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0), cost: 2 Merged rules Start location: l9 34: l1 -> l8 : tmp_6^0'=tmp_6^post8, (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0), cost: 2 25: l8 -> l1 : x_5^0'=-1+x_5^0, -2+x_5^0 >= 0, cost: 2 29: l8 -> [10] : -2+x_5^0 >= 0, cost: NONTERM 31: l8 -> l1 : x_5^0'=-1+x_5^0, tmp_6^0'=0, -2+x_5^0 >= 0, cost: 2+2*n0 23: l9 -> l1 : TRUE, cost: 2 28: l9 -> [10] : -1+x_5^0 >= 0, cost: NONTERM 30: l9 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2+2*n0 Eliminating location l8 by chaining: Applied chaining First rule: l1 -> l8 : tmp_6^0'=tmp_6^post8, (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0), cost: 2 Second rule: l8 -> l1 : x_5^0'=-1+x_5^0, -2+x_5^0 >= 0, cost: 2 New rule: l1 -> l1 : x_5^0'=-1+x_5^0, tmp_6^0'=tmp_6^post8, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: 4 Applied chaining First rule: l1 -> l8 : tmp_6^0'=tmp_6^post8, (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0), cost: 2 Second rule: l8 -> [10] : -2+x_5^0 >= 0, cost: NONTERM New rule: l1 -> [10] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: NONTERM Applied chaining First rule: l1 -> l8 : tmp_6^0'=tmp_6^post8, (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0), cost: 2 Second rule: l8 -> l1 : x_5^0'=-1+x_5^0, tmp_6^0'=0, -2+x_5^0 >= 0, cost: 2+2*n0 New rule: l1 -> l1 : x_5^0'=-1+x_5^0, tmp_6^0'=0, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: 4+2*n0 Applied deletion Removed the following rules: 25 29 31 34 Eliminated locations on tree-shaped paths Start location: l9 35: l1 -> l1 : x_5^0'=-1+x_5^0, tmp_6^0'=tmp_6^post8, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: 4 36: l1 -> [10] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: NONTERM 37: l1 -> l1 : x_5^0'=-1+x_5^0, tmp_6^0'=0, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: 4+2*n0 23: l9 -> l1 : TRUE, cost: 2 28: l9 -> [10] : -1+x_5^0 >= 0, cost: NONTERM 30: l9 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2+2*n0 Applied acceleration Original rule: l1 -> l1 : x_5^0'=-1+x_5^0, tmp_6^0'=tmp_6^post8, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: 4 New rule: l1 -> l1 : x_5^0'=x_5^0-n4, tmp_6^0'=tmp_6^post8, (-1+x_5^0-n4 >= 0 /\ -1+n4 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ -1-tmp_6^post8 >= 0)), cost: 4*n4 Applied instantiation Original rule: l1 -> l1 : x_5^0'=x_5^0-n4, tmp_6^0'=tmp_6^post8, (-1+x_5^0-n4 >= 0 /\ -1+n4 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ -1-tmp_6^post8 >= 0)), cost: 4*n4 New rule: l1 -> l1 : x_5^0'=1, tmp_6^0'=tmp_6^post8, (0 >= 0 /\ -2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ -1-tmp_6^post8 >= 0)), cost: -4+4*x_5^0 Applied acceleration Original rule: l1 -> l1 : x_5^0'=-1+x_5^0, tmp_6^0'=0, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: 4+2*n0 New rule: l1 -> l1 : x_5^0'=x_5^0-n6, tmp_6^0'=0, (-1+x_5^0-n6 >= 0 /\ -1+n6 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ -1-tmp_6^post8 >= 0)), cost: 2*n0*n6+4*n6 Applied instantiation Original rule: l1 -> l1 : x_5^0'=x_5^0-n6, tmp_6^0'=0, (-1+x_5^0-n6 >= 0 /\ -1+n6 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ -1-tmp_6^post8 >= 0)), cost: 2*n0*n6+4*n6 New rule: l1 -> l1 : x_5^0'=1, tmp_6^0'=0, (0 >= 0 /\ -2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ -1-tmp_6^post8 >= 0)), cost: -4+4*x_5^0+2*(-1+x_5^0)*n0 Applied simplification Original rule: l1 -> l1 : x_5^0'=1, tmp_6^0'=tmp_6^post8, (0 >= 0 /\ -2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ -1-tmp_6^post8 >= 0)), cost: -4+4*x_5^0 New rule: l1 -> l1 : x_5^0'=1, tmp_6^0'=tmp_6^post8, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -4+4*x_5^0 Applied simplification Original rule: l1 -> l1 : x_5^0'=1, tmp_6^0'=0, (0 >= 0 /\ -2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ -1-tmp_6^post8 >= 0)), cost: -4+4*x_5^0+2*(-1+x_5^0)*n0 New rule: l1 -> l1 : x_5^0'=1, tmp_6^0'=0, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -4+4*x_5^0+2*(-1+x_5^0)*n0 Applied deletion Removed the following rules: 35 37 Accelerated simple loops Start location: l9 36: l1 -> [10] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: NONTERM 40: l1 -> l1 : x_5^0'=1, tmp_6^0'=tmp_6^post8, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -4+4*x_5^0 41: l1 -> l1 : x_5^0'=1, tmp_6^0'=0, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -4+4*x_5^0+2*(-1+x_5^0)*n0 23: l9 -> l1 : TRUE, cost: 2 28: l9 -> [10] : -1+x_5^0 >= 0, cost: NONTERM 30: l9 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2+2*n0 Applied chaining First rule: l9 -> l1 : TRUE, cost: 2 Second rule: l1 -> l1 : x_5^0'=1, tmp_6^0'=tmp_6^post8, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -4+4*x_5^0 New rule: l9 -> l1 : x_5^0'=1, tmp_6^0'=tmp_6^post8, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0 Applied chaining First rule: l9 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2+2*n0 Second rule: l1 -> l1 : x_5^0'=1, tmp_6^0'=tmp_6^post8, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -4+4*x_5^0 New rule: l9 -> l1 : x_5^0'=1, tmp_6^0'=tmp_6^post8, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*n0 Applied chaining First rule: l9 -> l1 : TRUE, cost: 2 Second rule: l1 -> l1 : x_5^0'=1, tmp_6^0'=0, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -4+4*x_5^0+2*(-1+x_5^0)*n0 New rule: l9 -> l1 : x_5^0'=1, tmp_6^0'=0, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*(-1+x_5^0)*n0 Applied chaining First rule: l9 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2+2*n0 Second rule: l1 -> l1 : x_5^0'=1, tmp_6^0'=0, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -4+4*x_5^0+2*(-1+x_5^0)*n0 New rule: l9 -> l1 : x_5^0'=1, tmp_6^0'=0, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*(-1+x_5^0)*n0+2*n0 Applied deletion Removed the following rules: 40 41 Chained accelerated rules with incoming rules Start location: l9 36: l1 -> [10] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: NONTERM 23: l9 -> l1 : TRUE, cost: 2 28: l9 -> [10] : -1+x_5^0 >= 0, cost: NONTERM 30: l9 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2+2*n0 42: l9 -> l1 : x_5^0'=1, tmp_6^0'=tmp_6^post8, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0 43: l9 -> l1 : x_5^0'=1, tmp_6^0'=tmp_6^post8, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*n0 44: l9 -> l1 : x_5^0'=1, tmp_6^0'=0, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*(-1+x_5^0)*n0 45: l9 -> l1 : x_5^0'=1, tmp_6^0'=0, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*(-1+x_5^0)*n0+2*n0 Eliminating location l1 by chaining: Applied chaining First rule: l9 -> l1 : TRUE, cost: 2 Second rule: l1 -> [10] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: NONTERM New rule: l9 -> [10] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: NONTERM Applied chaining First rule: l9 -> l1 : tmp_6^0'=0, -1+x_5^0 >= 0, cost: 2+2*n0 Second rule: l1 -> [10] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: NONTERM New rule: l9 -> [10] : (-1+x_5^0 >= 0 /\ -2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: NONTERM Applied simplification Original rule: l9 -> [10] : (-1+x_5^0 >= 0 /\ -2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: NONTERM New rule: l9 -> [10] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: NONTERM Applied partial deletion Original rule: l9 -> l1 : x_5^0'=1, tmp_6^0'=tmp_6^post8, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0 New rule: l9 -> [12] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0 Applied partial deletion Original rule: l9 -> l1 : x_5^0'=1, tmp_6^0'=tmp_6^post8, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*n0 New rule: l9 -> [12] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*n0 Applied partial deletion Original rule: l9 -> l1 : x_5^0'=1, tmp_6^0'=0, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*(-1+x_5^0)*n0 New rule: l9 -> [12] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*(-1+x_5^0)*n0 Applied partial deletion Original rule: l9 -> l1 : x_5^0'=1, tmp_6^0'=0, (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*(-1+x_5^0)*n0+2*n0 New rule: l9 -> [12] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*(-1+x_5^0)*n0+2*n0 Applied deletion Removed the following rules: 23 30 36 42 43 44 45 Eliminated locations on tree-shaped paths Start location: l9 28: l9 -> [10] : -1+x_5^0 >= 0, cost: NONTERM 46: l9 -> [10] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: NONTERM 47: l9 -> [10] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: NONTERM 48: l9 -> [12] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0 49: l9 -> [12] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*n0 50: l9 -> [12] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*(-1+x_5^0)*n0 51: l9 -> [12] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*(-1+x_5^0)*n0+2*n0 Removed duplicate rules (ignoring updates) Start location: l9 28: l9 -> [10] : -1+x_5^0 >= 0, cost: NONTERM 47: l9 -> [10] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: NONTERM 48: l9 -> [12] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0 49: l9 -> [12] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*n0 50: l9 -> [12] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*(-1+x_5^0)*n0 51: l9 -> [12] : (-2+x_5^0 >= 0 /\ (-1+tmp_6^post8 >= 0 \/ 1+tmp_6^post8 <= 0)), cost: -2+4*x_5^0+2*(-1+x_5^0)*n0+2*n0 Computing asymptotic complexity Proved nontermination of rule 28 via SMT. Proved the following lower bound Complexity: Nonterm Cpx degree: Nonterm Solved cost: NONTERM Rule cost: NONTERM Rule guard: -1+x_5^0 >= 0