#12000: block_matrix over cyclotomics fails
------------------------------+---------------------------------------------
   Reporter:  vbraun          |          Owner:  jason, was
       Type:  defect          |         Status:  new       
   Priority:  major           |      Milestone:  sage-4.8  
  Component:  linear algebra  |       Keywords:            
Work_issues:                  |       Upstream:  N/A       
   Reviewer:                  |         Author:            
     Merged:                  |   Dependencies:            
------------------------------+---------------------------------------------
 Block matrix with blocks of size >40 fails because the cyclotomic matrix
 constructor does not check for `entries=None`:
 {{{
 sage: F = CyclotomicField(5)
 sage: block_matrix([[identity_matrix(F,41), identity_matrix(F,41)]])
 ---------------------------------------------------------------------------
 TypeError                                 Traceback (most recent call
 last)

 /home/vbraun/opt/sage-4.7.2.rc0/devel/sage-main/<ipython console> in
 <module>()

 /home/vbraun/Sage/sage/local/lib/python2.6/site-
 packages/sage/matrix/constructor.pyc in block_matrix(*args, **kwds)
    2600                 row = M
    2601             else:
 -> 2602                 row = row.augment(M)
    2603
    2604         # append row to final matrix

 /home/vbraun/Sage/sage/local/lib/python2.6/site-
 packages/sage/matrix/matrix1.so in sage.matrix.matrix1.Matrix.augment
 (sage/matrix/matrix1.c:8300)()

 /home/vbraun/Sage/sage/local/lib/python2.6/site-
 packages/sage/matrix/matrix1.so in sage.matrix.matrix1.Matrix.new_matrix
 (sage/matrix/matrix1.c:10920)()

 /home/vbraun/Sage/sage/local/lib/python2.6/site-
 packages/sage/matrix/matrix_space.pyc in __call__(self, entries, coerce,
 copy, rows)
     481                 return self.zero_matrix().__copy__()
     482             else:
 --> 483                 return self.__matrix_class(self, None,
 coerce=coerce, copy=copy)
     484
     485         if isinstance(entries, (list, tuple)) and len(entries) > 0
 and \

 /home/vbraun/Sage/sage/local/lib/python2.6/site-
 packages/sage/matrix/matrix_cyclo_dense.so in
 sage.matrix.matrix_cyclo_dense.Matrix_cyclo_dense.__init__
 (sage/matrix/matrix_cyclo_dense.cpp:5688)()

 /home/vbraun/Sage/sage/local/lib/python2.6/site-
 packages/sage/structure/parent.so in sage.structure.parent.Parent.__call__
 (sage/structure/parent.c:7504)()

 /home/vbraun/Sage/sage/local/lib/python2.6/site-
 packages/sage/structure/coerce_maps.so in
 sage.structure.coerce_maps.DefaultConvertMap_unique._call_
 (sage/structure/coerce_maps.c:3300)()

 /home/vbraun/Sage/sage/local/lib/python2.6/site-
 packages/sage/structure/coerce_maps.so in
 sage.structure.coerce_maps.DefaultConvertMap_unique._call_
 (sage/structure/coerce_maps.c:3203)()

 /home/vbraun/Sage/sage/local/lib/python2.6/site-
 packages/sage/rings/number_field/number_field.pyc in
 _element_constructor_(self, x)
    7035             return self._coerce_from_str(x)
    7036         else:
 -> 7037             return self._coerce_non_number_field_element_in(x)
    7038
    7039     # TODO:

 /home/vbraun/Sage/sage/local/lib/python2.6/site-
 packages/sage/rings/number_field/number_field.pyc in
 _coerce_non_number_field_element_in(self, x)
    5162         except (TypeError, AttributeError), msg:
    5163             pass
 -> 5164         raise TypeError, type(x)
    5165
    5166     def _coerce_from_str(self, x):

 TypeError: <type 'NoneType'>
 }}}

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12000>
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 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