aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Rename WithOps to ExpressionNao Pross2024-03-205-58/+58
|
* Re-implement __matmul__Nao Pross2024-03-201-6/+14
|
* Fix MatSub, separate leavesNao Pross2024-03-205-125/+140
|
* Reword exception messageNao Pross2024-03-191-2/+3
|
* Make stub for determinantNao Pross2024-03-191-0/+46
|
* Improve error messages at evaluation timeNao Pross2024-03-194-5/+113
|
* Add helper method WithOps.to_sparse to give sparse representationNao Pross2024-03-191-2/+14
|
* Implement matrix productNao Pross2024-03-192-4/+23
|
* Add comments and improve docstringsNao Pross2024-03-182-2/+18
|
* Add back diff (was missing)Nao Pross2024-03-181-0/+19
|
* Allow extensions, see for example mdpoly.test.TestExtensionNao Pross2024-03-184-11/+68
| | | | TODO: can multiple extensions coexist?
* Fix mdpoly.testNao Pross2024-03-182-7/+9
|
* Fix MatParam.to_reprNao Pross2024-03-181-7/+2
|
* Remove use of replace from exampleNao Pross2024-03-181-6/+1
|
* Fix regressions from refractorNao Pross2024-03-184-18/+69
| | | | See 8676dc34530be9669cd3dfc5bd5a54cb8f9ac482
* Re-implement __add__, __sub__, __mul__Nao Pross2024-03-183-27/+84
|
* Move operations (operator overloading etc) outside of expression classNao Pross2024-03-1812-554/+356
| | | | | | The new class WithOps (TODO: better name) wraps around an expression tree and provides operator overloading and convenient methods. This requires a big structural change hence most things are now broken.
* Rename PolyRingExpr to just PolyExprNao Pross2024-03-186-21/+21
|
* Fix Leaf.leftNao Pross2024-03-181-0/+1
|
* Fix importsNao Pross2024-03-185-9/+8
|
* Split mdpoly.algebra into multiple filesNao Pross2024-03-1717-731/+854
|
* Abandon support for rational functionsNao Pross2024-03-152-12/+6
|
* Add util.showtree to print internals of expressionsNao Pross2024-03-151-0/+13
|
* Make expression objects dataclassesNao Pross2024-03-151-44/+29
|
* Fix reference docsNao Pross2024-03-141-11/+3
|
* Add big docstring in module to discuss terminologyNao Pross2024-03-142-2/+105
|
* Change every __repr__ to __str__ to be consistent with python data modelNao Pross2024-03-142-21/+21
| | | | https://docs.python.org/3/reference/datamodel.html#object.__repr__
* Add stubs for testingNao Pross2024-03-105-0/+125
| | | | | | To run tests do: $ python3 -m mdpoly.test
* Fix PolyIndex.__contains__Nao Pross2024-03-101-2/+7
|
* Fix bug in PolyPartialDiff and add PolyRingExpr.diff(wrt)Nao Pross2024-03-102-7/+19
| | | | | Forgot to premultiply with old exponent, d_x (x^2) = 2 * x, bug was that d_x (x^2) gives x, which is wrong
* Fix PolyRingExpr.__neg__Nao Pross2024-03-101-1/+2
|
* Add PolyIndex.as_multi_index for Newton polytope and minor cleanupNao Pross2024-03-101-27/+61
|
* Fix PolyPartialDiff.replaceNao Pross2024-03-101-2/+14
|
* Add dependencies CVXOPT for SOS and PrettyPrintTree for visualizationNao Pross2024-03-092-1/+93
|
* Miscellaneous fixes, mostly docstringsNao Pross2024-03-092-36/+30
|
* Improve type signature of Expr.to_reprNao Pross2024-03-092-22/+32
|
* Pass shape parameter to Repr constructorNao Pross2024-03-083-16/+20
|
* Fix typos in docstringNao Pross2024-03-081-4/+4
|
* Implement MatScalarMul.to_reprNao Pross2024-03-081-3/+7
|
* Add tree rotations to ExprNao Pross2024-03-081-0/+21
|
* Fix missing edge case in Expr.childrenNao Pross2024-03-081-0/+2
|
* Replace hash() with hashlib.sha256() for robustness to collisionNao Pross2024-03-081-8/+17
|
* Fix bug that breaks PolyRingExpr.shape & cleanupNao Pross2024-03-081-12/+12
| | | | | Leaf classes need to overwrite the shape abstractmethod with property but not algebra
* Make Expr a Merkle binary tree to allow subtree comparisonNao Pross2024-03-081-11/+12
|
* Create directory for examplesNao Pross2024-03-081-0/+43
|
* Update READMENao Pross2024-03-071-1/+1
|
* Fix regression in State.from_indexNao Pross2024-03-071-4/+3
| | | | Likely caused by f69cda1b84482a2c5dd4c6b8fcf16aebb7ac11ba
* Finish incomplete implementation of MatVar.to_reprNao Pross2024-03-071-7/+8
|
* Delete mdpoly.leaves make Var, Param, Const ABCsNao Pross2024-03-076-198/+297
| | | | | | | | The change is motivated by the desire of having easy access to wrappers like Const that have the behaviour of expressions of a certain algebra. After this changes Var, Param and Const are ABC and cannot be instantiated, instead one should use (appropriately) PolyVar, MatVar, etc.
* Minor changesNao Pross2024-03-072-5/+8
|