Construction of Matrix Algebras and their Elements
Construction of the Complete Matrix Algebra
MatrixAlgebra(S, n) : Rng, RngIntElt -> AlgMat
Construction of a Matrix
elt< R | L > : AlgMat, RngElt -> AlgMatElt
R ! Q : AlgMat, [ RngElt ] -> AlgMatElt
CambridgeMatrix(t, K, n, Q) : RngIntElt, FldFint, RngIntElt, [ ] -> AlgMatElt
CompanionMatrix(p) : RngPolElt -> AlgMatElt
DiagonalMatrix(R, Q) : AlgMat, [ RngElt ] -> AlgMatElt
MatrixUnit(R, i, j) : AlgMat, RngIntElt, RngIntElt -> AlgMatElt
Random(R) : AlgMat -> AlgMatElt
ScalarMatrix(R, t) : AlgMat, RngElt -> AlgMatElt
R ! 1 : AlgMat, RngIntElt -> AlgMatElt
R ! 0 : AlgMat, RngIntElt -> AlgMatElt
R ! t : AlgMat, RngIntElt -> AlgMatElt
Constructing a General Matrix Algebra
MatrixAlgebra<S, n | L> : Rng, RngIntElt, List -> AlgMat
Example AlgMat_Creation (H73E1)
Example AlgMat_Cambridge (H73E2)
The Invariants of a Matrix Algebra
R . i : AlgMat, RngIntElt -> AlgMatElt
BaseRing(R) : AlgMat -> Rng
Degree(R) : AlgMat -> RngIntElt
Generators(R) : AlgMat -> { AlgMatElt }
Generic(R) : AlgMat -> AlgMat
BaseModule(R, S) : AlgMat, Rng -> ModTup
NumberOfGenerators(R) : AlgMat -> { AlgMatElt }
Parent(a) : AlgMatElt -> AlgMat
Example AlgMat_Invariants (H73E3)
Construction of Subalgebras, Ideals and Quotient Rings
sub<R | L> : AlgMat, List -> AlgMat, Hom(Alg)
ideal<R | L> : AlgMat, List -> AlgMatIdeal
lideal<R | L> : AlgMat, List -> AlgMatIdeal
rideal<R | L> : AlgMat, List -> AlgMatIdeal
Example AlgMat_SubAlgebra (H73E4)
The Construction of Extensions and their Elements
The Construction of Direct Sums and Tensor Products
DirectSum(R, T) : AlgMat, AlgMat -> AlgMat
TensorProduct(A, B) : AlgMat, AlgMat -> AlgMat
Example AlgMat_Products (H73E5)
Construction of Direct Sums and Tensor Products of Elements
DirectSum(a, b) : AlgMatElt, AlgMatElt -> AlgMatElt
ExteriorSquare(a) : AlgMat -> AlgMatElt
SymmetricSquare(a) : AlgMatElt -> AlgMatElt
TensorProduct(a, b) : AlgMatElt, AlgMatElt -> AlgMatElt
Operations on Matrix Algebras
Centre(A) : AlgMat -> AlgMat
Centralizer(A, S) : AlgMat, AlgMat -> AlgMat
Changing Rings
ChangeRing(A, S) : AlgMat, Rng -> AlgMat, Map
ChangeRing(A, S, f) : AlgMat, Rng, Map -> AlgMat, Map
hom< A -> B | f > : AlgMat, AlgMat, Map -> Map
Elementary Operations on Elements
Arithmetic
a + b : AlgMatElt, AlgMatElt -> AlgMatElt
a + t : AlgMatElt, RngElt -> AlgMatElt
- a : AlgMatElt -> AlgMatElt
a - b : AlgMatElt, AlgMatElt -> AlgMatElt
a - t : AlgMatElt, RngElt -> AlgMatElt
a * b : AlgMatElt, AlgMatElt -> AlgMatElt
a * b : AlgMatElt, ModHomElt -> ModHomElt
a * b : ModHomElt, AlgMatElt -> ModHomElt
t * a : RngElt, AlgMatElt -> AlgMatElt
u * a : ModTupElt, AlgMatElt -> ModTupElt
a ^ n : AlgMatElt, RngIntElt -> AlgMatElt
NumberOfColumns(a) : AlgMatElt -> RngIntElt
NumberOfRows(a) : AlgMatElt -> RngIntElt
Comparison
a eq b : AlgMatElt, AlgMatElt -> BoolElt
a ne b : AlgMatElt, AlgMatElt -> BoolElt
Properties of Elements
IsDiagonal(a) : AlgMatElt -> BoolElt
IsMinusOne(a) : AlgMatElt -> BoolElt
IsOne(a) : AlgMatElt -> BoolElt
IsScalar(a) : AlgMatElt -> BoolElt
IsSymmetric(a) : AlgMatElt -> BoolElt
IsUnit(a) : AlgMatElt -> BoolElt
IsZero(a) : AlgMatElt -> BoolElt
Rank(a) : AlgMatElt -> RngIntElt
Determinant(a) : AlgMatElt -> RngElt
Trace(a) : AlgMatElt -> RngElt
Transpose(a) : AlgMatElt -> AlgMatElt
Order(a) : AlgMatElt -> RngIntElt
FactoredOrder(a) : AlgMatElt -> [ <RngIntElt, RngIntElt> ]
ProjectiveOrder(a) : AlgMatElt -> RngIntElt
FactoredProjectiveOrder(a) : AlgMatElt -> [ <RngIntElt, RngIntElt> ]
CharacteristicPolynomial(a: parameters) : AlgMatElt -> RngUPolElt
MinimalPolynomial(a) : AlgMatElt -> RngUPolElt
HessenbergForm(a) : AlgMatElt -> AlgMatElt
Adjoint(a) : AlgMatElt -> AlgMatElt
Eigenvalues(a) : AlgMatElt -> { <FldElt, RngIntElt> }
Eigenspace(a, e) : AlgMatElt, FldElt -> ModTup
Elements of M_n as Homomorphisms
Image(a) : AlgMatElt -> ModTup
Kernel(a) : AlgMatElt -> ModTup
RowNullSpace(a) : AlgMatElt -> ModTup
Elementary Operations on Subalgebras and Ideals
Bases
Dimension(R) : AlgMat -> RngIntElt
Basis(R) : AlgMat -> [ AlgMatElt ]
BasisElement(R, i) : AlgMat, RngIntElt -> AlgMatElt
Coordinates(R, X) : AlgMat, AlgMatElt -> [ RngElt ]
Intersection of Subalgebras
R meet T : AlgMat, AlgMat -> AlgMat
Membership and Equality
x in R : AlgMatElt, AlgMat -> BoolElt
x notin R : AlgMatElt, AlgMat -> BoolElt
R eq T : AlgMat, AlgMat -> BoolElt
R ne T : AlgMat, AlgMat -> BoolElt
Accessing and Modifying a Matrix
Indexing
a[i] : AlgMatElt, RngIntElt -> ModTupElt
a[i] := u : AlgMatElt, RngIntElt, RngElt -> AlgMatElt
a[i, j] : AlgMatElt, RngIntElt, RngIntElt -> RngElt
a[i, j] := t : AlgMatElt, RngIntElt, RngIntElt, RngElt -> AlgMatElt
ElementToSequence(a) : AlgMatElt -> [ RngElt ]
Extracting and Inserting Blocks
Submatrix(a, i, j, p, q) : AlgMatElt, RngIntElt, RngIntElt, RngIntElt, RngIntElt -> ModMatRngElt
InsertBlock(~a, b, i, j) : AlgMatElt, ModHomElt, RngIntElt, RngIntElt -> AlgMatElt
Joining Matrices
HorizontalJoin(X, Y) : ModMatRngElt, ModMatRngElt -> ModMatRngElt
HorizontalJoin(Q) : [ ModMatRngElt ] -> ModMatRngElt
VerticalJoin(X, Y) : ModMatRngElt, ModMatRngElt -> ModMatRngElt
VerticalJoin(Q) : [ ModMatRngElt ] -> ModMatRngElt
DiagonalJoin(X, Y) : ModMatRngElt, ModMatRngElt -> ModMatRngElt
DiagonalJoin(Q) : [ ModMatRngElt ] -> ModMatRngElt
Row and Column Operations
SwapRows(~a, i, j) : AlgMatElt, RngIntElt, RngIntElt ->
MultiplyRow(~a, u, j) : AlgMatElt, RngElt, RngIntElt ->
AddRow(~a, u, i, j) : AlgMatElt, RngElt, RngIntElt, RngIntElt ->
SwapColumns(~a, i, j) : AlgMatElt, RngIntElt, RngIntElt ->
MultiplyColumn(~a, u, i) : AlgMatElt, RngElt, RngIntElt ->
AddColumn(~a, u, i, j) : AlgMatElt, RngElt, RngIntElt, RngIntElt ->
Canonical Forms for Matrices over Euclidean Domains
EchelonForm(a) : AlgMatElt -> AlgMatElt, AlgMatElt
ElementaryDivisors(a) : AlgMatElt -> [RngElt]
HermiteForm(X) : AlgMatElt -> AlgMatElt, AlgMatElt
SmithForm(a) : AlgMatElt -> AlgMatElt, AlgMatElt, AlgMatElt
Example AlgMat_EchelonForm (H73E6)
Canonical Forms for Matrices over a Field
PrimaryRationalForm(a) : AlgMatElt -> AlgMatElt, AlgMatElt, [ <RngUPolElt, RngIntElt ]
JordanForm(a) : AlgMatElt -> AlgMatElt, AlgMatElt, [ <RngUPolElt, RngIntElt ]
RationalForm(a) : AlgMatElt -> AlgMatElt, AlgMatElt, [ RngUPolElt ]
PrimaryInvariantFactors(a) : AlgMatElt -> [ <RngUPolElt, RngIntElt ]
InvariantFactors(a) : AlgMatElt -> [ AlgPolElt ]
IsSimilar(a, b) : AlgMatElt, AlgMatElt -> BoolElt, AlgMatElt
Example AlgMat_ElementaryDivisors (H73E7)
Example AlgMat_CanonicalForms (H73E8)
Solutions of Systems of Linear Equations
IsConsistent(A, w) : ModMatRngElt, ModTupRng -> BoolElt, ModTupRngElt, ModTupRng
IsConsistent(A, W) : ModMatRngElt, [ ModTupRng ] -> BoolElt, [ ModTupRngElt ], ModTupRng
Solution(A, w) : ModMatRngElt, ModTupRng -> ModTupRngElt, ModTupRng
Solution(A, W) : ModMatRngElt, [ ModTupRng ] -> [ ModTupRngElt ], ModTupRng