YES O(n^4) TRS: { norm(nil()) -> 0(), norm(g(x, y)) -> s(norm(x)), f(x, nil()) -> g(nil(), x), f(x, g(y, z)) -> g(f(x, y), z), rem(nil(), y) -> nil(), rem(g(x, y), 0()) -> g(x, y), rem(g(x, y), s(z)) -> rem(x, z) } DUP: We consider a non-duplicating system. Trs: { norm(nil()) -> 0(), norm(g(x, y)) -> s(norm(x)), f(x, nil()) -> g(nil(), x), f(x, g(y, z)) -> g(f(x, y), z), rem(nil(), y) -> nil(), rem(g(x, y), 0()) -> g(x, y), rem(g(x, y), s(z)) -> rem(x, z) } Matrix Interpretation: Interpretation class: triangular [X7] [X3] [1 0 0 1][X7] [1 0 0 0][X3] [1] [X6] [X2] [0 1 0 1][X6] [0 0 0 0][X2] [1] [rem]([X5], [X1]) = [0 0 1 1][X5] + [0 0 0 0][X1] + [1] [X4] [X0] [0 0 0 1][X4] [0 0 0 0][X0] [0] [X7] [X3] [1 0 0 0][X7] [1 1 1 1][X3] [0] [X6] [X2] [0 0 1 0][X6] [0 0 0 1][X2] [0] [f]([X5], [X1]) = [0 0 0 0][X5] + [0 0 0 1][X1] + [0] [X4] [X0] [0 0 0 1][X4] [0 0 0 1][X0] [1] [X7] [X3] [1 0 0 0][X7] [1 0 0 0][X3] [0] [X6] [X2] [0 1 0 0][X6] [0 0 0 0][X2] [1] [g]([X5], [X1]) = [0 0 1 0][X5] + [0 0 0 0][X1] + [1] [X4] [X0] [0 0 0 1][X4] [0 0 0 1][X0] [1] [X3] [1 0 0 0][X3] [0] [X2] [0 0 0 0][X2] [0] [s]([X1]) = [0 0 0 0][X1] + [0] [X0] [0 0 0 0][X0] [0] [0] [0] [nil] = [0] [1] [X3] [1 0 1 1][X3] [0] [X2] [0 0 0 0][X2] [0] [norm]([X1]) = [0 0 0 0][X1] + [0] [X0] [0 0 0 0][X0] [0] [0] [0] [0] = [0] [0] Qed