YES Problem: a(a(f(b(),a(x)))) -> f(a(a(a(x))),b()) a(a(x)) -> f(b(),a(f(a(x),b()))) f(a(x),b()) -> f(b(),a(x)) Proof: DP Processor: DPs: a#(a(f(b(),a(x)))) -> a#(a(x)) a#(a(f(b(),a(x)))) -> a#(a(a(x))) a#(a(f(b(),a(x)))) -> f#(a(a(a(x))),b()) a#(a(x)) -> f#(a(x),b()) a#(a(x)) -> a#(f(a(x),b())) a#(a(x)) -> f#(b(),a(f(a(x),b()))) f#(a(x),b()) -> f#(b(),a(x)) TRS: a(a(f(b(),a(x)))) -> f(a(a(a(x))),b()) a(a(x)) -> f(b(),a(f(a(x),b()))) f(a(x),b()) -> f(b(),a(x)) TDG Processor: DPs: a#(a(f(b(),a(x)))) -> a#(a(x)) a#(a(f(b(),a(x)))) -> a#(a(a(x))) a#(a(f(b(),a(x)))) -> f#(a(a(a(x))),b()) a#(a(x)) -> f#(a(x),b()) a#(a(x)) -> a#(f(a(x),b())) a#(a(x)) -> f#(b(),a(f(a(x),b()))) f#(a(x),b()) -> f#(b(),a(x)) TRS: a(a(f(b(),a(x)))) -> f(a(a(a(x))),b()) a(a(x)) -> f(b(),a(f(a(x),b()))) f(a(x),b()) -> f(b(),a(x)) graph: f#(a(x),b()) -> f#(b(),a(x)) -> f#(a(x),b()) -> f#(b(),a(x)) a#(a(f(b(),a(x)))) -> f#(a(a(a(x))),b()) -> f#(a(x),b()) -> f#(b(),a(x)) a#(a(f(b(),a(x)))) -> a#(a(a(x))) -> a#(a(x)) -> f#(b(),a(f(a(x),b()))) a#(a(f(b(),a(x)))) -> a#(a(a(x))) -> a#(a(x)) -> a#(f(a(x),b())) a#(a(f(b(),a(x)))) -> a#(a(a(x))) -> a#(a(x)) -> f#(a(x),b()) a#(a(f(b(),a(x)))) -> a#(a(a(x))) -> a#(a(f(b(),a(x)))) -> f#(a(a(a(x))),b()) a#(a(f(b(),a(x)))) -> a#(a(a(x))) -> a#(a(f(b(),a(x)))) -> a#(a(a(x))) a#(a(f(b(),a(x)))) -> a#(a(a(x))) -> a#(a(f(b(),a(x)))) -> a#(a(x)) a#(a(f(b(),a(x)))) -> a#(a(x)) -> a#(a(x)) -> f#(b(),a(f(a(x),b()))) a#(a(f(b(),a(x)))) -> a#(a(x)) -> a#(a(x)) -> a#(f(a(x),b())) a#(a(f(b(),a(x)))) -> a#(a(x)) -> a#(a(x)) -> f#(a(x),b()) a#(a(f(b(),a(x)))) -> a#(a(x)) -> a#(a(f(b(),a(x)))) -> f#(a(a(a(x))),b()) a#(a(f(b(),a(x)))) -> a#(a(x)) -> a#(a(f(b(),a(x)))) -> a#(a(a(x))) a#(a(f(b(),a(x)))) -> a#(a(x)) -> a#(a(f(b(),a(x)))) -> a#(a(x)) a#(a(x)) -> f#(a(x),b()) -> f#(a(x),b()) -> f#(b(),a(x)) a#(a(x)) -> f#(b(),a(f(a(x),b()))) -> f#(a(x),b()) -> f#(b(),a(x)) a#(a(x)) -> a#(f(a(x),b())) -> a#(a(x)) -> f#(b(),a(f(a(x),b()))) a#(a(x)) -> a#(f(a(x),b())) -> a#(a(x)) -> a#(f(a(x),b())) a#(a(x)) -> a#(f(a(x),b())) -> a#(a(x)) -> f#(a(x),b()) a#(a(x)) -> a#(f(a(x),b())) -> a#(a(f(b(),a(x)))) -> f#(a(a(a(x))),b()) a#(a(x)) -> a#(f(a(x),b())) -> a#(a(f(b(),a(x)))) -> a#(a(a(x))) a#(a(x)) -> a#(f(a(x),b())) -> a#(a(f(b(),a(x)))) -> a#(a(x)) EDG Processor: DPs: a#(a(f(b(),a(x)))) -> a#(a(x)) a#(a(f(b(),a(x)))) -> a#(a(a(x))) a#(a(f(b(),a(x)))) -> f#(a(a(a(x))),b()) a#(a(x)) -> f#(a(x),b()) a#(a(x)) -> a#(f(a(x),b())) a#(a(x)) -> f#(b(),a(f(a(x),b()))) f#(a(x),b()) -> f#(b(),a(x)) TRS: a(a(f(b(),a(x)))) -> f(a(a(a(x))),b()) a(a(x)) -> f(b(),a(f(a(x),b()))) f(a(x),b()) -> f(b(),a(x)) graph: a#(a(f(b(),a(x)))) -> f#(a(a(a(x))),b()) -> f#(a(x),b()) -> f#(b(),a(x)) a#(a(f(b(),a(x)))) -> a#(a(a(x))) -> a#(a(f(b(),a(x)))) -> a#(a(x)) a#(a(f(b(),a(x)))) -> a#(a(a(x))) -> a#(a(f(b(),a(x)))) -> a#(a(a(x))) a#(a(f(b(),a(x)))) -> a#(a(a(x))) -> a#(a(f(b(),a(x)))) -> f#(a(a(a(x))),b()) a#(a(f(b(),a(x)))) -> a#(a(a(x))) -> a#(a(x)) -> f#(a(x),b()) a#(a(f(b(),a(x)))) -> a#(a(a(x))) -> a#(a(x)) -> a#(f(a(x),b())) a#(a(f(b(),a(x)))) -> a#(a(a(x))) -> a#(a(x)) -> f#(b(),a(f(a(x),b()))) a#(a(f(b(),a(x)))) -> a#(a(x)) -> a#(a(f(b(),a(x)))) -> a#(a(x)) a#(a(f(b(),a(x)))) -> a#(a(x)) -> a#(a(f(b(),a(x)))) -> a#(a(a(x))) a#(a(f(b(),a(x)))) -> a#(a(x)) -> a#(a(f(b(),a(x)))) -> f#(a(a(a(x))),b()) a#(a(f(b(),a(x)))) -> a#(a(x)) -> a#(a(x)) -> f#(a(x),b()) a#(a(f(b(),a(x)))) -> a#(a(x)) -> a#(a(x)) -> a#(f(a(x),b())) a#(a(f(b(),a(x)))) -> a#(a(x)) -> a#(a(x)) -> f#(b(),a(f(a(x),b()))) a#(a(x)) -> f#(a(x),b()) -> f#(a(x),b()) -> f#(b(),a(x)) SCC Processor: #sccs: 1 #rules: 2 #arcs: 14/49 DPs: a#(a(f(b(),a(x)))) -> a#(a(a(x))) a#(a(f(b(),a(x)))) -> a#(a(x)) TRS: a(a(f(b(),a(x)))) -> f(a(a(a(x))),b()) a(a(x)) -> f(b(),a(f(a(x),b()))) f(a(x),b()) -> f(b(),a(x)) Matrix Interpretation Processor: dim=4 interpretation: [a#](x0) = [1 0 0 0]x0 + [1], [0 0 0 0] [0 0 0 0] [0] [0 0 0 1] [0 0 0 1] [1] [f](x0, x1) = [1 0 0 0]x0 + [1 0 0 0]x1 + [0] [0 1 0 0] [0 1 0 0] [0], [0 1 0 1] [0] [0 1 1 0] [0] [a](x0) = [0 1 0 1]x0 + [1] [0 0 1 1] [0], [0] [0] [b] = [0] [0] orientation: a#(a(f(b(),a(x)))) = [0 1 2 1]x + [2] >= [0 1 2 1]x + [1] = a#(a(a(x))) a#(a(f(b(),a(x)))) = [0 1 2 1]x + [2] >= [0 1 0 1]x + [1] = a#(a(x)) [0 3 2 3] [1] [0 0 0 0] [0] [0 2 3 3] [3] [0 2 3 3] [3] a(a(f(b(),a(x)))) = [0 3 2 3]x + [2] >= [0 3 2 3]x + [2] = f(a(a(a(x))),b()) [0 3 3 2] [2] [0 3 3 2] [2] [0 1 2 1] [0] [0 0 0 0] [0] [0 2 1 1] [1] [0 2 1 1] [1] a(a(x)) = [0 1 2 1]x + [1] >= [0 1 2 1]x + [1] = f(b(),a(f(a(x),b()))) [0 1 1 2] [1] [0 1 1 2] [1] [0 0 0 0] [0] [0 0 0 0] [0] [0 0 1 1] [1] [0 0 1 1] [1] f(a(x),b()) = [0 1 0 1]x + [0] >= [0 1 0 1]x + [0] = f(b(),a(x)) [0 1 1 0] [0] [0 1 1 0] [0] problem: DPs: TRS: a(a(f(b(),a(x)))) -> f(a(a(a(x))),b()) a(a(x)) -> f(b(),a(f(a(x),b()))) f(a(x),b()) -> f(b(),a(x)) Qed