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