rng/code_tests/gen_matrix_tests.py

18 lines
438 B
Python

import numpy as np
import galois
def matrix_to_string(matrix):
return ''.join(''.join(str(bit) for bit in row) for row in matrix)
GF2 = galois.GF(2)
np.random.seed(12487812)
for _ in range(180):
mat = np.random.randint(0, 2, (10, 10), dtype=np.uint8)
mat_gf2 = GF2(mat)
rank = np.linalg.matrix_rank(mat_gf2) # rank over GF(2)
matrix_str = matrix_to_string(mat)
print(f'bmatrixtest("{matrix_str}", {rank});')