Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Nuke duck typing and replace with OOP to make type checker happy | Nao Pross | 2024-03-06 | 4 | -293/+265 | |
| | ||||||
* | Move algebra into abc.Expr | Nao Pross | 2024-03-06 | 1 | -1/+12 | |
| | | | | since shape is already there, might as well simplify | |||||
* | Rename mdpoly.types to mdpoly.index as it only contains index types | Nao Pross | 2024-03-06 | 7 | -11/+12 | |
| | ||||||
* | Replace Protocols with ABC in mdpoly.abc | Nao Pross | 2024-03-06 | 2 | -10/+15 | |
| | ||||||
* | Improve docstring | Nao Pross | 2024-03-05 | 1 | -1/+4 | |
| | ||||||
* | Implement more shape checks | Nao Pross | 2024-03-05 | 2 | -5/+44 | |
| | ||||||
* | Temporary fix to get rid of weird errors | Nao Pross | 2024-03-04 | 1 | -2/+5 | |
| | ||||||
* | Remove useless unimplemented methods in representations | Nao Pross | 2024-03-04 | 1 | -36/+1 | |
| | | | | Clutters the file and will be rewritten anyways in the future | |||||
* | Remove children() and __iter__ from Leaf because it messes with typecheck | Nao Pross | 2024-03-04 | 1 | -12/+0 | |
| | ||||||
* | Get rid of algebra.ExprWithRepr | Nao Pross | 2024-03-04 | 1 | -9/+7 | |
| | ||||||
* | Add VizTracer to development dependencies to analyze perf | Nao Pross | 2024-03-04 | 2 | -1/+62 | |
| | ||||||
* | Fix __mro__ problem in inheritance | Nao Pross | 2024-03-04 | 1 | -5/+5 | |
| | ||||||
* | Fix types (or, make mypy happier) | Nao Pross | 2024-03-04 | 5 | -78/+85 | |
| | ||||||
* | Add shape check for MatScalarMul | Nao Pross | 2024-03-04 | 1 | -8/+41 | |
| | ||||||
* | Add shape checks for PolyRingAlgebra | Nao Pross | 2024-03-04 | 2 | -15/+35 | |
| | ||||||
* | Improve docstrings | Nao Pross | 2024-03-04 | 1 | -3/+22 | |
| | ||||||
* | Add stub for rational algebra | Nao Pross | 2024-03-04 | 1 | -0/+11 | |
| | ||||||
* | Rename algebraic operations with algebra prefix | Nao Pross | 2024-03-04 | 1 | -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 decorator | Nao Pross | 2024-03-04 | 1 | -13/+29 | |
| | ||||||
* | Reword docstrings | Nao Pross | 2024-03-03 | 2 | -3/+3 | |
| | ||||||
* | Improve algebra.binary_operator decorator | Nao Pross | 2024-03-03 | 1 | -22/+42 | |
| | ||||||
* | Add TODO & Warning for bug in Expr.replace | Nao Pross | 2024-03-03 | 2 | -0/+11 | |
| | ||||||
* | Make State.from_index accept PolyVarIndex indices | Nao Pross | 2024-03-03 | 2 | -2/+7 | |
| | ||||||
* | Update README, switch to reStructuredText | Nao Pross | 2024-03-03 | 2 | -57/+64 | |
| | ||||||
* | Extend Expr.replace() to work with any expression | Nao Pross | 2024-03-03 | 1 | -11/+14 | |
| | ||||||
* | Add method Expr.replace() to replace leaves | Nao Pross | 2024-03-03 | 1 | -1/+42 | |
| | ||||||
* | Rename Repr.nodes() to Repr.children() | Nao Pross | 2024-03-03 | 2 | -2/+2 | |
| | | | | This is to avoid confusing code like node.nodes() | |||||
* | Fix typo in method name | Nao Pross | 2024-03-03 | 1 | -1/+2 | |
| | ||||||
* | Add docstrings to util.isclose and util.iszero | Nao Pross | 2024-03-03 | 1 | -1/+12 | |
| | ||||||
* | Fix numerical precision handling | Nao Pross | 2024-03-03 | 3 | -6/+17 | |
| | ||||||
* | Implement partial derivative | Nao Pross | 2024-03-03 | 3 | -6/+69 | |
| | ||||||
* | Disallow indexing of non-variables in state | Nao Pross | 2024-03-03 | 1 | -0/+4 | |
| | ||||||
* | Setup Sphinx documentation generator | Nao Pross | 2024-03-03 | 10 | -1/+409 | |
| | ||||||
* | Improve docstrings | Nao Pross | 2024-03-03 | 9 | -128/+135 | |
| | ||||||
* | Update README | Nao Pross | 2024-03-03 | 1 | -4/+48 | |
| | ||||||
* | Implement HasRepr for Param and fix repr of Const | Nao Pross | 2024-03-03 | 2 | -4/+17 | |
| | ||||||
* | Fix State.from_index crash when trying to get constant term | Nao Pross | 2024-03-03 | 1 | -2/+6 | |
| | ||||||
* | Fix PolyIndex.is_constant | Nao Pross | 2024-03-03 | 1 | -2/+1 | |
| | ||||||
* | Add representation of basic algebraic operations | Nao Pross | 2024-03-03 | 2 | -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 small | Nao Pross | 2024-03-03 | 1 | -0/+5 | |
| | ||||||
* | Add total ordering to PolyVarIndex and PolyIndex.product to compute index of ↵ | Nao Pross | 2024-03-03 | 1 | -4/+61 | |
| | | | | products | |||||
* | Fix subtle bug in PolyIndex and improve docstrings | Nao Pross | 2024-03-02 | 1 | -6/+14 | |
| | ||||||
* | Make state.State a dataclass | Nao Pross | 2024-03-02 | 1 | -4/+9 | |
| | | | | Also, the members were (incorrectly) not instance variables | |||||
* | Remove IndexError (already exists in standard library) | Nao Pross | 2024-03-02 | 1 | -6/+0 | |
| | ||||||
* | Fix bug with PolyIndex and Variable.to_repr | Nao Pross | 2024-03-02 | 2 | -4/+4 | |
| | ||||||
* | Implement missing abstract method Sparse.set_zero | Nao Pross | 2024-03-02 | 1 | -0/+6 | |
| | ||||||
* | Rename Repr.zero_smaller_than to Repr.zero_out_small | Nao Pross | 2024-03-02 | 1 | -1/+2 | |
| | ||||||
* | Add Expr.node to ease iteration expression tree node children | Nao Pross | 2024-03-02 | 1 | -0/+3 | |
| | ||||||
* | Rewrite state type annotations to avoid circular import | Nao Pross | 2024-03-02 | 1 | -11/+12 | |
| | ||||||
* | Fix bug in SparseRepr.terms | Nao Pross | 2024-03-02 | 1 | -2/+2 | |
| |