Hi all,

This is a sequel of my former question:

http://groups.google.com/group/sage-support/browse_thread/thread/ed74c71c01cb9f26/63a88bb12708c275?lnk=gst&q=fractional+ideal#63a88bb12708c275

I use SAGE 4.4.alpha0 (with Virtual Machine) and the online SAGE.
Note that the former contains PARI/GP 2.3.3 and the latter contains
PARI/GP 2.3.5.
I am now trying to decompose the fractional ideal (3) in the following
number field:

K.<a> = NumberField(x^6 + 9*x^5 - 8410*x^4 - 88580*x^3 + 18705368*x^2
+ 99820416*x - 12230355456)

In fact, what I exactly want to do is to find various residue fields
of this number field at primes above 3.

I also used

proof.number_field(False)

to avoid the Minkowski bound error.
When I used

K.primes_above(3),

I got the following error message (in both SAGEs):

***   Warning: precision too low for generators, not given.
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "_sage_input_28.py", line 10, in <module>
    exec compile(u'open("___code___.py","w").write("# -*- coding:
utf-8 -*-\\n" +
_support_.preparse_worksheet_cell(base64.b64decode("Sy5wcmltZXNfYWJvdmUoMyk="),globals())
+"\\n"); execfile(os.path.abspath("___code___.py"))
  File "", line 1, in <module>

  File "/tmp/tmpgLCFVa/___code___.py", line 3, in <module>
    exec compile(u'K.primes_above(_sage_const_3 )
  File "", line 1, in <module>

  File "/usr/local/sage2/local/lib/python2.6/site-packages/sage/misc/
displayhook.py", line 174, in displayhook
    print_obj(sys.stdout, obj)
  File "/usr/local/sage2/local/lib/python2.6/site-packages/sage/misc/
displayhook.py", line 142, in print_obj
    print >>out_stream, `obj`
  File "/usr/local/sage2/local/lib/python2.6/site-packages/sage/rings/
number_field/number_field_ideal.py", line 1259, in __repr__
    return "Fractional ideal %s"%self._repr_short()
  File "/usr/local/sage2/local/lib/python2.6/site-packages/sage/rings/
number_field/number_field_ideal.py", line 377, in _repr_short
    return '(%s)'%(', '.join(map(str, self.gens_reduced())))
  File "/usr/local/sage2/local/lib/python2.6/site-packages/sage/rings/
number_field/number_field_ideal.py", line 630, in gens_reduced
    dummy = self.is_principal(proof)
  File "/usr/local/sage2/local/lib/python2.6/site-packages/sage/rings/
number_field/number_field_ideal.py", line 839, in is_principal
    g = K(bnf.getattr('zk') * v[1])
  File "element.pyx", line 1431, in
sage.structure.element.RingElement.__mul__ (sage/structure/element.c:
11356)
  File "gen.pyx", line 9232, in sage.libs.pari.gen._pari_trap (sage/
libs/pari/gen.c:44342)
sage.libs.pari.gen.PariError: impossible (44)

Even I used pari commands in both SAGEs:

K_nf = gp(K.pari_nf()) ; K_nf
K_nf.idealprimedec(3)

Then I still got the error.

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "_sage_input_31.py", line 10, in <module>
    exec compile(u'open("___code___.py","w").write("# -*- coding:
utf-8 -*-\\n" +
_support_.preparse_worksheet_cell(base64.b64decode("S19uZi5pZGVhbHByaW1lZGVjKDMp"),globals())
+"\\n"); execfile(os.path.abspath("___code___.py"))
  File "", line 1, in <module>

  File "/tmp/tmpBRkZps/___code___.py", line 3, in <module>
    exec compile(u'K_nf.idealprimedec(_sage_const_3 )
  File "", line 1, in <module>

  File "/usr/local/sage2/local/lib/python2.6/site-packages/sage/
interfaces/expect.py", line 1408, in __call__
    return self._obj.parent().function_call(self._name, [self._obj] +
list(args), kwds)
  File "/usr/local/sage2/local/lib/python2.6/site-packages/sage/
interfaces/expect.py", line 1316, in function_call
    return self.new(s)
  File "/usr/local/sage2/local/lib/python2.6/site-packages/sage/
interfaces/expect.py", line 1097, in new
    return self(code)
  File "/usr/local/sage2/local/lib/python2.6/site-packages/sage/
interfaces/expect.py", line 1032, in __call__
    return cls(self, x, name=name)
  File "/usr/local/sage2/local/lib/python2.6/site-packages/sage/
interfaces/expect.py", line 1451, in __init__
    raise TypeError, x
TypeError: Error executing code in GP/PARI:
CODE:
        sage[25]=idealprimedec(sage[21],sage[24]);
GP/PARI ERROR:
  *** idealprimedec: precision too low in get_norm.

However, when I just use PARI/GP (version 2.3.4), the decomposition
works, even very fast.
PARI gave me the following:
[[3, [-2, 1, 1, 1, 1, -1]~, 1, 1, [2, 0, 0, 0, 2, 1]~], [3, [1, -1,
-1, 0,-1, 0]~, 2, 1, [1, 1, 1, 1, 2, 1]~], [3, [1, 1, 0, -1, 1, -1]~,
1, 1, [1, 2, 1,0, 0, 0]~], [3, [2821, 14, -20, -2, 0, -4]~, 1, 2, [-1,
-1, 1, 1, 0, -1]~]]

I wonder what happens here and want to find another method to avoid
this error..

Sincerely,

Chan-Ho

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org

Reply via email to