M4RI  20140914
solve.h
Go to the documentation of this file.
1 
10 #ifndef M4RI_SOLVE_H
11 #define M4RI_SOLVE_H
12 
13  /*******************************************************************
14  *
15  * M4RI: Linear Algebra over GF(2)
16  *
17  * Copyright (C) 2008 Jean-Guillaume.Dumas@imag.fr
18  *
19  * Distributed under the terms of the GNU General Public License (GPL)
20  *
21  * This code is distributed in the hope that it will be useful,
22  * but WITHOUT ANY WARRANTY; without even the implied warranty of
23  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
24  * General Public License for more details.
25  *
26  * The full text of the GPL is available at:
27  *
28  * http://www.gnu.org/licenses/
29  *
30  ********************************************************************/
31 
32 #include <m4ri/mzp.h>
33 #include <m4ri/mzd.h>
34 
48 int mzd_solve_left(mzd_t *A, mzd_t *B, int const cutoff, int const inconsistency_check);
49 
74 int mzd_pluq_solve_left (mzd_t const *A, rci_t rank,
75  mzp_t const *P, mzp_t const *Q,
76  mzd_t *B, int const cutoff, int const inconsistency_check);
77 
102 int _mzd_pluq_solve_left(mzd_t const *A, rci_t rank,
103  mzp_t const *P, mzp_t const *Q,
104  mzd_t *B, int const cutoff, int const inconsistency_check);
105 
123 int _mzd_solve_left(mzd_t *A, mzd_t *B, int const cutoff, int const inconsistency_check);
124 
140 mzd_t *mzd_kernel_left_pluq(mzd_t *A, int const cutoff);
141 
142 #endif // M4RI_SOLVE_H
int _mzd_solve_left(mzd_t *A, mzd_t *B, int const cutoff, int const inconsistency_check)
Solves A X = B with A and B matrices.
Definition: solve.c:120
Dense matrices over GF(2).
Definition: mzd.h:86
int rci_t
Type of row and column indexes.
Definition: misc.h:72
int mzd_pluq_solve_left(mzd_t const *A, rci_t rank, mzp_t const *P, mzp_t const *Q, mzd_t *B, int const cutoff, int const inconsistency_check)
Solves (P L U Q) X = B.
Definition: solve.c:37
int _mzd_pluq_solve_left(mzd_t const *A, rci_t rank, mzp_t const *P, mzp_t const *Q, mzd_t *B, int const cutoff, int const inconsistency_check)
Solves (P L U Q) X = B.
Definition: solve.c:50
mzd_t * mzd_kernel_left_pluq(mzd_t *A, int const cutoff)
Solve X for A X = 0.
Definition: solve.c:146
Permutations.
Definition: mzp.h:37
int mzd_solve_left(mzd_t *A, mzd_t *B, int const cutoff, int const inconsistency_check)
Solves A X = B with A and B matrices.
Definition: solve.c:30