Take the 2-minute tour ×
Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

Sometimes when I invoke FullSimplify on a large expression, I get a series of messages like this:

FullSimplify::ztest1 "Unable to decide whether numeric quantity «1» is equal to zero. Assuming it is."

I suppose Mathematica makes this assumption when numeric calculations with reasonably high precision do not produce a number that can be distinguished from the exact 0. While in certain cases this is useful, I want to be able to disable this assumption in cases that I believe involve tiny non-zero quantities.

Is it possible to disable this kind of assumption in FullSimplify?

share|improve this question

closed as off-topic by Mr.Wizard Jan 28 '14 at 5:25

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "This question cannot be answered without additional information. Questions on problems in code must describe the specific problem and include valid code to reproduce it. Any data used for programming examples should be embedded in the question or code to generate the (fake) data must be included." – Mr.Wizard
If this question can be reworded to fit the rules in the help center, please edit the question.

Perhaps FullSimplify is using PossibleZeroQ. You may try to override it –  belisarius Nov 28 '13 at 4:29
It will nice if one can have a small example also. –  Nasser Nov 28 '13 at 4:44
I think @belisarius is correct. The working of PossibleZeroQ is controllable via the system options AlgebraicsOptions -> AlgebraicZeroTestParameters, ZeroTestMaxPrecision, and ZeroTestNumericalPrecision. How exactly these options work, however, is undocumented AFAICT. –  Oleksandr R. Nov 28 '13 at 13:17
Do you have a small code snippet where you get this message? –  Rojo Dec 28 '13 at 14:46
Why not do Quiet[FullSimplify[_], FullSimplify::ztest1]? –  Chip Hurst Jan 28 '14 at 19:33

1 Answer 1

I suspect this happens because the expression you are trying to simplify contains machine precision floating point numbers (though without seeing your expression this remains only supposition). Would it be possible to re-express it so that it contains only exact numbers and rationals? That is, replacing quantities like 0.5 with 1/2

share|improve this answer
I am not sure if this suspicion is correct. I would expect to see this message in cases where one e.g. compares roots that are extremely close to one another yet not exactly the same (for example, when they differ by $10^{-5000}$ or so). –  Oleksandr R. Nov 28 '13 at 13:20

Not the answer you're looking for? Browse other questions tagged or ask your own question.