0.00/0.21 MAYBE 0.00/0.21 0.00/0.21 DP problem for innermost termination. 0.00/0.21 P = 0.00/0.21 round#(x) -> if#(x % 2 = 0, x, x + 1) 0.00/0.21 minusNat#(true, I2, y) -> minus#(I2, round(y)) 0.00/0.21 minusNat#(true, I2, y) -> round#(y) 0.00/0.21 minus#(I3, I4) -> minusNat#(I4 >= 0 && I3 = I4 + 1, I3, I4) 0.00/0.21 R = 0.00/0.21 if(false, u, v) -> v 0.00/0.21 if(true, I0, I1) -> I0 0.00/0.21 round(x) -> if(x % 2 = 0, x, x + 1) 0.00/0.21 minusNat(true, I2, y) -> minus(I2, round(y)) 0.00/0.21 minus(I3, I4) -> minusNat(I4 >= 0 && I3 = I4 + 1, I3, I4) 0.00/0.21 0.00/0.21 This problem is converted using chaining, where edges between chained DPs are removed. 0.00/0.21 0.00/0.21 DP problem for innermost termination. 0.00/0.21 P = 0.00/0.21 round#(x) -> if#(x % 2 = 0, x, x + 1) 0.00/0.21 minusNat#(true, I2, y) -> minus#(I2, round(y)) 0.00/0.21 minusNat#(true, I2, y) -> round#(y) 0.00/0.21 minus#(I3, I4) -> minusNat#(I4 >= 0 && I3 = I4 + 1, I3, I4) 0.00/0.21 minus#(I3, I4) -> minus#(I3, round(I4)) [I4 >= 0 && I3 = I4 + 1] 0.00/0.21 minus#(I3, I4) -> round#(I4) [I4 >= 0 && I3 = I4 + 1] 0.00/0.21 R = 0.00/0.21 if(false, u, v) -> v 0.00/0.21 if(true, I0, I1) -> I0 0.00/0.21 round(x) -> if(x % 2 = 0, x, x + 1) 0.00/0.21 minusNat(true, I2, y) -> minus(I2, round(y)) 0.00/0.21 minus(I3, I4) -> minusNat(I4 >= 0 && I3 = I4 + 1, I3, I4) 0.00/0.21 0.00/0.21 The dependency graph for this problem is: 0.00/0.21 0 -> 0.00/0.21 1 -> 5, 4, 3 0.00/0.21 2 -> 0 0.00/0.21 3 -> 0.00/0.21 4 -> 5, 4, 3 0.00/0.21 5 -> 0 0.00/0.21 Where: 0.00/0.21 0) round#(x) -> if#(x % 2 = 0, x, x + 1) 0.00/0.21 1) minusNat#(true, I2, y) -> minus#(I2, round(y)) 0.00/0.21 2) minusNat#(true, I2, y) -> round#(y) 0.00/0.21 3) minus#(I3, I4) -> minusNat#(I4 >= 0 && I3 = I4 + 1, I3, I4) 0.00/0.21 4) minus#(I3, I4) -> minus#(I3, round(I4)) [I4 >= 0 && I3 = I4 + 1] 0.00/0.21 5) minus#(I3, I4) -> round#(I4) [I4 >= 0 && I3 = I4 + 1] 0.00/0.21 0.00/0.21 We have the following SCCs. 0.00/0.21 { 4 } 0.00/0.21 0.00/0.21 DP problem for innermost termination. 0.00/0.21 P = 0.00/0.21 minus#(I3, I4) -> minus#(I3, round(I4)) [I4 >= 0 && I3 = I4 + 1] 0.00/0.21 R = 0.00/0.21 if(false, u, v) -> v 0.00/0.21 if(true, I0, I1) -> I0 0.00/0.21 round(x) -> if(x % 2 = 0, x, x + 1) 0.00/0.21 minusNat(true, I2, y) -> minus(I2, round(y)) 0.00/0.21 minus(I3, I4) -> minusNat(I4 >= 0 && I3 = I4 + 1, I3, I4) 0.00/0.21 0.00/3.19 EOF