-
Notifications
You must be signed in to change notification settings - Fork 73
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Let's compare ourselves to alternatives... #184
Comments
Nice! SymPy I guess is half-way, the goal is WolframAlpha. For example, recently I wanted to see how SymPy solves a trigonometric equation and guess what? It couldn't solve it. I think SymPy is rather a mess of genious mathematical ideas mixed into something that works sometimes. Of course, we're still far from that, but it might be not the finish-line for us :). I think we can indeed surpass Math.Net, even if it's so popular and etc. We can integrate things way faster than big boys. Thank you for the list again, mb we will add some more to it. |
useless functions. They exist because someone was so stupid to suggest
Nuget downloads also come from CI systems so its hard to judge how many people use the library
Actually we noticed that sympy cannot solve 4-th degree polynoms with non-numeric constants and trigonometric equations like |
Also I think we gotta dig deeper into our alternative's simplification algorithms, because even though I've been working on it since AM's start, it seems to suck 😢 @MomoDeve you're probably referring to this https://github.com/WhiteBlackGoose/asc-community/blob/master/ascsite/Core/AscSci/AscMath/BoolEng.cs |
C# 9 will come with Visual Studio 16.7 and with the |
In what way you want to refactor it? |
From Discord
|
Just wait till you see https://en.wikipedia.org/wiki/Versine and https://en.wikipedia.org/wiki/Exsecant
Stars and watchers also don't translate to actual uses. People could leave a star then go onto other projects to star. There doesn't seem to be a better metric to use. |
Of course, we do not judge by any of those numbers, but they enourage us to keep working on AM. |
@WhiteBlackGoose Why did we skip sec and csc but kept cot? cot(x) = 1/tan(x) so there is an inconsistency here. |
We don't have a separate node for sec and csc, but so far I don't see the reason we should have it. It's not hard to implement them though |
But cot falls into the same bucket as sec and csc in that they are inverted tan, cos, sin respectively so why did we keep cot as a node? |
Not really the same "bucket". Tan and cot are opposite on the triangle but symmetric. The same way sin and cos are. While sec and csc are way more rarely used & are inverted (as ^(-1)) of sine and cosine, so I didn't think we really need them |
Well, cot, sec and csc are grouped together in almost all results in https://www.google.com.hk/search?sxsrf=ALeKk02Dx9VrJJlM3TQ7UWB55MqEtwYGHA%3A1596606585051&source=hp&ei=eUgqX7lzluv5Bt6TncgB&q=is+cot+more+used+than+sec&btnK=Google+Search |
When we say "trigonometric functions", we either mean the 3-function group (sin, cos, tan) or the 6-function group (sin, cos, tan, cot, sec, csc). The 3-function group is taught in basic Trigonometry classes and are the group present in basic calculators. The 6-function group is taught in basic Calculus classes and are the group used in Wikipedia, on the Windows calculator, Wolfram Alpha, etc. I have never heard of the 4-function group (sin, cos, tan, cot) excluding sec and csc until now. If we use the definition of trig functions in basic Trigonometry classes, we would not simplify 1/sin, 1/cos and 1/tan. If we use the definition of trig functions in basic Calculus classes, we would simplify 1/sin, 1/cos, 1/tan to csc, sec and cot respectively. However, with our current definition, we would see 1/sin, 1/cos and cot respectively. This is confusing behaviour and we should pick a side. |
I see where you came from, and yes, I'm surely more used to what you call "4-function group". But I think we still can add secant and cosecant as nodes |
I am just afraid that existance of many trigonometrc functions will complicate trigonometric solver and simlificator. We of course can do substitution right at the beginnig of solving, but its a weird solution |
https://github.com/axkr/symja_android_library this might be also worth consideration |
Ewwwwww GPL |
Cannot solve |
.NET
https://github.com/mathnet/mathnet-symbolics
https://github.com/dharmatech/Symbolism
https://github.com/sympy/sympy
JavaScript and friends
https://github.com/davidedc/Algebrite
https://github.com/aantthony/javascript-cas
https://github.com/MatthewJA/Coffeequate
https://github.com/nicolewhite/algebra.js
https://github.com/jiggzson/nerdamer
There are probably more out there...
The text was updated successfully, but these errors were encountered: