Documentation

Complexity.Computability.Circuit.Rational.IntegralLift

Integer form of the regular lift #

The generator's rational matrices are regular representations of matrices over the cyclotomic field CyclotomicRing.R e. Every regular-representation entry of a cyclotomic monomial is 0 or ±1, so after clearing the common denominator 2 ^ (e + 1) each lifted matrix entry is an explicit signed sum of integer monomials. This file defines that integer formula, proves it agrees with the rational lift, and bounds its entries. The integer matrices are computable and feed the executable generator.

Main definitions #

Main results #

References #

theorem Cslib.Circuits.Rational.CyclotomicRing.rho_root_pow (e k : ℕ) (i j : Fin (degree e)) :
(rho e) (AdjoinRoot.root (modulus e) ^ k) i j = if (k + ↑j) % degree e = ↑i then (-1) ^ ((k + ↑j) / degree e) else 0

Every regular-representation entry of a cyclotomic monomial is 0 or ±1. This also gives an explicit integral computation with a division and remainder.

theorem Cslib.Circuits.Rational.CyclotomicRing.rho_character (e : ℕ) (a : ZMod (dimension e)) (i j : Fin (degree e)) :
(rho e) ((character e) a) i j = if (a.val + ↑j) % degree e = ↑i then (-1) ^ ((a.val + ↑j) / degree e) else 0

The signed coefficient of the cyclotomic regular representation.

Instances For

    Integer computation of the exact expanded Taylor-reversal matrix at t.

    Instances For

      The integer Taylor test matrix with discarded columns set to zero.

      Instances For
        theorem Cslib.Circuits.Rational.IntegralTest.coeff_bound (a : ℤ) (w M k j : ℕ) (hw : 1 ≤ w) (ha : |a| ≤ ↑w) (hk : k ≤ M) :
        |((Polynomial.X + Polynomial.C a) ^ k).coeff j| ≤ (2 * ↑w) ^ M
        theorem Cslib.Circuits.Rational.IntegralTest.full_bound (M : ℕ) (a t : ℤ) (w H : ℕ) (hw : 1 ≤ w) (hH : 1 ≤ H) (ha : |a| ≤ ↑w) (ht : |t| ≤ ↑H) (i j : Fin M) :
        |full M a t i j| ≤ ↑M * (2 * ↑w) ^ (2 * M) * ↑H ^ M
        theorem Cslib.Circuits.Rational.IntegralTest.padded_bound (M N : ℕ) (a t : ℤ) (w H : ℕ) (hw : 1 ≤ w) (hH : 1 ≤ H) (ha : |a| ≤ ↑w) (ht : |t| ≤ ↑H) (i j : Fin M) :
        |padded M N a t i j| ≤ ↑M * (2 * ↑w) ^ (2 * M) * ↑H ^ M
        theorem Cslib.Circuits.Rational.IntegralTest.full_cast {K : Type u_1} [Field K] (M : ℕ) (a t : ℤ) (i j : Fin M) :
        Polynomial.eval (↑t) (TestPolynomial.full M (↑a) i j) = ↑(full M a t i j)
        theorem Cslib.Circuits.Rational.IntegralTest.padded_cast {K : Type u_1} [Field K] (M N : ℕ) (a t : ℤ) (i j : Fin M) :
        Polynomial.eval (↑t) (TestPolynomial.padded M N (↑a) i j) = ↑(padded M N a t i j)
        theorem Cslib.Circuits.Rational.ThreeLift.eval_lift {K : Type u_1} [Field K] {d : ℕ} [NeZero d] (χ : AddChar (ZMod d) K) (R : Matrix (ZMod d) (ZMod d) (Polynomial K)) (x : Fin 3 → K) (i j : ZMod d) :
        (MvPolynomial.eval x) (lift χ R i j) = (↑d)⁻¹ * ∑ a : ZMod d, ∑ b : ZMod d, ∑ k : ZMod d, χ (-a * k) * Polynomial.eval (x 0) (R k (k - b)) * QuantumMatrices.weyl χ a b i j * x 1 ^ a.val * x 2 ^ b.val

        The fixed signed-monomial integer formula for M times a regular lift entry.

        Instances For
          theorem Cslib.Circuits.Rational.IntegralLift.entry_bound (e : ℕ) (T : Matrix (ZMod (CyclotomicRing.dimension e)) (ZMod (CyclotomicRing.dimension e)) ℤ) (p r : ℤ) (A H : ℕ) (hT : ∀ (i j : ZMod (CyclotomicRing.dimension e)), |T i j| ≤ ↑A) (hH : 1 ≤ H) (hp : |p| ≤ ↑H) (hr : |r| ≤ ↑H) (u v : ZMod (CyclotomicRing.dimension e)) (i j : Fin (CyclotomicRing.degree e)) :
          |entry e T p r u v i j| ≤ ↑(CyclotomicRing.dimension e) ^ 3 * ↑A * ↑H ^ (2 * CyclotomicRing.dimension e)

          Exact integer Taylor matrices, with the same fixed order of residues.

          Instances For

            The common-denominator-cleared regular matrices used in exact arithmetic.

            Instances For
              theorem Cslib.Circuits.Rational.Generator.U_cast (n N e : ℕ) (x : Fin 3 → ℕ) (a : Fin (n + 1)) :
              theorem Cslib.Circuits.Rational.Generator.U_bound (n N e H : ℕ) (x : Fin 3 → ℕ) (hH : 1 ≤ H) (hx : ∀ (l : Fin 3), x l ≤ H) (a : Fin (n + 1)) (i j : Fin (matrixDimension e)) :
              |integralLift n N e x a i j| ≤ ↑(CyclotomicRing.dimension e) ^ 4 * (2 * (↑n + 1)) ^ (2 * CyclotomicRing.dimension e) * ↑H ^ (3 * CyclotomicRing.dimension e)
              theorem Cslib.Circuits.Rational.Generator.scaled_normalization {d : ℕ} (A B : Mat d) (hA : Matrix.det A ≠ 0) (c : ℚ) (hc : c ≠ 0) :
              (c • A)⁻¹ * c • B = A⁻¹ * B
              theorem Cslib.Circuits.Rational.Generator.tupleAt_integer (n N e : ℕ) (x : Fin 3 → ℕ) (hz : Matrix.det (rationalLift n N e x 0) ≠ 0) (a : Fin n) :
              tupleAt n N e x a = ((integralLift n N e x 0).map ⇑(Int.castRingHom ℚ))⁻¹ * (integralLift n N e x a.succ).map ⇑(Int.castRingHom ℚ)
              theorem Cslib.Circuits.Rational.Generator.U_det_ne_zero (n N e : ℕ) (x : Fin 3 → ℕ) (hz : Matrix.det (rationalLift n N e x 0) ≠ 0) :
              (integralLift n N e x 0).det ≠ 0