Documentation

LeanPool.LeanQuantumAlg.Primitives.QKernel.Fourier

Fourier representation of the quantum kernel #

For an N-input data-encoding circuit with a common diagonal generator, the fidelity quantum kernel κ(x, x') = |⟨φ(x')|φ(x)⟩|² is a finite sum of characters e^{i⟨s,x⟩} e^{i⟨t,x'⟩} whose frequencies are differences of the generator's eigenvalues (Schuld 2021). The encoding gates are modelled directly as diagonal phase matrices — the standard WLOG-diagonalization step — so the Fourier structure is proved genuinely while avoiding the matrix exponential.

The proof shows each component of the feature state is an TrigPolynomial (by closure under applying a constant matrix and a diagonal phase gate), hence the overlap and its squared modulus are TrigPolynomials; collecting by frequency gives the representation.

noncomputable def QuantumAlg.diagPhaseGate {d : } (lam : Fin d) (xk : ) :
Matrix (Fin d) (Fin d)

The diagonal data-encoding phase gate for input coordinate k: diagonal (μ ↦ exp(-i x_k λ_μ)).

Equations
Instances For
    def QuantumAlg.IsTrigPolynomialVec {N d : } (v : (Fin N)Fin d) :

    A data-parametrized vector each of whose components is an trigonometric polynomial.

    Equations
    Instances For
      theorem QuantumAlg.isTrigPolynomialVec_const {N d : } (w : Fin d) :
      IsTrigPolynomialVec fun (x : Fin N) => w

      Any constant vector is an trigonometric-polynomial vector (single zero frequency).

      theorem QuantumAlg.IsTrigPolynomialVec.constMul {N d : } {v : (Fin N)Fin d} (hv : IsTrigPolynomialVec v) (M : Matrix (Fin d) (Fin d) ) :
      IsTrigPolynomialVec fun (x : Fin N) => M.mulVec (v x)

      Left-multiplication by a constant matrix preserves IsTrigPolynomialVec.

      theorem QuantumAlg.IsTrigPolynomialVec.phaseMul {N d : } {v : (Fin N)Fin d} (hv : IsTrigPolynomialVec v) (lam : Fin d) (k : Fin N) :
      IsTrigPolynomialVec fun (x : Fin N) => (diagPhaseGate lam (x k)).mulVec (v x)

      Left-multiplication by a diagonal phase gate preserves IsTrigPolynomialVec.

      noncomputable def QuantumAlg.featState {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) (j : ) :
      (Fin N)Fin d

      The feature state after j encoding layers: start from ψ, apply the constant unitary W 0, then alternately a phase gate for each coordinate and the next W. featState W lam ψ N x is |φ(x)⟩ for the full N-input circuit.

      Equations
      Instances For
        theorem QuantumAlg.isTrigPolynomialVec_featState {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) (j : ) :

        Every layer of the feature state is an trigonometric-polynomial vector.

        Constructive feature components (explicit trigonometric polynomials) #

        noncomputable def QuantumAlg.tpVecConst {N d : } (w : Fin d) :

        A constant vector of trigonometric polynomials (each component a single zero-frequency term).

        Equations
        Instances For
          theorem QuantumAlg.tpVecConst_eval {N d : } (w : Fin d) (m : Fin d) (x : Fin N) :
          (tpVecConst w m).eval x = w m
          noncomputable def QuantumAlg.tpVecConstMul {N d : } (M : Matrix (Fin d) (Fin d) ) (V : Fin dTrigPolynomial N) :

          Apply a constant matrix to a vector of trigonometric polynomials.

          Equations
          Instances For
            theorem QuantumAlg.tpVecConstMul_eval {N d : } (M : Matrix (Fin d) (Fin d) ) (V : Fin dTrigPolynomial N) (m : Fin d) (x : Fin N) :
            (tpVecConstMul M V m).eval x = j : Fin d, M m j * (V j).eval x
            noncomputable def QuantumAlg.tpVecPhase {N d : } (lam : Fin d) (k : Fin N) (V : Fin dTrigPolynomial N) :

            Apply a diagonal phase gate (symbolically, a per-component frequency shift).

            Equations
            Instances For
              theorem QuantumAlg.tpVecPhase_eval {N d : } (lam : Fin d) (k : Fin N) (V : Fin dTrigPolynomial N) (m : Fin d) (x : Fin N) :
              (tpVecPhase lam k V m).eval x = Complex.exp (-Complex.I * ↑(x k * lam m)) * (V m).eval x
              noncomputable def QuantumAlg.featCompC {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) (j : ) :

              The constructive feature component after j layers: an explicit Fin d-indexed family of trigonometric polynomials mirroring featState.

              Equations
              Instances For
                theorem QuantumAlg.featState_eq_featCompC {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) (j : ) (x : Fin N) (m : Fin d) :
                featState W lam ψ j x m = (featCompC W lam ψ j m).eval x
                noncomputable def QuantumAlg.featComp {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) (m : Fin d) :

                The trigonometric-polynomial witness for component m of the full feature state.

                Equations
                Instances For
                  theorem QuantumAlg.featComp_eval {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) (m : Fin d) (x : Fin N) :
                  featState W lam ψ N x m = (featComp W lam ψ m).eval x

                  Feature-component frequency invariant #

                  theorem QuantumAlg.tpVecConst_freqs {N d : } (w : Fin d) (m : Fin d) :
                  theorem QuantumAlg.tpVecConstMul_freqs {N d : } (M : Matrix (Fin d) (Fin d) ) (V : Fin dTrigPolynomial N) (m : Fin d) :
                  (tpVecConstMul M V m).freqs = Finset.univ.biUnion fun (j : Fin d) => (V j).freqs
                  theorem QuantumAlg.tpVecPhase_freqs {N d : } (lam : Fin d) (k : Fin N) (V : Fin dTrigPolynomial N) (m : Fin d) :
                  (tpVecPhase lam k V m).freqs = Finset.image (fun (ω : Fin N) => ω + -lam m Pi.single k 1) (V m).freqs
                  theorem QuantumAlg.featCompC_layer {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) (j : ) (m : Fin d) (ω : Fin N) :
                  ω (featCompC W lam ψ j m).freqs∀ (a : Fin N), (a < j∃ (μ : Fin d), ω a = -lam μ) (j aω a = 0)

                  After j layers, every feature-component frequency is -λ_μ on coordinates < j and 0 on coordinates ≥ j. Since each input is encoded exactly once, at j = N every coordinate is a negated eigenvalue.

                  theorem QuantumAlg.featComp_freq {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) (m : Fin d) (ω : Fin N) ( : ω (featComp W lam ψ m).freqs) (a : Fin N) :
                  ∃ (μ : Fin d), ω a = -lam μ

                  At the full circuit (j = N), every feature-component frequency coordinate is a negated eigenvalue.

                  noncomputable def QuantumAlg.overlapES {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) :

                  The overlap ⟨φ(x')|φ(x)⟩ as a trigonometric polynomial in the concatenated variable.

                  Equations
                  Instances For
                    theorem QuantumAlg.overlapES_eval {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) (x x' : Fin N) :
                    (overlapES W lam ψ).eval (Fin.append x x') = m : Fin d, (starRingEnd ) (featState W lam ψ N x' m) * featState W lam ψ N x m
                    noncomputable def QuantumAlg.kernelES {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) :

                    The quantum kernel as an trigonometric polynomial: the squared modulus of the overlap.

                    Equations
                    Instances For
                      theorem QuantumAlg.fourier_representation {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) (x x' : Fin N) :
                      (Complex.normSq (∑ m : Fin d, (starRingEnd ) (featState W lam ψ N x' m) * featState W lam ψ N x m)) = ω(kernelES W lam ψ).freqs, (kernelES W lam ψ).coeff ω * Complex.exp (Complex.I * (freqDot ω (Fin.append x x')))

                      Fourier representation of the quantum kernel (Schuld 2021). The fidelity kernel κ(x,x') = |⟨φ(x')|φ(x)⟩|² is a finite sum of characters e^{i⟨ω,(x,x')⟩} whose frequencies (the elements of (kernelES …).freqs) are differences of the generator's eigenvalue vectors.

                      theorem QuantumAlg.fourier_real {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) (ω : Fin (N + N)) :
                      (kernelES W lam ψ).coeffAt ω = (starRingEnd ) ((kernelES W lam ψ).coeffAt (-ω))

                      Reality condition. The kernel's Fourier coefficients are conjugate-symmetric under frequency negation, which is exactly what makes the kernel real-valued.

                      Integer-spectrum corollary #

                      theorem QuantumAlg.overlapES_freq {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) (σ : Fin (N + N)) ( : σ (overlapES W lam ψ).freqs) :
                      (∀ (a : Fin N), ∃ (μ : Fin d), σ (Fin.castAdd N a) = -lam μ) ∀ (a : Fin N), ∃ (ν : Fin d), σ (Fin.natAdd N a) = lam ν

                      Every overlap frequency is a negated eigenvalue on the first block and an eigenvalue on the second block.

                      theorem QuantumAlg.fourier_integer_spectrum {N d : } (W : Fin (N + 1)Matrix (Fin d) (Fin d) ) (lam : Fin d) (ψ : Fin d) (hint : ∀ (i j : Fin d), ∃ (z : ), lam i - lam j = z) (σ : Fin (N + N)) ( : σ (kernelES W lam ψ).freqs) (a : Fin (N + N)) :
                      ∃ (z : ), σ a = z

                      Integer-spectrum corollary (Schuld 2021). If every eigenvalue difference is an integer, every kernel frequency has integer coordinates — the kernel is a genuine multidimensional Fourier series.

                      Non-vacuity witness: the Pauli-X encoding reproduces the cos² kernel #

                      noncomputable def QuantumAlg.pauliXSpectrum :
                      Fin 2

                      Eigenvalues of ½σ_x: (-1/2, 1/2).

                      Equations
                      Instances For
                        noncomputable def QuantumAlg.pauliXPsi :
                        Fin 2

                        Uniform initial state (1/√2, 1/√2).

                        Equations
                        Instances For
                          noncomputable def QuantumAlg.pauliXW :
                          Fin 2Matrix (Fin 2) (Fin 2)

                          Trivial surrounding unitaries (identity): the data is encoded by the diagonal gate alone.

                          Equations
                          Instances For

                            The single-qubit cosine-encoding feature state is (e^{ix/2}/√2, e^{-ix/2}/√2).

                            Non-vacuity witness (Schuld 2021). The single-qubit cosine-encoding quantum kernel equals the squared-cosine kernel cos²((x-x')/2).