witness_degree¶
- cryptographic_estimators.MQEstimator.witness_degree.quadratic_system(n: int, m: int, q=None)¶
Returns the witness degree for a quadratic system.
- Parameters:
n (int) – The number of variables.
m (int) – The number of polynomials.
q (Optional[int]) – The order of the finite field (default is None).
Examples
>>> from cryptographic_estimators.MQEstimator import witness_degree >>> witness_degree.quadratic_system(10, 15) 5 >>> witness_degree.quadratic_system(10, 15, q=2) 4 >>> witness_degree.quadratic_system(15, 15, q=7) 12
- cryptographic_estimators.MQEstimator.witness_degree.semi_regular_system(n: int, degrees: list[int], q=None)¶
Returns the witness degree for a semi-regular system.
- Parameters:
n (int) – The number of variables.
degrees (list[int]) – A list of integers representing the degree of the polynomials.
q (int, optional) – The order of the finite field. Defaults to None.
Examples
>>> from cryptographic_estimators.MQEstimator import witness_degree >>> witness_degree.semi_regular_system(10, [2]*15) 5 >>> witness_degree.semi_regular_system(10, [2]*15, q=2) 4