Sum of the matrices a and b, where a and b belong to a common matrix algebra R.
Sum of the matrix a and the scalar matrix t * I.
Negation of the matrix a.
Difference of the matrices a and b, where a and b belong to the same matrix algebra R.
Difference of the matrix a and the scalar matrix t * I.
Product of the matrices a and b, where a and b belong to the same matrix algebra R.
Given a matrix a belonging to a subalgebra of M_n(S) and an element b of a submodule of Hom(R^((n)), R^((m))), construct the product of a and b as an element of Hom(R^((n)), R^((m))).
Given a matrix a belonging to a submodule of Hom(R^((n)), R^((m))) and an element b of a subalgebra of M_m(S), construct the product of a and b as an element of Hom(R^((n)), R^((m))).
Given an element a of the matrix algebra R, and an element t belonging to the coefficient ring S of R, form their scalar product.
Given an element u belonging to the S-module S^((n)) and an element a belonging to a subalgebra of M_n(S), form the element u * a of S^n.
If n is positive, form the n-th power of a; if n is zero, form the identity matrix; if n is negative, form the ( - n)-th power of the inverse of a.
The number of columns in the matrix a.
The number of rows in the matrix a.
True if the matrix a is equal to the matrix b, where a and b are elements of a common matrix algebra R.
True if the matrix a is not equal to the matrix b, where a and b are elements of a common matrix algebra R.
The functions given here test properties of matrices
See also the section in the Lattices chapter for a description
of the function IsPositiveDefinite and related functions.
IsDiagonal(a) : AlgMatElt -> BoolElt
True iff the element a belonging to the matrix algebra R is a diagonal matrix; i.e. the only non-zero entries are on the diagonal.
True iff the element a belonging to the matrix algebra R is the negation of the identity element for R.
True iff the element a belonging to the matrix algebra R is the identity element for R.
True iff the element a belonging to the matrix algebra R is a scalar matrix.
True iff the element a belonging to the matrix algebra R is a symmetric matrix; i.e. the transpose of a equals a.
True iff the matrix a belonging to the matrix algebra R is a unit.
True iff the element a belonging to the matrix algebra R is the zero element for R.
Return the rank of the element a belonging to the matrix algebra R.
MonteCarloSteps: RngIntElt Default:
Given a square matrix a over the ring R, return the determinant of a as an element of R. If the coefficient ring is the integer ring Z or the rational field Q then by default a modular method based on the Hadamard bound will be used which always yields a correct answer. The modular algorithm works by computing the determinant modulo successive primes and by then using the Chinese Remainder Theorem to find the determinant modulo the product of the primes. If the parameter MonteCarloSteps is set to a small positive integer s, then a probabilistic Monte Carlo modular technique will be employed in which the Hadamard bound will not be used but when the constructed residue stays the same for s steps then the algorithm terminates with the current residue as the result. The probability of this being wrong is non-zero but extremely slight if s is large enough (1 or 2 will usually suffice).
Given an element a of a subalgebra of M_n(S), return the trace of a as an element of S.
Given an element a of a subalgebra of M_n(S), return the transpose of a as an element of M_n(S).
Given an invertible matrix a over any commutative ring, determine the order of a. If a has infinite order, the function may become stuck indefinitely since it cannot prove such.
Given an invertible matrix a over a finite field, return the order of a in factored form.
Given an invertible matrix a over a finite field, return the projective order o of a and a scalar s such that a^o = sI.
Given an invertible matrix a over a finite field, return the projective order o of a in factored form and a scalar s such that a^o = sI.
Al: MonStg Default: "Modular"
Proof: BoolElt Default: true
The characteristic polynomial of the element a belonging to the algebra M_n(R), where R can be any commutative ring. The parameter Al may be used to specify the algorithm used. The algorithm Modular (the default) can be used for matrices over Z and Q---in such a case the parameter Proof can also be used to suppress proof of correctness. The algorithm Hessenberg, allowed for matrices over fields, works by first reducing the matrix to Hessenberg form. The algorithm Interpolation, allowed for matrices over Z and Q, works by evaluating the characteristic matrix of a at various points and then interpolating. The algorithm Trace, allowed for matrices over fields, works by calculating the traces of powers of a.
The minimal polynomial of the element a belonging to the module M_n(R), where R is a field or Z.
The Hessenberg form for the matrix a belonging to the algebra M_n(K), where the coefficient ring K must be a field. The form has zero entries above the super-diagonal. (This form is used in one of the characteristic polynomial algorithms.)
The adjoint of the matrix a belonging to the algebra M_n(K), where the coefficient ring K must be a ring with exact division whose characteristic must be zero or greater than the degree of a.
The eigenvalues of the matrix a returned as a set of pairs, each of which gives the value of a distinct eigenvalue and its multiplicity. The coefficient ring must have a polynomial roots algorithm.
The eigenspace of the matrix a, corresponding to the eigenvalue e, returned as a submodule of the base module for the parent algebra of a (i.e. the kernel of a - eI). If the ring element e is not a eigenvalue for the matrix a then the trivial space is returned.[Next] [Prev] [Right] [Left] [Up] [Index] [Root]