YES Problem: p(a(x0),p(b(a(x1)),x2)) -> p(x1,p(a(b(a(x1))),x2)) a(b(a(x0))) -> b(a(b(x0))) Proof: DP Processor: DPs: p#(a(x0),p(b(a(x1)),x2)) -> a#(b(a(x1))) p#(a(x0),p(b(a(x1)),x2)) -> p#(a(b(a(x1))),x2) p#(a(x0),p(b(a(x1)),x2)) -> p#(x1,p(a(b(a(x1))),x2)) a#(b(a(x0))) -> a#(b(x0)) TRS: p(a(x0),p(b(a(x1)),x2)) -> p(x1,p(a(b(a(x1))),x2)) a(b(a(x0))) -> b(a(b(x0))) TDG Processor: DPs: p#(a(x0),p(b(a(x1)),x2)) -> a#(b(a(x1))) p#(a(x0),p(b(a(x1)),x2)) -> p#(a(b(a(x1))),x2) p#(a(x0),p(b(a(x1)),x2)) -> p#(x1,p(a(b(a(x1))),x2)) a#(b(a(x0))) -> a#(b(x0)) TRS: p(a(x0),p(b(a(x1)),x2)) -> p(x1,p(a(b(a(x1))),x2)) a(b(a(x0))) -> b(a(b(x0))) graph: a#(b(a(x0))) -> a#(b(x0)) -> a#(b(a(x0))) -> a#(b(x0)) p#(a(x0),p(b(a(x1)),x2)) -> a#(b(a(x1))) -> a#(b(a(x0))) -> a#(b(x0)) p#(a(x0),p(b(a(x1)),x2)) -> p#(a(b(a(x1))),x2) -> p#(a(x0),p(b(a(x1)),x2)) -> p#(x1,p(a(b(a(x1))),x2)) p#(a(x0),p(b(a(x1)),x2)) -> p#(a(b(a(x1))),x2) -> p#(a(x0),p(b(a(x1)),x2)) -> p#(a(b(a(x1))),x2) p#(a(x0),p(b(a(x1)),x2)) -> p#(a(b(a(x1))),x2) -> p#(a(x0),p(b(a(x1)),x2)) -> a#(b(a(x1))) p#(a(x0),p(b(a(x1)),x2)) -> p#(x1,p(a(b(a(x1))),x2)) -> p#(a(x0),p(b(a(x1)),x2)) -> p#(x1,p(a(b(a(x1))),x2)) p#(a(x0),p(b(a(x1)),x2)) -> p#(x1,p(a(b(a(x1))),x2)) -> p#(a(x0),p(b(a(x1)),x2)) -> p#(a(b(a(x1))),x2) p#(a(x0),p(b(a(x1)),x2)) -> p#(x1,p(a(b(a(x1))),x2)) -> p#(a(x0),p(b(a(x1)),x2)) -> a#(b(a(x1))) SCC Processor: #sccs: 2 #rules: 3 #arcs: 8/16 DPs: p#(a(x0),p(b(a(x1)),x2)) -> p#(a(b(a(x1))),x2) p#(a(x0),p(b(a(x1)),x2)) -> p#(x1,p(a(b(a(x1))),x2)) TRS: p(a(x0),p(b(a(x1)),x2)) -> p(x1,p(a(b(a(x1))),x2)) a(b(a(x0))) -> b(a(b(x0))) Subterm Criterion Processor: simple projection: pi(p) = [1,1] pi(p#) = [1,1] problem: DPs: p#(a(x0),p(b(a(x1)),x2)) -> p#(x1,p(a(b(a(x1))),x2)) TRS: p(a(x0),p(b(a(x1)),x2)) -> p(x1,p(a(b(a(x1))),x2)) a(b(a(x0))) -> b(a(b(x0))) Matrix Interpretation Processor: dim=4 usable rules: p(a(x0),p(b(a(x1)),x2)) -> p(x1,p(a(b(a(x1))),x2)) a(b(a(x0))) -> b(a(b(x0))) interpretation: [0 0 1 0] [0 1 0 0] [b](x0) = [0 0 0 0]x0 [0 1 0 0] , [p#](x0, x1) = [1 0 0 0]x0 + [1 0 0 0]x1, [0 1 0 0] [1] [0 0 1 0] [0] [a](x0) = [1 0 1 0]x0 + [1] [0 0 0 1] [0], [1 0 0 0] [1 0 0 0] [0] [0 0 0 0] [0 1 1 0] [0] [p](x0, x1) = [0 0 0 0]x0 + [0 1 1 0]x1 + [0] [0 0 0 0] [0 0 0 0] [1] orientation: p#(a(x0),p(b(a(x1)),x2)) = [0 1 0 0]x0 + [1 0 1 0]x1 + [1 0 0 0]x2 + [2] >= [1 0 1 0]x1 + [1 0 0 0]x2 + [1] = p#(x1,p(a(b(a(x1))),x2)) [0 1 0 0] [1 0 1 0] [1 0 0 0] [2] [1 0 1 0] [1 0 0 0] [1] [0 0 0 0] [0 0 0 0] [0 2 2 0] [0] [0 0 0 0] [0 2 2 0] [0] p(a(x0),p(b(a(x1)),x2)) = [0 0 0 0]x0 + [0 0 0 0]x1 + [0 2 2 0]x2 + [0] >= [0 0 0 0]x1 + [0 2 2 0]x2 + [0] = p(x1,p(a(b(a(x1))),x2)) [0 0 0 0] [0 0 0 0] [0 0 0 0] [1] [0 0 0 0] [0 0 0 0] [1] [0 0 1 0] [1] [0 0 1 0] [1] [0 0 0 0] [0] [0 0 0 0] [0] a(b(a(x0))) = [1 0 1 0]x0 + [2] >= [0 0 0 0]x0 + [0] = b(a(b(x0))) [0 0 1 0] [0] [0 0 0 0] [0] problem: DPs: TRS: p(a(x0),p(b(a(x1)),x2)) -> p(x1,p(a(b(a(x1))),x2)) a(b(a(x0))) -> b(a(b(x0))) Qed DPs: a#(b(a(x0))) -> a#(b(x0)) TRS: p(a(x0),p(b(a(x1)),x2)) -> p(x1,p(a(b(a(x1))),x2)) a(b(a(x0))) -> b(a(b(x0))) Subterm Criterion Processor: simple projection: pi(b) = 0 pi(a#) = 0 problem: DPs: TRS: p(a(x0),p(b(a(x1)),x2)) -> p(x1,p(a(b(a(x1))),x2)) a(b(a(x0))) -> b(a(b(x0))) Qed