/export/starexec/sandbox/solver/bin/starexec_run_Itrs /export/starexec/sandbox/benchmark/theBenchmark.itrs /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- MAYBE DP problem for innermost termination. P = if#(true, I0, I1) -> exp#(I0, I1 - 1) exp#(I2, I3) -> if#(I3 > 0, I2, I3) cu#(true, I4) -> cu#(I4 < exp(10, 2), I4 + 1) cu#(true, I4) -> exp#(10, 2) R = if(false, x, y) -> 1 if(true, I0, I1) -> I0 * exp(I0, I1 - 1) exp(I2, I3) -> if(I3 > 0, I2, I3) cu(true, I4) -> cu(I4 < exp(10, 2), I4 + 1) This problem is converted using chaining, where edges between chained DPs are removed. DP problem for innermost termination. P = if#(true, I0, I1) -> exp#(I0, I1 - 1) exp#(I2, I3) -> if#(I3 > 0, I2, I3) cu#(true, I4) -> cu_1#(I4) cu#(true, I4) -> exp#(10, 2) cu_1#(I4) -> cu#(I4 < exp(10, 2), I4 + 1) exp#(I2, I3) -> exp#(I2, I3 - 1) [I3 > 0] R = if(false, x, y) -> 1 if(true, I0, I1) -> I0 * exp(I0, I1 - 1) exp(I2, I3) -> if(I3 > 0, I2, I3) cu(true, I4) -> cu(I4 < exp(10, 2), I4 + 1) The dependency graph for this problem is: 0 -> 5, 1 1 -> 2 -> 4 3 -> 5, 1 4 -> 3, 2 5 -> 5, 1 Where: 0) if#(true, I0, I1) -> exp#(I0, I1 - 1) 1) exp#(I2, I3) -> if#(I3 > 0, I2, I3) 2) cu#(true, I4) -> cu_1#(I4) 3) cu#(true, I4) -> exp#(10, 2) 4) cu_1#(I4) -> cu#(I4 < exp(10, 2), I4 + 1) 5) exp#(I2, I3) -> exp#(I2, I3 - 1) [I3 > 0] We have the following SCCs. { 2, 4 } { 5 } DP problem for innermost termination. P = exp#(I2, I3) -> exp#(I2, I3 - 1) [I3 > 0] R = if(false, x, y) -> 1 if(true, I0, I1) -> I0 * exp(I0, I1 - 1) exp(I2, I3) -> if(I3 > 0, I2, I3) cu(true, I4) -> cu(I4 < exp(10, 2), I4 + 1) We use the reverse value criterion with the projection function NU: NU[exp#(z1,z2)] = z2 + -1 * 0 This gives the following inequalities: I3 > 0 ==> I3 + -1 * 0 > I3 - 1 + -1 * 0 with I3 + -1 * 0 >= 0 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. DP problem for innermost termination. P = cu#(true, I4) -> cu_1#(I4) cu_1#(I4) -> cu#(I4 < exp(10, 2), I4 + 1) R = if(false, x, y) -> 1 if(true, I0, I1) -> I0 * exp(I0, I1 - 1) exp(I2, I3) -> if(I3 > 0, I2, I3) cu(true, I4) -> cu(I4 < exp(10, 2), I4 + 1)