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