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