YES TRS: active(c()) -> mark(f(g(c()))) active(f(g(X))) -> mark(g(X)) mark(c()) -> active(c()) mark(f(X)) -> active(f(X)) mark(g(X)) -> active(g(X)) f(mark(X)) -> f(X) f(active(X)) -> f(X) g(mark(X)) -> g(X) g(active(X)) -> g(X) linear polynomial interpretations on N: active_A(x1) = 1 active#_A(x1) = x1 + 1 c_A = 5 c#_A = 8 mark_A(x1) = 1 mark#_A(x1) = x1 + 2 f_A(x1) = 3 f#_A(x1) = x1 g_A(x1) = 1 g#_A(x1) = 5 precedence: active > mark > c = f > g