Documentation

LeanPool.JacobianDiffgeo.JacobianConstruction.ULift

The ULift shell: transporting ChartedSpace/IsManifold/LieAddGroup along Homeomorph.ulift #

Unit: jacobian-construction (docs/design/jacobian-construction.md §2, §7). The challenge's Jacobian X : Type u is universe-polymorphic in X, but the honest construction Jac₀ X := (Fin (genus X) → ℂ) ⧸ Λ lives in Type 0; Jacobian X := ULift.{u} (Jac₀ X) bridges the two. This file builds the (specialized, per design's R1 fallback) transport toolkit that moves ChartedSpace/IsManifold/LieAddGroup across Homeomorph.ulift : ULift (V ⧸ L) ≃ₜ V ⧸ L, for the same V, L as Torus.lean.

The key simplification throughout: ULift.up/ULift.down are an exact (not merely "eventual", unlike the lattice-shift business in Torus.lean) pair of mutually inverse continuous maps, so every chart composite involving them cancels by rfl. Consequently:

ChartedSpace/IsManifold #

noncomputable def RS.uliftChartAt {V : Type u_1} [NormedAddCommGroup V] (L : AddSubgroup V) [DiscreteTopology L] (x : V) :

The chart family for ULift (V ⧸ L): chartAt' L x, transported through Homeomorph.ulift.

Equations
Instances For
    @[instance_reducible]
    noncomputable instance RS.instChartedSpaceULift {V : Type u_1} [NormedAddCommGroup V] (L : AddSubgroup V) [DiscreteTopology L] :
    Equations
    theorem RS.uliftChartAt_symm_apply {V : Type u_1} [NormedAddCommGroup V] (L : AddSubgroup V) [DiscreteTopology L] (x w : V) :
    (uliftChartAt L x).symm w = { down := (chartAt' L x).symm w }

    Homeomorph.ulift's associated OpenPartialHomeomorph.symm, precomposed into a uliftChartAt, cancels by rfl (PartialEquiv.coe_trans_symm).

    theorem RS.uliftChartAt_trans_eq {V : Type u_1} [NormedAddCommGroup V] (L : AddSubgroup V) [DiscreteTopology L] (x x' : V) :
    ((uliftChartAt L x).symm.trans (uliftChartAt L x')) = ((chartAt' L x).symm.trans (chartAt' L x'))

    The ULift-wrapped transition function agrees exactly with the unwrapped one (no neighborhood needed: ULift.up/.down cancel by rfl).

    ULift (V ⧸ L) is an ω-manifold, by transporting Torus.lean's analyticOnNhd_chartAt'_trans exactly through the (rfl-cancelling) ULift wrapping.

    ULift.down/ULift.up are ω-smooth #

    ULift.down is ω-smooth: in matching charts at the same representative, the composite is the identity on the (open) chart target.

    LieAddGroup for ULift (V ⧸ L) #