YES Problem: double(0()) -> 0() double(s(x)) -> s(s(double(x))) +(x,0()) -> x +(x,s(y)) -> s(+(x,y)) +(s(x),y) -> s(+(x,y)) double(x) -> +(x,x) Proof: Matrix Interpretation Processor: dim=1 interpretation: [double](x0) = 6x0, [+](x0, x1) = 4x0 + x1, [0] = 0, [s](x0) = x0 + 4 orientation: double(0()) = 0 >= 0 = 0() double(s(x)) = 6x + 24 >= 6x + 8 = s(s(double(x))) +(x,0()) = 4x >= x = x +(x,s(y)) = 4x + y + 4 >= 4x + y + 4 = s(+(x,y)) +(s(x),y) = 4x + y + 16 >= 4x + y + 4 = s(+(x,y)) double(x) = 6x >= 5x = +(x,x) problem: double(0()) -> 0() +(x,0()) -> x +(x,s(y)) -> s(+(x,y)) double(x) -> +(x,x) Matrix Interpretation Processor: dim=1 interpretation: [double](x0) = 4x0, [+](x0, x1) = 2x0 + 2x1, [0] = 0, [s](x0) = x0 + 6 orientation: double(0()) = 0 >= 0 = 0() +(x,0()) = 2x >= x = x +(x,s(y)) = 2x + 2y + 12 >= 2x + 2y + 6 = s(+(x,y)) double(x) = 4x >= 4x = +(x,x) problem: double(0()) -> 0() +(x,0()) -> x double(x) -> +(x,x) Matrix Interpretation Processor: dim=2 interpretation: [2 2] [1] [double](x0) = [1 1]x0 + [2], [1 2] [1 0] [+](x0, x1) = [0 1]x0 + [0 0]x1, [0] [0] = [1] orientation: [3] [0] double(0()) = [3] >= [1] = 0() [1 2] +(x,0()) = [0 1]x >= x = x [2 2] [1] [2 2] double(x) = [1 1]x + [2] >= [0 1]x = +(x,x) problem: +(x,0()) -> x Matrix Interpretation Processor: dim=3 interpretation: [1 0 0] [1] [+](x0, x1) = x0 + [0 1 0]x1 + [0] [0 0 0] [0], [0] [0] = [1] [0] orientation: [1] +(x,0()) = x + [1] >= x = x [0] problem: Qed