YES Problem: a(lambda(x),y) -> lambda(a(x,1())) a(lambda(x),y) -> lambda(a(x,a(y,t()))) a(a(x,y),z) -> a(x,a(y,z)) lambda(x) -> x a(x,y) -> x a(x,y) -> y Proof: DP Processor: DPs: a#(lambda(x),y) -> a#(x,1()) a#(lambda(x),y) -> lambda#(a(x,1())) a#(lambda(x),y) -> a#(y,t()) a#(lambda(x),y) -> a#(x,a(y,t())) a#(lambda(x),y) -> lambda#(a(x,a(y,t()))) a#(a(x,y),z) -> a#(y,z) a#(a(x,y),z) -> a#(x,a(y,z)) TRS: a(lambda(x),y) -> lambda(a(x,1())) a(lambda(x),y) -> lambda(a(x,a(y,t()))) a(a(x,y),z) -> a(x,a(y,z)) lambda(x) -> x a(x,y) -> x a(x,y) -> y TDG Processor: DPs: a#(lambda(x),y) -> a#(x,1()) a#(lambda(x),y) -> lambda#(a(x,1())) a#(lambda(x),y) -> a#(y,t()) a#(lambda(x),y) -> a#(x,a(y,t())) a#(lambda(x),y) -> lambda#(a(x,a(y,t()))) a#(a(x,y),z) -> a#(y,z) a#(a(x,y),z) -> a#(x,a(y,z)) TRS: a(lambda(x),y) -> lambda(a(x,1())) a(lambda(x),y) -> lambda(a(x,a(y,t()))) a(a(x,y),z) -> a(x,a(y,z)) lambda(x) -> x a(x,y) -> x a(x,y) -> y graph: a#(a(x,y),z) -> a#(y,z) -> a#(a(x,y),z) -> a#(x,a(y,z)) a#(a(x,y),z) -> a#(y,z) -> a#(a(x,y),z) -> a#(y,z) a#(a(x,y),z) -> a#(y,z) -> a#(lambda(x),y) -> lambda#(a(x,a(y,t()))) a#(a(x,y),z) -> a#(y,z) -> a#(lambda(x),y) -> a#(x,a(y,t())) a#(a(x,y),z) -> a#(y,z) -> a#(lambda(x),y) -> a#(y,t()) a#(a(x,y),z) -> a#(y,z) -> a#(lambda(x),y) -> lambda#(a(x,1())) a#(a(x,y),z) -> a#(y,z) -> a#(lambda(x),y) -> a#(x,1()) a#(a(x,y),z) -> a#(x,a(y,z)) -> a#(a(x,y),z) -> a#(x,a(y,z)) a#(a(x,y),z) -> a#(x,a(y,z)) -> a#(a(x,y),z) -> a#(y,z) a#(a(x,y),z) -> a#(x,a(y,z)) -> a#(lambda(x),y) -> lambda#(a(x,a(y,t()))) a#(a(x,y),z) -> a#(x,a(y,z)) -> a#(lambda(x),y) -> a#(x,a(y,t())) a#(a(x,y),z) -> a#(x,a(y,z)) -> a#(lambda(x),y) -> a#(y,t()) a#(a(x,y),z) -> a#(x,a(y,z)) -> a#(lambda(x),y) -> lambda#(a(x,1())) a#(a(x,y),z) -> a#(x,a(y,z)) -> a#(lambda(x),y) -> a#(x,1()) a#(lambda(x),y) -> a#(y,t()) -> a#(a(x,y),z) -> a#(x,a(y,z)) a#(lambda(x),y) -> a#(y,t()) -> a#(a(x,y),z) -> a#(y,z) a#(lambda(x),y) -> a#(y,t()) -> a#(lambda(x),y) -> lambda#(a(x,a(y,t()))) a#(lambda(x),y) -> a#(y,t()) -> a#(lambda(x),y) -> a#(x,a(y,t())) a#(lambda(x),y) -> a#(y,t()) -> a#(lambda(x),y) -> a#(y,t()) a#(lambda(x),y) -> a#(y,t()) -> a#(lambda(x),y) -> lambda#(a(x,1())) a#(lambda(x),y) -> a#(y,t()) -> a#(lambda(x),y) -> a#(x,1()) a#(lambda(x),y) -> a#(x,1()) -> a#(a(x,y),z) -> a#(x,a(y,z)) a#(lambda(x),y) -> a#(x,1()) -> a#(a(x,y),z) -> a#(y,z) a#(lambda(x),y) -> a#(x,1()) -> a#(lambda(x),y) -> lambda#(a(x,a(y,t()))) a#(lambda(x),y) -> a#(x,1()) -> a#(lambda(x),y) -> a#(x,a(y,t())) a#(lambda(x),y) -> a#(x,1()) -> a#(lambda(x),y) -> a#(y,t()) a#(lambda(x),y) -> a#(x,1()) -> a#(lambda(x),y) -> lambda#(a(x,1())) a#(lambda(x),y) -> a#(x,1()) -> a#(lambda(x),y) -> a#(x,1()) a#(lambda(x),y) -> a#(x,a(y,t())) -> a#(a(x,y),z) -> a#(x,a(y,z)) a#(lambda(x),y) -> a#(x,a(y,t())) -> a#(a(x,y),z) -> a#(y,z) a#(lambda(x),y) -> a#(x,a(y,t())) -> a#(lambda(x),y) -> lambda#(a(x,a(y,t()))) a#(lambda(x),y) -> a#(x,a(y,t())) -> a#(lambda(x),y) -> a#(x,a(y,t())) a#(lambda(x),y) -> a#(x,a(y,t())) -> a#(lambda(x),y) -> a#(y,t()) a#(lambda(x),y) -> a#(x,a(y,t())) -> a#(lambda(x),y) -> lambda#(a(x,1())) a#(lambda(x),y) -> a#(x,a(y,t())) -> a#(lambda(x),y) -> a#(x,1()) SCC Processor: #sccs: 1 #rules: 5 #arcs: 35/49 DPs: a#(a(x,y),z) -> a#(y,z) a#(lambda(x),y) -> a#(x,1()) a#(lambda(x),y) -> a#(y,t()) a#(lambda(x),y) -> a#(x,a(y,t())) a#(a(x,y),z) -> a#(x,a(y,z)) TRS: a(lambda(x),y) -> lambda(a(x,1())) a(lambda(x),y) -> lambda(a(x,a(y,t()))) a(a(x,y),z) -> a(x,a(y,z)) lambda(x) -> x a(x,y) -> x a(x,y) -> y Matrix Interpretation Processor: dim=1 interpretation: [a#](x0, x1) = 2x0 + 2x1, [t] = 0, [1] = 0, [a](x0, x1) = x0 + x1, [lambda](x0) = x0 + 1 orientation: a#(a(x,y),z) = 2x + 2y + 2z >= 2y + 2z = a#(y,z) a#(lambda(x),y) = 2x + 2y + 2 >= 2x = a#(x,1()) a#(lambda(x),y) = 2x + 2y + 2 >= 2y = a#(y,t()) a#(lambda(x),y) = 2x + 2y + 2 >= 2x + 2y = a#(x,a(y,t())) a#(a(x,y),z) = 2x + 2y + 2z >= 2x + 2y + 2z = a#(x,a(y,z)) a(lambda(x),y) = x + y + 1 >= x + 1 = lambda(a(x,1())) a(lambda(x),y) = x + y + 1 >= x + y + 1 = lambda(a(x,a(y,t()))) a(a(x,y),z) = x + y + z >= x + y + z = a(x,a(y,z)) lambda(x) = x + 1 >= x = x a(x,y) = x + y >= x = x a(x,y) = x + y >= y = y problem: DPs: a#(a(x,y),z) -> a#(y,z) a#(a(x,y),z) -> a#(x,a(y,z)) TRS: a(lambda(x),y) -> lambda(a(x,1())) a(lambda(x),y) -> lambda(a(x,a(y,t()))) a(a(x,y),z) -> a(x,a(y,z)) lambda(x) -> x a(x,y) -> x a(x,y) -> y Subterm Criterion Processor: simple projection: pi(a#) = 0 problem: DPs: TRS: a(lambda(x),y) -> lambda(a(x,1())) a(lambda(x),y) -> lambda(a(x,a(y,t()))) a(a(x,y),z) -> a(x,a(y,z)) lambda(x) -> x a(x,y) -> x a(x,y) -> y Qed