#11248: SVD matrix decomposition may return a non-invertible "unitary" matrix
------------------------------+---------------------------------------------
   Reporter:  rbeezer         |          Owner:  jason, was
       Type:  defect          |         Status:  new       
   Priority:  major           |      Milestone:  sage-4.7  
  Component:  linear algebra  |       Keywords:            
Work_issues:                  |       Upstream:  N/A       
   Reviewer:                  |         Author:            
     Merged:                  |   Dependencies:            
------------------------------+---------------------------------------------

Comment(by rbeezer):

 Samuel,

 Here's something you could try to see how prevalent this problem is.  Copy
 this command and just run it repeatedly in Sage, with an up-arrow to get
 it back from the history.  If it prints `False`, then the matrix it prints
 is a failure for the SVD.

 If failures are rare, you can capture the matrix causing it.

 If you get lots of failures then maybe reduce the dimensions (4 and 8)
 down to something even smaller to find a minimal example.

 {{{
 A = (random_matrix(ZZ, 4, 8) + I*random_matrix(ZZ, 4, 8)); B =
 A.change_ring(CDF); U,S,V = B.SVD(); A; print; (U.is_unitary() and
 V.is_unitary())
 }}}

 I'm going to try to write a pure numpy version of this.  But Easter Dinner
 first, I think.

 Rob

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