49#define M4RI_DJB_BASE_SIZE 64
62 m4ri_die(
"malloc failed.\n");
73 m4ri_die(
"malloc failed.\n");
100 assert((target < z->nrows) &&
101 ((source < z->ncols) | (srctyp != source_source)) &&
102 ((source < z->nrows) | (srctyp != source_target)));
142 printf(
"%d x %d linear map in %d xors (cost: %.5f)\n", z->
nrows, z->
ncols, z->
length, save);
static void djb_push_back(djb_t *z, rci_t target, rci_t source, srctyp_t srctyp)
Definition: djb.h:99
static void djb_free(djb_t *m)
Definition: djb.h:83
void djb_apply_mzd(djb_t *z, mzd_t *W, const mzd_t *V)
W = m*V.
Definition: djb.c:147
srctyp_t
Specify source type of addition.
Definition: djb.h:26
djb_t * djb_compile(mzd_t *A)
Definition: djb.c:114
#define M4RI_DJB_BASE_SIZE
Definition: djb.h:49
static djb_t * djb_init(rci_t nrows, rci_t ncols)
Definition: djb.h:58
static void djb_info(const djb_t *z)
Definition: djb.h:140
int rci_t
Type of row and column indexes.
Definition: misc.h:72
int wi_t
Type of word indexes.
Definition: misc.h:80
Dense matrices over GF(2) represented as a bit field.
DJB's optimized linear maps mod 2.
Definition: djb.h:35
rci_t length
Definition: djb.h:41
rci_t ncols
Definition: djb.h:37
rci_t nrows
Definition: djb.h:36
wi_t allocated
Definition: djb.h:42
srctyp_t * srctyp
Definition: djb.h:40
rci_t * source
Definition: djb.h:39
rci_t * target
Definition: djb.h:38
Dense matrices over GF(2).
Definition: mzd.h:86