YES O(n^5) TRS: { mark(f(X)) -> active(f(X)), mark(g(X)) -> active(g(X)), mark(c()) -> active(c()), f(mark(X)) -> f(X), f(active(X)) -> f(X), g(mark(X)) -> g(X), g(active(X)) -> g(X), active(f(g(X))) -> mark(g(X)), active(c()) -> mark(f(g(c()))) } DUP: We consider a non-duplicating system. Trs: { mark(f(X)) -> active(f(X)), mark(g(X)) -> active(g(X)), mark(c()) -> active(c()), f(mark(X)) -> f(X), f(active(X)) -> f(X), g(mark(X)) -> g(X), g(active(X)) -> g(X), active(f(g(X))) -> mark(g(X)), active(c()) -> mark(f(g(c()))) } Matrix Interpretation: Interpretation class: triangular [X4] [1 0 1 2 0][X4] [0] [X3] [0 1 0 0 0][X3] [1] [active]([X2]) = [0 0 0 0 0][X2] + [0] [X1] [0 0 0 0 0][X1] [0] [X0] [0 0 0 0 1][X0] [1] [0] [3] [c] = [1] [2] [0] [X4] [1 0 0 0 1][X4] [0] [X3] [0 0 0 0 0][X3] [1] [g]([X2]) = [0 0 0 0 0][X2] + [0] [X1] [0 0 0 0 0][X1] [0] [X0] [0 0 0 0 0][X0] [0] [X4] [1 1 0 0 0][X4] [1] [X3] [0 0 0 0 0][X3] [1] [f]([X2]) = [0 0 0 0 0][X2] + [1] [X1] [0 0 0 0 0][X1] [0] [X0] [0 0 0 0 0][X0] [0] [X4] [1 2 0 0 0][X4] [0] [X3] [0 0 0 2 0][X3] [2] [mark]([X2]) = [0 0 0 2 0][X2] + [0] [X1] [0 0 0 0 0][X1] [0] [X0] [0 0 0 0 1][X0] [1] Qed