plll
1.0
|
Basic linear algebra algorithms. More...
Go to the source code of this file.
Namespaces | |
plll | |
Contains the plll library. | |
plll::linalg | |
Contains the matrix and vector library as long as other linear algebra functionality. | |
Functions | |
Linear algebra over rationals and integers. | |
unsigned | plll::linalg::hnf (math_matrix< arithmetic::Integer > &A) |
Computes the Hermite Normal Form (HNF) of the given matrix A by applying row operations. More... | |
unsigned | plll::linalg::hnf (math_matrix< arithmetic::Integer > &A, math_matrix< arithmetic::Integer > &T) |
Computes the Hermite Normal Form (HNF) of the given matrix A by applying row operations, together with a transformation matrix T . More... | |
arithmetic::Integer | plll::linalg::det (const math_matrix< arithmetic::Integer > &A) |
Computes the determinant of an integer matrix A . More... | |
math_matrix< arithmetic::Integer > | plll::linalg::solveUniqInt (const math_matrix< arithmetic::Integer > &A, const math_matrix< arithmetic::Integer > &w, const arithmetic::Integer &startPrime=arithmetic::Integer()) |
Assumes that A is a square matrix and that the equation A * res == w has a unique solutions in the integers. Returns the. More... | |
void | plll::linalg::invert (math_matrix< arithmetic::Integer > &inverse, const math_matrix< arithmetic::Integer > &A, const arithmetic::Integer &startPrime=arithmetic::Integer()) |
Assumes that A is invertible. Inverts the matrix A and stores the result in inverse . More... | |
std::pair< math_colvector < arithmetic::Integer > , arithmetic::Integer > | plll::linalg::solve (const math_matrix< arithmetic::Integer > &A, const math_colvector< arithmetic::Integer > &b) |
Solves the linear system A * x == b over the rationals. More... | |
math_colvector < arithmetic::Integer > | plll::linalg::solveInt (const math_matrix< arithmetic::Integer > &A, const math_colvector< arithmetic::Integer > &w) |
Assumes that the linear system A * v == w has a solution in the integers. Finds this solution. More... | |
math_matrix< arithmetic::Integer > | plll::linalg::kernel (const math_matrix< arithmetic::Integer > &A) |
Computes a -basis of the right-kernel of A . More... | |
Basic linear algebra algorithms.
This header provides basic linear algebra algorithms over plll
integers (plll::arithmetic::Integer
), such as solving systems of equations, computing determinants and Hermite Normal Form.
Definition in file linalg.hpp.