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