#14740: Creation of number field order hangs
---------------------------------+------------------------------------------
Reporter: mstreng | Owner: davidloeffler
Type: defect | Status: new
Priority: major | Milestone: sage-5.11
Component: number fields | Resolution:
Keywords: | Work issues:
Report Upstream: N/A | Reviewers:
Authors: | Merged in:
Dependencies: | Stopgaps:
---------------------------------+------------------------------------------
Changes (by jdemeyer):
* type: enhancement => defect
Old description:
> {{{
> sage: Qa12.<kappa12> = NumberField(x^14 - 26*x^13 + 325*x^12 - 2548*x^11
> + 13832*x^10 - 54340*x^9 + 157118*x^8 - 333580*x^7 + 509366*x^6 -
> 534820*x^5 + 354536*x^4 - 124852*x^3 + 15145*x^2 - 33514*x + 13)
> sage: y = polygen(Qa12)
> sage: L.<c> = Qa12.extension(y^2-kappa12)
> sage: L.<alpha> = L.absolute_field()
> sage: OO = Qa12.maximal_order()
> sage: bas = [L.structure()[1](b) for b in OO.basis()]
> sage: subOrderK = L.order(bas + [b*alpha for b in bas])
> ^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C
> }}}
> For some people {{{^C}}} does work, but in any case, there should be no
> long computation involved. We give a basis, so we should get an answer
> right away.
> Indeed, the following does work:
> {{{
> sage: Om = magma(L).MaximalOrder()
> }}}
>
> Since others cannot reproduce the {{{^C}}} problem, I'm marking this as
> an "enhancement" for speeding up order creation.
>
> See also
> [http://groups.google.com/forum/?fromgroups#!topic/sage-
> devel/MpPqbjAqol4]
> [http://ask.sagemath.org/question/1652/computing-maximal-orders-in-
> relative-extensions]
> [http://stackoverflow.com/questions/11850418/computing-maximal-orders-in-
> large-number-fields-with-sage]
New description:
{{{
sage: Qa12.<kappa12> = NumberField(x^14 - 26*x^13 + 325*x^12 - 2548*x^11 +
13832*x^10 - 54340*x^9 + 157118*x^8 - 333580*x^7 + 509366*x^6 - 534820*x^5
+ 354536*x^4 - 124852*x^3 + 15145*x^2 - 33514*x + 13)
sage: y = polygen(Qa12)
sage: L.<c> = Qa12.extension(y^2-kappa12)
sage: L.<alpha> = L.absolute_field()
sage: OO = Qa12.maximal_order()
sage: bas = [L.structure()[1](b) for b in OO.basis()]
sage: subOrderK = L.order(bas + [b*alpha for b in bas])
}}}
This hangs forever. Pressing CTRL-C (if it works, reportedly, it doesn't
always interrupt):
{{{
---------------------------------------------------------------------------
KeyboardInterrupt Traceback (most recent call
last)
<ipython-input-8-b8aed520adc1> in <module>()
----> 1 subOrderK = L.order(bas + [b*alpha for b in bas])
/mazur/release/merger/sage-5.10/local/lib/python2.7/site-
packages/sage/rings/number_field/number_field.pyc in order(self, *args,
**kwds)
6428 gens = map(self, gens)
6429 import sage.rings.number_field.order as order
-> 6430 return order.absolute_order_from_ring_generators(gens,
**kwds)
6431
6432 def vector_space(self):
/mazur/release/merger/sage-5.10/local/lib/python2.7/site-
packages/sage/rings/number_field/order.pyc in
absolute_order_from_ring_generators(gens, check_is_integral, check_rank,
is_maximal, allow_subfield)
1744 K = gens.universe()
1745 n = [x.absolute_minpoly().degree() for x in gens]
-> 1746 module_gens = monomials(gens, n)
1747 return absolute_order_from_module_generators(module_gens,
1748 check_integral=False, check_is_ring=False,
/mazur/release/merger/sage-5.10/local/lib/python2.7/site-
packages/sage/rings/monomials.pyc in monomials(v, n)
66 v = Sequence(v)
67 R = v.universe()
---> 68 return _monomials(v, R, n, 0)
/mazur/release/merger/sage-5.10/local/lib/python2.7/site-
packages/sage/rings/monomials.pyc in _monomials(gens, R, n, i)
26 nn = list(n)
27 del nn[i]
---> 28 v = monomials(w, nn)
29 k = len(v)
30 for _ in range(n[i]-1):
/mazur/release/merger/sage-5.10/local/lib/python2.7/site-
packages/sage/rings/monomials.pyc in monomials(v, n)
66 v = Sequence(v)
67 R = v.universe()
---> 68 return _monomials(v, R, n, 0)
/mazur/release/merger/sage-5.10/local/lib/python2.7/site-
packages/sage/rings/monomials.pyc in _monomials(gens, R, n, i)
26 nn = list(n)
27 del nn[i]
---> 28 v = monomials(w, nn)
29 k = len(v)
30 for _ in range(n[i]-1):
/mazur/release/merger/sage-5.10/local/lib/python2.7/site-
packages/sage/rings/monomials.pyc in monomials(v, n)
66 v = Sequence(v)
67 R = v.universe()
---> 68 return _monomials(v, R, n, 0)
/mazur/release/merger/sage-5.10/local/lib/python2.7/site-
packages/sage/rings/monomials.pyc in _monomials(gens, R, n, i)
26 nn = list(n)
27 del nn[i]
---> 28 v = monomials(w, nn)
29 k = len(v)
30 for _ in range(n[i]-1):
[...]
}}}
See also
[http://groups.google.com/forum/?fromgroups#!topic/sage-devel/MpPqbjAqol4]
[http://ask.sagemath.org/question/1652/computing-maximal-orders-in-
relative-extensions]
[http://stackoverflow.com/questions/11850418/computing-maximal-orders-in-
large-number-fields-with-sage]
--
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/14740#comment:3>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/groups/opt_out.