YES Problem: a(b(x1)) -> b(a(a(x1))) b(c(x1)) -> c(b(x1)) a(a(x1)) -> a(c(a(x1))) Proof: Matrix Interpretation Processor: dim=3 interpretation: [1 1 0] [a](x0) = [0 0 1]x0 [0 1 0] , [1 0 0] [1] [b](x0) = [0 1 1]x0 + [1] [0 1 1] [1], [1 0 0] [c](x0) = [0 0 0]x0 [0 0 0] orientation: [1 1 1] [2] [1 1 1] [1] a(b(x1)) = [0 1 1]x1 + [1] >= [0 1 1]x1 + [1] = b(a(a(x1))) [0 1 1] [1] [0 1 1] [1] [1 0 0] [1] [1 0 0] [1] b(c(x1)) = [0 0 0]x1 + [1] >= [0 0 0]x1 + [0] = c(b(x1)) [0 0 0] [1] [0 0 0] [0] [1 1 1] [1 1 0] a(a(x1)) = [0 1 0]x1 >= [0 0 0]x1 = a(c(a(x1))) [0 0 1] [0 0 0] problem: b(c(x1)) -> c(b(x1)) a(a(x1)) -> a(c(a(x1))) String Reversal Processor: c(b(x1)) -> b(c(x1)) a(a(x1)) -> a(c(a(x1))) Bounds Processor: bound: 0 enrichment: match automaton: final states: {4,1} transitions: c0(2) -> 3* c0(5) -> 6* f30() -> 2* b0(3) -> 1* a0(6) -> 4* a0(2) -> 5* 4 -> 5* 1 -> 3* problem: Qed