Re: algebraic numbers

• To: mathgroup at smc.vnet.net
• Subject: [mg106295] Re: algebraic numbers
• From: Richard Fateman <fateman at cs.berkeley.edu>
• Date: Thu, 7 Jan 2010 02:33:33 -0500 (EST)
• References: <200912290620.BAA02732@smc.vnet.net> <hhpl0g\$9l1\$1@smc.vnet.net> <201001050647.BAA24123@smc.vnet.net> <E44EA2F2-1274-43E8-93DE-DC5BD31884A5@mimuw.edu.pl> <op.u52ai6jwtgfoz2@bobbys-imac.local> <504E0A05-61DB-4A43-9637-68216076623C@mimuw.edu.pl> <hi1qit\$etn\$1@smc.vnet.net>

```Andrzej Kozlowski wrote:
> Just one more comment, I hope my last one on this subject. Obviously
> RandomReal make it choices out of a countable set of entities. One would
> have to be insane to claim otherwise and I am not that yet.
>
> But, Mathematica does not regard these entities as rational numbers and
> so they are not that. If you call them rationals the it does not make
> *mathematical* sense (because rationals have measure 0). So, if
> Mathemaitca does not regard them as rationals they are not rationals.

You can refer to Rationals as whatever Mathematica
calls Rationals.  But the rational numbers include all numbers that are
represented by finite explicit binary strings in a floating-point
format.  They also include other numbers whose binary expansions are
infinite, but repeat.

Can Mathematica represent Reals that are NOT RATIONAL?  Sure.  Here are
examples: Sqrt[2],  3*Pi, 4*E.  3*E +4*E^E + 5*E^E^E.
Incidentally, it is not known if E+Pi is rational.

> How could they be that ? Until they are interpreted by Mathematica, they
> are not numbers at all but just some data stored in computer memory -
> which are not numbers of any kind.
true, but other programs can also interpret them. As numbers, as ASCII
character strings, as pointers into memory.
Mathematica interprets them as
> non-computable irrationals

No, that's not the way computer programs work.  Mathematica allows some
set of operations like +, *, printing. That's all.  They are obviously
computable and finitely representable as well, but Mathematica doesn't
need to have an opinion on this, and neither do we have to attribute
opinions to Mathematica.

If you think that the operations that Mathematica performs are
consistent with YOUR view that these numbers are non-computable
irrationals, I suppose that is your view, but it is certainly
unnecessary for others to hold this view.

in order to make mathematical sense when
> returning them while simulation a real distribution, because all other
> numbers have measure 0.

There is a literature on pseudo-random numbers that makes mathematical
sense without any such interpretation.
>
> This is all about "simulating mathematics" - numbers do not live in any
> sense inside computers. To say that "all computer numbers are rational"
> is weird - there is no such things as "computer numbers". Numbers exist
> only and (probably) exclusively in the human mind.

Actually, you just said that Mathematica interprets --blah blah.  Maybe
you think that Mathematica has a human mind?
>
> To say that 1.2 is rational in Mathematica even if Mathematica says
>
> Element[1.2, Rationals]
>
> False
>
> does not make any sense at all.

It makes perfect sense to say (in Mathematica) that 1.2 is a rational
number because it is equal to a rational number. Huh??
1.2==12/10
True.

(A better example would be 1.25, since 1.2 is not representable exactly
in binary.  This example of 1.2 actually reveals a "misfeature of
mathematica.

1.2==5404319552844595/4503599627370496
True.

So 1.2 is actually Mathematica-equal to another rational number. Many,
in fact.
)

If you capitalize the term and wish to say that 1.2 is not a Rational
in Mathematica, that is just a convention based on the "type" of data
that is input to Mathematica with a decimal point and is therefore
stored in a memory format that is labeled "Real" which (in Mathematica)
is a superclass of "Rational".  That is, "1/2" is a Rational but is also
a Real and is incidentally also a Complex. But 0.5 is not a Real.

This categorization of types in Mathematica does not determine the
membership (or not) of a particular numeric VALUE in a mathematical
category such as "rational".  From a mathematical perspective, any
legal number in an ordinary floating-point format can represent only a
rational value.

>
> Andrzej Kozlowski
>
>
>
>
> On 6 Jan 2010, at 07:04, Andrzej Kozlowski wrote:
>
>> Well, you are obviously misunderstanding  what I am trying to explain
> but I have no desire to spend any more time on it. I give up.

OK.

>> Perhaps you should try to explain yourself why Mathematica gives
>>
>> In[1]:= Element[1.2, Rationals]
>>
>> Out[1]= False
>>
>> In[2]:= Element[1.2, Reals]
>>
>> Out[2]= True

the explanation is that Mathematica takes numbers written with a decimal
point and labels them "Real".  This has nothing to do with their values,
which are, most assuredly, equal to rational numbers.  And in
particular, 1.2==12/10 in Mathematica should trouble you if you believe
Mathematica speaks meaningfully on these issues.

>>
>> and you might also read
>>
>> http://en.wikipedia.org/wiki/Computable_number
>>
But this would be irrelevant.

The Mathematica documentation says,
"When domain membership cannot be decided the Element statement remain
[sic] unevaluated".

"cannot be decided"
is not a statement about decidability in the technical "computability"
programmed to make a decision.  Thus the fact that Mathematica 6.0
cannot decide if e+pi is rational is not a deep result, and it is
referring to the mathematical literature about conjectures on the
matter. It just happens that the program fails to decide.  The program
seems to be a jumble of some sort, since it knows that

Mathematica 6.0 does not know e^e is definitely NOT Rational. (It is
known not to be rational).

It just hasn't been programmed. Yet. It would be nice if the
documentation were clearer on this.

Regards
RJF

..snip..

```

• Prev by Date: Re: Re: Re: Re: algebraic numbers
• Next by Date: Re: Re: Re: Re: algebraic numbers
• Previous by thread: Re: Re: Re: algebraic numbers
• Next by thread: Re: Re: algebraic numbers