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