On Jan 8, 8:31 am, Vegard Lima <[email protected]> wrote:
> sage: C = random_matrix(ZZ, 10, 80, distribution='uniform')
> sage: C.ncols() - (C.right_kernel().dimension() + C.rank())
More specifically:
sage: C.right_kernel()
Free module of degree 80 and rank 80 over Integer Ring
Echelon basis matrix:
80 x 80 dense matrix over Rational Field
sage: C.right_kernel_matrix()
80 x 80 dense matrix over Integer Ring
sage: C.right_kernel_matrix().rank()
70
sage: C._right_kernel_matrix_over_domain()
('computed-smith-form', 70 x 80 dense matrix over Integer Ring)
Note a few things:
- The right kernel is a Z-module with a basis matrix over Q.
- The right kernel matrix has extra rows
- the last routine does compute the right thing. A cursory reading of
the code makes me believe that right_kernel would ultimately rely on
_right_kernel_matrix_over_domain, but evidently it doesn't.
--
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-support
URL: http://www.sagemath.org