Documentation

LeanPool.OSforGFF.Measure.IsGaussian

Gaussianity Verification #

Identifies S₂(f,g) = C(f,g) via the identity theorem, using OS0's derivative interchange. From Z[tf+sg] = exp(−½ Q(tf+sg, tf+sg)):

This imports OS0 because it uses the proved analyticity to justify the derivative interchange, not because of OS0-specific infrastructure.

Main results #

Main Results #

For the Gaussian Free Field measure, the product of two complex pairings with test functions is integrable. Uses the direct 2-point theorem from GaussianMoments.

Core Theorems #

The proofs use OS0's derivative interchange machinery:

  1. gff_real_characteristic gives Z[f] = exp(-½ Q(f,f)) for real f
  2. gaussianFreeField_satisfies_OS0 gives analyticity of Z
  3. hasFDerivAt_integral_of_dominated_of_fderiv_le (used in OS0) gives derivative interchange
  4. Computing ∂²Z/∂t∂s|₀ two ways (Gaussian formula vs integral) gives S₂ = Q

Bilinearity expansion of Q(tf+sg, tf+sg). Q(tf+sg, tf+sg) = t²Q(f,f) + 2ts Q(f,g) + s²Q(g,g)

theorem GFFIsGaussian.gff_cf_two_testfunctions (m : ) [Fact (0 < m)] (f g : TestFunction) (t s : ) :
GJGeneratingFunctional (gaussianFreeFieldFree m) (t f + s g) = Complex.exp (-(1 / 2) * (t ^ 2 * (QFT.freeCovarianceFormR m f f) + 2 * t * s * (QFT.freeCovarianceFormR m f g) + s ^ 2 * (QFT.freeCovarianceFormR m g g)))

The Gaussian CF formula for two test functions.

OS0-Based Derivative Machinery #

The following lemmas use OS0's analyticity to compute mixed derivatives.

OS0 specialized to two test functions gives analyticity of Z[tf + sg] in (t,s) ∈ ℂ²

OS0-Based Complex Extension via Identity Theorem #

The key insight is that we can extend from real to complex test functions using:

  1. OS0 gives analyticity of Z[z₀f + z₁g] in (z₀, z₁) ∈ ℂ²
  2. For real parameters, we have the Gaussian formula
  3. The Gaussian formula defines an entire function of (z₀, z₁)
  4. By the identity theorem (applied twice in 1D), the two analytic functions agree everywhere

This eliminates the need for twoD_line_from_realCF from MinlosAnalytic.

Key technical lemma: fixing one coordinate, the slice is analytic in the other. For z₀ ↦ Z[z₀•f + t•g] where t is a fixed complex number. Derived from OS0 by composition with linear embedding z₀ ↦ ![z₀, t].

Derived from gff_slice_analytic_z0 by swapping f ↔ g and using add_comm.

theorem GFFIsGaussian.gaussian_rhs_slice_analytic_z0 (m : ) (f g : TestFunction) (t : ) :
AnalyticOnNhd (fun (z₀ : ) => Complex.exp (-(1 / 2) * (z₀ ^ 2 * (QFT.freeCovarianceFormR m f f) + 2 * z₀ * t * (QFT.freeCovarianceFormR m f g) + t ^ 2 * (QFT.freeCovarianceFormR m g g)))) Set.univ

Slice of Gaussian RHS is analytic (exp of polynomial).

theorem GFFIsGaussian.gaussian_rhs_slice_analytic_z1 (m : ) (f g : TestFunction) (z₀ : ) :
AnalyticOnNhd (fun (z₁ : ) => Complex.exp (-(1 / 2) * (z₀ ^ 2 * (QFT.freeCovarianceFormR m f f) + 2 * z₀ * z₁ * (QFT.freeCovarianceFormR m f g) + z₁ ^ 2 * (QFT.freeCovarianceFormR m g g)))) Set.univ

Slice of Gaussian RHS is analytic in the second variable.

theorem GFFIsGaussian.gff_cf_agrees_on_reals_OS0 (m : ) [Fact (0 < m)] (f g : TestFunction) (t s : ) :
GJGeneratingFunctionalℂ (gaussianFreeFieldFree m) (t toComplex f + s toComplex g) = Complex.exp (-(1 / 2) * (t ^ 2 * (QFT.freeCovarianceFormR m f f) + 2 * t * s * (QFT.freeCovarianceFormR m f g) + s ^ 2 * (QFT.freeCovarianceFormR m g g)))

The GFF CF and Gaussian formula agree on ℝ². This follows from gff_cf_two_testfunctions by converting between types.

Complex generating functional for the free GFF via OS0 + identity theorem. This proves the result WITHOUT using twoD_line_from_realCF.

Polarization-Based Proof #

The key insight is to use the polarization identity instead of derivative calculus.

For a centered Gaussian:

By polarization:

This avoids all derivative calculus!

For real test functions, the second moment equals the covariance. S₂(f,g) = Q(f,g) = freeCovarianceFormR(f,g)

Proof via polarization identity: E[XY] = ¼(E[(X+Y)²] - E[(X-Y)²]) = ¼(Q(f+g,f+g) - Q(f-g,f-g)) = Q(f,g) by bilinearity

For real test functions embedded into complex, the Schwinger 2-point function equals the complex covariance.

Main Theorems (at root level for compatibility) #

For complex test functions, the Schwinger 2-point function equals the complex covariance.

S₂(μ, f, g) = freeCovarianceℂBilinear m f g

This extends schwinger_eq_covariance_real to complex test functions by bilinearity: both S₂ and freeCovarianceℂBilinear are bilinear, and they agree on real inputs.

For any complex f = fRe + I•fIm, g = gRe + I•gIm, we expand by bilinearity.

Complex generating functional for the free GFF: Z[J] = exp(-½ S₂(J,J))

This follows from gff_real_characteristic (for real J) extended to complex J via analyticity (gaussianFreeField_satisfies_OS0). Both sides are analytic in J and agree on real J, hence they are equal everywhere.

The Gaussian Free Field constructed via Minlos is Gaussian.

This combines:

  1. Centering: E[⟨ω,φ⟩] = 0 (from gaussianFreeField_free_centered)
  2. Gaussian CF: Z[J] = exp(-½ S₂(J,J)) (from gff_complex_generating)