aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix missing case for PolyIndex.differentiateNao Pross2024-03-061-0/+6
|
* Move to_repr to Expr.to_repr necessary by removing duck typing HasReprNao Pross2024-03-064-50/+83
|
* Nuke duck typing and replace with OOP to make type checker happyNao Pross2024-03-064-293/+265
|
* Move algebra into abc.ExprNao Pross2024-03-061-1/+12
| | | | since shape is already there, might as well simplify
* Rename mdpoly.types to mdpoly.index as it only contains index typesNao Pross2024-03-067-11/+12
|
* Replace Protocols with ABC in mdpoly.abcNao Pross2024-03-062-10/+15
|
* Improve docstringNao Pross2024-03-051-1/+4
|
* Implement more shape checksNao Pross2024-03-052-5/+44
|
* Temporary fix to get rid of weird errorsNao Pross2024-03-041-2/+5
|
* Remove useless unimplemented methods in representationsNao Pross2024-03-041-36/+1
| | | | Clutters the file and will be rewritten anyways in the future
* Remove children() and __iter__ from Leaf because it messes with typecheckNao Pross2024-03-041-12/+0
|
* Get rid of algebra.ExprWithReprNao Pross2024-03-041-9/+7
|
* Add VizTracer to development dependencies to analyze perfNao Pross2024-03-042-1/+62
|
* Fix __mro__ problem in inheritanceNao Pross2024-03-041-5/+5
|
* Fix types (or, make mypy happier)Nao Pross2024-03-045-78/+85
|
* Add shape check for MatScalarMulNao Pross2024-03-041-8/+41
|
* Add shape checks for PolyRingAlgebraNao Pross2024-03-042-15/+35
|
* Improve docstringsNao Pross2024-03-041-3/+22
|
* Add stub for rational algebraNao Pross2024-03-041-0/+11
|
* Rename algebraic operations with algebra prefixNao Pross2024-03-041-87/+131
| | | | | Reason: In the near future the field of rational functions will be introduced as a new type of algebra to represent fractions p(x) / q(x).
* Improve algebra.unary_operator decoratorNao Pross2024-03-041-13/+29
|
* Reword docstringsNao Pross2024-03-032-3/+3
|
* Improve algebra.binary_operator decoratorNao Pross2024-03-031-22/+42
|
* Add TODO & Warning for bug in Expr.replaceNao Pross2024-03-032-0/+11
|
* Make State.from_index accept PolyVarIndex indicesNao Pross2024-03-032-2/+7
|
* Update README, switch to reStructuredTextNao Pross2024-03-032-57/+64
|
* Extend Expr.replace() to work with any expressionNao Pross2024-03-031-11/+14
|
* Add method Expr.replace() to replace leavesNao Pross2024-03-031-1/+42
|
* Rename Repr.nodes() to Repr.children()Nao Pross2024-03-032-2/+2
| | | | This is to avoid confusing code like node.nodes()
* Fix typo in method nameNao Pross2024-03-031-1/+2
|
* Add docstrings to util.isclose and util.iszeroNao Pross2024-03-031-1/+12
|
* Fix numerical precision handlingNao Pross2024-03-033-6/+17
|
* Implement partial derivativeNao Pross2024-03-033-6/+69
|
* Disallow indexing of non-variables in stateNao Pross2024-03-031-0/+4
|
* Setup Sphinx documentation generatorNao Pross2024-03-0310-1/+409
|
* Improve docstringsNao Pross2024-03-039-128/+135
|
* Update READMENao Pross2024-03-031-4/+48
|
* Implement HasRepr for Param and fix repr of ConstNao Pross2024-03-032-4/+17
|
* Fix State.from_index crash when trying to get constant termNao Pross2024-03-031-2/+6
|
* Fix PolyIndex.is_constantNao Pross2024-03-031-2/+1
|
* Add representation of basic algebraic operationsNao Pross2024-03-032-16/+115
| | | | | | Implements Add, Multiply, Subtract, Divide and Exponentiate. Some are implemented directly, others as "reducible" i.e. in term of the others.
* Add Repr.is_zero to check if value is smallNao Pross2024-03-031-0/+5
|
* Add total ordering to PolyVarIndex and PolyIndex.product to compute index of ↵Nao Pross2024-03-031-4/+61
| | | | products
* Fix subtle bug in PolyIndex and improve docstringsNao Pross2024-03-021-6/+14
|
* Make state.State a dataclassNao Pross2024-03-021-4/+9
| | | | Also, the members were (incorrectly) not instance variables
* Remove IndexError (already exists in standard library)Nao Pross2024-03-021-6/+0
|
* Fix bug with PolyIndex and Variable.to_reprNao Pross2024-03-022-4/+4
|
* Implement missing abstract method Sparse.set_zeroNao Pross2024-03-021-0/+6
|
* Rename Repr.zero_smaller_than to Repr.zero_out_smallNao Pross2024-03-021-1/+2
|
* Add Expr.node to ease iteration expression tree node childrenNao Pross2024-03-021-0/+3
|