4

A constructible number is any number which can be expressed with only natural numbers and the operators $+$, $-$, $\times$, $/$, $\sqrt{}$ (square root only). Is Mathematica's Simplify or FullSimplify guaranteed to be able to detect equality between two such numbers regardless of the complexity of the expression? More specifically, if I have two expressions a and b which represent the same constructible number, is either of the following guaranteed to yield True?

FullSimplify[a - b] == 0
FullSimplify[a == b]

An algorithm for determining equality exists, but from the documentation it's not clear, whether Mathematica will always be able to determine equality or just "try really hard".

Bonus question if the answer is "yes": how about algebraic numbers, i.e. allowing radicals of other orders than 2.

Martin Ender
  • 8,774
  • 1
  • 34
  • 60

1 Answers1

3

Use

PossibleZeroQ[a - b, Method -> "ExactAlgebraics"]

The documentation says:

For explicit algebraic numbers the answer is provably correct

Vladimir Reshetnikov
  • 7,213
  • 27
  • 75