Documentation

Complexity.Computability.Circuit.Rational.Generator

Rational hitting lists: the generator #

The generator evaluates the polynomial lifts of the certificate pencils at every point of a three-dimensional integer grid, keeps the points at which the normalizing matrix is invertible, and emits the normalized rational matrix tuples. For every admissible nonzero formula with at most s nodes, the certificate determinants are nonzero polynomials of bounded degree, so some grid point avoids all their zeros; the tuple emitted there gives the formula a defined invertible value. The parameters are polynomial in the number of variables and the node-count bound.

Main definitions #

Main results #

References #

Dimension after expanding the cyclotomic matrix representation over the rationals.

Instances For

    Entrywise regular representation, flattening and fixed row-major reindexing.

    Instances For

      The fixed lexicographic three-dimensional integer grid, encoded by Fin H.

      Instances For

        Every point x : Fin 3 → Fin H belongs to grid H.

        The polynomial lift is evaluated over the exact rational quotient.

        Instances For
          noncomputable def Cslib.Circuits.Rational.Generator.rationalLift (n N e : ℕ) (x : Fin 3 → ℕ) (i : Fin (n + 1)) :

          Expand a specialized lift as a rational matrix.

          Instances For
            noncomputable def Cslib.Circuits.Rational.Generator.tupleAt (n N e : ℕ) (x : Fin 3 → ℕ) :

            Normalize all variable matrices by the zeroth matrix.

            Instances For
              noncomputable def Cslib.Circuits.Rational.Generator.atPoint (n N e : ℕ) (x : Fin 3 → ℕ) :

              The filtering step tests only the zeroth lifted matrix, and receives no formula.

              Instances For
                noncomputable def Cslib.Circuits.Rational.Generator.output (n N e H : ℕ) :

                Collect the normalized tuples emitted at all grid points.

                Instances For
                  theorem Cslib.Circuits.Rational.Generator.integer_grid {K : Type u_1} [Field K] [CharZero K] (P : List (MvPolynomial (Fin 3) K)) (hP : ∀ p ∈ P, p ≠ 0) (d H : ℕ) (hd : ∀ p ∈ P, p.totalDegree ≤ d) (hH : P.length * d < H) :
                  ∃ (x : Fin 3 → Fin H), ∀ p ∈ P, (MvPolynomial.eval fun (i : Fin 3) => ↑(↑(x i) + 1)) p ≠ 0
                  theorem Cslib.Circuits.Rational.Generator.output_hits {n s N e H : ℕ} (hs : 1 ≤ s) (hN : 1 ≤ N) (hMN : CyclotomicRing.dimension e = N + 2 * (n + 1) ^ 3 * (2 * s + 1)) (hM : (2 * s + 1) * (2 * (n + 1) ^ 3 * (2 * s + 1)) < CyclotomicRing.dimension e) (hH : (s + 2) * (3 * (2 * s + 1) * CyclotomicRing.dimension e ^ 2) < H) :
                  Hits s (output n N e H)

                  The finite formula-independent list hits every admissible nonzero formula at a defined and invertible original-tree value.

                  The number n + 1 of matrices in a lifted tuple: one per variable, and the normalizing matrix.

                  Instances For

                    Rank parameter for formulas of the given node count.

                    Instances For

                      Dimension allowance in the rank expansion argument.

                      Instances For

                        Binary logarithm used to choose the next cyclotomic dimension.

                        Instances For

                          The least power of two strictly above the rank expansion threshold.

                          Instances For

                            Number of retained columns after the dimension allowance.

                            Instances For

                              Side length of the integer grid used for specialization.

                              Instances For

                                The rank-expansion threshold rankBound s * delta n s is positive.

                                ambientDimension n s is at most any power of two strictly above rankBound s * delta n s.

                                The truncation parameter truncation n s is at least 1.

                                ambientDimension n s is at most 16 * (n + s + 1) ^ 5.

                                theorem Cslib.Circuits.Rational.Parameters.polynomial_H (n s : ℕ) :
                                gridSize n s ≤ 49153 * (n + s + 1) ^ 17

                                The grid side length is polynomial in n + s + 1, for every n, including n = 0: the factor s + 2 is bounded by 2 * (n + s + 1).

                                The list with all parameters fixed by n and s.

                                Instances For
                                  theorem Cslib.Circuits.Rational.Generator.list_hits (n s : ℕ) (hs : 1 ≤ s) :
                                  Hits s (list n s)

                                  When 1 ≤ s, list n s hits all admissible nonzero formulas of node count at most s.

                                  The matrix dimension of list n s is at most 256 * (n + s + 1) ^ 10.

                                  theorem Cslib.Circuits.Rational.Generator.list_length_bound (n s : ℕ) :
                                  (list n s).tuples.length ≤ 49153 ^ 3 * (n + s + 1) ^ 51

                                  The number of tuples in list n s is at most 49153 ^ 3 * (n + s + 1) ^ 51.

                                  theorem Cslib.Circuits.Rational.Generator.algebraic_generator :
                                  ∃ (G : (n : ℕ) → ℕ → Output n), ∀ (n s : ℕ), 1 ≤ s → (G n s).dimension ≤ 256 * (n + s + 1) ^ 10 ∧ (G n s).tuples.length ≤ 49153 ^ 3 * (n + s + 1) ^ 51 ∧ Hits s (G n s)

                                  The algebraic hitting property and the polynomial list-cardinality bound.