YES Problem: strict: s(a(x)) -> s(b(x)) b(b(x)) -> a(x) weak: f(s(x),y) -> f(x,s(y)) s(a(x)) -> a(s(x)) s(b(x)) -> b(s(x)) a(s(x)) -> s(a(x)) b(s(x)) -> s(b(x)) Proof: Matrix Interpretation Processor: dim=5 interpretation: [1 0 0 0 0] [0 0 0 0 1] [s](x0) = [0 0 0 0 0]x0 [0 1 1 0 0] [0 0 0 1 0] , [1 1 0 1 1] [1 0 1 0 0] [0 0 0 0 0] [0 1 1 1 1] [f](x0, x1) = [0 0 0 0 0]x0 + [0 0 1 0 0]x1 [0 1 0 1 1] [0 0 1 0 0] [0 0 0 0 0] [0 0 1 0 0] , [1 1 1 1 1] [0] [0 1 0 1 1] [1] [a](x0) = [0 0 1 0 0]x0 + [0] [0 1 1 1 1] [1] [0 1 1 1 1] [1], [1 1 1 1 1] [0] [0 1 0 0 1] [1] [b](x0) = [0 0 1 0 0]x0 + [0] [0 1 1 1 0] [1] [0 0 0 1 1] [1] orientation: [1 1 1 1 1] [0] [1 1 1 1 1] [0] [0 1 1 1 1] [1] [0 0 0 1 1] [1] s(a(x)) = [0 0 0 0 0]x + [0] >= [0 0 0 0 0]x + [0] = s(b(x)) [0 1 1 1 1] [1] [0 1 1 0 1] [1] [0 1 1 1 1] [1] [0 1 1 1 0] [1] [1 3 3 3 3] [3] [1 1 1 1 1] [0] [0 1 0 1 2] [3] [0 1 0 1 1] [1] b(b(x)) = [0 0 1 0 0]x + [0] >= [0 0 1 0 0]x + [0] = a(x) [0 2 2 1 1] [3] [0 1 1 1 1] [1] [0 1 1 2 1] [3] [0 1 1 1 1] [1] [1 1 1 1 1] [1 0 1 0 0] [1 1 0 1 1] [1 0 0 0 0] [0 0 0 0 0] [0 1 1 1 1] [0 0 0 0 0] [0 1 1 1 1] f(s(x),y) = [0 0 0 0 0]x + [0 0 1 0 0]y >= [0 0 0 0 0]x + [0 0 0 0 0]y = f(x,s(y)) [0 1 1 1 1] [0 0 1 0 0] [0 1 0 1 1] [0 0 0 0 0] [0 0 0 0 0] [0 0 1 0 0] [0 0 0 0 0] [0 0 0 0 0] [1 1 1 1 1] [0] [1 1 1 1 1] [0] [0 1 1 1 1] [1] [0 1 1 1 1] [1] s(a(x)) = [0 0 0 0 0]x + [0] >= [0 0 0 0 0]x + [0] = a(s(x)) [0 1 1 1 1] [1] [0 1 1 1 1] [1] [0 1 1 1 1] [1] [0 1 1 1 1] [1] [1 1 1 1 1] [0] [1 1 1 1 1] [0] [0 0 0 1 1] [1] [0 0 0 1 1] [1] s(b(x)) = [0 0 0 0 0]x + [0] >= [0 0 0 0 0]x + [0] = b(s(x)) [0 1 1 0 1] [1] [0 1 1 0 1] [1] [0 1 1 1 0] [1] [0 1 1 1 0] [1] [1 1 1 1 1] [0] [1 1 1 1 1] [0] [0 1 1 1 1] [1] [0 1 1 1 1] [1] a(s(x)) = [0 0 0 0 0]x + [0] >= [0 0 0 0 0]x + [0] = s(a(x)) [0 1 1 1 1] [1] [0 1 1 1 1] [1] [0 1 1 1 1] [1] [0 1 1 1 1] [1] [1 1 1 1 1] [0] [1 1 1 1 1] [0] [0 0 0 1 1] [1] [0 0 0 1 1] [1] b(s(x)) = [0 0 0 0 0]x + [0] >= [0 0 0 0 0]x + [0] = s(b(x)) [0 1 1 0 1] [1] [0 1 1 0 1] [1] [0 1 1 1 0] [1] [0 1 1 1 0] [1] problem: strict: s(a(x)) -> s(b(x)) weak: f(s(x),y) -> f(x,s(y)) s(a(x)) -> a(s(x)) s(b(x)) -> b(s(x)) a(s(x)) -> s(a(x)) b(s(x)) -> s(b(x)) Matrix Interpretation Processor: dim=5 interpretation: [1 0 0 0 0] [0] [0 0 0 0 0] [0] [s](x0) = [0 0 1 0 0]x0 + [0] [0 1 0 0 0] [1] [0 1 0 1 1] [0], [1 0 0 1 1] [1 0 0 0 0] [0] [0 0 0 0 0] [0 0 0 0 0] [1] [f](x0, x1) = [0 0 0 1 1]x0 + [0 1 1 0 0]x1 + [1] [0 0 0 0 0] [0 0 0 0 0] [0] [0 0 0 0 1] [0 1 0 0 0] [0], [1 0 0 0 0] [0] [0 0 0 0 0] [0] [a](x0) = [0 0 0 0 0]x0 + [0] [0 1 0 0 0] [1] [1 1 0 1 1] [0], [1 0 0 0 0] [0] [0 0 0 0 0] [0] [b](x0) = [0 0 0 0 0]x0 + [0] [0 1 0 0 0] [1] [1 1 0 1 1] [0] orientation: [1 0 0 0 0] [0] [1 0 0 0 0] [0] [0 0 0 0 0] [0] [0 0 0 0 0] [0] s(a(x)) = [0 0 0 0 0]x + [0] >= [0 0 0 0 0]x + [0] = s(b(x)) [0 0 0 0 0] [1] [0 0 0 0 0] [1] [1 2 0 1 1] [1] [1 2 0 1 1] [1] [1 2 0 1 1] [1 0 0 0 0] [1] [1 0 0 1 1] [1 0 0 0 0] [0] [0 0 0 0 0] [0 0 0 0 0] [1] [0 0 0 0 0] [0 0 0 0 0] [1] f(s(x),y) = [0 2 0 1 1]x + [0 1 1 0 0]y + [2] >= [0 0 0 1 1]x + [0 0 1 0 0]y + [1] = f(x,s(y)) [0 0 0 0 0] [0 0 0 0 0] [0] [0 0 0 0 0] [0 0 0 0 0] [0] [0 1 0 1 1] [0 1 0 0 0] [0] [0 0 0 0 1] [0 0 0 0 0] [0] [1 0 0 0 0] [0] [1 0 0 0 0] [0] [0 0 0 0 0] [0] [0 0 0 0 0] [0] s(a(x)) = [0 0 0 0 0]x + [0] >= [0 0 0 0 0]x + [0] = a(s(x)) [0 0 0 0 0] [1] [0 0 0 0 0] [1] [1 2 0 1 1] [1] [1 2 0 1 1] [1] [1 0 0 0 0] [0] [1 0 0 0 0] [0] [0 0 0 0 0] [0] [0 0 0 0 0] [0] s(b(x)) = [0 0 0 0 0]x + [0] >= [0 0 0 0 0]x + [0] = b(s(x)) [0 0 0 0 0] [1] [0 0 0 0 0] [1] [1 2 0 1 1] [1] [1 2 0 1 1] [1] [1 0 0 0 0] [0] [1 0 0 0 0] [0] [0 0 0 0 0] [0] [0 0 0 0 0] [0] a(s(x)) = [0 0 0 0 0]x + [0] >= [0 0 0 0 0]x + [0] = s(a(x)) [0 0 0 0 0] [1] [0 0 0 0 0] [1] [1 2 0 1 1] [1] [1 2 0 1 1] [1] [1 0 0 0 0] [0] [1 0 0 0 0] [0] [0 0 0 0 0] [0] [0 0 0 0 0] [0] b(s(x)) = [0 0 0 0 0]x + [0] >= [0 0 0 0 0]x + [0] = s(b(x)) [0 0 0 0 0] [1] [0 0 0 0 0] [1] [1 2 0 1 1] [1] [1 2 0 1 1] [1] problem: strict: s(a(x)) -> s(b(x)) weak: s(a(x)) -> a(s(x)) s(b(x)) -> b(s(x)) a(s(x)) -> s(a(x)) b(s(x)) -> s(b(x)) String Reversal Processor: strict: a(s(x)) -> b(s(x)) weak: a(s(x)) -> s(a(x)) b(s(x)) -> s(b(x)) s(a(x)) -> a(s(x)) s(b(x)) -> b(s(x)) Arctic Interpretation Processor: dimension: 3 interpretation: [0 0 0 ] [s](x0) = [0 0 0 ]x0 [-& 0 -&] , [1 0 -&] [a](x0) = [1 1 1 ]x0 [1 0 -&] , [0 0 0] [b](x0) = [0 0 0]x0 [0 0 0] orientation: [1 1 1] [0 0 0] a(s(x)) = [1 1 1]x >= [0 0 0]x = b(s(x)) [1 1 1] [0 0 0] [1 1 1] [1 1 1] a(s(x)) = [1 1 1]x >= [1 1 1]x = s(a(x)) [1 1 1] [1 1 1] [0 0 0] [0 0 0] b(s(x)) = [0 0 0]x >= [0 0 0]x = s(b(x)) [0 0 0] [0 0 0] [1 1 1] [1 1 1] s(a(x)) = [1 1 1]x >= [1 1 1]x = a(s(x)) [1 1 1] [1 1 1] [0 0 0] [0 0 0] s(b(x)) = [0 0 0]x >= [0 0 0]x = b(s(x)) [0 0 0] [0 0 0] problem: strict: weak: a(s(x)) -> s(a(x)) b(s(x)) -> s(b(x)) s(a(x)) -> a(s(x)) s(b(x)) -> b(s(x)) Qed