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