fredrik-johansson / fungrim

Fungrim: the Mathematical Functions Grimoire
MIT License
113 stars 15 forks source link

Import the ~300k formulas from functions.wolfram.com #2

Open duetosymmetry opened 5 years ago

duetosymmetry commented 5 years ago

There are about 300,000 identities, expansions, special values, etc. at http://functions.wolfram.com/, in a structured computer-readable format ("Wolfram langauge"). It would be nice to populate the grimoire with as many of these as possible rather than manually entering them all.

The ones at https://dlmf.nist.gov would be more difficult to import because they are not in a structured machine-readable format.

fredrik-johansson commented 5 years ago

Goal number one of this project is to have something completely open source. Importing data directly from the Wolfram Functions site would likely constitute copyright infringement. The DLMF is also subject to copyright.

A lot of formulas could be generated in bulk with software, particularly things like variations of trigonometric identities and special values of hypergeometric functions. We should be able to do so from scratch with open source tools. The formulas still probably need to be reviewed to avoid junk entries.

BTW, another goal is to really provide correct assumptions for all formulas. The DLMF is sometimes lax about this; the Wolfram Functions site is better but Mathematica is not consistent in its semantics. I would like to follow a stronger principle where all functions are total functions (restricting the domain when necessary to avoid undefined points) and equality is strictly preserved under substitution of variables satisfying the assumptions.

fredrik-johansson commented 5 years ago

90% of the content in the Wolfram Functions site (thousands of entries per function for many of the functions) is stuff like this: http://functions.wolfram.com/ElementaryFunctions/ArcSinh/27/02/07/15/01/

The number of really important, useful formulas for one function is closer to ~100 or so, which is not that much to enter from scratch -- at least as soon as the grimoire software works well.

duetosymmetry commented 5 years ago

Thanks for responding and clarifying. I appreciate that the works have copyrights, but are mathematical identities themselves protected by copyright?

fredrik-johansson commented 5 years ago

It could be interesting to look at importing integration formulas from Rubi (which is MIT licensed).

duetosymmetry commented 5 years ago

I'm definitely interested in having an open database of definite and indefinite integrals, like a digital version of Gradshteyn and Ryzhik. It should be possible to automating verification of integral identities.

fredrik-johansson commented 5 years ago

Thanks for responding and clarifying. I appreciate that the works have copyrights, but are mathematical identities themselves protected by copyright?

Correct, but the selection and presentation of a collection of data can be copyright-protected.

fredrik-johansson commented 5 years ago

For D-finite functions (solutions of linear ODEs with rational function coefficients), a lot of data can be generated with the ore_algebra Sage package. The DDMF is built in this way (but it's based on Maple code): http://ddmf.msr-inria.inria.fr/1.9.1/ddmf . However, note that formulas produced in this way are often not elegant and need to be massaged.

chakravala commented 5 years ago

Reduce algebra is an open source library (which Wolfram Mathematica is a derivative of)

http://www.reduce-algebra.com/

perhaps there is some data you can import from there, possibly

also, what if you just write a script to download the Wolfram identities locally, instead of saving them into the repository here. That shouldn't cause any problems, since the data is freely available online.

axkr commented 4 years ago

It could be interesting to look at importing integration formulas from Rubi (which is MIT licensed).

Here is a wiki page with the description how we exported Rubi:

And here is the result in an S-expr similar file (3.9 MB)