apply in-place backward substitution from an upper triangular mod m Matrix to a mod m Matrix or Vector
BackwardSubstitute(m, A, B)
mod m upper triangular Matrix
mod m Matrix or Vector to which to apply backward substitution
The BackwardSubstitute function applies the backward substitution described by the upper triangular part of the square mod m Matrix A to the mod m Matrix or Vector B.
Note: It is assumed that A is in upper triangular form, or that only the upper triangular part is relevant, as the lower triangular part of A is ignored.
The mod m Matrix or Vector B must have the same number of rows as there are columns of A.
Application of backward substitution requires that m is a prime, but in some cases it can be computed when m is composite. In cases where it cannot be computed for m composite, a descriptive error message is returned.
The BackwardSubstitute function is most often used in combination with LUDecomposition, and is used in LUApply.
This command is part of the LinearAlgebra[Modular] package, so it can be used in the form BackwardSubstitute(..) only after executing the command with(LinearAlgebra[Modular]). However, it can always be used in the form LinearAlgebra[Modular][BackwardSubstitute](..).
Construct and solve an upper triangular system.
p ≔ 97
A ≔ Mod⁡p,Matrix⁡4,4,i,j→ifi≤jthenrand⁡else0end if,integer:
B ≔ Mod⁡p,Matrix⁡4,2,i,j→rand⁡,integer:
X ≔ Copy⁡p,B:
Upper triangular with floats.
A ≔ Mod⁡p,Matrix⁡4,4,i,j→ifi≤jthenrand⁡else0end if,float:
B ≔ Mod⁡p,Vector[column]⁡4,i→rand⁡,float:
Download Help Document
What kind of issue would you like to report? (Optional)
Thank you for submitting feedback on this help document. Your feedback will be used
to improve Maple's help in the future.