LinearAlgebra[Modular][MatBasis] - compute Basis and Nullspace of vectors stored in the rows of a mod m Matrix
|
Calling Sequence
|
|
MatBasis(m, A, nrow, nullflag)
|
|
Parameters
|
|
m
|
-
|
modulus
|
A
|
-
|
mod m Matrix
|
nrow
|
-
|
number of rows containing Vectors on input
|
nullflag
|
-
|
boolean; indicates whether nullspace
|
|
|
|
|
Description
|
|
•
|
The MatBasis function computes a basis of the set of vectors in the first nrow rows of A. Optionally, a basis for the nullspace can also be computed. On successful completion, the number of rows in A containing vectors (labeled r) is returned (the dimension of the basis).
|
•
|
Computation of the basis does not require that m be a prime, but computation of the nullspace does. In some cases, it is possible to compute the nullspace with m composite. If this is not possible, the function returns an error indicating that the algorithm failed because m is composite.
|
•
|
This command is part of the LinearAlgebra[Modular] package, so it can be used in the form MatBasis(..) only after executing the command with(LinearAlgebra[Modular]). However, it can always be used in the form LinearAlgebra[Modular][MatBasis](..).
|
|
|
Examples
|
|
An example of a three dimensional basis and a two dimensional nullspace.
>
|
|
>
|
|
| (1) |
>
|
|
>
|
|
>
|
|
| (2) |
>
|
|
>
|
|
| (3) |
In the previous example, the first rows are the basis of the input vectors, and the remaining rows are the basis of the nullspace. Check that these are orthogonal.
>
|
|
| (4) |
Construct an example with a known 2-D nullspace.
>
|
|
>
|
|
| (5) |
Obtain the basis and nullspace.
>
|
|
>
|
|
| (6) |
Check orthogonality.
>
|
|
| (7) |
|
|
Download Help Document
Was this information helpful?