YES TRS: { a__f(X) -> g(h(f(X))), a__f(X) -> f(X), mark(g(X)) -> g(X), mark(h(X)) -> h(mark(X)), mark(f(X)) -> a__f(mark(X))} DP: Strict: {mark#(h(X)) -> mark#(X), mark#(f(X)) -> a__f#(mark(X)), mark#(f(X)) -> mark#(X)} Weak: { a__f(X) -> g(h(f(X))), a__f(X) -> f(X), mark(g(X)) -> g(X), mark(h(X)) -> h(mark(X)), mark(f(X)) -> a__f(mark(X))} EDG: {(mark#(f(X)) -> mark#(X), mark#(f(X)) -> mark#(X)) (mark#(f(X)) -> mark#(X), mark#(f(X)) -> a__f#(mark(X))) (mark#(f(X)) -> mark#(X), mark#(h(X)) -> mark#(X)) (mark#(h(X)) -> mark#(X), mark#(h(X)) -> mark#(X)) (mark#(h(X)) -> mark#(X), mark#(f(X)) -> a__f#(mark(X))) (mark#(h(X)) -> mark#(X), mark#(f(X)) -> mark#(X))} SCCS: Scc: {mark#(h(X)) -> mark#(X), mark#(f(X)) -> mark#(X)} SCC: Strict: {mark#(h(X)) -> mark#(X), mark#(f(X)) -> mark#(X)} Weak: { a__f(X) -> g(h(f(X))), a__f(X) -> f(X), mark(g(X)) -> g(X), mark(h(X)) -> h(mark(X)), mark(f(X)) -> a__f(mark(X))} SPSC: Simple Projection: pi(mark#) = 0 Strict: {mark#(f(X)) -> mark#(X)} EDG: {(mark#(f(X)) -> mark#(X), mark#(f(X)) -> mark#(X))} SCCS: Scc: {mark#(f(X)) -> mark#(X)} SCC: Strict: {mark#(f(X)) -> mark#(X)} Weak: { a__f(X) -> g(h(f(X))), a__f(X) -> f(X), mark(g(X)) -> g(X), mark(h(X)) -> h(mark(X)), mark(f(X)) -> a__f(mark(X))} SPSC: Simple Projection: pi(mark#) = 0 Strict: {} Qed