Chop is doing exactly what the documentation states it will.
Chop uses a default tolerance of 10^-10.
Use Chop[expr, delta] to replace numbers smaller in absolute magnitude than
delta by 0.
Bob Hanlon
In a message dated 4/11/2000 11:44:13 PM, rustybel at foothill.net writes:
>I have been noticing lately that sometimes Chop does not succeed in
>reducing numbers close to 0 to 0. Although my email program scrambled the
>superscripts, those '-7's down there are from the 10^-7's where I would
>expect (and would want) to see plain 0. Mathematica version 4.01 on a Mac.
>Copied
>as plain text from OutputForm.
>
>This failure of Chop has ruined one of my most important algorithms, which
>takes the Union of a list of n-vectors. It has wrecked in turn my most
>important notebooks. Notice, if you will, members 5 and 6 of the list
>below, where the z component should have Chopped to zero, but instead is
>two very small numbers of opposite sign.
>