Merge remote-tracking branch 'origin/main'

This commit is contained in:
Clément Barthélemy 2024-02-20 01:33:27 +01:00
commit d6dacf6084

View file

@ -1,4 +1,35 @@
# Python-symbolic
Small project in pure python to do symbolic maths with my computer. Focus on readability and simplicity
Work in progress
Python-symbolic is a small project written in pure Python that allows you to perform symbolic mathematics on your computer. The focus is on readability and simplicity.
## Features
### Done:
- Default type definitions
- Expression tree implementation
- Transformation of infix strings to expression trees
- Visualization of expression trees
### To-Do:
- Create a type (BinOperator) for exponents
- Implement complex numbers
- Modify expression trees, including:
- Expansion of expressions (e.g., `a*(a+b)` to `a^2 + ab`)
- Factorization of expressions (e.g., `a^2 + 2ab + b^2` to `(a+b)^2`)
- Easy simplification (e.g., `sin(x)² + cos(x)²` to `1`)
- Define calculus types:
- Derivative
- Integral
- Sum
- Product
- Limit
Exemple of visualation of the expression tree (launch tree_visual.py to see)
![Screenshot from 2024-02-20 00-14-07](https://github.com/Crizomb/Python-symbolic/assets/62544756/ac3f547a-36f0-4e0f-84aa-0855018198ae)