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