#10765: Obliterate sage/matrix/misc.pyx
------------------------------+---------------------------------------------
   Reporter:  rbeezer         |       Owner:  jason, was
       Type:  task            |      Status:  new       
   Priority:  major           |   Milestone:  sage-4.7  
  Component:  linear algebra  |    Keywords:            
     Author:                  |    Upstream:  N/A       
   Reviewer:                  |      Merged:            
Work_issues:                  |  
------------------------------+---------------------------------------------
 Header of {{{sage/matrix/misc.py}}} says:

 {{{
 NOTE: The whole problem of avoiding circular imports -- the reason for
 existence of this file -- is now a non-issue, since some bugs in
 Cython were fixed.  Probably all this code should be moved into the
 relevant classes and this file deleted.
 }}}

 So I did.  After a suitable deprecation period, the file can be
 obliterated.  Here's the overview:

 Functions leaving {{{sage/matrix/misc.py}}}.  Originals have all been
 deprecated.

   * {{{cmp_pivots}}}[[BR]]
   Existing duplicate already existed in {{{matrix/matrix2.pyx}}}.

   * {{{hadamard_row_bound_mpfr}}}[[BR]]
   Moved to {{{matrix/matrix2.pyx}}} near where it was called, right by
 another similar helper function.  Converted to an underscore method,
 therefore.  Already has protection on base ring of the matrix (RR).

   * {{{matrix_integer_sparse_rational_reconstruction}}}[[BR]]
   Moved into content of
 
{{{sage.matrix.matrix_integer_sparse.Matrix_integer_sparse.rational_reconstruction}}}
 which was just a one-line stub calling the function from
 {{{sage/matrix/misc.pyx}}}.

   * {{{matrix_integer_dense_rational_reconstruction}}}[[BR]]
   Moved into content of
 
{{{sage.matrix.matrix_integer_dense.Matrix_integer_dense.rational_reconstruction}}}
 which was just a one-line stub calling the function from
 {{{sage/matrix/misc.pyx}}}.  Adjusted a call in {{{matrix_cyclo_dense}}}
 to call this new method.

   * {{{matrix_rational_echelon_form_multimodular}}}[[BR]]
   "Works" for sparse and dense matrices (see MAX_MODULUS) so added this to
 matrix2.pyx class as
 {{{sage.matrix.matrix2.Matrix._echelon_form_multimodular_rational}}}.
 Added protection to ensure base ring is rationals.

 Almost all code changes are just to fit into new locations.  A bit of
 documentation clean-up where needed.

 This passes all tests, but should be reviewed by somebody with significant
 Cython and/or {{{sage/matrix}}} experience.

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