Coordinate relation between two rows: map, inverse, smoothness, Jacobian, pull-back
DefinitionAtlas_Core_RelationFor coordinate metrics on , sets , maps and a matrix-valued function , the proposition is the conjunction of: for ; for ; maps bijectively onto ; is on ; is on ; for all and indices the slice has derivative at ; and
Row of is the output component, column the input coordinate.
The acceptance criterion for the relations R1–R4: a change of coordinates is certified by an explicit map with explicit inverse and Jacobian, never by an existence statement; Ricci-flatness of the rows is not part of it.
Formalization Note Definition bundle generated by skeleton subtraction from the source module Atlas.Core.Relation; declarations: ExactVacuumAtlas.CoordRelation. No theorem is proved inside the bundle; it imports only Mathlib and other Definitions.Def_* bundles.
-- Generated by scripts/release01/gen_platform_tree.py (ATLAS-RELEASE-01) by skeleton subtraction from Atlas/Core/Relation.lean
-- definition bundle: kept ExactVacuumAtlas.CoordRelation
import Mathlib
import Definitions.Def_Atlas_Core_Basic
/-!
# Coordinate relation between two catalogue rows
`CoordRelation g₁ g₂ U V Φ Ψ J` packages exactly the obligations that `mission/RELEASE01_SPEC.md` §1
requires of a coordinate relation between two rows with metrics `g₁` (on the overlap `U`) and `g₂`
(on the image `V`):
* an explicit map `Φ` together with its inverse `Ψ` (`left_inv`, `right_inv`);
* `C^∞` regularity of `Φ` on `U` and of `Ψ` on `V`;
* `Φ` maps `U` bijectively onto `V` (`bijOn`);
* an explicit Jacobian `J` whose entries are proved to be genuine partial derivatives of the
components of `Φ` (`jacobian`: `HasDerivAt` of every coordinate slice, never a junk `deriv` value);
* the pull-back identity `J(x)ᵀ · g₂(Φ x) · J(x) = g₁(x)` on `U` (`pullback`).
Like `VacuumCertificate` this is a `Prop`-valued bundle of obligations (B3 class B); each field is
discharged by a separate theorem. Ricci-flatness of the two rows is *not* part of it. Everything is
coordinate-level on `ℝ⁴`: no manifold, chart gluing or `φ ∼ φ + 2π` identification is modelled.
-/
open scoped ContDiff
namespace ExactVacuumAtlas
/-- Coordinate relation between the row `(g₁, U)` and the row `(g₂, V)` through the map `Φ : U → V`
with inverse `Ψ`, Jacobian `J` (row `k` = output component, column `i` = input coordinate). -/
structure CoordRelation (g₁ g₂ : Metric 4) (U V : Set (Pt 4)) (Φ Ψ : Pt 4 → Pt 4)
(J : Pt 4 → Matrix (Fin 4) (Fin 4) ℝ) : Prop where
left_inv : ∀ x ∈ U, Ψ (Φ x) = x
right_inv : ∀ y ∈ V, Φ (Ψ y) = y
bijOn : Set.BijOn Φ U V
smooth : ContDiffOn ℝ ∞ Φ U
smooth_inv : ContDiffOn ℝ ∞ Ψ V
jacobian : ∀ x ∈ U, ∀ k i : Fin 4,
HasDerivAt (fun u : ℝ => Φ (Function.update x i u) k) (J x k i) (x i)
pullback : ∀ x ∈ U, (J x).transpose * metricMatrix g₂ (Φ x) * J x = metricMatrix g₁ x
namespace CoordRelation
variable {g₁ g₂ : Metric 4} {U V : Set (Pt 4)} {Φ Ψ : Pt 4 → Pt 4}
{J : Pt 4 → Matrix (Fin 4) (Fin 4) ℝ}
end CoordRelation
end ExactVacuumAtlas
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.