#11595: Update exact eigenspace routines
------------------------------+---------------------------------------------
   Reporter:  rbeezer         |          Owner:  jason, was  
       Type:  enhancement     |         Status:  needs_review
   Priority:  minor           |      Milestone:  sage-4.7.2  
  Component:  linear algebra  |       Keywords:              
Work_issues:                  |       Upstream:  N/A         
   Reviewer:                  |         Author:  Rob Beezer  
     Merged:                  |   Dependencies:              
------------------------------+---------------------------------------------
Changes (by rbeezer):

  * status:  needs_info => needs_review


Old description:

> This patch overhauls the generic code for eigenspaces of exact matrices.
>
> 1.  Removed plain `eigenspaces()`, which was deprecated 3 years ago.
> This required three replacements by `eigenspaces_left()` in code outside
> the `sage/matrix` directory.
>
> 2.  Right eigenspaces were not being cached.  This is fixed by explicity
> performning the caching in the method before working on the transpose.
>
> 3.  Warning about inexact rings have been removed and replaced by
> exceptions.  These exceptions, and the documentation, suggest the
> eigenmatrix routines for RDF/CDF matrices where accuracy and speed should
> be much better (or code for symbolic matrices).
>
> 4.  Documentation has been improved.
>
> 5.  Only about 4 very minor changes were required outside of the matrix
> code to make doctests pass.
>
> 6.  If basis matrices of eigenspaces over QQbar are hanging, then #11544
> might need to be a dependency.  Strictly speaking it is not required to
> build, but could be needed to pass doctests.
>
> 7.  One change in behavior - the new `format` command, and its default
> value of "all".  This will cause eigenspaces of matrices over the
> rationals formed with algebraic numbers from `QQbar`.  This is consistent
> with how the `eigenvalues()` method behaves for rational matrices.  When
> it is not possible to compute eigenvalues this way, the failure is
> graceful and suggests the `format='galois'` option.  This required just
> one change outside of the eigen-stuff code (eigenspaces of graphs).  See
> discussion at:
> http://groups.google.com/group/sage-
> devel/browse_thread/thread/c67266a5581abff9/
>
> '''Apply''':
>   1. [attachment:trac_11595-exact-eigenspaces.patch]

New description:

 This patch overhauls the generic code for eigenspaces of exact matrices.

 1.  Removed plain `eigenspaces()`, which was deprecated 3 years ago.  This
 required three replacements by `eigenspaces_left()` in code outside the
 `sage/matrix` directory.

 2.  Right eigenspaces were not being cached.  This is fixed by explicity
 performning the caching in the method before working on the transpose.

 3.  Warning about inexact rings have been removed and replaced by
 exceptions.  These exceptions, and the documentation, suggest the
 eigenmatrix routines for RDF/CDF matrices where accuracy and speed should
 be much better (or code for symbolic matrices).

 4.  Documentation has been improved.

 5.  Only about 4 very minor changes were required outside of the matrix
 code to make doctests pass.

 6.  If basis matrices of eigenspaces over QQbar are hanging, then #11544
 might need to be a dependency.  Strictly speaking it is not required to
 build, but could be needed to pass doctests.

 7.  One change in behavior - the new `format` command, and its default
 value of "all".  This will cause eigenspaces of matrices over the
 rationals formed with algebraic numbers from `QQbar`.  This is consistent
 with how the `eigenvalues()` method behaves for rational matrices.  When
 it is not possible to compute eigenvalues this way, the failure is
 graceful and suggests the `format='galois'` option.  This required just
 one change outside of the eigen-stuff code (eigenspaces of graphs).  See
 discussion at:
 http://groups.google.com/group/sage-
 devel/browse_thread/thread/c67266a5581abff9/

 '''Apply''':
   1. [attachment:trac_11595-exact-eigenspaces.patch]
   1. [attachment:trac_11595-exact-eigenspaces-format-v1.patch]

--

Comment:

 "v1 format" patch is ready to go - documented and tested.  Apply on top of
 the main patch.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11595#comment:10>
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