m4ri-rust

Crates.iom4ri-rust
lib.rsm4ri-rust
version0.4.0
sourcesrc
created_at2018-03-22 15:47:46.272285
updated_at2021-02-11 10:12:25.967486
descriptionM4RI-based boolean linear algebra
homepage
repositoryhttps://github.com/thomwiggers/m4ri-rust
max_upload_size
id56903
size36,361
Thom Wiggers (thomwiggers)

documentation

README

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: Use m4rm as multiplication algorithm
    • naive_mul: Use the naive strategy
    • strassen_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:

DOI

Commit count: 155

cargo fmt