Release Notes for 0.7.7 - paramsingh/sympy GitHub Wiki
These are the release notes for SymPy 0.7.7, which has not been released yet.
This version of SymPy has been tested on Python 2.6, 2.7, 3.2, 3.3, 3.4, and PyPy.
- The dup_inner_subresultants and dmp_inner_subresultants now only return 2 arguments instead of 3. Only those building their own routines from these very low-level functions need to be aware of this.
- This release doesn't include copy of the mpmath library, see PR #2192. Please see new installation instructions for SymPy.
- The string representation function srepr() now displays the assumptions used to create a Symbol. For example, srepr(Symbol('x', real=True)) now returns the string "Symbol('x', real=True)" instead of merely "Symbol('x')".
-
roots_cubic will no longer raise an error when the sign of certain expressions is unknown. It will return a generally valid solution instead.
-
Relational.canonical will put a Relational into canonical form which is useful for testing whether two Relationals are trivially the same.
-
Relational.reversed gives the Relational with lhs and rhs reversed and the symbol updated accordingly (e.g. (x < 1).reversed -> 1 > x
-
Simplification of Relationals will, if the threshold for simplification is met, also return the Relational in canonical form. One of the criteria of being in canonical form is that the Number will be on the rhs. This makes writing tests a little easier so S(1) > x can be entered as 1 > x or x < 1 (the former being turned into the latter by Python).
-
boolalg functions And, Or, Implies, Xor, Equivalent are aware of Relational complements and trivial equalities, so, for example, And(x<1,x>=1) will reduce to False while And(S(1)>x,x<1) reduces to x < 1. This leads to some simplifications in statistical expressions.
-
The function used to test connectivity in Min and Max has been altered to use the weaker form of a relationship since this applies to arguments like floor(x) and x: though, in generally, we cannot say that floor(x) < x, if x is real we do know that floor(x) <= x. This allows Min(x, floor(x)) -> floor(x) without loss of generality when x is real.
-
Float has changed its default behaviour on string/int/long to use at least 15 digits of precision and to increase the precision automatically. This enables sympify('1.23456789012345678901234567890') to return a high-precision Float. It also means N('1.23456789012345678901234567890', 20) does the right thing (where it previously lost precision because an intermediate calculation had only precision 15). See Issue #8821