I am extreamly interested in math and programming and planning to start symbolic math project from scratch.
Is this good project idea?
Where to start?
How should one approach this project?
Any good resources?
Thanks in advance.
SymPy stands for Symbolic Mathematics in Python and is a Python library for dealing with mathematics. It is one of the core libraries of the SciPy Ecosystem among other giants like NumPy, Pandas, and Matplotlib. With SymPy you can manipulate mathematical expressions.
Python-based: SymPy is written entirely in Python and uses Python for its language. Lightweight: SymPy only depends on mpmath, a pure Python library for arbitrary floating point arithmetic, making it easy to use.
SymPy is a Python library that allows you to compute mathematical objects symbolically.
It's a good project to practice programming skills. But if you want to create a real library that other people will want to use this is a project you do not want to start allone and from scratch ...
Where to start: Have a look at the solutions that are already out there and think about what it is that you want to do different. How will your project differ from others?
Resource: SymPy is a Python library for symbolic mathematics
1.Is this good project idea?
Yes; I would expect it to provide an endless source of interesting work which will, quite quickly, test and extend your programming powers.
2.Where to start?
I second the other suggestions that you should look at existing work. SAGE is very impressive and if you had asked for my advice I would suggest that you firstly write a basic system for doing arithmetic with numbers and symbols; then have a look at SAGE and write a module to extend the system, in other words become a contributor to something larger rather than trying to do it all on your own. Look also at Mathematica and Maple, Macsyma and Axiom. The latter 2 are free (I think) but they are all well documented on-line and a great source of ideas and challenges.
3.How should one approach this project?
As one would approach eating an elephant. One bite at a time. More seriously, I think there are some core issues, such as representation of expressions, and some basic functionality (arithmetic on polynomials) which you could cut your teeth on.
4.Any good resources?
Lots and lots. google for 'computer algebra', 'term rewriting'. Have a look at what's available on Amazon. And, if you have access, check out the ACM digital library
Good luck.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With