Add GF2 type for Galois field elements

- add `GF2` class in the `lalib.elements` sub-package
  implementing a typical Galois field with two elements
- the singleton objects `one` and `zero` are the concrete
  instances of the `GF2` type for the end users
- besides the typical Galois arithmetic, `one` and `zero`
  behave like the built-in numbers `1` and `0`
  and implement the `numbers.Rational` interface
- add exhaustive docstrings with usage examples
- add (unit) test cases with 100% coverage
This commit is contained in:
Alexander Hess 2024-09-18 18:04:35 +02:00
commit 3cecf0d989
Signed by: alexander
GPG key ID: 344EA5AB10D868E0
6 changed files with 1381 additions and 1 deletions

View file

@ -14,6 +14,7 @@ import xdoctest
"module",
[
"lalib",
"lalib.elements.gf2",
],
)
def test_docstrings(module):