YES Problem: f(c(a(),z,x)) -> b(a(),z) b(x,b(z,y)) -> f(b(f(f(z)),c(x,z,y))) b(y,z) -> z Proof: DP Processor: DPs: f#(c(a(),z,x)) -> b#(a(),z) b#(x,b(z,y)) -> f#(z) b#(x,b(z,y)) -> f#(f(z)) b#(x,b(z,y)) -> b#(f(f(z)),c(x,z,y)) b#(x,b(z,y)) -> f#(b(f(f(z)),c(x,z,y))) TRS: f(c(a(),z,x)) -> b(a(),z) b(x,b(z,y)) -> f(b(f(f(z)),c(x,z,y))) b(y,z) -> z Matrix Interpretation Processor: dim=2 interpretation: [b#](x0, x1) = [1 0]x0 + [1 0]x1, [f#](x0) = [0 1]x0, [3 1] [1 0] [2] [b](x0, x1) = [0 0]x0 + [1 1]x1 + [0], [0 1] [1] [f](x0) = [0 1]x0 + [0], [1 0] [0] [c](x0, x1, x2) = [1 1]x1 + [1], [0] [a] = [0] orientation: f#(c(a(),z,x)) = [1 1]z + [1] >= [1 0]z = b#(a(),z) b#(x,b(z,y)) = [1 0]x + [1 0]y + [3 1]z + [2] >= [0 1]z = f#(z) b#(x,b(z,y)) = [1 0]x + [1 0]y + [3 1]z + [2] >= [0 1]z = f#(f(z)) b#(x,b(z,y)) = [1 0]x + [1 0]y + [3 1]z + [2] >= [1 1]z + [1] = b#(f(f(z)),c(x,z,y)) b#(x,b(z,y)) = [1 0]x + [1 0]y + [3 1]z + [2] >= [2 1]z + [1] = f#(b(f(f(z)),c(x,z,y))) [1 1] [2] [1 0] [2] f(c(a(),z,x)) = [1 1]z + [1] >= [1 1]z + [0] = b(a(),z) [3 1] [1 0] [3 1] [4] [2 1] [2] b(x,b(z,y)) = [0 0]x + [2 1]y + [3 1]z + [2] >= [2 1]z + [1] = f(b(f(f(z)),c(x,z,y))) [3 1] [1 0] [2] b(y,z) = [0 0]y + [1 1]z + [0] >= z = z problem: DPs: TRS: f(c(a(),z,x)) -> b(a(),z) b(x,b(z,y)) -> f(b(f(f(z)),c(x,z,y))) b(y,z) -> z Qed