Does Mathematica think Sqrt[2] is rational?

• To: mathgroup at smc.vnet.net
• Subject: [mg86668] Does Mathematica think Sqrt[2] is rational?
• From: magma <maderri2 at gmail.com>
• Date: Mon, 17 Mar 2008 00:22:31 -0500 (EST)

```This might be already well known, but...

Consider the following expression

expr = ForAll[{x, y}, x^2 != 2 y^2]

If we test it over the Reals, it should be false, since x=Sqrt[2] and
y=1 falsify it.
Mathematica agrees with us

Reduce[expr, {x, y}, Reals]

However if we test it over the Integers or the Rationals it should be
true, as a demonstration that Sqrt[2] is not rational.
Mathematica , unfortunately,  does not agree with us

Reduce[expr, {x, y}, Integers]

Reduce[expr, {x, y}, Rationals]

So it appears that Mathematica thinks that there are 2 integers x, y
such that x^2 = 2 y^2.
Let's consider the negation of the previous expression

expr2 = Exists[{x, y}, x^2 == 2 y^2]

Mathematica correctly finds out that expr is true over the reals

Reduce[expr2, {x, y}, Reals]

But gives a wrong answer over the integers or the rationals

Reduce[expr2, {x, y}, Integers]

Reduce[expr2, {x, y}, Rationals]

Finally, if we try the inequality without the quantifiers, the results
are not very illuminating with the Reals, but still correct

Reduce[x^2 != 2 y^2, {x, y}, Reals]

While with Integers Mathematica misses the point entirely

Reduce[x^2 != 2 y^2, {x, y}, Integers]

Conclusion : Mathematica does not seem to realize that Sqrt[2] is
irrational.

Am I missing something or WRI has been infiltrated by
Pythagoreans :-)  ?

```

• Prev by Date: Re: Operate on Heads
• Next by Date: Re: Bug: Derivative[] does not work with functions having slots in
• Previous by thread: Re: Speeding up FindMinimum setup
• Next by thread: Re: Does Mathematica think Sqrt[2] is rational?