1.11/1.17 MAYBE 1.11/1.17 1.11/1.17 DP problem for innermost termination. 1.11/1.17 P = 1.11/1.17 init#(x1, x2, x3) -> f1#(rnd1, rnd2, rnd3) 1.11/1.17 f3#(I0, I1, I2) -> f3#(I3, I4, I5) [-1 <= I3 - 1 /\ 0 <= I0 - 1 /\ I3 + 1 <= I0] 1.11/1.17 f2#(I6, I7, I8) -> f3#(I9, I10, I11) [0 <= I9 - 1 /\ I7 <= 0] 1.11/1.17 f2#(I12, I13, I14) -> f2#(I12 - 1, I12, 1) [0 <= I13 - 1] 1.11/1.17 f2#(I15, I16, I17) -> f2#(I15 - 1, I15, I18) [0 <= I17 - 1 /\ 0 <= I16 - 1] 1.11/1.17 f1#(I19, I20, I21) -> f2#(I20 - 1, I20, 0) [-1 <= I20 - 1 /\ 0 <= I19 - 1] 1.11/1.17 R = 1.11/1.17 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 1.11/1.17 f3(I0, I1, I2) -> f3(I3, I4, I5) [-1 <= I3 - 1 /\ 0 <= I0 - 1 /\ I3 + 1 <= I0] 1.11/1.17 f2(I6, I7, I8) -> f3(I9, I10, I11) [0 <= I9 - 1 /\ I7 <= 0] 1.11/1.17 f2(I12, I13, I14) -> f2(I12 - 1, I12, 1) [0 <= I13 - 1] 1.11/1.17 f2(I15, I16, I17) -> f2(I15 - 1, I15, I18) [0 <= I17 - 1 /\ 0 <= I16 - 1] 1.11/1.17 f1(I19, I20, I21) -> f2(I20 - 1, I20, 0) [-1 <= I20 - 1 /\ 0 <= I19 - 1] 1.11/1.17 1.11/1.17 The dependency graph for this problem is: 1.11/1.17 0 -> 5 1.11/1.17 1 -> 1 1.11/1.17 2 -> 1 1.11/1.17 3 -> 2, 3, 4 1.11/1.17 4 -> 2, 3, 4 1.11/1.17 5 -> 2, 3 1.11/1.17 Where: 1.11/1.17 0) init#(x1, x2, x3) -> f1#(rnd1, rnd2, rnd3) 1.11/1.17 1) f3#(I0, I1, I2) -> f3#(I3, I4, I5) [-1 <= I3 - 1 /\ 0 <= I0 - 1 /\ I3 + 1 <= I0] 1.11/1.17 2) f2#(I6, I7, I8) -> f3#(I9, I10, I11) [0 <= I9 - 1 /\ I7 <= 0] 1.11/1.17 3) f2#(I12, I13, I14) -> f2#(I12 - 1, I12, 1) [0 <= I13 - 1] 1.11/1.17 4) f2#(I15, I16, I17) -> f2#(I15 - 1, I15, I18) [0 <= I17 - 1 /\ 0 <= I16 - 1] 1.11/1.17 5) f1#(I19, I20, I21) -> f2#(I20 - 1, I20, 0) [-1 <= I20 - 1 /\ 0 <= I19 - 1] 1.11/1.17 1.11/1.17 We have the following SCCs. 1.11/1.17 { 3, 4 } 1.11/1.17 { 1 } 1.11/1.17 1.11/1.17 DP problem for innermost termination. 1.11/1.17 P = 1.11/1.17 f3#(I0, I1, I2) -> f3#(I3, I4, I5) [-1 <= I3 - 1 /\ 0 <= I0 - 1 /\ I3 + 1 <= I0] 1.11/1.17 R = 1.11/1.17 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 1.11/1.17 f3(I0, I1, I2) -> f3(I3, I4, I5) [-1 <= I3 - 1 /\ 0 <= I0 - 1 /\ I3 + 1 <= I0] 1.11/1.17 f2(I6, I7, I8) -> f3(I9, I10, I11) [0 <= I9 - 1 /\ I7 <= 0] 1.11/1.17 f2(I12, I13, I14) -> f2(I12 - 1, I12, 1) [0 <= I13 - 1] 1.11/1.17 f2(I15, I16, I17) -> f2(I15 - 1, I15, I18) [0 <= I17 - 1 /\ 0 <= I16 - 1] 1.11/1.17 f1(I19, I20, I21) -> f2(I20 - 1, I20, 0) [-1 <= I20 - 1 /\ 0 <= I19 - 1] 1.11/1.17 1.11/1.17 We use the basic value criterion with the projection function NU: 1.11/1.17 NU[f3#(z1,z2,z3)] = z1 1.11/1.17 1.11/1.17 This gives the following inequalities: 1.11/1.17 -1 <= I3 - 1 /\ 0 <= I0 - 1 /\ I3 + 1 <= I0 ==> I0 >! I3 1.11/1.17 1.11/1.17 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 1.11/1.17 1.11/1.17 DP problem for innermost termination. 1.11/1.17 P = 1.11/1.17 f2#(I12, I13, I14) -> f2#(I12 - 1, I12, 1) [0 <= I13 - 1] 1.11/1.17 f2#(I15, I16, I17) -> f2#(I15 - 1, I15, I18) [0 <= I17 - 1 /\ 0 <= I16 - 1] 1.11/1.17 R = 1.11/1.17 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 1.11/1.17 f3(I0, I1, I2) -> f3(I3, I4, I5) [-1 <= I3 - 1 /\ 0 <= I0 - 1 /\ I3 + 1 <= I0] 1.11/1.17 f2(I6, I7, I8) -> f3(I9, I10, I11) [0 <= I9 - 1 /\ I7 <= 0] 1.11/1.17 f2(I12, I13, I14) -> f2(I12 - 1, I12, 1) [0 <= I13 - 1] 1.11/1.17 f2(I15, I16, I17) -> f2(I15 - 1, I15, I18) [0 <= I17 - 1 /\ 0 <= I16 - 1] 1.11/1.17 f1(I19, I20, I21) -> f2(I20 - 1, I20, 0) [-1 <= I20 - 1 /\ 0 <= I19 - 1] 1.11/1.17 1.11/4.15 EOF