175.73/44.87 YES 175.73/44.87 175.73/44.87 Problem: 175.73/44.87 a(x1) -> b(x1) 175.73/44.87 a(b(x1)) -> x1 175.73/44.87 b(c(c(x1))) -> c(c(b(c(a(x1))))) 175.73/44.87 175.73/44.87 Proof: 175.73/44.87 String Reversal Processor: 175.73/44.87 a(x1) -> b(x1) 175.73/44.87 b(a(x1)) -> x1 175.73/44.87 c(c(b(x1))) -> a(c(b(c(c(x1))))) 175.73/44.87 DP Processor: 175.73/44.87 DPs: 175.73/44.87 a#(x1) -> b#(x1) 175.73/44.87 c#(c(b(x1))) -> c#(x1) 175.73/44.87 c#(c(b(x1))) -> c#(c(x1)) 175.73/44.87 c#(c(b(x1))) -> b#(c(c(x1))) 175.73/44.87 c#(c(b(x1))) -> c#(b(c(c(x1)))) 175.73/44.87 c#(c(b(x1))) -> a#(c(b(c(c(x1))))) 175.73/44.87 TRS: 175.73/44.87 a(x1) -> b(x1) 175.73/44.87 b(a(x1)) -> x1 175.73/44.87 c(c(b(x1))) -> a(c(b(c(c(x1))))) 175.73/44.87 TDG Processor: 175.73/44.87 DPs: 175.73/44.87 a#(x1) -> b#(x1) 175.73/44.87 c#(c(b(x1))) -> c#(x1) 175.73/44.87 c#(c(b(x1))) -> c#(c(x1)) 175.73/44.87 c#(c(b(x1))) -> b#(c(c(x1))) 175.73/44.87 c#(c(b(x1))) -> c#(b(c(c(x1)))) 175.73/44.87 c#(c(b(x1))) -> a#(c(b(c(c(x1))))) 175.73/44.87 TRS: 175.73/44.87 a(x1) -> b(x1) 175.73/44.87 b(a(x1)) -> x1 175.73/44.87 c(c(b(x1))) -> a(c(b(c(c(x1))))) 175.73/44.87 graph: 175.73/44.87 c#(c(b(x1))) -> c#(c(x1)) -> c#(c(b(x1))) -> a#(c(b(c(c(x1))))) 175.73/44.87 c#(c(b(x1))) -> c#(c(x1)) -> c#(c(b(x1))) -> c#(b(c(c(x1)))) 175.73/44.87 c#(c(b(x1))) -> c#(c(x1)) -> c#(c(b(x1))) -> b#(c(c(x1))) 175.73/44.87 c#(c(b(x1))) -> c#(c(x1)) -> c#(c(b(x1))) -> c#(c(x1)) 175.73/44.87 c#(c(b(x1))) -> c#(c(x1)) -> c#(c(b(x1))) -> c#(x1) 175.73/44.87 c#(c(b(x1))) -> c#(b(c(c(x1)))) -> 175.73/44.87 c#(c(b(x1))) -> a#(c(b(c(c(x1))))) 175.73/44.87 c#(c(b(x1))) -> c#(b(c(c(x1)))) -> 175.73/44.87 c#(c(b(x1))) -> c#(b(c(c(x1)))) 175.73/44.87 c#(c(b(x1))) -> c#(b(c(c(x1)))) -> c#(c(b(x1))) -> b#(c(c(x1))) 175.73/44.87 c#(c(b(x1))) -> c#(b(c(c(x1)))) -> c#(c(b(x1))) -> c#(c(x1)) 175.73/44.87 c#(c(b(x1))) -> c#(b(c(c(x1)))) -> c#(c(b(x1))) -> c#(x1) 175.73/44.87 c#(c(b(x1))) -> c#(x1) -> c#(c(b(x1))) -> a#(c(b(c(c(x1))))) 175.73/44.87 c#(c(b(x1))) -> c#(x1) -> c#(c(b(x1))) -> c#(b(c(c(x1)))) 175.73/44.87 c#(c(b(x1))) -> c#(x1) -> c#(c(b(x1))) -> b#(c(c(x1))) 175.73/44.87 c#(c(b(x1))) -> c#(x1) -> c#(c(b(x1))) -> c#(c(x1)) 175.73/44.87 c#(c(b(x1))) -> c#(x1) -> c#(c(b(x1))) -> c#(x1) 175.73/44.87 c#(c(b(x1))) -> a#(c(b(c(c(x1))))) -> a#(x1) -> b#(x1) 175.73/44.87 SCC Processor: 175.73/44.87 #sccs: 1 175.73/44.87 #rules: 3 175.73/44.87 #arcs: 16/36 175.73/44.87 DPs: 175.73/44.87 c#(c(b(x1))) -> c#(c(x1)) 175.73/44.87 c#(c(b(x1))) -> c#(x1) 175.73/44.87 c#(c(b(x1))) -> c#(b(c(c(x1)))) 175.73/44.87 TRS: 175.73/44.87 a(x1) -> b(x1) 175.73/44.87 b(a(x1)) -> x1 175.73/44.87 c(c(b(x1))) -> a(c(b(c(c(x1))))) 175.73/44.87 Arctic Interpretation Processor: 175.73/44.87 dimension: 2 175.73/44.87 usable rules: 175.73/44.87 a(x1) -> b(x1) 175.73/44.87 b(a(x1)) -> x1 175.73/44.87 c(c(b(x1))) -> a(c(b(c(c(x1))))) 175.73/44.87 interpretation: 175.73/44.87 [c#](x0) = [1 0]x0 + [0], 175.73/44.87 175.73/44.87 [-& 0 ] [0] 175.73/44.87 [c](x0) = [0 -&]x0 + [0], 175.73/44.87 175.73/44.87 [-& 0 ] [1] 175.73/44.87 [b](x0) = [0 2 ]x0 + [3], 175.73/44.87 175.73/44.87 [-& 0 ] [1] 175.73/44.87 [a](x0) = [0 2 ]x0 + [3] 175.73/44.87 orientation: 175.73/44.87 c#(c(b(x1))) = [1 3]x1 + [4] >= [0 1]x1 + [1] = c#(c(x1)) 175.73/44.87 175.73/44.87 c#(c(b(x1))) = [1 3]x1 + [4] >= [1 0]x1 + [0] = c#(x1) 175.73/44.87 175.73/44.87 c#(c(b(x1))) = [1 3]x1 + [4] >= [0 2]x1 + [3] = c#(b(c(c(x1)))) 175.73/44.87 175.73/44.87 [-& 0 ] [1] [-& 0 ] [1] 175.73/44.87 a(x1) = [0 2 ]x1 + [3] >= [0 2 ]x1 + [3] = b(x1) 175.73/44.87 175.73/44.87 [0 2] [3] 175.73/44.87 b(a(x1)) = [2 4]x1 + [5] >= x1 = x1 175.73/44.87 175.73/44.87 [-& 0 ] [1] [-& 0 ] [1] 175.73/44.87 c(c(b(x1))) = [0 2 ]x1 + [3] >= [0 2 ]x1 + [3] = a(c(b(c(c(x1))))) 175.73/44.88 problem: 175.73/44.88 DPs: 175.73/44.88 c#(c(b(x1))) -> c#(x1) 175.73/44.88 TRS: 175.73/44.88 a(x1) -> b(x1) 175.73/44.88 b(a(x1)) -> x1 175.73/44.88 c(c(b(x1))) -> a(c(b(c(c(x1))))) 175.73/44.88 Restore Modifier: 175.73/44.88 DPs: 175.73/44.88 c#(c(b(x1))) -> c#(x1) 175.73/44.88 TRS: 175.73/44.88 a(x1) -> b(x1) 175.73/44.88 b(a(x1)) -> x1 175.73/44.88 c(c(b(x1))) -> a(c(b(c(c(x1))))) 175.73/44.88 EDG Processor: 175.73/44.88 DPs: 175.73/44.88 c#(c(b(x1))) -> c#(x1) 175.73/44.88 TRS: 175.73/44.88 a(x1) -> b(x1) 175.73/44.88 b(a(x1)) -> x1 175.73/44.88 c(c(b(x1))) -> a(c(b(c(c(x1))))) 175.73/44.88 graph: 175.73/44.88 c#(c(b(x1))) -> c#(x1) -> c#(c(b(x1))) -> c#(x1) 175.73/44.88 Usable Rule Processor: 175.73/44.88 DPs: 175.73/44.88 c#(c(b(x1))) -> c#(x1) 175.73/44.88 TRS: 175.73/44.88 175.73/44.88 Arctic Interpretation Processor: 175.73/44.88 dimension: 3 175.73/44.88 usable rules: 175.73/44.88 175.73/44.88 interpretation: 175.73/44.88 [c#](x0) = [0 -& -&]x0, 175.73/44.88 175.73/44.88 [0 -& 1 ] [0] 175.73/44.88 [c](x0) = [-& -& 1 ]x0 + [0] 175.73/44.88 [0 -& -&] [0], 175.73/44.88 175.73/44.88 [0 -& 0 ] [0] 175.73/44.88 [b](x0) = [1 1 1 ]x0 + [1] 175.73/44.88 [1 0 -&] [1] 175.73/44.88 orientation: 175.73/44.88 c#(c(b(x1))) = [2 1 0]x1 + [2] >= [0 -& -&]x1 = c#(x1) 175.73/44.88 problem: 175.73/44.88 DPs: 175.73/44.88 175.73/44.88 TRS: 175.73/44.88 175.73/44.88 Qed 175.73/44.88 EOF