anchor.diff:      
       return
     end
  -
  -
  -
  -
  +  
  +  
  +  
     ! stage a from the paper, with the orthonormalization step
     subroutine randsvd_stage_a(m, n, k, q, a, y, u, omega, work, lwork, info)
       ! in/out
  
positive.code:   
    contains
    
    subroutine randsvd(method, jobu, jobvt, m, n, a, k, q, s, u, vt, info)
      ! in/out
      character*1         method, jobu, jobvt
  
negative.code:     
      return
    end
    
    
    
    subroutine randsvd_subspaceiter(m, n, k, q, a, u, y, tau, work, lwork, info)
      ! in/out
      integer :: m, n, k, q, lwork, info
      double precision :: a(*), u(*), y(*), tau(*), work(*)
      ! local
      
      
      ! twy_j = a^t * q_j-1
  