Rational hitting lists: polynomial-time parameters #
The parameters of the hitting-list generator are computed in polynomial time from the number of
variables n and the node-count bound s, both in unary. Every parameter is polynomial in
n + s + 1 (Cslib.Circuits.Rational.Parameters.polynomial_M,
Cslib.Circuits.Rational.Parameters.polynomial_H), so its unary encoding has polynomial length;
the later stages use these parameters as loop counts, dimensions and moduli. The rank bound, the
dimension allowance and the threshold rankBound s * delta n s are fixed polynomials. The
exponent is a binary logarithm of the threshold. The ambient dimension 2 ^ (exponent + 1) is the
power of two at the ceiling logarithm of the threshold plus one
(Parameters.ambientDimension_eq), and the cyclotomic degree is half of it. The truncation, the
grid size and the matrix dimension follow by unary arithmetic.
Each certificate is stated compositionally, for parameters computed in unary from an arbitrary
input, and registered with fun_prop.
Main definitions #
Cslib.Circuits.Rational.threshold: the rank expansion thresholdrankBound s * delta n s.Cslib.Circuits.Rational.generatorParameters: the parameters(truncation, exponent, ambientDimension, degree, gridSize, matrixDimension)of the generator.
Main results #
Cslib.Circuits.Rational.Parameters.ambientDimension_eq,Cslib.Circuits.Rational.Parameters.degree_eq: the ambient dimension and the cyclotomic degree in certifiable form.Cslib.Circuits.Rational.computableInPolyTime_exponent,Cslib.Circuits.Rational.computableInPolyTime_ambientDimension,Cslib.Circuits.Rational.computableInPolyTime_truncation,Cslib.Circuits.Rational.computableInPolyTime_gridSize,Cslib.Circuits.Rational.computableInPolyTime_matrixDimensionand their companions: unary certificates for every parameter.Cslib.Circuits.Rational.computableInPolyTime_generatorParameters: all parameters at once, from unary(n, s).Cslib.Circuits.Rational.computableInPolyTime_hittingList_dimension,Cslib.Circuits.Rational.computableInPolyTime_hittingList_dimension_binary: the common dimension of the hitting list, in unary and in binary.
References #
The rank expansion threshold: the ambient dimension is the least power of two above it.
Instances For
The ambient dimension is two to the ceiling logarithm of the threshold plus one.
The cyclotomic degree is half of the ambient dimension.
The common dimension of the hitting list is the generator's matrix dimension.
The number of matrices in a lifted tuple, in unary.
The rank bound, in unary.
The dimension allowance, in unary.
The rank expansion threshold, in unary.
The exponent, the binary logarithm of the threshold, in unary.
The ambient dimension, in unary, by repeated doubling up to the ceiling logarithm.
The cyclotomic degree, in unary.
The number of retained columns, in unary.
The grid side length, in unary.
The matrix dimension of the generator, in unary.
All generator parameters, in unary, from n and s in unary.
The common dimension of the hitting list, in unary, from n and s in unary.
The common dimension of the hitting list, in binary, from n and s in unary.