I've calculated Groebner Basis with sage and have saved it with
I = Ideal(ideal_generators)
B = I.groebner_basis(algorithm=groebner_alghorithm);
np.save("output/basis_ideal", (B, I))
where ideal_generators
is some equations in PolynomialRing of several variables. It was in 2019.
After two years (and several updates of SageMath) I try to load that saved object and get an error:
Traceback (most recent call last):
File "/home/user/algebra/groebner.sage.py", line 55, in <module>
B, I = np.load(filename, allow_pickle=True)
File "/usr/lib/python3.9/site-packages/numpy/lib/npyio.py", line 440, in load
return format.read_array(fid, allow_pickle=allow_pickle,
File "/usr/lib/python3.9/site-packages/numpy/lib/format.py", line 744, in read_array
array = pickle.load(fp, **pickle_kwargs)
File "sage/rings/polynomial/multi_polynomial_libsingular.pyx", line 1925, in sage.rings.polynomial.multi_polynomial_libsingular.unpickle_MPolynomialRing_libsingular (build/cythonized/sage/rings/polynomial/multi_polynomial_libsingular.cpp:19177)
File "/usr/lib/python3.9/site-packages/sage/rings/polynomial/polynomial_ring_constructor.py", line 777, in _multi_variate
R = MPolynomialRing_libsingular(base_ring, n, names, order)
File "sage/rings/polynomial/multi_polynomial_libsingular.pyx", line 384, in sage.rings.polynomial.multi_polynomial_libsingular.MPolynomialRing_libsingular.__init__ (build/cythonized/sage/rings/polynomial/multi_polynomial_libsingular.cpp:5668)
File "sage/libs/singular/ring.pyx", line 167, in sage.libs.singular.ring.singular_ring_new (build/cythonized/sage/libs/singular/ring.cpp:3856)
AttributeError: 'TermOrder' object has no attribute '_singular_ringorder_column'
I've saved several baseis and some of them are loaded fine and some with such error.
How to load that "broken" files?