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