3.35/3.35 YES 3.35/3.35 3.35/3.35 DP problem for innermost termination. 3.35/3.35 P = 3.35/3.35 init#(x1, x2, x3) -> f1#(rnd1, rnd2, rnd3) 3.35/3.35 f15#(I0, I1, I2) -> f15#(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.35 f14#(I5, I6, I7) -> f15#(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.35 f14#(I10, I11, I12) -> f14#(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.35 f13#(I13, I14, I15) -> f14#(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.35 f13#(I16, I17, I18) -> f13#(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.35 f12#(I19, I20, I21) -> f13#(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.35 f12#(I22, I23, I24) -> f12#(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.35 f11#(I25, I26, I27) -> f12#(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.35 f11#(I28, I29, I30) -> f11#(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.35 f10#(I31, I32, I33) -> f11#(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.35 f10#(I34, I35, I36) -> f10#(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.35 f9#(I37, I38, I39) -> f10#(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.35 f9#(I40, I41, I42) -> f9#(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.35 f8#(I43, I44, I45) -> f9#(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.35 f8#(I46, I47, I48) -> f8#(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.35 f7#(I49, I50, I51) -> f8#(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.35 f7#(I52, I53, I54) -> f7#(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.35 f6#(I55, I56, I57) -> f7#(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.35 f6#(I58, I59, I60) -> f6#(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.35 f5#(I61, I62, I63) -> f6#(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.35 f5#(I64, I65, I66) -> f5#(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.35 f4#(I67, I68, I69) -> f5#(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.35 f4#(I70, I71, I72) -> f4#(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.35 f3#(I73, I74, I75) -> f4#(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.35 f3#(I76, I77, I78) -> f3#(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.35 f3#(I79, I80, I81) -> f2#(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.35 f2#(I84, I85, I86) -> f3#(I84, I84, I84) 3.35/3.35 f1#(I87, I88, I89) -> f2#(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.35 R = 3.35/3.35 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.35 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.35 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.35 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.35 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.35 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.35 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.35 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.35 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.35 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.35 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.35 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.35 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.35 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.35 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.35 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.35 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.35 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.35 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.35 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.35 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.35 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.35 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.35 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.35 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.35 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.35 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.35 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.35 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.35 3.35/3.35 The dependency graph for this problem is: 3.35/3.35 0 -> 28 3.35/3.35 1 -> 1 3.35/3.35 2 -> 1 3.35/3.35 3 -> 2, 3 3.35/3.35 4 -> 2, 3 3.35/3.35 5 -> 4, 5 3.35/3.35 6 -> 4, 5 3.35/3.35 7 -> 6, 7 3.35/3.35 8 -> 6, 7 3.35/3.35 9 -> 8, 9 3.35/3.35 10 -> 8, 9 3.35/3.35 11 -> 10, 11 3.35/3.35 12 -> 10, 11 3.35/3.35 13 -> 12, 13 3.35/3.35 14 -> 12, 13 3.35/3.35 15 -> 14, 15 3.35/3.35 16 -> 14, 15 3.35/3.35 17 -> 16, 17 3.35/3.35 18 -> 16, 17 3.35/3.35 19 -> 18, 19 3.35/3.35 20 -> 18, 19 3.35/3.35 21 -> 20, 21 3.35/3.35 22 -> 20, 21 3.35/3.35 23 -> 22, 23 3.35/3.35 24 -> 23 3.35/3.35 25 -> 24, 25, 26 3.35/3.35 26 -> 27 3.35/3.35 27 -> 24, 25, 26 3.35/3.35 28 -> 27 3.35/3.35 Where: 3.35/3.35 0) init#(x1, x2, x3) -> f1#(rnd1, rnd2, rnd3) 3.35/3.35 1) f15#(I0, I1, I2) -> f15#(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.35 2) f14#(I5, I6, I7) -> f15#(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.35 3) f14#(I10, I11, I12) -> f14#(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.35 4) f13#(I13, I14, I15) -> f14#(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.35 5) f13#(I16, I17, I18) -> f13#(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.35 6) f12#(I19, I20, I21) -> f13#(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.35 7) f12#(I22, I23, I24) -> f12#(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 8) f11#(I25, I26, I27) -> f12#(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 9) f11#(I28, I29, I30) -> f11#(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 10) f10#(I31, I32, I33) -> f11#(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 11) f10#(I34, I35, I36) -> f10#(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 12) f9#(I37, I38, I39) -> f10#(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 13) f9#(I40, I41, I42) -> f9#(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 14) f8#(I43, I44, I45) -> f9#(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 15) f8#(I46, I47, I48) -> f8#(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 16) f7#(I49, I50, I51) -> f8#(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 17) f7#(I52, I53, I54) -> f7#(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 18) f6#(I55, I56, I57) -> f7#(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 19) f6#(I58, I59, I60) -> f6#(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 20) f5#(I61, I62, I63) -> f6#(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 21) f5#(I64, I65, I66) -> f5#(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 22) f4#(I67, I68, I69) -> f5#(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 23) f4#(I70, I71, I72) -> f4#(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 24) f3#(I73, I74, I75) -> f4#(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 25) f3#(I76, I77, I78) -> f3#(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 26) f3#(I79, I80, I81) -> f2#(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 27) f2#(I84, I85, I86) -> f3#(I84, I84, I84) 3.35/3.36 28) f1#(I87, I88, I89) -> f2#(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We have the following SCCs. 3.35/3.36 { 25, 26, 27 } 3.35/3.36 { 23 } 3.35/3.36 { 21 } 3.35/3.36 { 19 } 3.35/3.36 { 17 } 3.35/3.36 { 15 } 3.35/3.36 { 13 } 3.35/3.36 { 11 } 3.35/3.36 { 9 } 3.35/3.36 { 7 } 3.35/3.36 { 5 } 3.35/3.36 { 3 } 3.35/3.36 { 1 } 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f15#(I0, I1, I2) -> f15#(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We use the basic value criterion with the projection function NU: 3.35/3.36 NU[f15#(z1,z2,z3)] = z1 3.35/3.36 3.35/3.36 This gives the following inequalities: 3.35/3.36 0 <= I0 - 1 ==> I0 >! I0 - 1 3.35/3.36 3.35/3.36 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f14#(I10, I11, I12) -> f14#(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We use the basic value criterion with the projection function NU: 3.35/3.36 NU[f14#(z1,z2,z3)] = z3 3.35/3.36 3.35/3.36 This gives the following inequalities: 3.35/3.36 I11 = I12 /\ 0 <= I11 - 1 ==> I12 >! I11 - 1 3.35/3.36 3.35/3.36 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f13#(I16, I17, I18) -> f13#(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We use the basic value criterion with the projection function NU: 3.35/3.36 NU[f13#(z1,z2,z3)] = z3 3.35/3.36 3.35/3.36 This gives the following inequalities: 3.35/3.36 I17 = I18 /\ 0 <= I17 - 1 ==> I18 >! I17 - 1 3.35/3.36 3.35/3.36 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f12#(I22, I23, I24) -> f12#(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We use the basic value criterion with the projection function NU: 3.35/3.36 NU[f12#(z1,z2,z3)] = z3 3.35/3.36 3.35/3.36 This gives the following inequalities: 3.35/3.36 I23 = I24 /\ 0 <= I23 - 1 ==> I24 >! I23 - 1 3.35/3.36 3.35/3.36 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f11#(I28, I29, I30) -> f11#(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We use the basic value criterion with the projection function NU: 3.35/3.36 NU[f11#(z1,z2,z3)] = z3 3.35/3.36 3.35/3.36 This gives the following inequalities: 3.35/3.36 I29 = I30 /\ 0 <= I29 - 1 ==> I30 >! I29 - 1 3.35/3.36 3.35/3.36 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f10#(I34, I35, I36) -> f10#(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We use the basic value criterion with the projection function NU: 3.35/3.36 NU[f10#(z1,z2,z3)] = z3 3.35/3.36 3.35/3.36 This gives the following inequalities: 3.35/3.36 I35 = I36 /\ 0 <= I35 - 1 ==> I36 >! I35 - 1 3.35/3.36 3.35/3.36 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f9#(I40, I41, I42) -> f9#(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We use the basic value criterion with the projection function NU: 3.35/3.36 NU[f9#(z1,z2,z3)] = z3 3.35/3.36 3.35/3.36 This gives the following inequalities: 3.35/3.36 I41 = I42 /\ 0 <= I41 - 1 ==> I42 >! I41 - 1 3.35/3.36 3.35/3.36 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f8#(I46, I47, I48) -> f8#(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We use the basic value criterion with the projection function NU: 3.35/3.36 NU[f8#(z1,z2,z3)] = z3 3.35/3.36 3.35/3.36 This gives the following inequalities: 3.35/3.36 I47 = I48 /\ 0 <= I47 - 1 ==> I48 >! I47 - 1 3.35/3.36 3.35/3.36 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f7#(I52, I53, I54) -> f7#(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We use the basic value criterion with the projection function NU: 3.35/3.36 NU[f7#(z1,z2,z3)] = z3 3.35/3.36 3.35/3.36 This gives the following inequalities: 3.35/3.36 I53 = I54 /\ 0 <= I53 - 1 ==> I54 >! I53 - 1 3.35/3.36 3.35/3.36 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f6#(I58, I59, I60) -> f6#(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We use the basic value criterion with the projection function NU: 3.35/3.36 NU[f6#(z1,z2,z3)] = z3 3.35/3.36 3.35/3.36 This gives the following inequalities: 3.35/3.36 I59 = I60 /\ 0 <= I59 - 1 ==> I60 >! I59 - 1 3.35/3.36 3.35/3.36 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f5#(I64, I65, I66) -> f5#(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We use the basic value criterion with the projection function NU: 3.35/3.36 NU[f5#(z1,z2,z3)] = z3 3.35/3.36 3.35/3.36 This gives the following inequalities: 3.35/3.36 I65 = I66 /\ 0 <= I65 - 1 ==> I66 >! I65 - 1 3.35/3.36 3.35/3.36 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f4#(I70, I71, I72) -> f4#(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We use the basic value criterion with the projection function NU: 3.35/3.36 NU[f4#(z1,z2,z3)] = z3 3.35/3.36 3.35/3.36 This gives the following inequalities: 3.35/3.36 I71 = I72 /\ 0 <= I71 - 1 ==> I72 >! I71 - 1 3.35/3.36 3.35/3.36 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f3#(I76, I77, I78) -> f3#(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3#(I79, I80, I81) -> f2#(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2#(I84, I85, I86) -> f3#(I84, I84, I84) 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We use the basic value criterion with the projection function NU: 3.35/3.36 NU[f2#(z1,z2,z3)] = z1 3.35/3.36 NU[f3#(z1,z2,z3)] = z1 3.35/3.36 3.35/3.36 This gives the following inequalities: 3.35/3.36 I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1 ==> I76 (>! \union =) I76 3.35/3.36 I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1 ==> I79 >! I79 - 1 3.35/3.36 ==> I84 (>! \union =) I84 3.35/3.36 3.35/3.36 We remove all the strictly oriented dependency pairs. 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f3#(I76, I77, I78) -> f3#(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f2#(I84, I85, I86) -> f3#(I84, I84, I84) 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 The dependency graph for this problem is: 3.35/3.36 25 -> 25 3.35/3.36 27 -> 25 3.35/3.36 Where: 3.35/3.36 25) f3#(I76, I77, I78) -> f3#(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 27) f2#(I84, I85, I86) -> f3#(I84, I84, I84) 3.35/3.36 3.35/3.36 We have the following SCCs. 3.35/3.36 { 25 } 3.35/3.36 3.35/3.36 DP problem for innermost termination. 3.35/3.36 P = 3.35/3.36 f3#(I76, I77, I78) -> f3#(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 R = 3.35/3.36 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.35/3.36 f15(I0, I1, I2) -> f15(I0 - 1, I3, I4) [0 <= I0 - 1] 3.35/3.36 f14(I5, I6, I7) -> f15(I5, I8, I9) [0 = I7 /\ 0 = I6] 3.35/3.36 f14(I10, I11, I12) -> f14(I10, I11 - 1, I11 - 1) [I11 = I12 /\ 0 <= I11 - 1] 3.35/3.36 f13(I13, I14, I15) -> f14(I13, I13, I13) [0 = I15 /\ 0 = I14] 3.35/3.36 f13(I16, I17, I18) -> f13(I16, I17 - 1, I17 - 1) [I17 = I18 /\ 0 <= I17 - 1] 3.35/3.36 f12(I19, I20, I21) -> f13(I19, I19, I19) [0 = I21 /\ 0 = I20] 3.35/3.36 f12(I22, I23, I24) -> f12(I22, I23 - 1, I23 - 1) [I23 = I24 /\ 0 <= I23 - 1] 3.35/3.36 f11(I25, I26, I27) -> f12(I25, I25, I25) [0 = I27 /\ 0 = I26] 3.35/3.36 f11(I28, I29, I30) -> f11(I28, I29 - 1, I29 - 1) [I29 = I30 /\ 0 <= I29 - 1] 3.35/3.36 f10(I31, I32, I33) -> f11(I31, I31, I31) [0 = I33 /\ 0 = I32] 3.35/3.36 f10(I34, I35, I36) -> f10(I34, I35 - 1, I35 - 1) [I35 = I36 /\ 0 <= I35 - 1] 3.35/3.36 f9(I37, I38, I39) -> f10(I37, I37, I37) [0 = I39 /\ 0 = I38] 3.35/3.36 f9(I40, I41, I42) -> f9(I40, I41 - 1, I41 - 1) [I41 = I42 /\ 0 <= I41 - 1] 3.35/3.36 f8(I43, I44, I45) -> f9(I43, I43, I43) [0 = I45 /\ 0 = I44] 3.35/3.36 f8(I46, I47, I48) -> f8(I46, I47 - 1, I47 - 1) [I47 = I48 /\ 0 <= I47 - 1] 3.35/3.36 f7(I49, I50, I51) -> f8(I49, I49, I49) [0 = I51 /\ 0 = I50] 3.35/3.36 f7(I52, I53, I54) -> f7(I52, I53 - 1, I53 - 1) [I53 = I54 /\ 0 <= I53 - 1] 3.35/3.36 f6(I55, I56, I57) -> f7(I55, I55, I55) [0 = I57 /\ 0 = I56] 3.35/3.36 f6(I58, I59, I60) -> f6(I58, I59 - 1, I59 - 1) [I59 = I60 /\ 0 <= I59 - 1] 3.35/3.36 f5(I61, I62, I63) -> f6(I61, I61, I61) [0 = I63 /\ 0 = I62] 3.35/3.36 f5(I64, I65, I66) -> f5(I64, I65 - 1, I65 - 1) [I65 = I66 /\ 0 <= I65 - 1] 3.35/3.36 f4(I67, I68, I69) -> f5(I67, I67, I67) [0 = I69 /\ 0 = I68] 3.35/3.36 f4(I70, I71, I72) -> f4(I70, I71 - 1, I71 - 1) [I71 = I72 /\ 0 <= I71 - 1] 3.35/3.36 f3(I73, I74, I75) -> f4(I74, I74, I74) [I74 = I75 /\ I74 <= 99 /\ 0 <= I74 - 1] 3.35/3.36 f3(I76, I77, I78) -> f3(I76, I77 + 1, I77 + 1) [I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1] 3.35/3.36 f3(I79, I80, I81) -> f2(I79 - 1, I82, I83) [I80 = I81 /\ 99 <= I80 - 1 /\ 0 <= I79 - 1] 3.35/3.36 f2(I84, I85, I86) -> f3(I84, I84, I84) 3.35/3.36 f1(I87, I88, I89) -> f2(I88, I90, I91) [-1 <= I88 - 1 /\ 0 <= I87 - 1] 3.35/3.36 3.35/3.36 We use the reverse value criterion with the projection function NU: 3.35/3.36 NU[f3#(z1,z2,z3)] = 99 + -1 * z2 3.35/3.36 3.35/3.36 This gives the following inequalities: 3.35/3.36 I77 = I78 /\ I77 <= 99 /\ 0 <= I77 - 1 ==> 99 + -1 * I77 > 99 + -1 * (I77 + 1) with 99 + -1 * I77 >= 0 3.35/3.36 3.35/3.36 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 3.35/6.34 EOF