Documentation

Mathlib.Analysis.Fourier.AddCircleMulti

Multivariate Fourier series #

In this file we define the Fourier series of an L² function on the d-dimensional unit circle, and show that it converges to the function in the L² norm. We also prove uniform convergence of the Fourier series if f is continuous and the sequence of its Fourier coefficients is summable.

@[implicit_reducible]

In this file we normalise the measure on ℝ / ℤ to have total volume 1.

Equations
Instances For

    The measure on ℝ / ℤ is a Haar measure.

    @[reducible, inline]
    abbrev UnitAddTorus (d : Type u_1) :
    Type u_1

    The product of finitely many copies of the unit circle, indexed by d.

    Equations
    Instances For
      noncomputable def UnitAddTorus.mFourier {d : Type u_1} [Fintype d] (n : d) :

      Exponential monomials in d variables.

      Equations
      Instances For
        theorem UnitAddTorus.mFourier_neg {d : Type u_1} [Fintype d] {n : d} {x : UnitAddTorus d} :
        (mFourier (-n)) x = (starRingEnd ) ((mFourier n) x)
        theorem UnitAddTorus.mFourier_add {d : Type u_1} [Fintype d] {n : d} {x : UnitAddTorus d} {m : d} :
        (mFourier (m + n)) x = (mFourier m) x * (mFourier n) x
        theorem UnitAddTorus.mFourier_norm {d : Type u_1} [Fintype d] {n : d} :
        theorem UnitAddTorus.mFourier_single {d : Type u_1} [Fintype d] [DecidableEq d] (z : dAddCircle 1) (i : d) :
        (mFourier (Pi.single i 1)) z = (fourier 1) (z i)

        The star subalgebra of C(UnitAddTorus d, ℂ) generated by mFourier n for n ∈ ℤᵈ.

        Equations
        Instances For

          The star subalgebra of C(UnitAddTorus d, ℂ) generated by mFourier n for n ∈ ℤᵈ is in fact the linear span of these functions.

          The subalgebra of C(UnitAddTorus d, ℂ) generated by mFourier n for n ∈ ℤᵈ separates points.

          The subalgebra of C(UnitAddTorus d, ℂ) generated by mFourier n for n : d → ℤ is dense.

          The linear span of the monomials mFourier n is dense in C(UnitAddTorus d, ℂ).

          noncomputable def UnitAddTorus.measurableEquivPiIoc {ι : Type u_2} (b : ι) :
          UnitAddTorus ι ≃ᵐ { x : ι // ∀ (i : ι), x i Set.Ioc (b i) (b i + 1) }

          The measurable equivalence between UnitAddTorus and a product of Ioc intervals.

          Equations
          Instances For
            theorem UnitAddTorus.coe_measurableEquivPiIoc {ι : Type u_2} (b : ι) :
            (measurableEquivPiIoc b) = fun (x : UnitAddTorus ι) => fun (i : ι) => ((AddCircle.equivIoc 1 (b i)) (x i)),
            @[simp]
            theorem UnitAddTorus.coe_measurableEquivPiIoc_apply {ι : Type u_2} (b : ι) (x : UnitAddTorus ι) :
            (measurableEquivPiIoc b) x = fun (i : ι) => ((AddCircle.equivIoc 1 (b i)) (x i)),
            theorem UnitAddTorus.coe_symm_measurableEquivPiIoc {ι : Type u_2} (b : ι) :
            (measurableEquivPiIoc b).symm = fun (x : { x : ι // ∀ (i : ι), x i Set.Ioc (b i) (b i + 1) }) (i : ι) => (x i)
            @[simp]
            theorem UnitAddTorus.coe_symm_measurableEquivPiIoc_apply {ι : Type u_2} (b : ι) (y : { x : ι // ∀ (i : ι), x i Set.Ioc (b i) (b i + 1) }) :
            (measurableEquivPiIoc b).symm y = fun (i : ι) => (y i)
            theorem UnitAddTorus.lintegral_preimage {d : Type u_1} [Fintype d] (f : UnitAddTorus dENNReal) (a : d) :
            ∫⁻ (x : UnitAddTorus d), f x = ∫⁻ (x : d) in {x : d | ∀ (i : d), x i Set.Ioc (a i) (a i + 1)}, f fun (i : d) => (x i)
            theorem UnitAddTorus.integral_preimage {d : Type u_1} [Fintype d] {E : Type u_3} [NormedAddCommGroup E] [NormedSpace E] (f : UnitAddTorus dE) (a : d) :
            (x : UnitAddTorus d), f x = (x : d) in {x : d | ∀ (i : d), x i Set.Ioc (a i) (a i + 1)}, f fun (i : d) => (x i)
            @[reducible, inline]
            noncomputable abbrev UnitAddTorus.mFourierLp {d : Type u_1} [Fintype d] (p : ENNReal) [Fact (1 p)] (n : d) :

            The family of monomials mFourier n, parametrized by n : ℤᵈ and considered as elements of the Lp space of functions UnitAddTorus d → ℂ.

            Equations
            Instances For
              theorem UnitAddTorus.coeFn_mFourierLp {d : Type u_1} [Fintype d] (p : ENNReal) [Fact (1 p)] (n : d) :

              For each 1 ≤ p < ∞, the linear span of the monomials mFourier n is dense in the Lᵖ space of functions on UnitAddTorus d.

              The monomials mFourierLp 2 n are an orthonormal set in .

              noncomputable def UnitAddTorus.mFourierCoeff {d : Type u_1} [Fintype d] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace E] (f : UnitAddTorus dE) (n : d) :
              E

              The n-th Fourier coefficient of a function UnitAddTorus d → E, for E a complete normed -vector space, defined as the integral over UnitAddTorus d of mFourier (-n) t • f t.

              Equations
              Instances For
                theorem UnitAddTorus.mFourierCoeff_eq_integral {d : Type u_1} [Fintype d] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace E] (f : UnitAddTorus dE) (n : d) (a : d) :
                mFourierCoeff f n = (x : d) in {x : d | ∀ (i : d), x i Set.Ioc (a i) (a i + 1)}, ((mFourier (-n)) fun (i : d) => (x i)) f fun (i : d) => (x i)

                The Fourier coefficients of a function on UnitAddTorus d can be computed as integrals over ∏ i, (aᵢ, aᵢ + 1], for any real a.

                We define mFourierBasis to be a ℤᵈ-indexed Hilbert basis for the space of functions on UnitAddTorus d, which by definition is an isometric isomorphism from L²(UnitAddTorus d) to ℓ²(ℤᵈ, ℂ).

                Equations
                Instances For
                  @[simp]

                  The elements of the Hilbert basis mFourierBasis are the functions mFourierLp 2, i.e. the monomials mFourier n on UnitAddTorus d considered as elements of .

                  theorem UnitAddTorus.mFourierBasis_repr {d : Type u_1} [Fintype d] (f : (MeasureTheory.Lp 2 MeasureTheory.volume)) (i : d) :
                  (mFourierBasis.repr f) i = mFourierCoeff (↑f) i

                  Under the isometric isomorphism mFourierBasis from L²(UnitAddTorus d) to ℓ²(ℤᵈ, ℂ), the i-th coefficient is mFourierCoeff f i.

                  theorem UnitAddTorus.hasSum_mFourier_series_L2 {d : Type u_1} [Fintype d] (f : (MeasureTheory.Lp 2 MeasureTheory.volume)) :
                  HasSum (fun (i : d) => mFourierCoeff (↑f) i mFourierLp 2 i) f

                  The Fourier series of an L2 function f sums to f in the norm.

                  theorem UnitAddTorus.hasSum_prod_mFourierCoeff {d : Type u_1} [Fintype d] (f g : (MeasureTheory.Lp 2 MeasureTheory.volume)) :
                  HasSum (fun (i : d) => (starRingEnd ) (mFourierCoeff (↑f) i) * mFourierCoeff (↑g) i) ( (t : UnitAddTorus d), (starRingEnd ) (f t) * g t)

                  Parseval's identity for inner products: for functions f, g on UnitAddTorus d, the inner product of the Fourier coefficients of f and g is the inner product of f and g.

                  theorem UnitAddTorus.hasSum_sq_mFourierCoeff {d : Type u_1} [Fintype d] (f : (MeasureTheory.Lp 2 MeasureTheory.volume)) :
                  HasSum (fun (i : d) => mFourierCoeff (↑f) i ^ 2) ( (t : UnitAddTorus d), f t ^ 2)

                  Parseval's identity for norms: for an function f on UnitAddTorus d, the sum of the squared norms of the Fourier coefficients equals the norm of f.

                  theorem UnitAddTorus.hasSum_mFourier_series_of_summable {d : Type u_1} [Fintype d] {f : C(UnitAddTorus d, )} (h : Summable (mFourierCoeff f)) :
                  HasSum (fun (i : d) => mFourierCoeff (⇑f) i mFourier i) f

                  If the sequence of Fourier coefficients of f is summable, then the Fourier series converges uniformly to f.

                  theorem UnitAddTorus.hasSum_mFourier_series_apply_of_summable {d : Type u_1} [Fintype d] {f : C(UnitAddTorus d, )} (h : Summable (mFourierCoeff f)) (x : UnitAddTorus d) :
                  HasSum (fun (i : d) => mFourierCoeff (⇑f) i (mFourier i) x) (f x)

                  If the sequence of Fourier coefficients of f is summable, then the Fourier series of f converges everywhere pointwise to f.