178.17/45.51 YES 178.17/45.52 178.17/45.52 Problem: 178.17/45.52 a(x1) -> x1 178.17/45.52 a(b(b(x1))) -> b(b(a(b(c(x1))))) 178.17/45.52 b(c(x1)) -> a(x1) 178.17/45.52 178.17/45.52 Proof: 178.17/45.52 String Reversal Processor: 178.17/45.52 a(x1) -> x1 178.17/45.52 b(b(a(x1))) -> c(b(a(b(b(x1))))) 178.17/45.52 c(b(x1)) -> a(x1) 178.17/45.52 DP Processor: 178.17/45.52 DPs: 178.17/45.52 b#(b(a(x1))) -> b#(x1) 178.17/45.52 b#(b(a(x1))) -> b#(b(x1)) 178.17/45.52 b#(b(a(x1))) -> a#(b(b(x1))) 178.17/45.52 b#(b(a(x1))) -> b#(a(b(b(x1)))) 178.17/45.52 b#(b(a(x1))) -> c#(b(a(b(b(x1))))) 178.17/45.52 c#(b(x1)) -> a#(x1) 178.17/45.52 TRS: 178.17/45.52 a(x1) -> x1 178.17/45.52 b(b(a(x1))) -> c(b(a(b(b(x1))))) 178.17/45.52 c(b(x1)) -> a(x1) 178.17/45.52 TDG Processor: 178.17/45.52 DPs: 178.17/45.52 b#(b(a(x1))) -> b#(x1) 178.17/45.52 b#(b(a(x1))) -> b#(b(x1)) 178.17/45.52 b#(b(a(x1))) -> a#(b(b(x1))) 178.17/45.52 b#(b(a(x1))) -> b#(a(b(b(x1)))) 178.17/45.52 b#(b(a(x1))) -> c#(b(a(b(b(x1))))) 178.17/45.52 c#(b(x1)) -> a#(x1) 178.17/45.52 TRS: 178.17/45.52 a(x1) -> x1 178.17/45.52 b(b(a(x1))) -> c(b(a(b(b(x1))))) 178.17/45.52 c(b(x1)) -> a(x1) 178.17/45.52 graph: 178.17/45.52 b#(b(a(x1))) -> c#(b(a(b(b(x1))))) -> c#(b(x1)) -> a#(x1) 178.17/45.52 b#(b(a(x1))) -> b#(b(x1)) -> b#(b(a(x1))) -> c#(b(a(b(b(x1))))) 178.17/45.52 b#(b(a(x1))) -> b#(b(x1)) -> b#(b(a(x1))) -> b#(a(b(b(x1)))) 178.17/45.52 b#(b(a(x1))) -> b#(b(x1)) -> b#(b(a(x1))) -> a#(b(b(x1))) 178.17/45.52 b#(b(a(x1))) -> b#(b(x1)) -> b#(b(a(x1))) -> b#(b(x1)) 178.17/45.52 b#(b(a(x1))) -> b#(b(x1)) -> b#(b(a(x1))) -> b#(x1) 178.17/45.52 b#(b(a(x1))) -> b#(a(b(b(x1)))) -> 178.17/45.52 b#(b(a(x1))) -> c#(b(a(b(b(x1))))) 178.17/45.52 b#(b(a(x1))) -> b#(a(b(b(x1)))) -> 178.17/45.52 b#(b(a(x1))) -> b#(a(b(b(x1)))) 178.17/45.52 b#(b(a(x1))) -> b#(a(b(b(x1)))) -> b#(b(a(x1))) -> a#(b(b(x1))) 178.17/45.52 b#(b(a(x1))) -> b#(a(b(b(x1)))) -> b#(b(a(x1))) -> b#(b(x1)) 178.17/45.52 b#(b(a(x1))) -> b#(a(b(b(x1)))) -> b#(b(a(x1))) -> b#(x1) 178.17/45.52 b#(b(a(x1))) -> b#(x1) -> b#(b(a(x1))) -> c#(b(a(b(b(x1))))) 178.17/45.52 b#(b(a(x1))) -> b#(x1) -> b#(b(a(x1))) -> b#(a(b(b(x1)))) 178.17/45.52 b#(b(a(x1))) -> b#(x1) -> b#(b(a(x1))) -> a#(b(b(x1))) 178.17/45.52 b#(b(a(x1))) -> b#(x1) -> b#(b(a(x1))) -> b#(b(x1)) 178.17/45.52 b#(b(a(x1))) -> b#(x1) -> b#(b(a(x1))) -> b#(x1) 178.17/45.52 SCC Processor: 178.17/45.52 #sccs: 1 178.17/45.52 #rules: 3 178.17/45.52 #arcs: 16/36 178.17/45.52 DPs: 178.17/45.52 b#(b(a(x1))) -> b#(b(x1)) 178.17/45.52 b#(b(a(x1))) -> b#(x1) 178.17/45.52 b#(b(a(x1))) -> b#(a(b(b(x1)))) 178.17/45.52 TRS: 178.17/45.52 a(x1) -> x1 178.17/45.52 b(b(a(x1))) -> c(b(a(b(b(x1))))) 178.17/45.52 c(b(x1)) -> a(x1) 178.17/45.52 Arctic Interpretation Processor: 178.17/45.52 dimension: 2 178.17/45.52 usable rules: 178.17/45.52 a(x1) -> x1 178.17/45.52 b(b(a(x1))) -> c(b(a(b(b(x1))))) 178.17/45.52 c(b(x1)) -> a(x1) 178.17/45.52 interpretation: 178.17/45.52 [b#](x0) = [0 1]x0 + [0], 178.17/45.52 178.17/45.52 [1 0 ] [0] 178.17/45.52 [c](x0) = [0 -&]x0 + [0], 178.17/45.52 178.17/45.52 [-& 0 ] [0] 178.17/45.52 [b](x0) = [0 -&]x0 + [0], 178.17/45.52 178.17/45.52 [0 1 ] [1] 178.17/45.52 [a](x0) = [-& 0 ]x0 + [0] 178.17/45.52 orientation: 178.17/45.52 b#(b(a(x1))) = [1 2]x1 + [2] >= [1 0]x1 + [1] = b#(b(x1)) 178.17/45.52 178.17/45.52 b#(b(a(x1))) = [1 2]x1 + [2] >= [0 1]x1 + [0] = b#(x1) 178.17/45.52 178.17/45.52 b#(b(a(x1))) = [1 2]x1 + [2] >= [0 1]x1 + [1] = b#(a(b(b(x1)))) 178.17/45.52 178.17/45.52 [0 1 ] [1] 178.17/45.52 a(x1) = [-& 0 ]x1 + [0] >= x1 = x1 178.17/45.52 178.17/45.52 [0 1 ] [1] [0 1 ] [1] 178.17/45.52 b(b(a(x1))) = [-& 0 ]x1 + [0] >= [-& 0 ]x1 + [0] = c(b(a(b(b(x1))))) 178.17/45.52 178.17/45.52 [0 1 ] [1] [0 1 ] [1] 178.17/45.52 c(b(x1)) = [-& 0 ]x1 + [0] >= [-& 0 ]x1 + [0] = a(x1) 178.17/45.52 problem: 178.17/45.52 DPs: 178.17/45.52 b#(b(a(x1))) -> b#(b(x1)) 178.17/45.52 TRS: 178.17/45.52 a(x1) -> x1 178.17/45.52 b(b(a(x1))) -> c(b(a(b(b(x1))))) 178.17/45.52 c(b(x1)) -> a(x1) 178.17/45.52 Restore Modifier: 178.17/45.52 DPs: 178.17/45.52 b#(b(a(x1))) -> b#(b(x1)) 178.17/45.52 TRS: 178.17/45.52 a(x1) -> x1 178.17/45.52 b(b(a(x1))) -> c(b(a(b(b(x1))))) 178.17/45.52 c(b(x1)) -> a(x1) 178.17/45.52 EDG Processor: 178.17/45.52 DPs: 178.17/45.52 b#(b(a(x1))) -> b#(b(x1)) 178.17/45.52 TRS: 178.17/45.52 a(x1) -> x1 178.17/45.52 b(b(a(x1))) -> c(b(a(b(b(x1))))) 178.17/45.52 c(b(x1)) -> a(x1) 178.17/45.52 graph: 178.17/45.52 b#(b(a(x1))) -> b#(b(x1)) -> b#(b(a(x1))) -> b#(b(x1)) 178.17/45.52 Matrix Interpretation Processor: dim=1 178.17/45.52 178.17/45.52 usable rules: 178.17/45.52 a(x1) -> x1 178.17/45.52 b(b(a(x1))) -> c(b(a(b(b(x1))))) 178.17/45.52 c(b(x1)) -> a(x1) 178.17/45.52 interpretation: 178.17/45.52 [b#](x0) = 4x0 + 1/2, 178.17/45.52 178.17/45.52 [c](x0) = 1/2x0 + 3/2, 178.17/45.52 178.17/45.52 [b](x0) = 2x0, 178.17/45.52 178.17/45.52 [a](x0) = x0 + 1/2 178.17/45.52 orientation: 178.17/45.52 b#(b(a(x1))) = 8x1 + 9/2 >= 8x1 + 1/2 = b#(b(x1)) 178.17/45.52 178.17/45.52 a(x1) = x1 + 1/2 >= x1 = x1 178.17/45.52 178.17/45.52 b(b(a(x1))) = 4x1 + 2 >= 4x1 + 2 = c(b(a(b(b(x1))))) 178.17/45.52 178.17/45.52 c(b(x1)) = x1 + 3/2 >= x1 + 1/2 = a(x1) 178.17/45.52 problem: 178.17/45.52 DPs: 178.17/45.52 178.17/45.52 TRS: 178.17/45.52 a(x1) -> x1 178.17/45.52 b(b(a(x1))) -> c(b(a(b(b(x1))))) 178.17/45.52 c(b(x1)) -> a(x1) 178.17/45.52 Qed 178.17/45.53 EOF