Encoding-length bounds for the hitting lists #
Bounds on the length of the canonical binary encoding of the generated list. The normalized
matrices are U₀⁻¹ * Uₐ for integer matrices Uₐ with entries of absolute value at most
2 ^ b; by Cramer's rule each entry is a ratio of two integer determinants, and the
permutation-sum bound |det A| ≤ d! * B ^ d keeps both below 2 ^ (d * d + d * b + 1). Polynomial
bookkeeping in the parameters n and s then bounds the full output length by a fixed
polynomial of degree 104 in n + s + 1. The bounds hold for all n and s, including n = 0;
the source assumes 1 ≤ n, and covering n = 0 raises the grid-size coefficient from 24577 to
49153, so the constant outputConstant is larger than the source's.
Main definitions #
Rational.PolynomialBounds.logarithmic: an exponent bounding the integer lift entries.Rational.PolynomialBounds.logConstant,Rational.PolynomialBounds.bitConstant,Rational.PolynomialBounds.outputConstant: the fixed coefficients of the bounds.
Main results #
Rational.EncodingBounds.normalized_entry_ratio: Cramer's rule for normalized integer matrices.Rational.EncodingBounds.normalization_bit_bound: the encoding length of a normalized entry.Rational.EncodingBounds.output_length_le: the encoding length of a whole output.Rational.Generator.list_output_bound: the encoded hitting list has length at mostoutputConstant * (n + s + 1) ^ 104.
References #
Cramer's rule used by the generator, without any assumption on arithmetic algorithms.
Exponent bounding all denominator-cleared matrix entries by a power of 2.
Instances For
Fixed coefficient bounding the binary logarithm of integral entry magnitudes.
Instances For
Fixed coefficient in the bound on normalized rational entry encodings.
Instances For
Fixed coefficient in the bound on the complete binary output length. It differs from the
source's constant: the bound also covers n = 0, which raises the grid-size coefficient of
Parameters.polynomial_H from 24577 to 49153.