1.53/1.58 MAYBE 1.53/1.58 1.53/1.58 DP problem for innermost termination. 1.53/1.58 P = 1.53/1.58 init#(x1, x2, x3, x4) -> f1#(rnd1, rnd2, rnd3, rnd4) 1.53/1.58 f3#(I0, I1, I2, I3) -> f3#(1, I4, I5, I6) [I5 <= I1 - 1 /\ 0 <= I1 - 1 /\ I6 <= y1 - 1 /\ -1 <= y1 - 1 /\ I1 = I2] 1.53/1.58 f3#(I7, I8, I9, I10) -> f3#(I11, I8, I12, I13) [0 <= I7 - 1 /\ 0 <= I10 - 1 /\ 0 <= I9 - 1 /\ I7 <= I11 - 1 /\ I7 <= I8 - 1 /\ I12 <= I9 - 1 /\ I13 <= I10 - 1 /\ I7 <= I14 - 1] 1.53/1.58 f2#(I15, I16, I17, I18) -> f3#(0, I17, I17, 0) [0 <= I17 - 1 /\ I16 <= 0] 1.53/1.58 f2#(I19, I20, I21, I22) -> f2#(I19 - 1, I19, 1, I23) [0 <= I20 - 1] 1.53/1.58 f2#(I24, I25, I26, I27) -> f2#(I24 - 1, I24, I28, I29) [0 <= I26 - 1 /\ I26 <= I28 - 1 /\ 0 <= I25 - 1] 1.53/1.58 f1#(I30, I31, I32, I33) -> f2#(I31 - 1, I31, 0, I34) [-1 <= I31 - 1 /\ 0 <= I30 - 1] 1.53/1.58 R = 1.53/1.58 init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) 1.53/1.58 f3(I0, I1, I2, I3) -> f3(1, I4, I5, I6) [I5 <= I1 - 1 /\ 0 <= I1 - 1 /\ I6 <= y1 - 1 /\ -1 <= y1 - 1 /\ I1 = I2] 1.53/1.58 f3(I7, I8, I9, I10) -> f3(I11, I8, I12, I13) [0 <= I7 - 1 /\ 0 <= I10 - 1 /\ 0 <= I9 - 1 /\ I7 <= I11 - 1 /\ I7 <= I8 - 1 /\ I12 <= I9 - 1 /\ I13 <= I10 - 1 /\ I7 <= I14 - 1] 1.53/1.58 f2(I15, I16, I17, I18) -> f3(0, I17, I17, 0) [0 <= I17 - 1 /\ I16 <= 0] 1.53/1.58 f2(I19, I20, I21, I22) -> f2(I19 - 1, I19, 1, I23) [0 <= I20 - 1] 1.53/1.58 f2(I24, I25, I26, I27) -> f2(I24 - 1, I24, I28, I29) [0 <= I26 - 1 /\ I26 <= I28 - 1 /\ 0 <= I25 - 1] 1.53/1.58 f1(I30, I31, I32, I33) -> f2(I31 - 1, I31, 0, I34) [-1 <= I31 - 1 /\ 0 <= I30 - 1] 1.53/1.58 1.53/1.58 The dependency graph for this problem is: 1.53/1.58 0 -> 6 1.53/1.58 1 -> 1, 2 1.53/1.58 2 -> 1, 2 1.53/1.58 3 -> 1 1.53/1.58 4 -> 3, 4, 5 1.53/1.58 5 -> 3, 4, 5 1.53/1.58 6 -> 4 1.53/1.58 Where: 1.53/1.58 0) init#(x1, x2, x3, x4) -> f1#(rnd1, rnd2, rnd3, rnd4) 1.53/1.58 1) f3#(I0, I1, I2, I3) -> f3#(1, I4, I5, I6) [I5 <= I1 - 1 /\ 0 <= I1 - 1 /\ I6 <= y1 - 1 /\ -1 <= y1 - 1 /\ I1 = I2] 1.53/1.58 2) f3#(I7, I8, I9, I10) -> f3#(I11, I8, I12, I13) [0 <= I7 - 1 /\ 0 <= I10 - 1 /\ 0 <= I9 - 1 /\ I7 <= I11 - 1 /\ I7 <= I8 - 1 /\ I12 <= I9 - 1 /\ I13 <= I10 - 1 /\ I7 <= I14 - 1] 1.53/1.58 3) f2#(I15, I16, I17, I18) -> f3#(0, I17, I17, 0) [0 <= I17 - 1 /\ I16 <= 0] 1.53/1.58 4) f2#(I19, I20, I21, I22) -> f2#(I19 - 1, I19, 1, I23) [0 <= I20 - 1] 1.53/1.58 5) f2#(I24, I25, I26, I27) -> f2#(I24 - 1, I24, I28, I29) [0 <= I26 - 1 /\ I26 <= I28 - 1 /\ 0 <= I25 - 1] 1.53/1.58 6) f1#(I30, I31, I32, I33) -> f2#(I31 - 1, I31, 0, I34) [-1 <= I31 - 1 /\ 0 <= I30 - 1] 1.53/1.58 1.53/1.58 We have the following SCCs. 1.53/1.58 { 4, 5 } 1.53/1.58 { 1, 2 } 1.53/1.58 1.53/1.58 DP problem for innermost termination. 1.53/1.58 P = 1.53/1.58 f3#(I0, I1, I2, I3) -> f3#(1, I4, I5, I6) [I5 <= I1 - 1 /\ 0 <= I1 - 1 /\ I6 <= y1 - 1 /\ -1 <= y1 - 1 /\ I1 = I2] 1.53/1.58 f3#(I7, I8, I9, I10) -> f3#(I11, I8, I12, I13) [0 <= I7 - 1 /\ 0 <= I10 - 1 /\ 0 <= I9 - 1 /\ I7 <= I11 - 1 /\ I7 <= I8 - 1 /\ I12 <= I9 - 1 /\ I13 <= I10 - 1 /\ I7 <= I14 - 1] 1.53/1.58 R = 1.53/1.58 init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) 1.53/1.58 f3(I0, I1, I2, I3) -> f3(1, I4, I5, I6) [I5 <= I1 - 1 /\ 0 <= I1 - 1 /\ I6 <= y1 - 1 /\ -1 <= y1 - 1 /\ I1 = I2] 1.53/1.58 f3(I7, I8, I9, I10) -> f3(I11, I8, I12, I13) [0 <= I7 - 1 /\ 0 <= I10 - 1 /\ 0 <= I9 - 1 /\ I7 <= I11 - 1 /\ I7 <= I8 - 1 /\ I12 <= I9 - 1 /\ I13 <= I10 - 1 /\ I7 <= I14 - 1] 1.53/1.58 f2(I15, I16, I17, I18) -> f3(0, I17, I17, 0) [0 <= I17 - 1 /\ I16 <= 0] 1.53/1.58 f2(I19, I20, I21, I22) -> f2(I19 - 1, I19, 1, I23) [0 <= I20 - 1] 1.53/1.58 f2(I24, I25, I26, I27) -> f2(I24 - 1, I24, I28, I29) [0 <= I26 - 1 /\ I26 <= I28 - 1 /\ 0 <= I25 - 1] 1.53/1.58 f1(I30, I31, I32, I33) -> f2(I31 - 1, I31, 0, I34) [-1 <= I31 - 1 /\ 0 <= I30 - 1] 1.53/1.58 1.53/1.58 We use the basic value criterion with the projection function NU: 1.53/1.58 NU[f3#(z1,z2,z3,z4)] = z3 1.53/1.58 1.53/1.58 This gives the following inequalities: 1.53/1.58 I5 <= I1 - 1 /\ 0 <= I1 - 1 /\ I6 <= y1 - 1 /\ -1 <= y1 - 1 /\ I1 = I2 ==> I2 >! I5 1.53/1.58 0 <= I7 - 1 /\ 0 <= I10 - 1 /\ 0 <= I9 - 1 /\ I7 <= I11 - 1 /\ I7 <= I8 - 1 /\ I12 <= I9 - 1 /\ I13 <= I10 - 1 /\ I7 <= I14 - 1 ==> I9 >! I12 1.53/1.58 1.53/1.58 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 1.53/1.58 1.53/1.58 DP problem for innermost termination. 1.53/1.58 P = 1.53/1.58 f2#(I19, I20, I21, I22) -> f2#(I19 - 1, I19, 1, I23) [0 <= I20 - 1] 1.53/1.58 f2#(I24, I25, I26, I27) -> f2#(I24 - 1, I24, I28, I29) [0 <= I26 - 1 /\ I26 <= I28 - 1 /\ 0 <= I25 - 1] 1.53/1.58 R = 1.53/1.58 init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) 1.53/1.58 f3(I0, I1, I2, I3) -> f3(1, I4, I5, I6) [I5 <= I1 - 1 /\ 0 <= I1 - 1 /\ I6 <= y1 - 1 /\ -1 <= y1 - 1 /\ I1 = I2] 1.53/1.59 f3(I7, I8, I9, I10) -> f3(I11, I8, I12, I13) [0 <= I7 - 1 /\ 0 <= I10 - 1 /\ 0 <= I9 - 1 /\ I7 <= I11 - 1 /\ I7 <= I8 - 1 /\ I12 <= I9 - 1 /\ I13 <= I10 - 1 /\ I7 <= I14 - 1] 1.53/1.59 f2(I15, I16, I17, I18) -> f3(0, I17, I17, 0) [0 <= I17 - 1 /\ I16 <= 0] 1.53/1.59 f2(I19, I20, I21, I22) -> f2(I19 - 1, I19, 1, I23) [0 <= I20 - 1] 1.53/1.59 f2(I24, I25, I26, I27) -> f2(I24 - 1, I24, I28, I29) [0 <= I26 - 1 /\ I26 <= I28 - 1 /\ 0 <= I25 - 1] 1.53/1.59 f1(I30, I31, I32, I33) -> f2(I31 - 1, I31, 0, I34) [-1 <= I31 - 1 /\ 0 <= I30 - 1] 1.53/1.59 1.53/4.56 EOF