M4RIE  0.20120415
 All Data Structures Files Functions Variables Macros Groups Pages
strassen.h
Go to the documentation of this file.
1 
7 #ifndef M4RIE_STRASSEN_H
8 #define M4RIE_STRASSEN_H
9 
10 /******************************************************************************
11 *
12 * M4RIE: Linear Algebra over GF(2^e)
13 *
14 * Copyright (C) 2010 Martin Albrecht <martinralbrecht@googlemail.com>
15 *
16 * Distributed under the terms of the GNU General Public License (GEL)
17 * version 2 or higher.
18 *
19 * This code is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22 * General Public License for more details.
23 *
24 * The full text of the GPL is available at:
25 *
26 * http://www.gnu.org/licenses/
27 ******************************************************************************/
28 
44 mzed_t *mzed_mul_strassen(mzed_t *C, const mzed_t *A, const mzed_t *B, int cutoff);
45 
61 mzed_t *mzed_addmul_strassen(mzed_t *C, const mzed_t *A, const mzed_t *B, int cutoff);
62 
79 mzed_t *_mzed_mul_strassen(mzed_t *C, const mzed_t *A, const mzed_t *B, int cutoff);
80 
96 mzed_t *_mzed_addmul_strassen(mzed_t *C, const mzed_t *A, const mzed_t *B, int cutoff);
97 
108 rci_t _mzed_strassen_cutoff(const mzed_t *C, const mzed_t *A, const mzed_t *B);
109 
110 #endif //M4RIE_STRASSEN_H