parent) |
column_module,
decomposition,
echelon_form,
image,
kernel_on,
row_module
Further documentation:
) |
Return the free module over the base ring spanned by the columns of this matrix.
[is_diagonalizable=False], [dual=False]) |
Returns the decomposition of the free module on which this matrix acts from the right, along with whether this matrix acts irreducibly on each factor. The factors are guaranteed to be sorted in the same way as the corresponding factors of the characteristic polynomial.
Let A be the matrix acting from the on the vector space V of
column vectors. Assume that A is square. This function
computes maximal subspaces W_1, ..., W_n corresponding to
Galois conjugacy classes of eigenvalues of A. More precisely,
let f(X) be the characteristic polynomial of A. This function
computes the subspace
, where g_i(X) is an
irreducible factor of f(X) and g_i(X) exactly divides f(X).
If the optional parameter is_diagonalizable is True, then we
let W_i = ker(g(A)), since then we know that ker(g(A)) =
.
If dual is True, also returns the corresponding decomposition of V under the action of the transpose of A. The factors are guarenteed to correspond.
OUTPUT: list - list of pairs (V,t), where V is a vector spaces and t is a bool, and t is True exactly when the charpoly of self on V is irreducible.
(optional) list - list of pairs (W,t), where W is a vector space and t is a bool, and t is True exactly when the charpoly of the transpose of self on W is irreducible.
[include_zero_rows=True]) |
Return the echelon form of this matrix over the integers.
This is a matrix over the base ring (a PID) which is, by definition, what is also called the Hermite normal form.
) |
Return the image of the homomorphism on rows defined by this matrix.
V, [poly=False], [check=None]) |
Return the kernel of self restricted to the invariant subspace V. The result is a vector subspace of V, which is also a subspace of the ambient space.
INPUT: V -- vector subspace check -- (optional) default: False poly -- (optional) default: None; if not None, compute instead the kernel of poly(self) on V. OUTPUT: a subspace
WARNING: This function does not check that V is in fact invariant under self, unless check is True (not the default).
) |
Return the free module over the base ring spanned by the rows of self.
sage: A = MatrixSpace(IntegerRing(), 2)([1,2,3,4]) sage: A.row_module() Free module of degree 2 and rank 2 over Integer Ring Echelon basis matrix: [1 0] [0 2]
See About this document... for information on suggesting changes.