YES O(n^2) 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 } DUP: We consider a non-duplicating system. 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 } Matrix Interpretation: Interpretation class: triangular [X1] [1 1][X1] [0] [h]([X0]) = [0 1][X0] + [1] [X1] [1 1][X1] [1] [i]([X0]) = [0 1][X0] + [1] [X1] [1 0][X1] [0] [s]([X0]) = [0 0][X0] + [0] [X3] [X1] [1 0][X3] [1 0][X1] [0] [h1]([X2], [X0]) = [0 0][X2] + [0 1][X0] + [1] [0] [0] = [0] [X5] [X3] [X1] [1 0][X5] [1 1][X3] [1 0][X1] [0] [h2]([X4], [X2], [X0]) = [0 0][X4] + [0 0][X2] + [0 1][X0] + [0] [X3] [X1] [1 1][X3] [1 1][X1] [1] [j]([X2], [X0]) = [0 1][X2] + [0 1][X0] + [1] [X1] [1 1][X1] [0] [k]([X0]) = [0 1][X0] + [0] [X3] [X1] [1 1][X3] [1 0][X1] [1] [f]([X2], [X0]) = [0 1][X2] + [0 1][X0] + [0] [X1] [1 1][X1] [0] [g]([X0]) = [0 1][X0] + [0] Qed