YES Problem: 2nd(cons1(X,cons(Y,Z))) -> Y 2nd(cons(X,X1)) -> 2nd(cons1(X,activate(X1))) from(X) -> cons(X,n__from(s(X))) from(X) -> n__from(X) activate(n__from(X)) -> from(X) activate(X) -> X Proof: Matrix Interpretation Processor: dim=2 interpretation: [1 0] [n__from](x0) = [1 2]x0, [1 0] [s](x0) = [0 0]x0, [3 2] [0] [from](x0) = [3 2]x0 + [3], [2 1] [1] [activate](x0) = [0 3]x0 + [3], [1 2] [2] [2nd](x0) = [1 2]x0 + [2], [1 2] [1 1] [cons1](x0, x1) = [1 0]x0 + [0 0]x1, [1 0] [2 0] [0] [cons](x0, x1) = [1 1]x0 + [0 2]x1 + [2] orientation: [3 2] [2 1] [2 2] [4] 2nd(cons1(X,cons(Y,Z))) = [3 2]X + [2 1]Y + [2 2]Z + [4] >= Y = Y [3 2] [2 4] [6] [3 2] [2 4] [6] 2nd(cons(X,X1)) = [3 2]X + [2 4]X1 + [6] >= [3 2]X + [2 4]X1 + [6] = 2nd(cons1(X,activate(X1))) [3 2] [0] [3 0] [0] from(X) = [3 2]X + [3] >= [3 1]X + [2] = cons(X,n__from(s(X))) [3 2] [0] [1 0] from(X) = [3 2]X + [3] >= [1 2]X = n__from(X) [3 2] [1] [3 2] [0] activate(n__from(X)) = [3 6]X + [3] >= [3 2]X + [3] = from(X) [2 1] [1] activate(X) = [0 3]X + [3] >= X = X problem: 2nd(cons(X,X1)) -> 2nd(cons1(X,activate(X1))) from(X) -> cons(X,n__from(s(X))) from(X) -> n__from(X) Matrix Interpretation Processor: dim=1 interpretation: [n__from](x0) = 4x0, [s](x0) = x0, [from](x0) = 6x0 + 3, [activate](x0) = x0 + 1, [2nd](x0) = 4x0, [cons1](x0, x1) = x0 + x1 + 2, [cons](x0, x1) = x0 + x1 + 3 orientation: 2nd(cons(X,X1)) = 4X + 4X1 + 12 >= 4X + 4X1 + 12 = 2nd(cons1(X,activate(X1))) from(X) = 6X + 3 >= 5X + 3 = cons(X,n__from(s(X))) from(X) = 6X + 3 >= 4X = n__from(X) problem: 2nd(cons(X,X1)) -> 2nd(cons1(X,activate(X1))) from(X) -> cons(X,n__from(s(X))) Matrix Interpretation Processor: dim=1 interpretation: [n__from](x0) = 2x0 + 4, [s](x0) = 3x0, [from](x0) = 7x0 + 5, [activate](x0) = x0, [2nd](x0) = 2x0 + 4, [cons1](x0, x1) = x0 + x1, [cons](x0, x1) = x0 + x1 orientation: 2nd(cons(X,X1)) = 2X + 2X1 + 4 >= 2X + 2X1 + 4 = 2nd(cons1(X,activate(X1))) from(X) = 7X + 5 >= 7X + 4 = cons(X,n__from(s(X))) problem: 2nd(cons(X,X1)) -> 2nd(cons1(X,activate(X1))) Matrix Interpretation Processor: dim=3 interpretation: [1 0 0] [activate](x0) = [0 0 0]x0 [0 0 0] , [1 0 1] [2nd](x0) = [0 0 0]x0 [0 0 0] , [1 0 0] [1 0 0] [cons1](x0, x1) = [0 0 0]x0 + [0 0 0]x1 [0 0 0] [0 0 0] , [1 0 0] [1 0 0] [0] [cons](x0, x1) = [0 0 0]x0 + [0 0 0]x1 + [0] [0 0 0] [0 0 0] [1] orientation: [1 0 0] [1 0 0] [1] [1 0 0] [1 0 0] 2nd(cons(X,X1)) = [0 0 0]X + [0 0 0]X1 + [0] >= [0 0 0]X + [0 0 0]X1 = 2nd(cons1(X,activate(X1))) [0 0 0] [0 0 0] [0] [0 0 0] [0 0 0] problem: Qed