In Steven Wolfram's blog entries, he discusses using Mathematica to discover algorithms. I have tried several different Google searches for papers on such topics, and have found none. I suspect this is a case where I'm not using the proper search terms. I could imagine some sort of genetic algorithm based approach that takes a genome and turns that into an algorithm, but I would be curious what specifically he is discussing.

  • $\begingroup$ In case you are looking forward to design algos using M's built in APIs than you might face real problem in calculating complexity as they are completely hidden. You shall use Hashkell rather, as all the implementations are open in its compiler. M is almost a subset of Haskell. $\endgroup$ – Rorschach Nov 27 '13 at 20:30
  • $\begingroup$ I think John Koza style Genetic Programming would lend itself perfectly to the Lisp-like Code-as-Data approach that is also at the heart of Mathematica's everything is an expression model. $\endgroup$ – Thies Heidecke Mar 28 at 0:59

The example I'm familiar with is the claim that some of the formulae used internally by Mathematica's functions were derived using Mathematica itself.

From here:

For machine precision most special functions use Wolfram Language-derived rational minimax approximations.

From here:

Most of the algorithms in the Wolfram Language, including all their special cases, were explicitly constructed by hand. But some algorithms were instead effectively created automatically by computer.

Many of the algorithms used for machine‐precision numerical evaluation of mathematical functions are examples. The main parts of such algorithms are formulas which are as short as possible but which yield the best numerical approximations.

Most such formulas used in the Wolfram Language were actually derived by the Wolfram Language itself. Often many months of computation were required, but the result was a short formula that can be used to evaluate functions in an optimal way.

We can of course presume that the formulae themselves and how exactly they were generated is a trade secret. ;)

  • $\begingroup$ Related: (39799). The description in the documentation doesn't sound like anything particularly revolutionary, actually--just an optimization problem. $\endgroup$ – Oleksandr R. Nov 3 '15 at 13:46
  • 1
    $\begingroup$ @Oleksandr, yeah, Remez was standard fare in the old days of constructing approximations for elementary and special functions. My guess is that this is just a fancy way of saying they implemented the Remez algorithms in Mathematica and set it loose. $\endgroup$ – J. M. is away Nov 3 '15 at 13:54
  • $\begingroup$ Also related: (6576) and the documentation for the function approximations package. $\endgroup$ – Oleksandr R. Nov 3 '15 at 13:59
  • 2
    $\begingroup$ Oops, I forgot Maehly's papers. Pretty sure some of those were used, too. $\endgroup$ – J. M. is away Nov 3 '15 at 14:05

An example of mine, from long ago, is at https://space.mit.edu/home/jpd/LinTrigFunc.html

Fast "spherical regression" used in a space mission.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.