Added field sizes of 6 and 64 bits

This commit is contained in:
Ethan L. Miller 2023-08-07 13:46:10 -07:00
parent 5aaa3e7361
commit 701b9c836d

View File

@ -115,8 +115,8 @@ class GaloisFieldLog:
There only needs to be one instantiation of the field for a given set of parameters,
but elements from different field instances with the same parameters may be mixed.
'''
field_widths = (4, 8, 12, 16)
poly_defaults = {4: 0x13, 8: 0x11d, 12:0x1053, 16: 0x1100b}
field_widths = (4, 6, 8, 12, 16)
poly_defaults = {4: 0x13, 6: 0x43, 8: 0x11d, 12:0x1053, 16: 0x1100b}
multiply_test_size = 10000
def __init__ (self, bits, primitive_polynomial = None, repr_prefix = 'G', alpha = 1):
'''
@ -192,8 +192,8 @@ class GaloisFieldDirect:
There only needs to be one instantiation of the field for a given set of parameters,
but elements from different field instances with the same parameters may be mixed.
'''
field_widths = (4, 8, 12, 16, 32)
poly_defaults = {4: 0x13, 8: 0x11d, 12:0x1053, 16: 0x1100b, 32: 0x1000000c5}
field_widths = (4, 6, 8, 12, 16, 32, 64)
poly_defaults = {4: 0x13, 6: 0x43, 8: 0x11d, 12:0x1053, 16: 0x1100b, 32: 0x1000000c5, 64: 0x1000000000000001b}
max_test_size = 5000
def __init__ (self, bits, primitive_polynomial = None, repr_prefix = 'G', alpha = 1):
'''