PhysLean Documentation

PhysLean.Mathematics.Geometry.Metric.Riemannian.Defs

Riemannian Metric Definitions #

This module defines the Riemannian metric, building on pseudo-Riemannian metrics.

structure PseudoRiemannianMetric.RiemannianMetric {E : Type v} [NormedAddCommGroup E] [NormedSpace E] {H : Type w} [TopologicalSpace H] [ChartedSpace H E] (I : ModelWithCorners E H) (n : ℕ∞) (M : Type w) [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (n + 1) M] [inst_tangent_findim : ∀ (x : M), FiniteDimensional (TangentSpace I x)] extends PseudoRiemannianMetric E H M (↑n) I :
Type (max (max u_1 v) w)

A RiemannianMetric on a manifold M modeled on H with corners I (over the model space E , typically ℝ^m) is a family of inner products on the tangent spaces TangentSpace I x for each x : M. This family is required to vary smoothly with x, specifically with smoothness C^n.

This structure extends PseudoRiemannianMetric, inheriting the core properties of a pseudo-Riemannian metric, such as being a symmetric, non-degenerate, C^n-smooth tensor field of type (0,2). The key distinguishing feature of a Riemannian metric is its positive-definiteness.

The pos_def' field ensures that for any point x on the manifold and any non-zero tangent vector v at x, the inner product gₓ(v, v) (denoted val x v v) is strictly positive. This condition makes each val x (the metric at point x) a positive-definite symmetric bilinear form, effectively an inner product, on the tangent space TangentSpace I x.

Parameters:

  • I: The ModelWithCorners for the manifold M. This defines the model space E (e.g., ℝ^d) and the model space for the boundary H.
  • n: The smoothness class of the metric, an ℕ∞ value. The metric tensor components are C^n functions.
  • M: The type of the manifold.
  • [TopologicalSpace M]: Assumes M has a topological structure.
  • [ChartedSpace H M]: Assumes M is equipped with an atlas of charts to H.
  • [IsManifold I (n + 1) M]: Assumes M is a manifold of smoothness C^(n+1). The manifold needs to be slightly smoother than the metric itself for certain constructions.
  • [inst_tangent_findim : ∀ (x : M), FiniteDimensional ℝ (TangentSpace I x)]: Ensures that each tangent space is a finite-dimensional real vector space.

Fields:

  • toPseudoRiemannianMetric: The underlying pseudo-Riemannian metric. This provides the smooth family of symmetric bilinear forms val : M → SymBilinForm ℝ (TangentSpace I ·).
  • pos_def': The positive-definiteness condition: ∀ x v, v ≠ 0 → val x v v > 0. This asserts that for any point x and any non-zero tangent vector v at x, the metric evaluated on (v, v) is strictly positive.
Instances For
    theorem PseudoRiemannianMetric.RiemannianMetric.ext_iff {E : Type v} {inst✝ : NormedAddCommGroup E} {inst✝¹ : NormedSpace E} {H : Type w} {inst✝² : TopologicalSpace H} {inst✝³ : ChartedSpace H E} {I : ModelWithCorners E H} {n : ℕ∞} {M : Type w} {inst✝⁴ : TopologicalSpace M} {inst✝⁵ : ChartedSpace H M} {inst✝⁶ : IsManifold I (n + 1) M} {inst_tangent_findim : ∀ (x : M), FiniteDimensional (TangentSpace I x)} {x y : RiemannianMetric I n M} :
    x = y x.val = y.val
    theorem PseudoRiemannianMetric.RiemannianMetric.ext {E : Type v} {inst✝ : NormedAddCommGroup E} {inst✝¹ : NormedSpace E} {H : Type w} {inst✝² : TopologicalSpace H} {inst✝³ : ChartedSpace H E} {I : ModelWithCorners E H} {n : ℕ∞} {M : Type w} {inst✝⁴ : TopologicalSpace M} {inst✝⁵ : ChartedSpace H M} {inst✝⁶ : IsManifold I (n + 1) M} {inst_tangent_findim : ∀ (x : M), FiniteDimensional (TangentSpace I x)} {x y : RiemannianMetric I n M} (val : x.val = y.val) :
    x = y
    instance PseudoRiemannianMetric.RiemannianMetric.instCoeSomeENat {E : Type v} [NormedAddCommGroup E] [NormedSpace E] {H : Type w} [TopologicalSpace H] [ChartedSpace H E] {I : ModelWithCorners E H} {n : ℕ∞} {M : Type w} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (n + 1) M] [inst_tangent_findim : ∀ (x : M), FiniteDimensional (TangentSpace I x)] :

    Coercion from RiemannianMetric to its underlying PseudoRiemannianMetric.

    Equations
    @[simp]
    theorem PseudoRiemannianMetric.RiemannianMetric.pos_def {E : Type v} [NormedAddCommGroup E] [NormedSpace E] {H : Type w} [TopologicalSpace H] [ChartedSpace H E] {I : ModelWithCorners E H} {n : ℕ∞} {M : Type w} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (n + 1) M] [inst_tangent_findim : ∀ (x : M), FiniteDimensional (TangentSpace I x)] (g : RiemannianMetric I n M) (x : M) (v : TangentSpace I x) (hv : v 0) :
    ((g.val x) v) v > 0
    @[simp]

    The quadratic form associated with a Riemannian metric is positive definite.

    InnerProductSpace structure from RiemannianMetric #

    noncomputable def PseudoRiemannianMetric.RiemannianMetric.tangentInnerCore {E : Type v} [NormedAddCommGroup E] [NormedSpace E] {H : Type w} [TopologicalSpace H] [ChartedSpace H E] {I : ModelWithCorners E H} {n : ℕ∞} {M : Type w} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (n + 1) M] [inst_tangent_findim : ∀ (x : M), FiniteDimensional (TangentSpace I x)] (g : RiemannianMetric I n M) (x : M) :

    The InnerProductSpace.Core structure for TₓM induced by a Riemannian metric g. This provides the properties of an inner product: symmetry, non-negativity, linearity, and definiteness. Each gₓ is an inner product on TₓM (O'Neill, p. 55).

    Equations
    • g.tangentInnerCore x = { inner := fun (v w : TangentSpace I x) => g.inner x v w, conj_inner_symm := , re_inner_nonneg := , add_left := , smul_left := , definite := }
    Instances For

      Local NormedAddCommGroup and InnerProductSpace Instances #

      These instances are defined locally to be used when a specific Riemannian metric g and point x are in context. They are not global instances to avoid typeclass conflicts and to respect the fact that a manifold might not have a canonical Riemannian metric, or might be studied with an indefinite (pseudo-Riemannian) metric where these standard norm structures are not appropriate.

      Creates an InnerProductSpace structure on TₓM from a Riemannian metric g. Alternative implementation using letI.

      Equations
      Instances For
        noncomputable def PseudoRiemannianMetric.RiemannianMetric.norm {E : Type v} [NormedAddCommGroup E] [NormedSpace E] {H : Type w} [TopologicalSpace H] [ChartedSpace H E] {I : ModelWithCorners E H} {n : ℕ∞} {M : Type w} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (n + 1) M] [inst_tangent_findim : ∀ (x : M), FiniteDimensional (TangentSpace I x)] (g : RiemannianMetric I n M) (x : M) (v : TangentSpace I x) :

        The norm on a tangent space induced by a Riemannian metric, defined as the square root of the inner product of a vector with itself.

        Equations
        Instances For
          noncomputable def PseudoRiemannianMetric.RiemannianMetric.norm' {E : Type v} [NormedAddCommGroup E] [NormedSpace E] {H : Type w} [TopologicalSpace H] [ChartedSpace H E] {I : ModelWithCorners E H} {n : ℕ∞} {M : Type w} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (n + 1) M] [inst_tangent_findim : ∀ (x : M), FiniteDimensional (TangentSpace I x)] (g : RiemannianMetric I n M) (x : M) (v : TangentSpace I x) :

          Helper function to compute the norm on a tangent space from a Riemannian metric, using the underlying NormedAddCommGroup structure.

          Equations
          Instances For

            Curve #

            def PseudoRiemannianMetric.RiemannianMetric.curveLength {E : Type v} [NormedAddCommGroup E] [NormedSpace E] {H : Type w} [TopologicalSpace H] [ChartedSpace H E] {I : ModelWithCorners E H} {n : ℕ∞} {M : Type w} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (n + 1) M] [inst_tangent_findim : ∀ (x : M), FiniteDimensional (TangentSpace I x)] (g : RiemannianMetric I n M) (γ : M) (t₀ t₁ : ) {IDE : ModelWithCorners } [ChartedSpace ] :

            Calculates the length of a curve γ between parameters t₀ and t₁ using the Riemannian metric g. This is defined as the integral of the norm of the tangent vector along the curve.

            Equations
            Instances For