Hello, I am eager to try your program (RIES), here is what I have with my home version of ISC or plouffe inverter : 621^(1/7) for the number 2.506184... and also : (1/6*Pi^6-5)/(2/3*Pi^4-3) but this is too long. Best regards, Simon Plouffe Le 25/03/2013 13:28, Robert Munafo a écrit :
Over the past couple months I've been making my RIES program [1] a bit more useful. This is partly in response to people on this mailing list, which is why I'm sharing it here.
For those new to RIES, it is a bit like the Inverse Symbolic Calculator, but optimized to report solutions of lowest Kolmogorov complexity [4]. If you want more specific, targeted representations, such as is provided by the various integer relation algorithms [5], you can use Mathematica or Wolfram Alpha. To give a simple example, when presented with the target number 2.506184, Wolfram Alpha reports [6] things like "e^(-4/e-e+pi) pi^(e-1)" and "csc(1/79 (23+3 pi))", while RIES finds x^x=10 and 2*(ln(8)+4)^(1/8).
In addition to computing the value and the derivative with respect to x, RIES now "tags" all calculations throughout its recursive search. Tags include integer, rational, constructible [2], algebraic [3], "elementary" (by one definition that excludes the root of "x^x-7=0"), "transcendental" (meaning everything that RIES is capable of finding), and "unknown" (used for the variable x that stands for the user-specified target number). It plays it safe when in doubt, like assuming that anything raised to a non-integer rational power is irrational. But it tries a little bit, e.g. it knows that a constructible number raised to the power of 1/4 is also a constructible number.
In addition, new options *--rational-exponents* and *--rational-trig-args*, and the existing *--trig-argument-scale* allow control over the discovery of implicit vs. explicit transcendental values. With these tags and the existing options to control which constants and functions are applied in a search, RIES now provides all the following:
*-i* : the existing *--integer-subexpressions* option for integer-only searches *-r* or *--rational-subexpressions* : All reported equations must have rational roots *-c* or *--constructible-subexpressions* : All reported equations must have "constructible" (with straightedge and compass) roots [2]. *-a* or *--algebraic-subexpressions* : All reported equations must have algebraic roots (i.e. roots of a polynomial in one variable with rational coefficients) [3]. *-a* with *-Ox* : to limit it to algebraic roots that have a closed-form expression (with a reasonably low Kolmogorov complexity). *-Ox* : the existing option to allow roots to be any transcendental number expressible in closed form. *-l* or *--liouvillian-subexpressions* : A superset of -a allowing x=sqrt(2)^sqrt(2), but not allowing x^x=7.
This is not a strict hierarchy: *-a* and *-Ox* are supersets of *-c*, but neither is a superset of the other, but *-l* is a superset of both. There is a table and more details at:
http://mrob.com/pub/ries/index.html#classes
The online search does not yet provide these options but that is planned.
footnotes: [1] mrob.com/ries [2] http://en.wikipedia.org/wiki/Constructible_number [3] http://en.wikipedia.org/wiki/Algebraic_number [4] http://en.wikipedia.org/wiki/Kolmogorov_complexity [5] http://en.wikipedia.org/wiki/Integer_relation_algorithm [6] http://www.wolframalpha.com/input/?i=2.506184