# Adding irrelevant assumptions changes the result of Simplify

I've run into this problem a number of times. A typical example is

Simplify[Sign[k], {0 < A, 0 < B, A*Exp[2*y] < k, y > 1}]


which evaluates to $1$, as it should. However, adding the additional, irrelevant assumption $B < A$

Simplify[Sign[k], {0 < A, 0 < B, B < A, A*Exp[2*y] < k, y > 1}]


now evaluates to Sign[k] which is undesirable.

This is just the most recent example I've run into where adding irrelevant assumptions prevents Simplify from simplifying. I am considering changing my code to prune the assumption list of irrelevant symbols before attempting to simplify. Is there any other way around this?

• Have you tried reporting this to Wolfram Support? I have been thinking about this for a few days now, and can't seem to find an obvious reason why it should behave this way. – MarcoB May 24 '16 at 0:10
• I've done that now. Thanks. – Ray May 24 '16 at 13:28

I received a prompt response from Wolfram Technical Support:

"...there is an option in system setting called 'AssumptionsMaxNonlinearVariables'. This option specifies the maximal number of variables in non-linear inequality assumptions. By default, this option is set as 4. After changing it to 5, the issue is solved"

SetSystemOptions["SimplificationOptions"->"AssumptionsMaxNonlinearVariables"->5];

Simplify[Sign[k],{0<A,0<B,B<A,A*Exp[2*y]<k,y>1}]


evalutes to 1.

This completely fixes the issue.

• A,B,y,k..5? quick response is good anyway. – george2079 May 26 '16 at 1:45
• Interesting! Thanks for reporting back. (+1) – MarcoB May 27 '16 at 14:26