YES Problem: a__c() -> a__f(g(c())) a__f(g(X)) -> g(X) mark(c()) -> a__c() mark(f(X)) -> a__f(X) mark(g(X)) -> g(X) a__c() -> c() a__f(X) -> f(X) Proof: DP Processor: DPs: a__c#() -> a__f#(g(c())) mark#(c()) -> a__c#() mark#(f(X)) -> a__f#(X) TRS: a__c() -> a__f(g(c())) a__f(g(X)) -> g(X) mark(c()) -> a__c() mark(f(X)) -> a__f(X) mark(g(X)) -> g(X) a__c() -> c() a__f(X) -> f(X) Arctic Interpretation Processor: dimension: 1 interpretation: [mark#](x0) = 1x0 + 4, [a__f#](x0) = 0, [a__c#] = 1, [f](x0) = x0, [mark](x0) = 4x0 + 12, [a__f](x0) = 1x0 + 4, [g](x0) = -1x0 + 0, [c] = 3, [a__c] = 8 orientation: a__c#() = 1 >= 0 = a__f#(g(c())) mark#(c()) = 4 >= 1 = a__c#() mark#(f(X)) = 1X + 4 >= 0 = a__f#(X) a__c() = 8 >= 4 = a__f(g(c())) a__f(g(X)) = X + 4 >= -1X + 0 = g(X) mark(c()) = 12 >= 8 = a__c() mark(f(X)) = 4X + 12 >= 1X + 4 = a__f(X) mark(g(X)) = 3X + 12 >= -1X + 0 = g(X) a__c() = 8 >= 3 = c() a__f(X) = 1X + 4 >= X = f(X) problem: DPs: TRS: a__c() -> a__f(g(c())) a__f(g(X)) -> g(X) mark(c()) -> a__c() mark(f(X)) -> a__f(X) mark(g(X)) -> g(X) a__c() -> c() a__f(X) -> f(X) Qed