diff options
-rw-r--r-- | .SRCINFO | 8 | ||||
-rw-r--r-- | PKGBUILD | 10 | ||||
-rw-r--r-- | sagemath-ipython7.patch | 16 | ||||
-rw-r--r-- | sagemath-rpy-3.patch | 79 | ||||
-rw-r--r-- | sagemath-singular-4.1.2.patch | 110 |
5 files changed, 115 insertions, 108 deletions
@@ -1,6 +1,6 @@ pkgbase = sagemath-git pkgdesc = Open Source Mathematics Software, free alternative to Magma, Maple, Mathematica, and Matlab - pkgver = 9.1.beta0.r0.gb8f53f72e8 + pkgver = 9.1.beta1.r0.gdde78cbd22 pkgrel = 1 url = http://www.sagemath.org arch = x86_64 @@ -101,17 +101,15 @@ pkgbase = sagemath-git source = sagemath-singular-4.1.2.patch source = sagemath-ecl-sigfpe.patch source = sagemath-ipython7.patch - source = sagemath-rpy-3.patch source = sagemath-python-3.8.patch sha256sums = SKIP sha256sums = 5aa8febd117e7243a6d2d21eddf035cda99aac1018b559dd99ae32e5ce533b86 sha256sums = 6a5470d7044a50a35a6478f57c19adf72fe54aefebeea8a095915b63f9e219ac sha256sums = 876fd1c0fc3471b56e54d960d79e5ce1d5fc49cebf6eed27043a7380854c792c sha256sums = 937074fa7a8a4e2aba9ea77ec622fe937985a1a9176c48460d51325ee877a4f5 - sha256sums = 0a78fe1ca875028c72a80fb2006aa6017922894dffd114086132ff35e7a26009 + sha256sums = 1eedb88304df38e5c147c1943bc2a44faa724048f789fe0124518b3222836c66 sha256sums = e44bbde87f3312548faad75b7383ef21fade55be251ab5804de41cd3842ca8a0 - sha256sums = dca48f2eba8a27fdc027214faa63241f023f9e02e7bf2ca48b69395ce5a8d31b - sha256sums = 9062b412595e81a5ca560a5ae789f8b7318981689cb8d076b30d8c54a4fc4495 + sha256sums = 0b79606ce932d12ce4e2baebd660bf42faebca3138511987faf5569a5f3adbbf sha256sums = ea5c54b2f2b12cb59633e6a0ad26e1f3809cb8ad60e889c31495aef0a7eeb578 pkgname = sagemath-git @@ -7,7 +7,7 @@ pkgbase=sagemath-git pkgname=(sagemath-git sagemath-jupyter-git) -pkgver=9.1.beta0.r0.gb8f53f72e8 +pkgver=9.1.beta1.r0.gdde78cbd22 pkgrel=1 pkgdesc="Open Source Mathematics Software, free alternative to Magma, Maple, Mathematica, and Matlab" arch=(x86_64) @@ -42,17 +42,15 @@ source=(git://git.sagemath.org/sage.git#branch=develop sagemath-singular-4.1.2.patch sagemath-ecl-sigfpe.patch sagemath-ipython7.patch - sagemath-rpy-3.patch sagemath-python-3.8.patch) sha256sums=('SKIP' '5aa8febd117e7243a6d2d21eddf035cda99aac1018b559dd99ae32e5ce533b86' '6a5470d7044a50a35a6478f57c19adf72fe54aefebeea8a095915b63f9e219ac' '876fd1c0fc3471b56e54d960d79e5ce1d5fc49cebf6eed27043a7380854c792c' '937074fa7a8a4e2aba9ea77ec622fe937985a1a9176c48460d51325ee877a4f5' - '0a78fe1ca875028c72a80fb2006aa6017922894dffd114086132ff35e7a26009' + '1eedb88304df38e5c147c1943bc2a44faa724048f789fe0124518b3222836c66' 'e44bbde87f3312548faad75b7383ef21fade55be251ab5804de41cd3842ca8a0' - 'dca48f2eba8a27fdc027214faa63241f023f9e02e7bf2ca48b69395ce5a8d31b' - '9062b412595e81a5ca560a5ae789f8b7318981689cb8d076b30d8c54a4fc4495' + '0b79606ce932d12ce4e2baebd660bf42faebca3138511987faf5569a5f3adbbf' 'ea5c54b2f2b12cb59633e6a0ad26e1f3809cb8ad60e889c31495aef0a7eeb578') pkgver() { @@ -74,8 +72,6 @@ prepare(){ patch -p1 -i ../sagemath-python-3.8.patch # Support IPython 7 patch -p1 -i ../sagemath-ipython7.patch -# Adapt to rpy 3.0 changes - patch -p1 -i ../sagemath-rpy-3.patch # Fix mathjax path sed -e 's|mathjax|mathjax2|g' -i src/sage/env.py diff --git a/sagemath-ipython7.patch b/sagemath-ipython7.patch index 28efd1440b6f..09830f221529 100644 --- a/sagemath-ipython7.patch +++ b/sagemath-ipython7.patch @@ -3275,22 +3275,6 @@ index ad2dba4fbc..1cd1fa7ba4 100644 """ return self._nproc -diff --git a/src/sage/parallel/use_fork.py b/src/sage/parallel/use_fork.py -index 77842ec794..2c1689bd25 100644 ---- a/src/sage/parallel/use_fork.py -+++ b/src/sage/parallel/use_fork.py -@@ -281,9 +281,9 @@ class p_iter_fork(object): - """ - import os, sys - try: -- from imp import reload -- except ImportError: - from importlib import reload -+ except ImportError: -+ from imp import reload - from sage.misc.persist import save - - # Make it so all stdout is sent to a file so it can diff --git a/src/sage/plot/graphics.py b/src/sage/plot/graphics.py index 31131ab220..bc33919835 100644 --- a/src/sage/plot/graphics.py diff --git a/sagemath-rpy-3.patch b/sagemath-rpy-3.patch deleted file mode 100644 index 3b192db4c6c7..000000000000 --- a/sagemath-rpy-3.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff --git a/src/sage/interfaces/r.py b/src/sage/interfaces/r.py -index ad4f3bfd8a..3c1c0bb369 100644 ---- a/src/sage/interfaces/r.py -+++ b/src/sage/interfaces/r.py -@@ -373,7 +373,7 @@ def _setup_r_to_sage_converter(): - cv = Converter('r to sage converter') - - # fallback -- cv.ri2py.register(object, lambda obj: obj) -+ cv.rpy2py.register(object, lambda obj: obj) - - def float_to_int_if_possible(f): - # First, round the float to at most 15 significant places. -@@ -383,7 +383,7 @@ def _setup_r_to_sage_converter(): - # Preserve the behaviour of the old r parser, e.g. return 1 instead of 1.0 - float_or_int = int(f) if isinstance(f, int) or f.is_integer() else f - return float_or_int -- cv.ri2py.register(float, float_to_int_if_possible) -+ cv.rpy2py.register(float, float_to_int_if_possible) - - def list_to_singleton_if_possible(l): - if len(l) == 1: -@@ -395,11 +395,11 @@ def _setup_r_to_sage_converter(): - attrs = vec.list_attrs() - # Recursive calls have to be made explicitly - # https://bitbucket.org/rpy2/rpy2/issues/363/custom-converters-are-not-applied -- data = list_to_singleton_if_possible([ cv.ri2py(val) for val in vec ]) -+ data = list_to_singleton_if_possible([ cv.rpy2py(val) for val in vec ]) - rclass = list(vec.do_slot('class')) if 'class' in attrs else vec.rclass - - if 'names' in attrs: -- # separate names and values, call ri2py recursively to convert elements -+ # separate names and values, call rpy2py recursively to convert elements - names = list_to_singleton_if_possible(list(vec.do_slot('names'))) - return { - 'DATA': data, -@@ -409,7 +409,7 @@ def _setup_r_to_sage_converter(): - else: - # if no names are present, convert to a normal list or a single value - return data -- cv.ri2py.register(SexpVector, _vector) -+ cv.rpy2py.register(SexpVector, _vector) - - def _matrix(mat): - if 'dim' in mat.list_attrs(): -@@ -421,28 +421,28 @@ def _setup_r_to_sage_converter(): - (nrow, ncol) = dimensions - # Since R does it the other way round, we assign transposed and - # then transpose the matrix :) -- m = matrix(ncol, nrow, [cv.ri2py(i) for i in mat]) -+ m = matrix(ncol, nrow, [cv.rpy2py(i) for i in mat]) - return m.transpose() - except TypeError: - pass - else: - return _vector(mat) -- cv.ri2py.register(FloatSexpVector, _matrix) -+ cv.rpy2py.register(FloatSexpVector, _matrix) - - def _list_vector(vec): - # we have a R list (vector of arbitrary elements) - attrs = vec.list_attrs() - names = vec.do_slot('names') -- values = [ cv.ri2py(val) for val in vec ] -+ values = [ cv.rpy2py(val) for val in vec ] - rclass = list(vec.do_slot('class')) if 'class' in attrs else vec.rclass - data = zip(names, values) - return { - 'DATA': dict(data), -- '_Names': cv.ri2py(names), -+ '_Names': cv.rpy2py(names), - # We don't give the rclass here because the old expect interface - # didn't do that either and we want to maintain compatibility. - }; -- cv.ri2py.register(ListSexpVector, _list_vector) -+ cv.rpy2py.register(ListSexpVector, _list_vector) - - return cv - diff --git a/sagemath-singular-4.1.2.patch b/sagemath-singular-4.1.2.patch index 556d5fd77ba4..f7dba4977441 100644 --- a/sagemath-singular-4.1.2.patch +++ b/sagemath-singular-4.1.2.patch @@ -509,4 +509,112 @@ index d2dec78..6fa2680 100644 # self._populate_coercion_lists_() # ??? #MPolynomialRing_generic.__init__(self, base_ring, n, names, order) - +diff --git a/src/sage/combinat/root_system/hecke_algebra_representation.py b/src/sage/combinat/root_system/hecke_algebra_representation.py +index 6498afbeaa..b1ad7ea6fa 100644 +--- a/src/sage/combinat/root_system/hecke_algebra_representation.py ++++ b/src/sage/combinat/root_system/hecke_algebra_representation.py +@@ -745,7 +745,7 @@ class HeckeAlgebraRepresentation(WithEqualityById, SageObject): + -2121 + 212, + (q2/(q1-q2))*2121 + (q2/(-q1+q2))*121 + (q2/(-q1+q2))*212 - 12 + ((-q2)/(-q1+q2))*21 + 2, + ((-q2^2)/(-q1^2+q1*q2-q2^2))*2121 - 121 + (q2^2/(-q1^2+q1*q2-q2^2))*212 + 21, +- ((q1^2+q2^2)/(-q1^2+q1*q2-q2^2))*2121 + ((-q1^2-q2^2)/(-q1^2+q1*q2-q2^2))*121 + ((-q2^2)/(-q1^2+q1*q2-q2^2))*212 + (q2^2/(-q1^2+q1*q2-q2^2))*12 - 21 + 1, ++ ((-q1^2-q2^2)/(q1^2-q1*q2+q2^2))*2121 + ((-q1^2-q2^2)/(-q1^2+q1*q2-q2^2))*121 + ((-q2^2)/(-q1^2+q1*q2-q2^2))*212 + (q2^2/(-q1^2+q1*q2-q2^2))*12 - 21 + 1, + 2121, + (q2/(-q1+q2))*2121 + ((-q2)/(-q1+q2))*121 - 212 + 12, + -2121 + 121] +diff --git a/src/sage/combinat/root_system/non_symmetric_macdonald_polynomials.py b/src/sage/combinat/root_system/non_symmetric_macdonald_polynomials.py +index 3ae5effddb..898a1fe636 100644 +--- a/src/sage/combinat/root_system/non_symmetric_macdonald_polynomials.py ++++ b/src/sage/combinat/root_system/non_symmetric_macdonald_polynomials.py +@@ -555,8 +555,7 @@ class NonSymmetricMacdonaldPolynomials(CherednikOperatorsEigenvectors): + B[(1, 0, 0)] + + sage: E[-omega[1]] +- B[(-1, 0, 0)] + ((-q*q1^6-q*q1^5*q2-q1*q2^5-q2^6)/(-q^3*q1^6-q^2*q1^5*q2-q*q1*q2^5-q2^6))*B[(1, 0, 0)] + ((-q1-q2)/(-q*q1-q2))*B[(0, -1, 0)] +- + ((q1+q2)/(q*q1+q2))*B[(0, 1, 0)] + ((-q1-q2)/(-q*q1-q2))*B[(0, 0, -1)] + ((-q1-q2)/(-q*q1-q2))*B[(0, 0, 1)] ++ B[(-1, 0, 0)] + ((q*q1^6+q*q1^5*q2+q1*q2^5+q2^6)/(q^3*q1^6+q^2*q1^5*q2+q*q1*q2^5+q2^6))*B[(1, 0, 0)] + ((q1+q2)/(q*q1+q2))*B[(0, -1, 0)] + ((q1+q2)/(q*q1+q2))*B[(0, 1, 0)] + ((q1+q2)/(q*q1+q2))*B[(0, 0, -1)] + ((q1+q2)/(q*q1+q2))*B[(0, 0, 1)] + + sage: E[omega[2]] + ((-q1*q2^3-q2^4)/(q*q1^4-q2^4))*B[(1, 0, 0)] + B[(0, 1, 0)] +@@ -567,14 +566,7 @@ class NonSymmetricMacdonaldPolynomials(CherednikOperatorsEigenvectors): + + ((-q1*q2-q2^2)/(q*q1^2-q2^2))*B[(0, 0, -1)] + ((q1*q2+q2^2)/(-q*q1^2+q2^2))*B[(0, 0, 1)] + + sage: E[-omega[1]-omega[2]] +- ((-q^3*q1^6-q^3*q1^5*q2-2*q^2*q1^6-3*q^2*q1^5*q2+q^2*q1^4*q2^2+2*q^2*q1^3*q2^3+q*q1^5*q2+2*q*q1^4*q2^2-q*q1^3*q2^3-2*q*q1^2*q2^4+q*q1*q2^5+q*q2^6-q1^3*q2^3-q1^2*q2^4+2*q1*q2^5+2*q2^6)/(-q^4*q1^6-q^3*q1^5*q2+q^3*q1^4*q2^2-q*q1^2*q2^4+q*q1*q2^5+q2^6))*B[(0, 0, 0)] + B[(-1, -1, 0)] +- + ((q*q1^4+q*q1^3*q2+q1*q2^3+q2^4)/(q^3*q1^4+q^2*q1^3*q2+q*q1*q2^3+q2^4))*B[(-1, 1, 0)] + ((q1+q2)/(q*q1+q2))*B[(-1, 0, -1)] + ((-q1-q2)/(-q*q1-q2))*B[(-1, 0, 1)] +- + ((q*q1^4+q*q1^3*q2+q1*q2^3+q2^4)/(q^3*q1^4+q^2*q1^3*q2+q*q1*q2^3+q2^4))*B[(1, -1, 0)] +- + ((-q^2*q1^6-q^2*q1^5*q2-q*q1^5*q2+q*q1^3*q2^3+q1^5*q2+q1^4*q2^2-q1^3*q2^3-q1^2*q2^4+q1*q2^5+q2^6)/(-q^4*q1^6-q^3*q1^5*q2+q^3*q1^4*q2^2-q*q1^2*q2^4+q*q1*q2^5+q2^6))*B[(1, 1, 0)] +- + ((-q*q1^4-2*q*q1^3*q2-q*q1^2*q2^2+q1^3*q2+q1^2*q2^2-q1*q2^3-q2^4)/(-q^3*q1^4-q^2*q1^3*q2-q*q1*q2^3-q2^4))*B[(1, 0, -1)] +- + ((-q*q1^4-2*q*q1^3*q2-q*q1^2*q2^2+q1^3*q2+q1^2*q2^2-q1*q2^3-q2^4)/(-q^3*q1^4-q^2*q1^3*q2-q*q1*q2^3-q2^4))*B[(1, 0, 1)] + ((q1+q2)/(q*q1+q2))*B[(0, -1, -1)] +- + ((-q1-q2)/(-q*q1-q2))*B[(0, -1, 1)] + ((q*q1^4+2*q*q1^3*q2+q*q1^2*q2^2-q1^3*q2-q1^2*q2^2+q1*q2^3+q2^4)/(q^3*q1^4+q^2*q1^3*q2+q*q1*q2^3+q2^4))*B[(0, 1, -1)] +- + ((q*q1^4+2*q*q1^3*q2+q*q1^2*q2^2-q1^3*q2-q1^2*q2^2+q1*q2^3+q2^4)/(q^3*q1^4+q^2*q1^3*q2+q*q1*q2^3+q2^4))*B[(0, 1, 1)] ++ ((q^3*q1^6+q^3*q1^5*q2+2*q^2*q1^6+3*q^2*q1^5*q2-q^2*q1^4*q2^2-2*q^2*q1^3*q2^3-q*q1^5*q2-2*q*q1^4*q2^2+q*q1^3*q2^3+2*q*q1^2*q2^4-q*q1*q2^5-q*q2^6+q1^3*q2^3+q1^2*q2^4-2*q1*q2^5-2*q2^6)/(q^4*q1^6+q^3*q1^5*q2-q^3*q1^4*q2^2+q*q1^2*q2^4-q*q1*q2^5-q2^6))*B[(0, 0, 0)] + B[(-1, -1, 0)] + ((q*q1^4+q*q1^3*q2+q1*q2^3+q2^4)/(q^3*q1^4+q^2*q1^3*q2+q*q1*q2^3+q2^4))*B[(-1, 1, 0)] + ((q1+q2)/(q*q1+q2))*B[(-1, 0, -1)] + ((-q1-q2)/(-q*q1-q2))*B[(-1, 0, 1)] + ((q*q1^4+q*q1^3*q2+q1*q2^3+q2^4)/(q^3*q1^4+q^2*q1^3*q2+q*q1*q2^3+q2^4))*B[(1, -1, 0)] + ((q^2*q1^6+q^2*q1^5*q2+q*q1^5*q2-q*q1^3*q2^3-q1^5*q2-q1^4*q2^2+q1^3*q2^3+q1^2*q2^4-q1*q2^5-q2^6)/(q^4*q1^6+q^3*q1^5*q2-q^3*q1^4*q2^2+q*q1^2*q2^4-q*q1*q2^5-q2^6))*B[(1, 1, 0)] + ((q*q1^4+2*q*q1^3*q2+q*q1^2*q2^2-q1^3*q2-q1^2*q2^2+q1*q2^3+q2^4)/(q^3*q1^4+q^2*q1^3*q2+q*q1*q2^3+q2^4))*B[(1, 0, -1)] + ((q*q1^4+2*q*q1^3*q2+q*q1^2*q2^2-q1^3*q2-q1^2*q2^2+q1*q2^3+q2^4)/(q^3*q1^4+q^2*q1^3*q2+q*q1*q2^3+q2^4))*B[(1, 0, 1)] + ((q1+q2)/(q*q1+q2))*B[(0, -1, -1)] + ((q1+q2)/(q*q1+q2))*B[(0, -1, 1)] + ((q*q1^4+2*q*q1^3*q2+q*q1^2*q2^2-q1^3*q2-q1^2*q2^2+q1*q2^3+q2^4)/(q^3*q1^4+q^2*q1^3*q2+q*q1*q2^3+q2^4))*B[(0, 1, -1)] + ((q*q1^4+2*q*q1^3*q2+q*q1^2*q2^2-q1^3*q2-q1^2*q2^2+q1*q2^3+q2^4)/(q^3*q1^4+q^2*q1^3*q2+q*q1*q2^3+q2^4))*B[(0, 1, 1)] + + sage: E[omega[1]-omega[2]] + ((q^3*q1^7+q^3*q1^6*q2-q*q1*q2^6-q*q2^7)/(q^3*q1^7-q^2*q1^5*q2^2+q*q1^2*q2^5-q2^7))*B[(0, 0, 0)] + B[(1, -1, 0)] +@@ -812,7 +804,7 @@ class NonSymmetricMacdonaldPolynomials(CherednikOperatorsEigenvectors): + ((-q*q1*q2^3-q*q2^4)/(q^2*q1^4-q2^4))*B[(0, 0)] + B[(1, 0)] + + sage: E[2*omega[2]] # long time # not checked against Bogdan's notes, but a good self-consistency test +- ((-q^12*q1^6-q^12*q1^5*q2+2*q^10*q1^5*q2+5*q^10*q1^4*q2^2+3*q^10*q1^3*q2^3+2*q^8*q1^5*q2+4*q^8*q1^4*q2^2+q^8*q1^3*q2^3-q^8*q1^2*q2^4+q^8*q1*q2^5+q^8*q2^6-q^6*q1^3*q2^3+q^6*q1^2*q2^4+4*q^6*q1*q2^5+2*q^6*q2^6+q^4*q1^3*q2^3+3*q^4*q1^2*q2^4+4*q^4*q1*q2^5+2*q^4*q2^6)/(-q^12*q1^6-q^10*q1^5*q2-q^8*q1^3*q2^3+q^6*q1^4*q2^2-q^6*q1^2*q2^4+q^4*q1^3*q2^3+q^2*q1*q2^5+q2^6))*B[(0, 0)] + ((q^7*q1^2*q2+2*q^7*q1*q2^2+q^7*q2^3+q^5*q1^2*q2+2*q^5*q1*q2^2+q^5*q2^3)/(-q^8*q1^3-q^6*q1^2*q2+q^2*q1*q2^2+q2^3))*B[(-1, 0)] + ((q^6*q1*q2+q^6*q2^2)/(-q^6*q1^2+q2^2))*B[(-1, -1)] + ((q^6*q1^2*q2+2*q^6*q1*q2^2+q^6*q2^3+q^4*q1^2*q2+2*q^4*q1*q2^2+q^4*q2^3)/(-q^8*q1^3-q^6*q1^2*q2+q^2*q1*q2^2+q2^3))*B[(-1, 1)] + ((q^3*q1*q2+q^3*q2^2)/(-q^6*q1^2+q2^2))*B[(-1, 2)] + ((-q^7*q1^3-q^7*q1^2*q2+q^7*q1*q2^2+q^7*q2^3+2*q^5*q1^2*q2+4*q^5*q1*q2^2+2*q^5*q2^3+2*q^3*q1^2*q2+4*q^3*q1*q2^2+2*q^3*q2^3)/(-q^8*q1^3-q^6*q1^2*q2+q^2*q1*q2^2+q2^3))*B[(1, 0)] + ((-q^6*q1^2*q2-2*q^6*q1*q2^2-q^6*q2^3-q^4*q1^2*q2-2*q^4*q1*q2^2-q^4*q2^3)/(q^8*q1^3+q^6*q1^2*q2-q^2*q1*q2^2-q2^3))*B[(1, -1)] + ((q^8*q1^3+q^8*q1^2*q2+q^6*q1^3+q^6*q1^2*q2-q^6*q1*q2^2-q^6*q2^3-2*q^4*q1^2*q2-4*q^4*q1*q2^2-2*q^4*q2^3-q^2*q1^2*q2-3*q^2*q1*q2^2-2*q^2*q2^3)/(q^8*q1^3+q^6*q1^2*q2-q^2*q1*q2^2-q2^3))*B[(1, 1)] + ((-q^5*q1^2-q^5*q1*q2+q^3*q1*q2+q^3*q2^2+q*q1*q2+q*q2^2)/(-q^6*q1^2+q2^2))*B[(1, 2)] + ((-q^6*q1^2-q^6*q1*q2+q^4*q1*q2+q^4*q2^2+q^2*q1*q2+q^2*q2^2)/(-q^6*q1^2+q2^2))*B[(2, 0)] + ((q^3*q1*q2+q^3*q2^2)/(-q^6*q1^2+q2^2))*B[(2, -1)] + ((-q^5*q1^2-q^5*q1*q2+q^3*q1*q2+q^3*q2^2+q*q1*q2+q*q2^2)/(-q^6*q1^2+q2^2))*B[(2, 1)] + B[(2, 2)] + ((-q^7*q1^2*q2-2*q^7*q1*q2^2-q^7*q2^3-q^5*q1^2*q2-2*q^5*q1*q2^2-q^5*q2^3)/(q^8*q1^3+q^6*q1^2*q2-q^2*q1*q2^2-q2^3))*B[(0, -1)] + ((q^7*q1^3+q^7*q1^2*q2-q^7*q1*q2^2-q^7*q2^3-2*q^5*q1^2*q2-4*q^5*q1*q2^2-2*q^5*q2^3-2*q^3*q1^2*q2-4*q^3*q1*q2^2-2*q^3*q2^3)/(q^8*q1^3+q^6*q1^2*q2-q^2*q1*q2^2-q2^3))*B[(0, 1)] + ((-q^6*q1^2-q^6*q1*q2+q^4*q1*q2+q^4*q2^2+q^2*q1*q2+q^2*q2^2)/(-q^6*q1^2+q2^2))*B[(0, 2)] ++ ((-q^12*q1^6-q^12*q1^5*q2+2*q^10*q1^5*q2+5*q^10*q1^4*q2^2+3*q^10*q1^3*q2^3+2*q^8*q1^5*q2+4*q^8*q1^4*q2^2+q^8*q1^3*q2^3-q^8*q1^2*q2^4+q^8*q1*q2^5+q^8*q2^6-q^6*q1^3*q2^3+q^6*q1^2*q2^4+4*q^6*q1*q2^5+2*q^6*q2^6+q^4*q1^3*q2^3+3*q^4*q1^2*q2^4+4*q^4*q1*q2^5+2*q^4*q2^6)/(-q^12*q1^6-q^10*q1^5*q2-q^8*q1^3*q2^3+q^6*q1^4*q2^2-q^6*q1^2*q2^4+q^4*q1^3*q2^3+q^2*q1*q2^5+q2^6))*B[(0, 0)] + ((q^7*q1^2*q2+2*q^7*q1*q2^2+q^7*q2^3+q^5*q1^2*q2+2*q^5*q1*q2^2+q^5*q2^3)/(-q^8*q1^3-q^6*q1^2*q2+q^2*q1*q2^2+q2^3))*B[(-1, 0)] + ((-q^6*q1*q2-q^6*q2^2)/(q^6*q1^2-q2^2))*B[(-1, -1)] + ((q^6*q1^2*q2+2*q^6*q1*q2^2+q^6*q2^3+q^4*q1^2*q2+2*q^4*q1*q2^2+q^4*q2^3)/(-q^8*q1^3-q^6*q1^2*q2+q^2*q1*q2^2+q2^3))*B[(-1, 1)] + ((-q^3*q1*q2-q^3*q2^2)/(q^6*q1^2-q2^2))*B[(-1, 2)] + ((q^7*q1^3+q^7*q1^2*q2-q^7*q1*q2^2-q^7*q2^3-2*q^5*q1^2*q2-4*q^5*q1*q2^2-2*q^5*q2^3-2*q^3*q1^2*q2-4*q^3*q1*q2^2-2*q^3*q2^3)/(q^8*q1^3+q^6*q1^2*q2-q^2*q1*q2^2-q2^3))*B[(1, 0)] + ((q^6*q1^2*q2+2*q^6*q1*q2^2+q^6*q2^3+q^4*q1^2*q2+2*q^4*q1*q2^2+q^4*q2^3)/(-q^8*q1^3-q^6*q1^2*q2+q^2*q1*q2^2+q2^3))*B[(1, -1)] + ((q^8*q1^3+q^8*q1^2*q2+q^6*q1^3+q^6*q1^2*q2-q^6*q1*q2^2-q^6*q2^3-2*q^4*q1^2*q2-4*q^4*q1*q2^2-2*q^4*q2^3-q^2*q1^2*q2-3*q^2*q1*q2^2-2*q^2*q2^3)/(q^8*q1^3+q^6*q1^2*q2-q^2*q1*q2^2-q2^3))*B[(1, 1)] + ((q^5*q1^2+q^5*q1*q2-q^3*q1*q2-q^3*q2^2-q*q1*q2-q*q2^2)/(q^6*q1^2-q2^2))*B[(1, 2)] + ((-q^6*q1^2-q^6*q1*q2+q^4*q1*q2+q^4*q2^2+q^2*q1*q2+q^2*q2^2)/(-q^6*q1^2+q2^2))*B[(2, 0)] + ((-q^3*q1*q2-q^3*q2^2)/(q^6*q1^2-q2^2))*B[(2, -1)] + ((-q^5*q1^2-q^5*q1*q2+q^3*q1*q2+q^3*q2^2+q*q1*q2+q*q2^2)/(-q^6*q1^2+q2^2))*B[(2, 1)] + B[(2, 2)] + ((q^7*q1^2*q2+2*q^7*q1*q2^2+q^7*q2^3+q^5*q1^2*q2+2*q^5*q1*q2^2+q^5*q2^3)/(-q^8*q1^3-q^6*q1^2*q2+q^2*q1*q2^2+q2^3))*B[(0, -1)] + ((q^7*q1^3+q^7*q1^2*q2-q^7*q1*q2^2-q^7*q2^3-2*q^5*q1^2*q2-4*q^5*q1*q2^2-2*q^5*q2^3-2*q^3*q1^2*q2-4*q^3*q1*q2^2-2*q^3*q2^3)/(q^8*q1^3+q^6*q1^2*q2-q^2*q1*q2^2-q2^3))*B[(0, 1)] + ((q^6*q1^2+q^6*q1*q2-q^4*q1*q2-q^4*q2^2-q^2*q1*q2-q^2*q2^2)/(q^6*q1^2-q2^2))*B[(0, 2)] + sage: E.recursion(2*omega[2]) + [0, 1, 0, 2, 1, 0, 2, 1, 0] + +@@ -997,7 +989,7 @@ class NonSymmetricMacdonaldPolynomials(CherednikOperatorsEigenvectors): + sage: L0 = E.keys() + sage: omega = L0.fundamental_weights() + sage: E[2*omega[2]] +- ((q*q1+q*q2)/(q*q1+q2))*B[(1, 2, 1)] + ((q*q1+q*q2)/(q*q1+q2))*B[(2, 1, 1)] + B[(2, 2, 0)] ++ ((-q*q1-q*q2)/(-q*q1-q2))*B[(1, 2, 1)] + ((-q*q1-q*q2)/(-q*q1-q2))*B[(2, 1, 1)] + B[(2, 2, 0)] + sage: for d in range(4): # long time (9s) + ....: for weight in IntegerVectors(d,3).map(list).map(L0): + ....: eigenvalues = E.eigenvalues(E[L0(weight)]) +diff --git a/src/sage/combinat/sf/macdonald.py b/src/sage/combinat/sf/macdonald.py +index 0d32a8dfbf..5e48f87aad 100644 +--- a/src/sage/combinat/sf/macdonald.py ++++ b/src/sage/combinat/sf/macdonald.py +@@ -483,7 +483,7 @@ class Macdonald(UniqueRepresentation): + sage: Ht = Sym.macdonald().Ht() + sage: s = Sym.schur() + sage: Ht(s([2,1])) +- ((-q)/(-q*t^2+t^3+q^2-q*t))*McdHt[1, 1, 1] + ((q^2+q*t+t^2)/(-q^2*t^2+q^3+t^3-q*t))*McdHt[2, 1] + (t/(-q^3+q^2*t+q*t-t^2))*McdHt[3] ++ (q/(q*t^2-t^3-q^2+q*t))*McdHt[1, 1, 1] + ((-q^2-q*t-t^2)/(q^2*t^2-q^3-t^3+q*t))*McdHt[2, 1] + (t/(-q^3+q^2*t+q*t-t^2))*McdHt[3] + sage: Ht(s([2])) + ((-q)/(-q+t))*McdHt[1, 1] + (t/(-q+t))*McdHt[2] + """ +@@ -899,7 +899,7 @@ class MacdonaldPolynomials_generic(sfa.SymmetricFunctionAlgebra_generic): + sage: Q._multiply(Q[1],Q[2]) + McdQ[2, 1] + ((q^2*t-q^2+q*t-q+t-1)/(q^2*t-1))*McdQ[3] + sage: Ht._multiply(Ht[1],Ht[2]) +- ((-q^2+1)/(-q^2+t))*McdHt[2, 1] + ((-t+1)/(q^2-t))*McdHt[3] ++ ((q^2-1)/(q^2-t))*McdHt[2, 1] + ((t-1)/(-q^2+t))*McdHt[3] + """ + return self( self._s(left)*self._s(right) ) + +diff --git a/src/sage/schemes/curves/projective_curve.py b/src/sage/schemes/curves/projective_curve.py +index b5bd3c8c3e..0b26733ede 100644 +--- a/src/sage/schemes/curves/projective_curve.py ++++ b/src/sage/schemes/curves/projective_curve.py +@@ -1873,7 +1873,7 @@ class ProjectivePlaneCurve_prime_finite_field(ProjectivePlaneCurve_finite_field) + sage: C = Curve(f); pts = C.rational_points() + sage: D = C.divisor([ (3, pts[0]), (-1,pts[1]), (10, pts[5]) ]) + sage: C.riemann_roch_basis(D) +- [(-x - 2*y)/(-2*x - 2*y), (-x + z)/(x + y)] ++ [(-2*x + y)/(x + y), (-x + z)/(x + y)] + + + .. NOTE:: +diff --git a/src/sage/rings/polynomial/multi_polynomial_element.py b/src/sage/rings/polynomial/multi_polynomial_element.py +index e5d692150c..f4027eb11e 100644 +--- a/src/sage/rings/polynomial/multi_polynomial_element.py ++++ b/src/sage/rings/polynomial/multi_polynomial_element.py +@@ -2147,7 +2147,7 @@ def degree_lowest_rational_function(r, x): + :: + + sage: r = f/g; r +- (-b*c^2 + 2)/(a*b^3*c^6 - 2*a*c) ++ (-2*b*c^2 - 1)/(2*a*b^3*c^6 + a*c) + sage: degree_lowest_rational_function(r,a) + -1 + sage: degree_lowest_rational_function(r,b) |