Diofant 0.13
7 Nov 2021
New features
Support square-free factorization of multivariate polynomials over finite fields (with adaptation of Musser’s algorithm), see #1132.
Major changes
Support calling from the command-line as
python -m diofant
, see #853. Thanks to André Roberge.
Compatibility breaks
Removed
n()
method fromEvalfMixin
, see #1114.Former submodule
diofant.polys.polyconfig
now isdiofant.config
, see #1115.Drop support for
DIOFANT_DEBUG
environment variable, see #1115.Drop support for CPython 3.7 and 3.8, see #1118 and 5cae972.
Renamed
Ring
asCommutativeRing
, see #1123.Removed support for Python 3.7 and 3.8, see #1118 and #1124.
FiniteRing
renamed toIntegerModRing
, see #1124.Removed
igcd()
,ilcm()
andprod()
functions, see #1125.Changed the
Derivative
(and similarydiff()
) syntax toDerivative(foo, (x, 2))
fromDerivative(foo, x, 2)
, see #1131.Removed
prem()
function, see #1140.Removed
lseries()
method ofExpr
, useseries()
withn=None
, see #1146.
Minor changes
Protect hashed
PolyElement
’s from modifications, see #1033.Add gaussian rationals as an exact domain, associated with
ComplexField
, see #1138.Support
tan
inminimal_polynomial()
, see #1159.Support CPython 3.10, see #1162.
Developer changes
Issues closed
See the release milestone for complete list of issues and pull requests involved in this release.
These Sympy issues also were addressed:
sympy/sympy#20861: reduce_inequalities() gives impossible answer
sympy/sympy#20874: Port the PRS algorithm to the sparse polynomial implementation
sympy/sympy#20902: Incorrect inequality solving: False returned instead of answer
sympy/sympy#20941: Fails to Solve Definite Integral
sympy/sympy#20973: cancel raises PolynomialError for exp(1+O(x))
sympy/sympy#20985: TypeErrors appearing for simple plynomial manipulations (did not happen in v1.6.1)
sympy/sympy#21031: Limit of “limit (((1+x)**(1/x)-(1+2*x)**(1/(2*x)))/asin (x),x,0)” is wrong with v1.7.1
sympy/sympy#21034: (Integration) regressions?
sympy/sympy#21038: Incorrect computation of a basic limit, regression from 1.6.2 to 1.7.1
sympy/sympy#21041: integrate error
sympy/sympy#21063: Wrong value of improper integral when using unevaluated -oo as boundary
sympy/sympy#21075: Order term being added to exact expansion
sympy/sympy#21091: Invalid comparison of non-real when using integrate()
sympy/sympy#19590: Poly.diff() doesn’t support higher order derivatives
sympy/sympy#21121: Same symbols created in different processes are not resolved as being equal
sympy/sympy#21107: S.Infinity.is_nonzero returns False
sympy/sympy#21132: Integral with parametres: wrong and too long result
sympy/sympy#21180: Bug: sympy.factor doesn’t work for Poly !!!
sympy/sympy#21167: Empty list of solutions returned for equation with cubic roots
sympy/sympy#21029: Continuous limits involving division by x
sympy/sympy#20697: Series is not simplified to final answer in output in sympy 1.7.1
sympy/sympy#20578: A strange behavior of limit function
sympy/sympy#20444: Leading Term with log
sympy/sympy#19453: Limit changes from simplification of original expression
sympy/sympy#19442: Non-existent bi-directional limit gives ValueError
sympy/sympy#11667: limit(1/x, x, 0) == oo ??
sympy/sympy#21202: laplace_transform(cosh(2*x), x, s) raises RecursionError
sympy/sympy#21227: Nested logarithms add unnecessary order term to series expansions
sympy/sympy#21263: Solutions of cubic equation
sympy/sympy#21334: RecursionError while calculating leading term
sympy/sympy#21342: 1/(exp(it) - 2) integrates wrong
sympy/sympy#21319: Primitive part of zero polynomial
sympy/sympy#21341: Issues with continued fraction for real roots of cubic polynomials
sympy/sympy#21024: sympy.polys.polyerrors.CoercionFailed integration regressions?
sympy/sympy#21396: Pow.as_base_exp inconsistent with I.as_base_exp
sympy/sympy#21410: Polynomial power raises KeyError
sympy/sympy#21437: log(Abs)
sympy/sympy#21460: Polynomial GCD result is different for dense trivial polynomial
sympy/sympy#21466: Regression for match for differential binomial expression
sympy/sympy#21166: Wrong integration result involving square root of absolute value
sympy/sympy#21486: expand_func(besselj(oo, x)) -> RecursionError
sympy/sympy#21530: Incorrect limit
sympy/sympy#21549: Bug: integrate(x*sqrt(abs(x)),(x,-1,0)) returns wrong result
sympy/sympy#21557: Summation of geometric series with non-real exponent does not evaluate
sympy/sympy#21550: Bug: limit returns wrong result for rational function
sympy/sympy#21177: Incorrect residue for cot(pi*x)/(x**2 - 3*x + 3)
sympy/sympy#21245: laurent series Fibonacci generating fuction
sympy/sympy#11833: error in limit involving exp, sinh and an assumption (maybe related to caching)
sympy/sympy#9127: ntheory.AskEvenHandler.Mul is order-dependent
sympy/sympy#21606: Notimplemented in simple limit
sympy/sympy#21641: Simplify hangs
sympy/sympy#21651: doit() method sometimes ignores floor and ceiling within Sum
sympy/sympy#20461: Eq(Product(4*n**2/(4*n**2 - 1), (n, 1, oo)), pi/2) incorrectly gives False
sympy/sympy#13029: with gens, time taken for sqf increases orders of magnitude faster than factor as input size increases
sympy/sympy#21711: odd result for integrate(sqrt(1 - (x-1)*(x-1)), (x, 0, 1))
sympy/sympy#21721: Bug in integration solver
sympy/sympy#21716: isympy -c python tab triggered auto completion not working
sympy/sympy#21741: integrate() does not work with multivariable function that is solved by simple substitution. DomainError: there is no ring associated with CC
sympy/sympy#21756: Incorrect limit with ratio of complex exponentials
sympy/sympy#21760: Poly div is slow
sympy/sympy#21761: sympy.polys.polyerrors.NotAlgebraic Exception
sympy/sympy#21430: minpoly raises ‘NotAlgebraic’ for tan(13*pi/45)
sympy/sympy#21766: solve breaks on certain repeated inputs
sympy/sympy#21773: TypeError multiplying Subs expressions
sympy/sympy#21785: Limit gives TypeError from as_leading_term
sympy/sympy#21812: LambertW displaying in jupyter lab
sympy/sympy#21814: Printing of unevaluated Mul needs brackets
sympy/sympy#21176: Incorrect residue of x**2*cot(pi*x)/(x**4 + 1)
sympy/sympy#21852: simple quadratic not solving
sympy/sympy#21859: AttributeError: ‘mpz’ object has no attribute ‘denominator’ with sp.series()
sympy/sympy#21882: Incorrect solutions given by solve
sympy/sympy#21890: RecursionError and TypeError in nonlinsolve
sympy/sympy#21888: TypeError raised for evalf containing summations
sympy/sympy#5822: What should summation() do with non-integer limits?
sympy/sympy#19745: Weird value of a sum
sympy/sympy#9358: summation: Wrong out for non-integral range
sympy/sympy#21905: raise NotImplementedError(“Equation not in exact domain. Try converting to rational”) Error
sympy/sympy#21938: Series raises an error at infinity for an example which can be solved by aseries
sympy/sympy#21984: ValueError: list.remove(x): x not in list occurs in nonlinsolve
sympy/sympy#21999: detection of infinite solution request
sympy/sympy#22020: Comparing two operations that contain log sometimes leads to TypeError exception
sympy/sympy#22051: Nonlinsolve incorrect result
sympy/sympy#22058: Regression in solveset for quadratic with symbolic coefficients
sympy/sympy#22073: Interval with oo
sympy/sympy#22093: sympy.polys.polyerrors.HeuristicGCDFailed: no luck
sympy/sympy#22155: Problem with solving simple separable ODE
sympy/sympy#22220: Bug in the evaluation of a log limit
sympy/sympy#22248: solve running forever
sympy/sympy#22294: Bernoulli differential equation
sympy/sympy#22322: ‘abs’ is not parsed correctly
sympy/sympy#22334: Wrong answer returned while calculating limit for different arrangements of the same expression
sympy/sympy#22400: Minpoly doesn’t terminate
sympy/sympy#22435: sympy integration error