GF2 is a C++ library which maintains the following algebraic structures over GF(2):
WW
— binary words of arbitrary finite length;ZZ
— binary words as unsigned integers;MP
— multivariate polynomials over GF(2);MI
— ideals in multivariate polynomials rings over GF(2);Func
— various functions on binary words (including Boolean and vectorial Boolean).
GF2 extensively uses C++ templates.
mkdir build
cd build
cmake [-DCMAKE_BUILD_TYPE={Release|Debug|Coverage|ASan|ASanDbg|MemSan|MemSanDbg|Check}] ..
make
[make test]
[make install]
Build types (Release
by default):
Debug
— for debugging;Coverage
— test coverage;ASan
,ASanDbg
— address sanitizer;MemSan
,MemSanDbg
— memory sanitizer;Check
— strict compile rules.
GF2 is released under the terms of the MIT License. See LICENSE for more information.