GF2 Gaussian elimination

This commit is contained in:
2026-01-16 19:27:16 +01:00
parent a45f29178a
commit f5d33ee418
4 changed files with 135 additions and 1 deletions

29
test/GF2test.hs Normal file
View File

@@ -0,0 +1,29 @@
module GF2test (run) where
import LinearAlgebra.GF2
( fromBools
, gaussianEliminationIndices
)
run :: IO ()
run = do
putStrLn "GF2 Gaussian elimination test"
let rowsBools =
[ [True, False, True]
, [False, True, True]
, [True, True, False]
, [True, True, True]
]
nCols = length (head rowsBools)
rowsBits = map fromBools rowsBools
let maybeIndices = gaussianEliminationIndices nCols rowsBits
case maybeIndices of
Nothing -> putStrLn "No combination found."
Just idxs -> putStrLn $ "Rows: " ++ show idxs
putStrLn "GF2 Test Done."

View File

@@ -1,4 +1,10 @@
module Main (main) where
import GF2test (run)
main :: IO ()
main = putStrLn "Test suite not yet implemented."
main = do
putStrLn "Running all tests"
GF2test.run
putStrLn "All tests done."