YES Time: 0.114746 TRS: { g h2(x, y, h1(z, u)) -> h2(s x, y, h1(z, u)), f(x, h1(y, z)) -> h2(0(), x, h1(y, z)), f(j(x, y), y) -> g f(x, k y), k h1(x, y) -> h1(s x, y), k h x -> h1(0(), x), h2(x, j(y, h1(z, u)), h1(z, u)) -> h2(s x, y, h1(s z, u)), i f(x, h y) -> y, i h2(s x, y, h1(x, z)) -> z} DP: DP: { g# h2(x, y, h1(z, u)) -> h2#(s x, y, h1(z, u)), f#(x, h1(y, z)) -> h2#(0(), x, h1(y, z)), f#(j(x, y), y) -> g# f(x, k y), f#(j(x, y), y) -> f#(x, k y), f#(j(x, y), y) -> k# y, h2#(x, j(y, h1(z, u)), h1(z, u)) -> h2#(s x, y, h1(s z, u))} TRS: { g h2(x, y, h1(z, u)) -> h2(s x, y, h1(z, u)), f(x, h1(y, z)) -> h2(0(), x, h1(y, z)), f(j(x, y), y) -> g f(x, k y), k h1(x, y) -> h1(s x, y), k h x -> h1(0(), x), h2(x, j(y, h1(z, u)), h1(z, u)) -> h2(s x, y, h1(s z, u)), i f(x, h y) -> y, i h2(s x, y, h1(x, z)) -> z} UR: { g h2(x, y, h1(z, u)) -> h2(s x, y, h1(z, u)), f(x, h1(y, z)) -> h2(0(), x, h1(y, z)), f(j(x, y), y) -> g f(x, k y), k h1(x, y) -> h1(s x, y), k h x -> h1(0(), x), h2(x, j(y, h1(z, u)), h1(z, u)) -> h2(s x, y, h1(s z, u))} EDG: {(g# h2(x, y, h1(z, u)) -> h2#(s x, y, h1(z, u)), h2#(x, j(y, h1(z, u)), h1(z, u)) -> h2#(s x, y, h1(s z, u))) (h2#(x, j(y, h1(z, u)), h1(z, u)) -> h2#(s x, y, h1(s z, u)), h2#(x, j(y, h1(z, u)), h1(z, u)) -> h2#(s x, y, h1(s z, u))) (f#(j(x, y), y) -> g# f(x, k y), g# h2(x, y, h1(z, u)) -> h2#(s x, y, h1(z, u))) (f#(j(x, y), y) -> f#(x, k y), f#(x, h1(y, z)) -> h2#(0(), x, h1(y, z))) (f#(j(x, y), y) -> f#(x, k y), f#(j(x, y), y) -> g# f(x, k y)) (f#(j(x, y), y) -> f#(x, k y), f#(j(x, y), y) -> f#(x, k y)) (f#(j(x, y), y) -> f#(x, k y), f#(j(x, y), y) -> k# y) (f#(x, h1(y, z)) -> h2#(0(), x, h1(y, z)), h2#(x, j(y, h1(z, u)), h1(z, u)) -> h2#(s x, y, h1(s z, u)))} STATUS: arrows: 0.777778 SCCS (2): Scc: {f#(j(x, y), y) -> f#(x, k y)} Scc: {h2#(x, j(y, h1(z, u)), h1(z, u)) -> h2#(s x, y, h1(s z, u))} SCC (1): Strict: {f#(j(x, y), y) -> f#(x, k y)} Weak: { g h2(x, y, h1(z, u)) -> h2(s x, y, h1(z, u)), f(x, h1(y, z)) -> h2(0(), x, h1(y, z)), f(j(x, y), y) -> g f(x, k y), k h1(x, y) -> h1(s x, y), k h x -> h1(0(), x), h2(x, j(y, h1(z, u)), h1(z, u)) -> h2(s x, y, h1(s z, u)), i f(x, h y) -> y, i h2(s x, y, h1(x, z)) -> z} POLY: Mode: weak, max_in=1, output_bits=-1, dnum=1, ur=true Interpretation: [h2](x0, x1, x2) = x0 + x1 + 1, [f](x0, x1) = x0 + x1 + 1, [j](x0, x1) = x0 + x1 + 1, [h1](x0, x1) = x0 + 1, [g](x0) = 0, [k](x0) = 1, [s](x0) = 1, [i](x0) = 0, [h](x0) = 0, [0] = 0, [f#](x0, x1) = x0 + 1 Strict: f#(j(x, y), y) -> f#(x, k y) 2 + 1x + 1y >= 1 + 1x + 0y Weak: i h2(s x, y, h1(x, z)) -> z 0 + 0x + 0y + 0z >= 1z i f(x, h y) -> y 0 + 0x + 0y >= 1y h2(x, j(y, h1(z, u)), h1(z, u)) -> h2(s x, y, h1(s z, u)) 2 + 1x + 0y + 1z + 0u >= 4 + 0x + 0y + 0z + 0u k h x -> h1(0(), x) 1 + 0x >= 1 + 0x k h1(x, y) -> h1(s x, y) 1 + 0x + 0y >= 2 + 0x + 0y f(j(x, y), y) -> g f(x, k y) 2 + 1x + 2y >= 0 + 0x + 0y f(x, h1(y, z)) -> h2(0(), x, h1(y, z)) 2 + 1x + 1y + 0z >= 2 + 0x + 1y + 0z g h2(x, y, h1(z, u)) -> h2(s x, y, h1(z, u)) 0 + 0x + 0y + 0z + 0u >= 3 + 0x + 0y + 1z + 0u Qed SCC (1): Strict: {h2#(x, j(y, h1(z, u)), h1(z, u)) -> h2#(s x, y, h1(s z, u))} Weak: { g h2(x, y, h1(z, u)) -> h2(s x, y, h1(z, u)), f(x, h1(y, z)) -> h2(0(), x, h1(y, z)), f(j(x, y), y) -> g f(x, k y), k h1(x, y) -> h1(s x, y), k h x -> h1(0(), x), h2(x, j(y, h1(z, u)), h1(z, u)) -> h2(s x, y, h1(s z, u)), i f(x, h y) -> y, i h2(s x, y, h1(x, z)) -> z} POLY: Mode: weak, max_in=1, output_bits=-1, dnum=1, ur=true Interpretation: [h2](x0, x1, x2) = x0 + x1 + 1, [f](x0, x1) = x0 + x1 + 1, [j](x0, x1) = x0 + x1 + 1, [h1](x0, x1) = x0 + 1, [g](x0) = 0, [k](x0) = 1, [s](x0) = 1, [i](x0) = 0, [h](x0) = 1, [0] = 1, [h2#](x0, x1, x2) = x0 Strict: h2#(x, j(y, h1(z, u)), h1(z, u)) -> h2#(s x, y, h1(s z, u)) 2 + 0x + 1y + 1z + 0u >= 0 + 0x + 1y + 0z + 0u Weak: i h2(s x, y, h1(x, z)) -> z 0 + 0x + 0y + 0z >= 1z i f(x, h y) -> y 0 + 0x + 0y >= 1y h2(x, j(y, h1(z, u)), h1(z, u)) -> h2(s x, y, h1(s z, u)) 2 + 1x + 0y + 1z + 0u >= 4 + 0x + 0y + 0z + 0u k h x -> h1(0(), x) 1 + 0x >= 2 + 0x k h1(x, y) -> h1(s x, y) 1 + 0x + 0y >= 2 + 0x + 0y f(j(x, y), y) -> g f(x, k y) 2 + 1x + 2y >= 0 + 0x + 0y f(x, h1(y, z)) -> h2(0(), x, h1(y, z)) 2 + 1x + 1y + 0z >= 3 + 0x + 1y + 0z g h2(x, y, h1(z, u)) -> h2(s x, y, h1(z, u)) 0 + 0x + 0y + 0z + 0u >= 3 + 0x + 0y + 1z + 0u Qed