structure
definition
EdgeLengthField
show as:
view math explainer →
open explainer
Generate a durable explainer page for this declaration.
open lean source
IndisputableMonolith.Foundation.SimplicialLedger.EdgeLengthFromPsi on GitHub at line 76.
browse module
All declarations in this module, on Recognition.
explainer page
depends on
used by
-
cubicArea -
cubicArea_nonneg -
cubicArea_singleton -
cubicDeficit -
cubicDeficit_singleton -
recoverEps -
CubicSimplicialInvarianceCert -
HingeTrivial -
regge_sum_append -
regge_sum_append_trivial -
regge_sum_nil -
regge_sum_refinement_invariant -
SimplicialRefinement -
SimplicialRefinement -
trivial_hinge_contribution -
conformal_edge_length_field -
DeficitAngleFunctional -
regge_sum
formal source
73 records the edge length computed from the vertex log-potentials. The
74 canonical conformal ansatz is `L e = a · exp((ε i + ε j)/2)`, which
75 reduces to `a` at `ε ≡ 0` (flat vacuum). -/
76structure EdgeLengthField (n : ℕ) where
77 base_spacing : ℝ
78 base_spacing_pos : 0 < base_spacing
79 length : Fin n → Fin n → ℝ
80 length_symm : ∀ i j, length i j = length j i
81 length_pos : ∀ i j, 0 < length i j
82
83/-- The canonical conformal edge-length map:
84 `L_{ij}(ε) = a · exp((ε_i + ε_j)/2)`.
85
86 In the flat vacuum `ε ≡ 0`, this reduces to `L_{ij} = a`. At leading
87 order in small `ε`, `L_{ij}/a - 1 = (ε_i + ε_j)/2 + O(ε²)`. This is
88 the standard conformal rescaling convention used when the recognition
89 potential is identified with a scalar metric perturbation. -/
90def conformal_edge_length_field {n : ℕ} (a : ℝ) (ha : 0 < a)
91 (ε : LogPotential n) : EdgeLengthField n :=
92 { base_spacing := a
93 , base_spacing_pos := ha
94 , length := fun i j => a * Real.exp ((ε i + ε j) / 2)
95 , length_symm := by
96 intro i j
97 have : ε i + ε j = ε j + ε i := by ring
98 simp [this]
99 , length_pos := by
100 intro i j
101 exact mul_pos ha (Real.exp_pos _)
102 }
103
104/-- At the flat vacuum `ε ≡ 0`, the conformal edge length is the base
105 spacing `a`. -/
106theorem conformal_edge_length_flat {n : ℕ} (a : ℝ) (ha : 0 < a)