New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
removing is_commutative #26051
removing is_commutative #26051
Conversation
✅ Hi, I am the SymPy bot. I'm here to help you write a release notes entry. Please read the guide on how to write release notes. Your release notes are in good order. Here is what the release notes will look like:
This will be added to https://github.com/sympy/sympy/wiki/Release-Notes-for-1.13. Click here to see the pull request description that was parsed.
Update The release notes on the wiki have been updated. |
Please write more detailed and correct release note. I think that |
Benchmark results from GitHub Actions Lower numbers are good, higher numbers are bad. A ratio less than 1 Significantly changed benchmark results (PR vs master) Significantly changed benchmark results (master vs previous release) | Change | Before [a00718ba] | After [02eeb233] | Ratio | Benchmark (Parameter) |
|----------|----------------------|---------------------|---------|----------------------------------------------------------------------|
| - | 70.5±0.5ms | 44.6±0.8ms | 0.63 | integrate.TimeIntegrationRisch02.time_doit(10) |
| - | 68.2±1ms | 44.4±0.2ms | 0.65 | integrate.TimeIntegrationRisch02.time_doit_risch(10) |
| + | 18.9±0.3μs | 29.9±0.5μs | 1.58 | integrate.TimeIntegrationRisch03.time_doit(1) |
| - | 5.48±0.03ms | 2.83±0.01ms | 0.52 | logic.LogicSuite.time_load_file |
| - | 72.5±0.4ms | 28.7±0.2ms | 0.4 | polys.TimeGCD_GaussInt.time_op(1, 'dense') |
| - | 25.9±0.1ms | 17.1±0.08ms | 0.66 | polys.TimeGCD_GaussInt.time_op(1, 'expr') |
| - | 74.0±0.3ms | 28.9±0.08ms | 0.39 | polys.TimeGCD_GaussInt.time_op(1, 'sparse') |
| - | 258±1ms | 125±0.5ms | 0.48 | polys.TimeGCD_GaussInt.time_op(2, 'dense') |
| - | 255±1ms | 125±0.2ms | 0.49 | polys.TimeGCD_GaussInt.time_op(2, 'sparse') |
| - | 652±4ms | 369±3ms | 0.57 | polys.TimeGCD_GaussInt.time_op(3, 'dense') |
| - | 652±4ms | 372±2ms | 0.57 | polys.TimeGCD_GaussInt.time_op(3, 'sparse') |
| - | 506±2μs | 283±1μs | 0.56 | polys.TimeGCD_LinearDenseQuadraticGCD.time_op(1, 'dense') |
| - | 1.77±0.01ms | 1.05±0.01ms | 0.6 | polys.TimeGCD_LinearDenseQuadraticGCD.time_op(2, 'dense') |
| - | 5.72±0.03ms | 3.10±0.01ms | 0.54 | polys.TimeGCD_LinearDenseQuadraticGCD.time_op(3, 'dense') |
| - | 459±3μs | 229±1μs | 0.5 | polys.TimeGCD_QuadraticNonMonicGCD.time_op(1, 'dense') |
| - | 1.50±0.02ms | 669±9μs | 0.45 | polys.TimeGCD_QuadraticNonMonicGCD.time_op(2, 'dense') |
| - | 4.88±0.06ms | 1.66±0.01ms | 0.34 | polys.TimeGCD_QuadraticNonMonicGCD.time_op(3, 'dense') |
| - | 381±3μs | 204±0.7μs | 0.54 | polys.TimeGCD_SparseGCDHighDegree.time_op(1, 'dense') |
| - | 2.42±0ms | 1.24±0.01ms | 0.51 | polys.TimeGCD_SparseGCDHighDegree.time_op(3, 'dense') |
| - | 10.1±0.04ms | 4.40±0.03ms | 0.44 | polys.TimeGCD_SparseGCDHighDegree.time_op(5, 'dense') |
| - | 368±5μs | 168±2μs | 0.46 | polys.TimeGCD_SparseNonMonicQuadratic.time_op(1, 'dense') |
| - | 2.53±0.01ms | 912±200μs | 0.36 | polys.TimeGCD_SparseNonMonicQuadratic.time_op(3, 'dense') |
| - | 9.65±0.06ms | 2.62±0.01ms | 0.27 | polys.TimeGCD_SparseNonMonicQuadratic.time_op(5, 'dense') |
| - | 1.04±0.01ms | 433±3μs | 0.42 | polys.TimePREM_LinearDenseQuadraticGCD.time_op(3, 'dense') |
| - | 1.74±0.02ms | 511±2μs | 0.29 | polys.TimePREM_LinearDenseQuadraticGCD.time_op(3, 'sparse') |
| - | 5.87±0.04ms | 1.79±0.01ms | 0.31 | polys.TimePREM_LinearDenseQuadraticGCD.time_op(5, 'dense') |
| - | 8.47±0.03ms | 1.51±0.01ms | 0.18 | polys.TimePREM_LinearDenseQuadraticGCD.time_op(5, 'sparse') |
| - | 287±2μs | 65.5±0.8μs | 0.23 | polys.TimePREM_QuadraticNonMonicGCD.time_op(1, 'sparse') |
| - | 3.47±0.03ms | 398±1μs | 0.11 | polys.TimePREM_QuadraticNonMonicGCD.time_op(3, 'dense') |
| - | 4.01±0.03ms | 282±1μs | 0.07 | polys.TimePREM_QuadraticNonMonicGCD.time_op(3, 'sparse') |
| - | 7.06±0.05ms | 1.25±0.01ms | 0.18 | polys.TimePREM_QuadraticNonMonicGCD.time_op(5, 'dense') |
| - | 8.67±0.08ms | 850±5μs | 0.1 | polys.TimePREM_QuadraticNonMonicGCD.time_op(5, 'sparse') |
| - | 5.06±0.02ms | 3.05±0.01ms | 0.6 | polys.TimeSUBRESULTANTS_LinearDenseQuadraticGCD.time_op(2, 'sparse') |
| - | 12.1±0.3ms | 6.58±0.08ms | 0.55 | polys.TimeSUBRESULTANTS_LinearDenseQuadraticGCD.time_op(3, 'dense') |
| - | 22.4±0.04ms | 9.19±0.09ms | 0.41 | polys.TimeSUBRESULTANTS_LinearDenseQuadraticGCD.time_op(3, 'sparse') |
| - | 5.26±0.03ms | 889±9μs | 0.17 | polys.TimeSUBRESULTANTS_QuadraticNonMonicGCD.time_op(1, 'sparse') |
| - | 12.5±0.04ms | 7.05±0.09ms | 0.57 | polys.TimeSUBRESULTANTS_QuadraticNonMonicGCD.time_op(2, 'sparse') |
| - | 105±2ms | 26.0±0.1ms | 0.25 | polys.TimeSUBRESULTANTS_QuadraticNonMonicGCD.time_op(3, 'dense') |
| - | 170±2ms | 54.4±0.4ms | 0.32 | polys.TimeSUBRESULTANTS_QuadraticNonMonicGCD.time_op(3, 'sparse') |
| - | 179±1μs | 112±0.5μs | 0.62 | polys.TimeSUBRESULTANTS_SparseGCDHighDegree.time_op(1, 'dense') |
| - | 362±0.9μs | 217±0.9μs | 0.6 | polys.TimeSUBRESULTANTS_SparseGCDHighDegree.time_op(1, 'sparse') |
| - | 4.30±0.01ms | 847±3μs | 0.2 | polys.TimeSUBRESULTANTS_SparseGCDHighDegree.time_op(3, 'dense') |
| - | 5.23±0.05ms | 385±2μs | 0.07 | polys.TimeSUBRESULTANTS_SparseGCDHighDegree.time_op(3, 'sparse') |
| - | 19.9±0.2ms | 2.82±0.01ms | 0.14 | polys.TimeSUBRESULTANTS_SparseGCDHighDegree.time_op(5, 'dense') |
| - | 23.0±0.09ms | 632±1μs | 0.03 | polys.TimeSUBRESULTANTS_SparseGCDHighDegree.time_op(5, 'sparse') |
| - | 494±5μs | 135±1μs | 0.27 | polys.TimeSUBRESULTANTS_SparseNonMonicQuadratic.time_op(1, 'sparse') |
| - | 4.69±0.02ms | 623±2μs | 0.13 | polys.TimeSUBRESULTANTS_SparseNonMonicQuadratic.time_op(3, 'dense') |
| - | 5.38±0.02ms | 139±1μs | 0.03 | polys.TimeSUBRESULTANTS_SparseNonMonicQuadratic.time_op(3, 'sparse') |
| - | 13.4±0.04ms | 1.29±0ms | 0.1 | polys.TimeSUBRESULTANTS_SparseNonMonicQuadratic.time_op(5, 'dense') |
| - | 14.0±0.1ms | 140±0.9μs | 0.01 | polys.TimeSUBRESULTANTS_SparseNonMonicQuadratic.time_op(5, 'sparse') |
| - | 132±0.7μs | 73.7±0.7μs | 0.56 | solve.TimeMatrixOperations.time_rref(3, 0) |
| - | 246±1μs | 88.8±1μs | 0.36 | solve.TimeMatrixOperations.time_rref(4, 0) |
| - | 24.1±0.2ms | 10.2±0.04ms | 0.42 | solve.TimeSolveLinSys189x49.time_solve_lin_sys |
Full benchmark results can be found as artifacts in GitHub Actions |
* The Fermat method omits the check for `a` which is clearly not a square number. * Since `low` is always greater than `int(math.log(high_**0.7))`, the variable `high_root` was uniformly replaced by `low`. * When a factor is found, `factorint` is called recursively only if it is not prime.
Other, * Added processing for symbolic variables. * Added display of $\mu$ in latex.
@sylee957 can you checkout a pr. If any change required |
Unfortunately, I still find the release note difficult to follow. Wordings like ‘optimum result’ is very ambiguous or too technical. I’d suggest summarizing the original issue, and use examples. There are lots of toolings (like AI assistants) to aid the writing (Or I’m eventually going to try prompting and edit the comment before merging) Also, the merge could be broken because I see unrelated contributors tagged. #26051 (comment) This may also need to be fixed |
References to other Issues or PRs
Fixes: #23721
Brief description of what is fixed or changed
Other comments
Release Notes
commutative=False
assumption is not working withIndexedBase
. For example, ift
andu
areIndexedBase
withcommutative=False
,u[0]*t[0]
should not simplify tou[0]*t[0]
.