#6462: Unpickling problem for orders in a number field
---------------------------+------------------------------------------------
 Reporter:  davidloeffler  |       Owner:  was       
     Type:  defect         |      Status:  new       
 Priority:  major          |   Milestone:  sage-4.1.1
Component:  number theory  |    Keywords:            
 Reviewer:                 |      Author:            
   Merged:                 |  
---------------------------+------------------------------------------------
 Unpickling elements of number field orders doesn't work:

 {{{
 sage: L = QuadraticField(-11,'a'); OL = L.maximal_order(); w = OL.0
 sage: loads(dumps(w))
 ---------------------------------------------------------------------------
 AttributeError                            Traceback (most recent call
 last)

 /home/david/.sage/temp/groke/24319/_home_david__sage_init_sage_0.py in
 <module>()

 /home/david/sage-4.1/local/lib/python2.6/site-
 packages/sage/structure/sage_object.so in sage.structure.sage_object.loads
 (sage/structure/sage_object.c:8076)()

 /home/david/sage-4.1/local/lib/python2.6/site-
 packages/sage/rings/number_field/number_field_element_quadratic.so in
 
sage.rings.number_field.number_field_element_quadratic.__make_NumberFieldElement_quadratic0
 (sage/rings/number_field/number_field_element_quadratic.cpp:2792)()

 /home/david/sage-4.1/local/lib/python2.6/site-
 packages/sage/rings/number_field/number_field_element_quadratic.so in
 
sage.rings.number_field.number_field_element_quadratic.NumberFieldElement_quadratic.__init__
 (sage/rings/number_field/number_field_element_quadratic.cpp:2897)()

 <type 'str'>: (<type 'exceptions.AttributeError'>,
 AttributeError("'AbsoluteOrder' object has no attribute '_is_maximal'",))
 }}}

 With orders in higher-degree fields, I get a different error message:


 sage: L = NumberField(x^3 - x - 1,'a'); OL = L.maximal_order(); w = OL.0
 sage: loads(dumps(w))
 ---------------------------------------------------------------------------
 AttributeError                            Traceback (most recent call
 last)

 /home/david/.sage/temp/groke/24319/_home_david__sage_init_sage_0.py in
 <module>()

 /home/david/sage-4.1/local/lib/python2.6/site-
 packages/sage/structure/sage_object.so in sage.structure.sage_object.loads
 (sage/structure/sage_object.c:8076)()

 /home/david/sage-4.1/local/lib/python2.6/site-
 packages/sage/rings/number_field/number_field_element.so in
 
sage.rings.number_field.number_field_element.__create__NumberFieldElement_version1
 (sage/rings/number_field/number_field_element.cpp:3696)()

 /home/david/sage-4.1/local/lib/python2.6/site-
 packages/sage/rings/number_field/number_field_element.so in
 sage.rings.number_field.number_field_element.OrderElement_absolute.__init__
 (sage/rings/number_field/number_field_element.cpp:20595)()

 AttributeError: ("'NumberField_absolute' object has no attribute
 'number_field'", <built-in function
 __create__NumberFieldElement_version1>, (Number Field in a with defining
 polynomial x^3 - x - 1, <type
 'sage.rings.number_field.number_field_element.OrderElement_absolute'>, 1))
 }}}
 (and the analogous thing for relative fields as well.)

 This is a real problem because I am working on a computation where I need
 to be able to save results to disc, and this result is preventing me from
 loading what I've saved. (Elements of the fields rather than the orders
 unpickle OK, but it's next to impossible to prevent elements of the orders
 creeping in somehow when I pickle stuff.)

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/6462>
Sage <http://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 post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to