I believe there is a Heisenbug in src/sage/rings/function_field/ideal.py. Here is a specific test that can sometimes fail:
sage: K.<x> = FunctionField(GF(3^2)); R.<t> = K[] sage: F.<y> = K.extension(t^3 + t^2 - x^4) sage: Oinf = F.maximal_order_infinite() sage: I = Oinf.ideal(1/y) sage: I.factor() # This will sometimes fail --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-2-b9ca13965ba4> in <module>() ----> 1 I.factor() /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/rings/ function_field/ideal.pyc in factor(self) 2671 defined by y^2 + y + (x^2 + 1)/x)^2 2672 """ -> 2673 return Factorization(self._factor(), cr=True) 2674 2675 def _factor(self): /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/rings/function_field/ideal.pyc in _factor(self) 2693 2694 factors = [] -> 2695 for iprime, exp in O._to_iF(self).factor(): 2696 prime = FunctionFieldIdealInfinite_global(O, iprime) 2697 factors.append((prime, exp)) /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/rings/function_field/ideal.pyc in factor(self) 1572 True 1573 """ -> 1574 return Factorization(self._factor(), cr=True) 1575 1576 def _factor(self): /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/rings/ function_field/ideal.pyc in _factor(self) 1598 primes = set([o.ideal(p) for p,_ in d.factor()] + [p for p,_ in i.ideal_below().factor()]) 1599 for prime in primes: -> 1600 qs = [q[0] for q in O.decomposition(prime)] 1601 for q in qs: 1602 exp = q.valuation(self) /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/misc/cachefunc.pyx in sage.misc.cachefunc.CachedMethodCaller.__call__ (build/cythonized/sage/ misc/cachefunc.c:10824)() 1951 return cache[k] 1952 except KeyError: -> 1953 w = self._instance_call(*args, **kwds) 1954 cache[k] = w 1955 return w /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/misc/cachefunc.pyx in sage.misc.cachefunc.CachedMethodCaller._instance_call (build/cythonized/ sage/misc/cachefunc.c:10280)() 1827 True 1828 """ -> 1829 return self.f(self._instance, *args, **kwds) 1830 1831 cdef fix_args_kwds(self, tuple args, dict kwds): /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/rings/function_field/order.pyc in decomposition(self, ideal) 1838 1839 # J_1, J_2, ... -> 1840 Jb =[Kb[0]] + [div(Kb[j],Kb[j-1]) for j in range(1,len(Kb))] 1841 1842 # H_1, H_2, ... /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/rings/function_field/order.pyc in div(Ib, Jb) 1805 sJb = Jb.row_space() 1806 sIb = Ib.row_space() -> 1807 sJbsIb,proj_sJbsIb,lift_sJbsIb = sJb.quotient_abstract(sIb) 1808 supplement_basis = [lift_sJbsIb(v) for v in sJbsIb.basis()] 1809 /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/modules/free_module.pyc in quotient_abstract(self, sub, check) 4546 # Calling is_subspace may be way too slow and repeat work done below. 4547 # It will be very desirable to somehow do this step better. -> 4548 if check and (not is_FreeModule(sub) or not sub.is_subspace(self)): 4549 try: 4550 sub = self.subspace(sub) /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/modules/free_module.pyc in is_subspace(self, other) 3790 True 3791 """ -> 3792 return self.is_submodule(other) 3793 3794 def span(self, gens, base_ring=None, check=True, already_echelonized=False): /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/modules/ free_module.pyc in is_submodule(self, other) 1458 from sage.misc.flatten import flatten 1459 return all(x in S for x in flatten(M)) -> 1460 return all(x in S for x in M.list()) 1461 1462 def __iter__(self): /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/matrix/matrix0.pyx in sage.matrix.matrix0.Matrix.list (build/cythonized/sage/matrix/matrix0.c: 4165)() 154 [ y x 2*x + y] 155 """ --> 156 return list(self._list()) 157 158 def _list(self): /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/matrix/matrix_gfpn_dense.pyx in sage.matrix.matrix_gfpn_dense.Matrix_gfpn_dense._list (build/cythonized/sage/matrix/matrix_gfpn_dense.c:9038)() 908 FfStepPtr(&(p)) 909 sig_check() --> 910 x.extend([self._converter.int_to_field(FfToInt(FfExtract(p,j))) for j in range(self.Data.Noc)]) 911 self.cache('list', x) 912 return x /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/matrix/matrix_gfpn_dense.pyx in sage.matrix.matrix_gfpn_dense.FieldConverter_class.int_to_field (build/cythonized/sage/matrix/matrix_gfpn_dense.c:3717)() 135 136 """ --> 137 return self.field(x) 138 cpdef int field_to_int(self, x): 139 """ /home/uqtscrim/sage/local/lib/python2.7/site-packages/sage/rings/finite_rings/element_givaro.pyx in sage.rings.finite_rings.element_givaro.Cache_givaro.fetch_int (build/cythonized/sage/rings/finite_rings/element_givaro.cpp:8618)() 591 592 if n<0 or n>k.cardinality(): --> 593 raise TypeError("n must be between 0 and self.order()") 594 595 for i from 0 <= i < k.exponent(): TypeError: n must be between 0 and self.order() sage: I.factor() (Ideal (1/x,1/x^3*y^2) of Maximal infinite order of Function field in y defined by y^3 + y^2 + 2*x^4)^4 In the file, I can get anywhere between 0 and 6 tests failing. Note that once this works, it never seems to fail. Also, inserting output into the error, n = 255 and self.order() = 9. I suspect the problem is in Matrix_gfpn_dense as this is not a problem when I go to GF(19^2). I should note that I do have meataxe installed, and I suspect people without meataxe will not have this failure. Best, Travis On Monday, October 1, 2018 at 8:55:05 AM UTC+10, Volker Braun wrote: > > As always, you can get the latest beta version from the "develop" git > branch. Alternatively, the self-contained source tarball is at > http://www.sagemath.org/download-latest.html > > > a1bfef8cf3 (tag: 8.4.beta7, trac/develop) Updated SageMath version to > 8.4.beta7 > cbd85e1df0 Trac #26353: MR1: Remove special case for Cygwin for BLAS > detection when installing fflas_ffpack > a090fd23c8 Trac #25913: Allow input as packed words for Hopf algebra WQSym > 4048cdea8c Trac #26352: Lie algebra quotients are incorrect for some basis > orders > 958b066cf6 Trac #26232: enhance pari conversion of elliptic curves over > number field > dfa5859869 Trac #25435: Global function fields: orders and ideals > cf373c1968 Trac #12567: Implement p-adic n-th roots > 83f13e288a Trac #26350: Add citations to polymake papers > e643ef4bf4 Trac #26346: py3: a bit of work in src/doc > fdfbfef6ab Trac #26347: clean deprecation warning in doctests for paths.py > + animate.py > 15dbacc580 Trac #26342: Improve triconnectivity algorithm: avoid recursive > calls > 24442c1091 Trac #25057: Building ecl-16.1.2 fails on some Cygwin versions > 19cff46d56 Trac #24589: Pickling matrices over GF(2) does not preserve > their immutability > 039b874739 Trac #26080: The Baker-Campbell-Hausdorff formula for nilpotent > Lie algebras > d72db87107 Trac #26016: py3: miscellaneous fixes and cleanup to > sage.sandpiles > 02e5631e78 Trac #26011: Copying package files is really slow > 6e84381666 Trac #26341: py3: misc open(...) -> with open(...) fixes > bbc97631c5 Trac #26325: Upgrade nose to 1.3.7 > d8efd6a554 Trac #26323: small update of faq_usage > cabf20b1dd Trac #26299: py3: use repr for floats in plot3d file format > outputs > 9ad5cf0c99 Trac #26335: PicoSAT solver > df44cb2c3c Trac #26334: Package pycosat > a74f7590ad Trac #26329: Allow xor clause in DIMACS files (format extended > by cryptominisat) > 957af679a7 Trac #25395: Support for binary quintics in invariant_theory > e2e3f3f9bd Trac #26338: Fix documentation formatting in modular symbol > space > 7c8d581c7c Trac #26336: Fix latex typos in sfa.py > 614c0368ec Trac #26227: Make search_doc independent of sage_setup > b84538eeea (tag: 8.4.beta6) Updated SageMath version to 8.4.beta6 > > -- You received this message because you are subscribed to the Google Groups "sage-release" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-release+unsubscr...@googlegroups.com. To post to this group, send email to sage-release@googlegroups.com. Visit this group at https://groups.google.com/group/sage-release. For more options, visit https://groups.google.com/d/optout.