sagemath / sage

Main repository of SageMath
https://www.sagemath.org
Other
1.35k stars 460 forks source link

Obliterate sage/matrix/misc.pyx #10765

Closed 1d7ec08f-60ae-4512-91a6-8324c06eab9f closed 1 year ago

1d7ec08f-60ae-4512-91a6-8324c06eab9f commented 13 years ago

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.

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.

CC: @williamstein @robertwb

Component: linear algebra

Author: Rob Beezer

Issue created by migration from https://trac.sagemath.org/ticket/10765

1d7ec08f-60ae-4512-91a6-8324c06eab9f commented 13 years ago
comment:1

Attachment: trac_10765-matrix-misc-routines.patch.gz

Two questions for veterans of the matrix code:

  1. Should the new _echelon_form_multimodular_rational in matrix2.py be an underscore method (which is what was done)?

  2. Header of misc.py still has a stanza about mod_int and MOD_INT_OVERFLOW. I'm guessing it should follow the multimodular echelon form into the top of matrix2.pyx but am not certain. Advice?

1d7ec08f-60ae-4512-91a6-8324c06eab9f commented 13 years ago

Author: Rob Beezer

1d7ec08f-60ae-4512-91a6-8324c06eab9f commented 13 years ago
comment:2

This will not apply on 4.7.alpha1, and will rot further after #10752 goes in, so I'm going to orphan it for now.