YES Problem: a(a(x1)) -> c(b(a(b(a(x1))))) b(a(b(x1))) -> b(x1) a(a(a(x1))) -> c(c(a(x1))) c(c(x1)) -> a(b(c(b(a(x1))))) a(c(a(x1))) -> c(c(a(x1))) c(a(c(x1))) -> a(a(c(x1))) Proof: DP Processor: DPs: a#(a(x1)) -> b#(a(x1)) a#(a(x1)) -> a#(b(a(x1))) a#(a(x1)) -> b#(a(b(a(x1)))) a#(a(x1)) -> c#(b(a(b(a(x1))))) a#(a(a(x1))) -> c#(a(x1)) a#(a(a(x1))) -> c#(c(a(x1))) c#(c(x1)) -> a#(x1) c#(c(x1)) -> b#(a(x1)) c#(c(x1)) -> c#(b(a(x1))) c#(c(x1)) -> b#(c(b(a(x1)))) c#(c(x1)) -> a#(b(c(b(a(x1))))) a#(c(a(x1))) -> c#(c(a(x1))) c#(a(c(x1))) -> a#(a(c(x1))) TRS: a(a(x1)) -> c(b(a(b(a(x1))))) b(a(b(x1))) -> b(x1) a(a(a(x1))) -> c(c(a(x1))) c(c(x1)) -> a(b(c(b(a(x1))))) a(c(a(x1))) -> c(c(a(x1))) c(a(c(x1))) -> a(a(c(x1))) TDG Processor: DPs: a#(a(x1)) -> b#(a(x1)) a#(a(x1)) -> a#(b(a(x1))) a#(a(x1)) -> b#(a(b(a(x1)))) a#(a(x1)) -> c#(b(a(b(a(x1))))) a#(a(a(x1))) -> c#(a(x1)) a#(a(a(x1))) -> c#(c(a(x1))) c#(c(x1)) -> a#(x1) c#(c(x1)) -> b#(a(x1)) c#(c(x1)) -> c#(b(a(x1))) c#(c(x1)) -> b#(c(b(a(x1)))) c#(c(x1)) -> a#(b(c(b(a(x1))))) a#(c(a(x1))) -> c#(c(a(x1))) c#(a(c(x1))) -> a#(a(c(x1))) TRS: a(a(x1)) -> c(b(a(b(a(x1))))) b(a(b(x1))) -> b(x1) a(a(a(x1))) -> c(c(a(x1))) c(c(x1)) -> a(b(c(b(a(x1))))) a(c(a(x1))) -> c(c(a(x1))) c(a(c(x1))) -> a(a(c(x1))) graph: c#(c(x1)) -> c#(b(a(x1))) -> c#(a(c(x1))) -> a#(a(c(x1))) c#(c(x1)) -> c#(b(a(x1))) -> c#(c(x1)) -> a#(b(c(b(a(x1))))) c#(c(x1)) -> c#(b(a(x1))) -> c#(c(x1)) -> b#(c(b(a(x1)))) c#(c(x1)) -> c#(b(a(x1))) -> c#(c(x1)) -> c#(b(a(x1))) c#(c(x1)) -> c#(b(a(x1))) -> c#(c(x1)) -> b#(a(x1)) c#(c(x1)) -> c#(b(a(x1))) -> c#(c(x1)) -> a#(x1) c#(c(x1)) -> a#(b(c(b(a(x1))))) -> a#(c(a(x1))) -> c#(c(a(x1))) c#(c(x1)) -> a#(b(c(b(a(x1))))) -> a#(a(a(x1))) -> c#(c(a(x1))) c#(c(x1)) -> a#(b(c(b(a(x1))))) -> a#(a(a(x1))) -> c#(a(x1)) c#(c(x1)) -> a#(b(c(b(a(x1))))) -> a#(a(x1)) -> c#(b(a(b(a(x1))))) c#(c(x1)) -> a#(b(c(b(a(x1))))) -> a#(a(x1)) -> b#(a(b(a(x1)))) c#(c(x1)) -> a#(b(c(b(a(x1))))) -> a#(a(x1)) -> a#(b(a(x1))) c#(c(x1)) -> a#(b(c(b(a(x1))))) -> a#(a(x1)) -> b#(a(x1)) c#(c(x1)) -> a#(x1) -> a#(c(a(x1))) -> c#(c(a(x1))) c#(c(x1)) -> a#(x1) -> a#(a(a(x1))) -> c#(c(a(x1))) c#(c(x1)) -> a#(x1) -> a#(a(a(x1))) -> c#(a(x1)) c#(c(x1)) -> a#(x1) -> a#(a(x1)) -> c#(b(a(b(a(x1))))) c#(c(x1)) -> a#(x1) -> a#(a(x1)) -> b#(a(b(a(x1)))) c#(c(x1)) -> a#(x1) -> a#(a(x1)) -> a#(b(a(x1))) c#(c(x1)) -> a#(x1) -> a#(a(x1)) -> b#(a(x1)) c#(a(c(x1))) -> a#(a(c(x1))) -> a#(c(a(x1))) -> c#(c(a(x1))) c#(a(c(x1))) -> a#(a(c(x1))) -> a#(a(a(x1))) -> c#(c(a(x1))) c#(a(c(x1))) -> a#(a(c(x1))) -> a#(a(a(x1))) -> c#(a(x1)) c#(a(c(x1))) -> a#(a(c(x1))) -> a#(a(x1)) -> c#(b(a(b(a(x1))))) c#(a(c(x1))) -> a#(a(c(x1))) -> a#(a(x1)) -> b#(a(b(a(x1)))) c#(a(c(x1))) -> a#(a(c(x1))) -> a#(a(x1)) -> a#(b(a(x1))) c#(a(c(x1))) -> a#(a(c(x1))) -> a#(a(x1)) -> b#(a(x1)) a#(c(a(x1))) -> c#(c(a(x1))) -> c#(a(c(x1))) -> a#(a(c(x1))) a#(c(a(x1))) -> c#(c(a(x1))) -> c#(c(x1)) -> a#(b(c(b(a(x1))))) a#(c(a(x1))) -> c#(c(a(x1))) -> c#(c(x1)) -> b#(c(b(a(x1)))) a#(c(a(x1))) -> c#(c(a(x1))) -> c#(c(x1)) -> c#(b(a(x1))) a#(c(a(x1))) -> c#(c(a(x1))) -> c#(c(x1)) -> b#(a(x1)) a#(c(a(x1))) -> c#(c(a(x1))) -> c#(c(x1)) -> a#(x1) a#(a(a(x1))) -> c#(c(a(x1))) -> c#(a(c(x1))) -> a#(a(c(x1))) a#(a(a(x1))) -> c#(c(a(x1))) -> c#(c(x1)) -> a#(b(c(b(a(x1))))) a#(a(a(x1))) -> c#(c(a(x1))) -> c#(c(x1)) -> b#(c(b(a(x1)))) a#(a(a(x1))) -> c#(c(a(x1))) -> c#(c(x1)) -> c#(b(a(x1))) a#(a(a(x1))) -> c#(c(a(x1))) -> c#(c(x1)) -> b#(a(x1)) a#(a(a(x1))) -> c#(c(a(x1))) -> c#(c(x1)) -> a#(x1) a#(a(a(x1))) -> c#(a(x1)) -> c#(a(c(x1))) -> a#(a(c(x1))) a#(a(a(x1))) -> c#(a(x1)) -> c#(c(x1)) -> a#(b(c(b(a(x1))))) a#(a(a(x1))) -> c#(a(x1)) -> c#(c(x1)) -> b#(c(b(a(x1)))) a#(a(a(x1))) -> c#(a(x1)) -> c#(c(x1)) -> c#(b(a(x1))) a#(a(a(x1))) -> c#(a(x1)) -> c#(c(x1)) -> b#(a(x1)) a#(a(a(x1))) -> c#(a(x1)) -> c#(c(x1)) -> a#(x1) a#(a(x1)) -> c#(b(a(b(a(x1))))) -> c#(a(c(x1))) -> a#(a(c(x1))) a#(a(x1)) -> c#(b(a(b(a(x1))))) -> c#(c(x1)) -> a#(b(c(b(a(x1))))) a#(a(x1)) -> c#(b(a(b(a(x1))))) -> c#(c(x1)) -> b#(c(b(a(x1)))) a#(a(x1)) -> c#(b(a(b(a(x1))))) -> c#(c(x1)) -> c#(b(a(x1))) a#(a(x1)) -> c#(b(a(b(a(x1))))) -> c#(c(x1)) -> b#(a(x1)) a#(a(x1)) -> c#(b(a(b(a(x1))))) -> c#(c(x1)) -> a#(x1) a#(a(x1)) -> a#(b(a(x1))) -> a#(c(a(x1))) -> c#(c(a(x1))) a#(a(x1)) -> a#(b(a(x1))) -> a#(a(a(x1))) -> c#(c(a(x1))) a#(a(x1)) -> a#(b(a(x1))) -> a#(a(a(x1))) -> c#(a(x1)) a#(a(x1)) -> a#(b(a(x1))) -> a#(a(x1)) -> c#(b(a(b(a(x1))))) a#(a(x1)) -> a#(b(a(x1))) -> a#(a(x1)) -> b#(a(b(a(x1)))) a#(a(x1)) -> a#(b(a(x1))) -> a#(a(x1)) -> a#(b(a(x1))) a#(a(x1)) -> a#(b(a(x1))) -> a#(a(x1)) -> b#(a(x1)) SCC Processor: #sccs: 1 #rules: 9 #arcs: 58/169 DPs: c#(c(x1)) -> c#(b(a(x1))) c#(c(x1)) -> a#(x1) a#(a(x1)) -> a#(b(a(x1))) a#(a(x1)) -> c#(b(a(b(a(x1))))) c#(c(x1)) -> a#(b(c(b(a(x1))))) a#(a(a(x1))) -> c#(a(x1)) c#(a(c(x1))) -> a#(a(c(x1))) a#(a(a(x1))) -> c#(c(a(x1))) a#(c(a(x1))) -> c#(c(a(x1))) TRS: a(a(x1)) -> c(b(a(b(a(x1))))) b(a(b(x1))) -> b(x1) a(a(a(x1))) -> c(c(a(x1))) c(c(x1)) -> a(b(c(b(a(x1))))) a(c(a(x1))) -> c(c(a(x1))) c(a(c(x1))) -> a(a(c(x1))) Arctic Interpretation Processor: dimension: 1 interpretation: [c#](x0) = x0 + 0, [a#](x0) = x0 + 0, [c](x0) = 8x0 + 8, [b](x0) = 0, [a](x0) = 8x0 + 0 orientation: c#(c(x1)) = 8x1 + 8 >= 0 = c#(b(a(x1))) c#(c(x1)) = 8x1 + 8 >= x1 + 0 = a#(x1) a#(a(x1)) = 8x1 + 0 >= 0 = a#(b(a(x1))) a#(a(x1)) = 8x1 + 0 >= 0 = c#(b(a(b(a(x1))))) c#(c(x1)) = 8x1 + 8 >= 0 = a#(b(c(b(a(x1))))) a#(a(a(x1))) = 16x1 + 8 >= 8x1 + 0 = c#(a(x1)) c#(a(c(x1))) = 16x1 + 16 >= 16x1 + 16 = a#(a(c(x1))) a#(a(a(x1))) = 16x1 + 8 >= 16x1 + 8 = c#(c(a(x1))) a#(c(a(x1))) = 16x1 + 8 >= 16x1 + 8 = c#(c(a(x1))) a(a(x1)) = 16x1 + 8 >= 8 = c(b(a(b(a(x1))))) b(a(b(x1))) = 0 >= 0 = b(x1) a(a(a(x1))) = 24x1 + 16 >= 24x1 + 16 = c(c(a(x1))) c(c(x1)) = 16x1 + 16 >= 8 = a(b(c(b(a(x1))))) a(c(a(x1))) = 24x1 + 16 >= 24x1 + 16 = c(c(a(x1))) c(a(c(x1))) = 24x1 + 24 >= 24x1 + 24 = a(a(c(x1))) problem: DPs: a#(a(x1)) -> a#(b(a(x1))) a#(a(x1)) -> c#(b(a(b(a(x1))))) c#(a(c(x1))) -> a#(a(c(x1))) a#(a(a(x1))) -> c#(c(a(x1))) a#(c(a(x1))) -> c#(c(a(x1))) TRS: a(a(x1)) -> c(b(a(b(a(x1))))) b(a(b(x1))) -> b(x1) a(a(a(x1))) -> c(c(a(x1))) c(c(x1)) -> a(b(c(b(a(x1))))) a(c(a(x1))) -> c(c(a(x1))) c(a(c(x1))) -> a(a(c(x1))) EDG Processor: DPs: a#(a(x1)) -> a#(b(a(x1))) a#(a(x1)) -> c#(b(a(b(a(x1))))) c#(a(c(x1))) -> a#(a(c(x1))) a#(a(a(x1))) -> c#(c(a(x1))) a#(c(a(x1))) -> c#(c(a(x1))) TRS: a(a(x1)) -> c(b(a(b(a(x1))))) b(a(b(x1))) -> b(x1) a(a(a(x1))) -> c(c(a(x1))) c(c(x1)) -> a(b(c(b(a(x1))))) a(c(a(x1))) -> c(c(a(x1))) c(a(c(x1))) -> a(a(c(x1))) graph: c#(a(c(x1))) -> a#(a(c(x1))) -> a#(a(x1)) -> a#(b(a(x1))) c#(a(c(x1))) -> a#(a(c(x1))) -> a#(a(x1)) -> c#(b(a(b(a(x1))))) c#(a(c(x1))) -> a#(a(c(x1))) -> a#(a(a(x1))) -> c#(c(a(x1))) c#(a(c(x1))) -> a#(a(c(x1))) -> a#(c(a(x1))) -> c#(c(a(x1))) a#(c(a(x1))) -> c#(c(a(x1))) -> c#(a(c(x1))) -> a#(a(c(x1))) a#(a(a(x1))) -> c#(c(a(x1))) -> c#(a(c(x1))) -> a#(a(c(x1))) a#(a(x1)) -> c#(b(a(b(a(x1))))) -> c#(a(c(x1))) -> a#(a(c(x1))) a#(a(x1)) -> a#(b(a(x1))) -> a#(a(x1)) -> a#(b(a(x1))) a#(a(x1)) -> a#(b(a(x1))) -> a#(a(x1)) -> c#(b(a(b(a(x1))))) a#(a(x1)) -> a#(b(a(x1))) -> a#(a(a(x1))) -> c#(c(a(x1))) a#(a(x1)) -> a#(b(a(x1))) -> a#(c(a(x1))) -> c#(c(a(x1))) CDG Processor: DPs: a#(a(x1)) -> a#(b(a(x1))) a#(a(x1)) -> c#(b(a(b(a(x1))))) c#(a(c(x1))) -> a#(a(c(x1))) a#(a(a(x1))) -> c#(c(a(x1))) a#(c(a(x1))) -> c#(c(a(x1))) TRS: a(a(x1)) -> c(b(a(b(a(x1))))) b(a(b(x1))) -> b(x1) a(a(a(x1))) -> c(c(a(x1))) c(c(x1)) -> a(b(c(b(a(x1))))) a(c(a(x1))) -> c(c(a(x1))) c(a(c(x1))) -> a(a(c(x1))) graph: c#(a(c(x1))) -> a#(a(c(x1))) -> a#(c(a(x1))) -> c#(c(a(x1))) c#(a(c(x1))) -> a#(a(c(x1))) -> a#(a(a(x1))) -> c#(c(a(x1))) c#(a(c(x1))) -> a#(a(c(x1))) -> a#(a(x1)) -> c#(b(a(b(a(x1))))) c#(a(c(x1))) -> a#(a(c(x1))) -> a#(a(x1)) -> a#(b(a(x1))) a#(c(a(x1))) -> c#(c(a(x1))) -> c#(a(c(x1))) -> a#(a(c(x1))) a#(a(a(x1))) -> c#(c(a(x1))) -> c#(a(c(x1))) -> a#(a(c(x1))) SCC Processor: #sccs: 1 #rules: 3 #arcs: 6/25 DPs: c#(a(c(x1))) -> a#(a(c(x1))) a#(a(a(x1))) -> c#(c(a(x1))) a#(c(a(x1))) -> c#(c(a(x1))) TRS: a(a(x1)) -> c(b(a(b(a(x1))))) b(a(b(x1))) -> b(x1) a(a(a(x1))) -> c(c(a(x1))) c(c(x1)) -> a(b(c(b(a(x1))))) a(c(a(x1))) -> c(c(a(x1))) c(a(c(x1))) -> a(a(c(x1))) Arctic Interpretation Processor: dimension: 2 interpretation: [c#](x0) = [-& 1 ]x0 + [0], [a#](x0) = [0 0]x0 + [0], [0 1 ] [1] [c](x0) = [-& 0 ]x0 + [0], [0 ] [b](x0) = [-&], [0 1] [0] [a](x0) = [0 0]x0 + [0] orientation: c#(a(c(x1))) = [1 2]x1 + [2] >= [0 1]x1 + [1] = a#(a(c(x1))) a#(a(a(x1))) = [1 1]x1 + [1] >= [1 1]x1 + [1] = c#(c(a(x1))) a#(c(a(x1))) = [1 1]x1 + [1] >= [1 1]x1 + [1] = c#(c(a(x1))) [1 1] [1] [1] a(a(x1)) = [0 1]x1 + [0] >= [0] = c(b(a(b(a(x1))))) [0 ] [0 ] b(a(b(x1))) = [-&] >= [-&] = b(x1) [1 2] [1] [1 1] [1] a(a(a(x1))) = [1 1]x1 + [1] >= [0 0]x1 + [0] = c(c(a(x1))) [0 1 ] [1] [0] c(c(x1)) = [-& 0 ]x1 + [0] >= [0] = a(b(c(b(a(x1))))) [1 1] [1] [1 1] [1] a(c(a(x1))) = [1 1]x1 + [1] >= [0 0]x1 + [0] = c(c(a(x1))) [1 2] [2] [1 2] [2] c(a(c(x1))) = [0 1]x1 + [1] >= [0 1]x1 + [1] = a(a(c(x1))) problem: DPs: a#(a(a(x1))) -> c#(c(a(x1))) a#(c(a(x1))) -> c#(c(a(x1))) TRS: a(a(x1)) -> c(b(a(b(a(x1))))) b(a(b(x1))) -> b(x1) a(a(a(x1))) -> c(c(a(x1))) c(c(x1)) -> a(b(c(b(a(x1))))) a(c(a(x1))) -> c(c(a(x1))) c(a(c(x1))) -> a(a(c(x1))) EDG Processor: DPs: a#(a(a(x1))) -> c#(c(a(x1))) a#(c(a(x1))) -> c#(c(a(x1))) TRS: a(a(x1)) -> c(b(a(b(a(x1))))) b(a(b(x1))) -> b(x1) a(a(a(x1))) -> c(c(a(x1))) c(c(x1)) -> a(b(c(b(a(x1))))) a(c(a(x1))) -> c(c(a(x1))) c(a(c(x1))) -> a(a(c(x1))) graph: Qed