Mathematica has an army of mathematicians working on edge cases that only other mathematicians would care about. It's essentially impossible for any open source software to match what mathematica does.
Yep, this is why no other software can compete. People don’t realise that mathematica consists of huge lists of hard coded cases for different mathematical problems. It’s not like they managed to find the general formula for everything. And there are functions that I rely on that literally no other software has, that I haven’t even managed to find any papers that would even hint at their implementation, that magically work for almost any input. For example, MinimalStateSpace seems to be able to find the minimum required form for basically any input state space, which is highly non trivial. It’s a huge amount of work going into niche mathematical problems that even most people in STEM won’t have heard of. I don’t see how others can compete
This is so true for instance mathematica's treatment on numerical integration is the most complete I have seen out there so many methods that work on very minute and specific type of functions, this is even more so when you're working with functions that have singularities in them, and therefore need to be treated piecewisely, or functions that are highly oscillating.
Yeah and tbh that's even the simple stuff. Those are widely needed, very common situations in practical mathematical/physical calculations. The thing that is really crazy is that the stuff that literally doesn't even exist in any other software, but is really necessary, such as in my case a full symbolic control systems library, is still absurdly complete.
That's why nothing can compete. Not only does Mathematica have an extremely complete implementation of common functionality, it even has an extremely complete implementation of very niche functionality. I don't think that the people who propose OSS solutions really appreciate this, probably because they aren't professional mathematicians/physicists
No, it can't compete, because there will always be things that other software cannot do that _only_ Mathematica can. That's why sympy is a non-starter for many mathematicians and physicists
Check out https://github.com/leanprover-community/mathlib . Sure, it's not really a CAS but CAS algorithms could be added to it where applicable, since Lean is a constructive system and can thus express formally verified computations.
The existence of https://github.com/robertylewis/mathematica makes me think it's more likely to go in the other direction, where you treat powerful tools as untrusted oracles which produce certificates that Lean then verifies.
Sure that's possible, but "untrusted oracles" are only useful if they provide easily-verified certificates. Some CAS problems are amenable to that approach, but not all. There's no difference in this case between Mma and, e.g. an external SAT/SMT solver.