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 -- Robert Munafo -- mrob.com Follow me at: gplus.to/mrob - fb.com/mrob27 - twitter.com/mrob_27 - mrob27.wordpress.com - youtube.com/user/mrob143 - rilybot.blogspot.com