I observed a strange behavior when I create a definition for a build-in function like Abs[]. If I use them e.g. in Table, the user definition is ignored when the table becomes large. Here is the example to illustrate this phenomena:
Unprotect[Abs]
Abs[x_] := x^2
Small table:
Table[Abs[i], {i, 30}]
{1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361, 400, 441, 484, 529, 576, 625, 676, 729, 784, 841, 900}
Larger table:
Table[Abs[i], {i, 300}]
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, <<277>>, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300}
I use Mathematica 10.0.2 (x64) on Windows 10