Documentation

MIPRE.Background.LIDT.MIPStarRE.LDT.ExpansionHypercubeGraph.Defs.Fourier

Section 7 hypercube graph: Fourier basis #

Additive characters and the Fourier basis of ℂ^{F_q^m} used to diagonalize the hypercube adjacency matrix K.

References #

Fourier analysis on the hypercube F_q^m #

The Fourier basis of ℂ^{F_q^m} consists of the character vectors φ_α(u) = (1/√M) · ω^{⟨u, α⟩} for α ∈ F_q^m, where ω = exp(2πi/q) and ⟨u, α⟩ = ∑ᵢ uᵢ · αᵢ (mod q).

These are eigenvectors of the adjacency matrix K with known eigenvalues (prop:eigenvectors in the paper).

noncomputable def MIPStarRE.LDT.ExpansionHypercubeGraph.addCharFq (params : Parameters) (a : Fq params) :

The additive character χ_q : F_q → ℂ sending a ↦ exp(2πi · a / q).

Equations
Instances For

    The dot product ⟨u, α⟩ = ∑ᵢ uᵢ · αᵢ in F_q, computed via natural number arithmetic and reduced mod q.

    Equations
    Instances For
      noncomputable def MIPStarRE.LDT.ExpansionHypercubeGraph.fourierBasisState (params : Parameters) (α : Point params) :
      Point params

      The Fourier basis vector φ_α : Point params → ℂ, defined by φ_α(u) = (1/√M) · exp(2πi ⟨u, α⟩ / q).

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        noncomputable def MIPStarRE.LDT.ExpansionHypercubeGraph.dotProductZMod (params : Parameters) (u α : Point params) :
        ZMod params.q

        The same dot product as dotProductFq, but computed directly in ZMod q.

        Equations
        Instances For
          theorem MIPStarRE.LDT.ExpansionHypercubeGraph.dotProductZMod_update (params : Parameters) (u α : Point params) (i : Fin params.m) (x : Fq params) :
          dotProductZMod params (Function.update u i x) α = dotProductZMod params u α + (x - (u i)) * (α i)
          theorem MIPStarRE.LDT.ExpansionHypercubeGraph.sum_stdAddChar_mul_fin (params : Parameters) (a : ZMod params.q) :
          x : Fq params, ZMod.stdAddChar (x * a) = ↑(if a = 0 then params.q else 0)
          theorem MIPStarRE.LDT.ExpansionHypercubeGraph.fourierBasisState_update_sum (params : Parameters) (u α : Point params) (i : Fin params.m) :
          x : Fq params, fourierBasisState params α (Function.update u i x) = ↑(if α i = 0 then params.q else 0) * fourierBasisState params α u

          The Fourier basis projector |φ_α⟩⟨φ_α| as a matrix on Point params.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            noncomputable def MIPStarRE.LDT.ExpansionHypercubeGraph.localVarianceTraceWitness {ι : Type u_1} [Fintype ι] [DecidableEq ι] (params : Parameters) (A : Point paramsQuantum.Op ι) (ψ : QuantumState ι) :

            Paper origin: references/ldt-paper/expansion.tex:145-154 (\label{lem:local-rewrite}); trace witness for the local-variance rewrite.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For

              A packaged decomposition for lem:global-rewrite.

              The Lean witness stores the pointwise average A_avg = E_u A^u together with the full residual family u ↦ A^u - A_avg. This carries the same geometric content as writing A_combine = |φ₀⟩ ⊗ A₀ + |φ_⊥⟩ ⊗ A_⊥, but it does not force the orthogonal part to be rank one on Point params ⊗ ι.

              Instances For

                Recover the centered residual as A^u - A_avg.

                The canonical decomposition from lem:global-rewrite.

                Its averageComponent is the paper's A_avg = E_u A^u = (1/M) · ∑_u A^u, and its orthogonal component is the centered family u ↦ A^u - A_avg. Equivalently, the paper's coefficient A_0 = M^{-1/2} · ∑_u A^u is M^{1/2} · A_avg.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  noncomputable def MIPStarRE.LDT.ExpansionHypercubeGraph.globalVarianceTraceWitness {ι : Type u_1} [Fintype ι] [DecidableEq ι] (params : Parameters) (A : Point paramsQuantum.Op ι) (ψ : QuantumState ι) (decomp : GlobalVarianceDecomposition params A) :

                  Paper origin: references/ldt-paper/expansion.tex:179-190 (\label{lem:global-rewrite}); trace witness for the global-variance rewrite. This uses the orthogonal residual family supplied by the decomposition.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    noncomputable def MIPStarRE.LDT.ExpansionHypercubeGraph.localVarianceTraceForm {ι : Type u_1} [Fintype ι] [DecidableEq ι] (params : Parameters) (A : Point paramsQuantum.Op ι) (ψ : QuantumState ι) :

                    The local-variance trace expression from lem:local-rewrite.

                    Equations
                    Instances For
                      noncomputable def MIPStarRE.LDT.ExpansionHypercubeGraph.globalVarianceTraceForm {ι : Type u_1} [Fintype ι] [DecidableEq ι] (params : Parameters) (A : Point paramsQuantum.Op ι) (ψ : QuantumState ι) (decomp : GlobalVarianceDecomposition params A) :

                      The global-variance trace expression from lem:global-rewrite.

                      The prefactor 1 / hypercubeVertexCount params is the paper's 1 / M normalization from Section 7.

                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For

                        The number of nonzero coordinates of a frequency α ∈ F_q^m.

                        Equations
                        Instances For

                          The number of nonzero coordinates of α is at most m.

                          theorem MIPStarRE.LDT.ExpansionHypercubeGraph.zeroCoordinateCount_eq (params : Parameters) (α : Point params) :
                          {i : Fin params.m | α i = 0}.card = params.m - frequencyWeight params α
                          theorem MIPStarRE.LDT.ExpansionHypercubeGraph.zeroCoordinateContributionSum (params : Parameters) (α : Point params) :
                          i : Fin params.m, ↑(if α i = 0 then params.q else 0) = ↑(params.m - frequencyWeight params α) * params.q
                          theorem MIPStarRE.LDT.ExpansionHypercubeGraph.fourierBasisState_total_update_sum (params : Parameters) (u α : Point params) :
                          i : Fin params.m, x : Fq params, fourierBasisState params α (Function.update u i x) = ↑(params.m - frequencyWeight params α) * params.q * fourierBasisState params α u

                          The actual inner product of two Fourier basis states on ℂ^{F_q^m}.

                          Since fourierBasisState already includes the 1 / √M normalization, this is just the finite sum ∑_u conj(φ_α(u)) * φ_β(u).

                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            noncomputable def MIPStarRE.LDT.ExpansionHypercubeGraph.pointAddChar (params : Parameters) (α : Point params) :
                            AddChar (Point params)

                            The additive character on Point params indexed by a frequency α.

                            Equations
                            • One or more equations did not get rendered due to their size.
                            Instances For
                              noncomputable def MIPStarRE.LDT.ExpansionHypercubeGraph.pointAddCharRight (params : Parameters) (u : Point params) :
                              AddChar (Point params)

                              The additive character on the frequency space obtained by fixing a point u.

                              Equations
                              • One or more equations did not get rendered due to their size.
                              Instances For
                                theorem MIPStarRE.LDT.ExpansionHypercubeGraph.dotProductZMod_single_one (params : Parameters) (α : Point params) (i : Fin params.m) :
                                dotProductZMod params (Function.update 0 i 1 % params.q, ) α = (α i)

                                Updating the zero point at coordinate i with the field element 1 yields the standard basis vector e_i, whose ZMod q dot product with α is the i-th coordinate of α.

                                pointAddChar params α is trivial exactly when α = 0.

                                Here the 0 on the left is the Zero instance on AddChar, i.e. the trivial character u ↦ 1, not the pointwise-zero function.

                                theorem MIPStarRE.LDT.ExpansionHypercubeGraph.fourierBasisState_inner_product (params : Parameters) (α β : Point params) :
                                u : Point params, star (fourierBasisState params α u) * fourierBasisState params β u = if α = β then 1 else 0

                                The actual Fourier inner product equals the Kronecker delta. This proves ∑_u conj(φ_α(u)) * φ_β(u) = if α = β then 1 else 0.

                                prop:eigenvectors, item 1: orthonormality of the Fourier basis.

                                The eigenvalue of K on φ_α.

                                Equations
                                • One or more equations did not get rendered due to their size.
                                Instances For

                                  The eigenvalue of L on φ_α.

                                  Equations
                                  • One or more equations did not get rendered due to their size.
                                  Instances For

                                    The spectral gap 1 / (m M) from cor:laplacian-spectral-gap.

                                    Equations
                                    Instances For

                                      The Fourier index set F_q^m has cardinality M = q^m.

                                      prop:eigenvectors, item 2: each |φ_α⟩ is an eigenvector of the adjacency matrix K with eigenvalue λ_α.

                                      cor:laplacian-spectral-gap, eigenvalue relation: λ_L(α) = 1/M − λ_K(α).

                                      cor:laplacian-spectral-gap, spectral gap bound: for α ≠ 0, the spectral gap 1/(mM) lower-bounds the Laplacian eigenvalue λ_L(α).

                                      cor:laplacian-spectral-gap, attainment: for |α| = 1, the spectral gap is attained: λ_L(α) = 1/(mM).