- Introduction
- Construction of Matrix Algebras and their Elements
- Construction of the Complete Matrix Algebra
- Construction of a Matrix
- elt< R | L > : AlgMat, RngElt -> AlgMatElt
- R ! Q : AlgMat, [ RngElt ] -> AlgMatElt
- CambridgeMatrix(t, K, n, Q) : RngIntElt, FldFin, RngIntElt, [ ] -> AlgMatElt
- CompanionMatrix(p) : RngUPolElt -> 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
- The Invariants of a Matrix Algebra
- Construction of Subalgebras, Ideals and Quotient Rings
- The Construction of Extensions and their Elements
- Operations on Matrix Algebras
- Changing Rings
- ChangeRing(A, S) : AlgMatV, Rng -> AlgMat, Map
- ChangeRing(A, S, f) : AlgMatV, 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, Mtrx -> Mtrx
- a * b : Mtrx, AlgMatElt -> Mtrx
- t * a : RngElt, AlgMatElt -> AlgMatElt
- u * a : ModTupRngElt, AlgMatElt -> ModTupElt
- a ^ n : AlgMatElt, RngIntElt -> AlgMatElt
- NumberOfColumns(a) : AlgMatElt -> RngIntElt
- NumberOfRows(a) : AlgMatElt -> RngIntElt
- Predicates
- Elements of Mn as Homomorphisms
- Elementary Operations on Subalgebras and Ideals
- 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) : Mtrx, RngIntElt, RngIntElt, RngIntElt, RngIntElt -> Mtrx
- InsertBlock(~a, b, i, j) : Mtrx, Mtrx, RngIntElt, RngIntElt -> Mtrx
- Joining Matrices
- 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
- Canonical Forms for Matrices over Euclidean Domains
- 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 (H90E7)
- Example AlgMat_CanonicalForms (H90E8)
- Diagonalising Commutative Algebras over a Field
- 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
- Presentations for Matrix Algebras
- Bibliography
V2.28, 13 July 2023