17 releases
Uses old Rust 2015
0.4.0 | Feb 11, 2021 |
---|---|
0.3.2 | Aug 26, 2019 |
0.3.0 | Apr 2, 2019 |
0.2.2 | Mar 13, 2019 |
0.0.2 | Mar 23, 2018 |
#2354 in Algorithms
Used in lpn
545KB
13K
SLoC
Rust bindings for M4RI
M4RI is a C library that provides efficient implementations of binary matrix operations. This crate aims to expose those functions to Rust and provides a nice wrapper around matrices, vectors and operations on both.
References
Martin Albrecht and Gregory Bard. The M4RI Library. https://malb.bitbucket.io/m4ri
See also the references section of the M4RI docs here.
This was written in the context of:
Thom Wiggers. Solving LPN using Large Covering Codes. Master's Thesis Radboud University, 2018.
See also https://thomwiggers.nl/research/msc-thesis/
Optional features
serde
: Enable serialization- M4RI options:
m4rm_mul
: Usem4rm
as multiplication algorithmnaive_mul
: Use thenaive
strategystrassen_mul
: Use the Strassen algorithm
Windows support
You may currently experience issues trying to build this on Windows. Help would be welcome (See issue #6).
Releases
Releases are available with DOI:
Dependencies
~0.8–1.7MB
~36K SLoC