Documentation

TauCeti.Analysis.InnerProductSpace.HodgeStar.Basic

The Hodge star of an oriented real inner product space #

Mathlib's exteriorPower.hodgeStar is built from a bilinear form and a trivialization vol of the top exterior power, and is characterized by B (⋆x) y = vol (x ∧ y). On an oriented real inner product space V of dimension n both inputs are canonical: the bilinear form is the inner product, and the trivialization is the one induced by Mathlib's Orientation.volumeForm, which takes the value 1 on every positively oriented orthonormal basis. This file packages the resulting pointwise Hodge star ⋆ : ⋀ᵏ V ≃ ⋀ˡ V (for k + l = n), so that ⟪⋆x, y⟫ = vol (x ∧ y), equivalently x ∧ y = ⟪⋆x, y⟫ vol.

Its value on the orthonormal basis of ⋀ᵏ V induced by a positively oriented orthonormal basis e of V is the familiar formula: ⋆ e_I = ε(I) e_{Iᶜ}, where e_I is the increasing wedge of the eᵢ with i ∈ I and ε(I) is the sign of the shuffle permutation listing I before its complement. For instance, in an oriented four-dimensional space ⋆(e₁ ∧ e₂) = e₃ ∧ e₄, so the self-dual and anti-self-dual two-forms are the ±1 eigenvectors of ⋆ on ⋀² V. The Hodge star is trace free on a positive middle degree, since Iᶜ ≠ I, so these eigenspaces have equal dimension: three each for two-forms in dimension four.

In dimension four a unit vector s splits a two-form as F = s ∧ a + b, where a = s ⌟ F is the contraction of F by ⟪s, ·⟫ and b has no s-component. Since b ∧ b = 0, the pairing of s ∧ a with F + ⋆F is ‖a‖² + vol (F ∧ F) / 2. On a product S¹ × Y with s = ds, this is the pointwise identity 2 ⟨ds ∧ ι_T F, F⁺⟩ = |ι_T F|² + (F ∧ F) / 2 between the mixed component of a curvature form, its self-dual part and its Chern–Weil density.

Main definitions #

Main results #

References #

The bilinear form induced by the inner product on the k-th exterior power, given on pure wedges by the Gram determinant, is the inner product of ⋀ᵏ V.

The volume of an oriented real inner product space, as a trivialization of its top exterior power: it sends the wedge v₁ ∧ ⋯ ∧ vₙ to Orientation.volumeForm of (v₁, …, vₙ).

Instances For

    The volume of a wedge of vectors is their Orientation.volumeForm.

    The volume of the wedge of a positively oriented orthonormal basis is 1.

    @[simp]

    Reversing the orientation negates the volume.

    @[simp]

    Reversing the orientation negates the unit volume element of the top exterior power.

    noncomputable def Orientation.hodgeStar {V : Type u_1} [NormedAddCommGroup V] [InnerProductSpace ℝ V] [FiniteDimensional ℝ V] {n : ℕ} [_i : Fact (Module.finrank ℝ V = n)] (o : Orientation ℝ V (Fin n)) {k l : ℕ} (hkl : k + l = Module.finrank ℝ V) :

    The Hodge star ⋀ᵏ V ≃ ⋀ˡ V, k + l = finrank ℝ V, of an oriented real inner product space: Mathlib's exteriorPower.hodgeStar for the inner product and Orientation.volumeEquiv. It is characterized by ⟪⋆x, y⟫ = vol (x ∧ y) (Orientation.inner_hodgeStar_apply).

    Instances For
      theorem Orientation.inner_hodgeStar_apply {V : Type u_1} [NormedAddCommGroup V] [InnerProductSpace ℝ V] [FiniteDimensional ℝ V] {n : ℕ} [_i : Fact (Module.finrank ℝ V = n)] (o : Orientation ℝ V (Fin n)) {k l : ℕ} (hkl : k + l = Module.finrank ℝ V) (x : ↥(⋀[ℝ]^k V)) (y : ↥(⋀[ℝ]^l V)) :

      The characterization of the Hodge star: ⟪⋆x, y⟫ = vol (x ∧ y).

      On the basis of ⋀ᵏ V induced by any orthonormal basis e, ⋆ e_I = vol(e) ε(I) e_{Iᶜ}, where vol(e) = ±1 is the volume form of e and ε(I) is the shuffle sign of I.

      The Hodge star on an orthonormal basis: if e is a positively oriented orthonormal basis, then ⋆ e_I = ε(I) e_{Iᶜ}, where e_I is the increasing wedge of the eᵢ with i ∈ I and ε(I) = Set.powersetCard.sign I is the sign of the shuffle listing I before its complement.

      theorem Orientation.hodgeStar_hodgeStar {V : Type u_1} [NormedAddCommGroup V] [InnerProductSpace ℝ V] [FiniteDimensional ℝ V] {n : ℕ} [_i : Fact (Module.finrank ℝ V = n)] (o : Orientation ℝ V (Fin n)) {k l : ℕ} (hkl : k + l = Module.finrank ℝ V) (hlk : l + k = Module.finrank ℝ V) (x : ↥(⋀[ℝ]^k V)) :
      (o.hodgeStar hlk) ((o.hodgeStar hkl) x) = (-1) ^ (k * l) • x

      The square of the Hodge star: ⋆⋆x = (-1) ^ (k * l) x for x ∈ ⋀ᵏ V and k + l = finrank ℝ V.

      @[simp]
      theorem Orientation.hodgeStar_hodgeStar_of_even {V : Type u_1} [NormedAddCommGroup V] [InnerProductSpace ℝ V] [FiniteDimensional ℝ V] {n : ℕ} [_i : Fact (Module.finrank ℝ V = n)] (o : Orientation ℝ V (Fin n)) {k : ℕ} (hk : Even k) (hkk : k + k = Module.finrank ℝ V) (x : ↥(⋀[ℝ]^k V)) :
      (o.hodgeStar hkk) ((o.hodgeStar hkk) x) = x

      In an even middle degree, k + k = finrank ℝ V with k even, the Hodge star is an involution, ⋆⋆x = x. This covers two-forms in dimension four, where the self-dual and anti-self-dual two-forms are the ±1 eigenspaces of ⋆.

      theorem Orientation.hodgeStar_smul_add_hodgeStar {V : Type u_1} [NormedAddCommGroup V] [InnerProductSpace ℝ V] [FiniteDimensional ℝ V] {n : ℕ} [_i : Fact (Module.finrank ℝ V = n)] (o : Orientation ℝ V (Fin n)) {k : ℕ} (hk : Even k) (hkk : k + k = Module.finrank ℝ V) (x : ↥(⋀[ℝ]^k V)) :
      (o.hodgeStar hkk) (2⁻¹ • (x + (o.hodgeStar hkk) x)) = 2⁻¹ • (x + (o.hodgeStar hkk) x)

      In an even middle degree, k + k = finrank ℝ V with k even, the part (x + ⋆x) / 2 of x is self-dual.

      theorem Orientation.hodgeStar_smul_sub_hodgeStar {V : Type u_1} [NormedAddCommGroup V] [InnerProductSpace ℝ V] [FiniteDimensional ℝ V] {n : ℕ} [_i : Fact (Module.finrank ℝ V = n)] (o : Orientation ℝ V (Fin n)) {k : ℕ} (hk : Even k) (hkk : k + k = Module.finrank ℝ V) (x : ↥(⋀[ℝ]^k V)) :
      (o.hodgeStar hkk) (2⁻¹ • (x - (o.hodgeStar hkk) x)) = -(2⁻¹ • (x - (o.hodgeStar hkk) x))

      In an even middle degree, k + k = finrank ℝ V with k even, the part (x - ⋆x) / 2 of x is anti-self-dual.

      theorem Orientation.trace_hodgeStar {V : Type u_1} [NormedAddCommGroup V] [InnerProductSpace ℝ V] [FiniteDimensional ℝ V] {n : ℕ} [_i : Fact (Module.finrank ℝ V = n)] (o : Orientation ℝ V (Fin n)) {k : ℕ} (hk : 0 < k) (hkk : k + k = Module.finrank ℝ V) :
      (LinearMap.trace ℝ ↥(⋀[ℝ]^k V)) ↑(o.hodgeStar hkk) = 0

      In a positive middle degree, k + k = finrank ℝ V with 0 < k, the Hodge star is trace free: it sends each vector e_I of the basis of ⋀ᵏ V induced by an orthonormal basis to a multiple of e_{Iᶜ}, and Iᶜ ≠ I.

      theorem Orientation.two_mul_finrank_eigenspace_hodgeStar_one {V : Type u_1} [NormedAddCommGroup V] [InnerProductSpace ℝ V] [FiniteDimensional ℝ V] {n : ℕ} [_i : Fact (Module.finrank ℝ V = n)] (o : Orientation ℝ V (Fin n)) {k : ℕ} (hk : Even k) (hk₀ : 0 < k) (hkk : k + k = Module.finrank ℝ V) :

      In an even positive middle degree, the self-dual forms make up half of ⋀ᵏ V: twice the dimension of the +1 eigenspace of ⋆ is n.choose k. For two-forms in dimension four, the self-dual two-forms Λ⁺ have dimension three.

      theorem Orientation.two_mul_finrank_eigenspace_hodgeStar_neg_one {V : Type u_1} [NormedAddCommGroup V] [InnerProductSpace ℝ V] [FiniteDimensional ℝ V] {n : ℕ} [_i : Fact (Module.finrank ℝ V = n)] (o : Orientation ℝ V (Fin n)) {k : ℕ} (hk : Even k) (hk₀ : 0 < k) (hkk : k + k = Module.finrank ℝ V) :

      In an even positive middle degree, the anti-self-dual forms make up half of ⋀ᵏ V: twice the dimension of the -1 eigenspace of ⋆ is n.choose k. For two-forms in dimension four, the anti-self-dual two-forms Λ⁻ have dimension three.

      @[simp]
      theorem Orientation.hodgeStar_coe_of_mem_eigenspace_one {V : Type u_1} [NormedAddCommGroup V] [InnerProductSpace ℝ V] [FiniteDimensional ℝ V] {n : ℕ} [_i : Fact (Module.finrank ℝ V = n)] (o : Orientation ℝ V (Fin n)) {k : ℕ} (hkk : k + k = Module.finrank ℝ V) (x : ↥(Module.End.eigenspace (↑(o.hodgeStar hkk)) 1)) :
      (o.hodgeStar hkk) ↑x = ↑x

      A form in the 1-eigenspace of the Hodge star is self-dual: ⋆x = x.

      Two-forms split along a unit vector #

      The pointwise energy identity of a two-form split along a unit vector. Let s be a unit vector of an oriented four-dimensional real inner product space, let F ∈ ⋀² V, and let a = s ⌟ F be the contraction of F by ⟪s, ·⟫ (TauCeti.twoVectorContraction). Then ⟪s ∧ a, F + ⋆F⟫ = ‖a‖² + vol (F ∧ F) / 2; equivalently, with the self-dual part F⁺ = (F + ⋆F) / 2, 2 ⟪s ∧ a, F⁺⟫ = ‖a‖² + vol (F ∧ F) / 2.

      On a product S¹ × Y with s = ds and T = ∂ₛ, this is the pointwise identity 2 ⟨ds ∧ ι_T F, F⁺⟩ dvol = |ι_T F|² dvol + (F ∧ F) / 2 for a real two-form F.