Mathematica can "recognize" algebraic numbers, by using the function

RootApproximant (or the function Recognize in the Legacy

NumberTherory package):

ToRadicals[RootApproximant[N[Sqrt[2] + Sqrt[3], 30]]]

Sqrt[5 + 2*Sqrt[6]]

This may not look so impressive until you check:

FullSimplify[Sqrt[2] + Sqrt[3] - Sqrt[5 + 2*Sqrt[6]]]

0

Anyway, doing this for algebraic numbers has a solid mathematical

basis: the so called LLL Lattice Reduction) algorithm. I don=92t know, =

however, of any mathematical basis for "recognizing" transcendentals, =

except by means of stored values or some other "ad hoc" approach

(essentially "sophisticated guessing")

Andrzej Kozlowski

On 17 May 2007, at 18:59, Murray Eisenberg wrote:

> As I remember, at IMS'06 (Avignon) Stephen Wolfram (via remote link-=

> up)

> played with a function to do just that. Did I remember correctly?

>

> If so, I cannot recall the name of the function, so I don't know

> whether

> the function made it into 6.0. The closest thing I can find is

> RootApproximant, but that doesn't seem to "recognize" an expression

> involving a transcendental number.

>

> Szabolcs wrote:

>> "Another computer algebra system" has a function, identify(), which

>> attempts to guess the exact expression that evaluates to a particular

>> numerical value.

>>

>> Example:

>>

>> In[1]:= N[3Pi+3/2,10]

>>

>> Out[1]= 10.92477796

>>

>>> identify(10.92477796);

>> 3

>> - + 3 Pi

>> 2

>>

>> Is there a package with similar functionality for Mathematica?

>>

>> Szabolcs

>>

>

> --

> Murray Eisenberg mur...@math.umass.edu

> Mathematics & Statistics Dept.

> Lederle Graduate Research Tower phone 413 549-1020 (H)

> University of Massachusetts 413 545-2859 (W)

> 710 North Pleasant Street fax 413 545-1801

> Amherst, MA 01003-9305

>