I recently wanted to compute the solution to 40*x = 200*(1- cos(x)). This is want I put into WolframAlpha, a sort-of pseudo code that I thought expressed what I wanted:

solve(40*x == 200*(1 - cos(x)), x)

Naturally with WA, this worked nicely. I even could have just put into the equation, and it would have solved it. Now, I know that sympy can probably solve it, and the syntax may not be far off, but I would still need to import sympy and declare x as a sympy symbol at least. But crucially, I'm not sure if this is the right syntax, and for quick calculations like this, it would be nice to not needing to care.

Is there an open source math program that has some "slack" in its syntax and has an extremely low overhead (i.e. no "unnecessary" declaration of variables etc.) for simple problems (it does not need to be as powerful or comprehensive as Mathematica/WA) such as this?

  • 1
    I'm not looking for a computer algebra system in general, nor am I looking for the different ways I can solve this equation in each of them. I am asking if any of them are capable of doing the sort of liberal expression evaluation WolframAlpha is capable of.
    – Psirus
    Mar 24, 2015 at 11:17
  • 1
    there is a list on wikipedia[1], a (closed) question on stackoverflow[2], and another question on researchgate[3] Mar 24, 2015 at 11:23

3 Answers 3



(%i1) solve(40*x=200*(1-cos(x)));
(%o1) [x = 5 - 5 cos(x)]

there are four roots. to find the numerics, we first draw a graph and visually approximate,

(%i2) plot2d(x+5*cos(x)-5,[x,-10,10]
(%o2) ...

then use another clause.

(%i3) find_root(x+5*cos(x)=5,x,-1,0.2);
(%o3) 0.0
(%i4) find_root(x+5*cos(x)=5,x,0.2,3);
(%o4) 0.40552711135028

lines leading with %i are input lines and % output. the equation sign is single. and append a semicolon after each input clause.

when run inside a graphical frontend, can pretty print formulae.

have other mathematical use.

  • I believe this should be an edit to your previous answer, not a separate one, since it recommends the same software
    – Tymric
    Mar 24, 2015 at 12:49
  • In order to use Maxima as an alternative to Wolfram Alpha, it would be necessary to write a parser that converts English expressions into Maxima expressions. Oct 28, 2018 at 21:06

Sympy Gamma is an open-source interface for Sympy that resembles Wolfram Alpha. Unlike Wolfram Alpha, it is not yet able to parse natural-language commands, but I am planning to implement this feature using the Nearley parser generator.


Open Omnia is an alternative to Wolfram Alpha Pro and Symbolab. Disclaimer: I am the developer.

You can find the web application here: https://openomnia.com and the android app here: https://play.google.com/store/apps/details?id=com.openomnia.openomnia

Feel free to try it out.

  • 2
    I am not able to find source code of Open Omnia, could you please share a link to e.g. Github? Apr 28, 2020 at 17:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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