Skip to content

Update#1

Merged
Xinze-Li-Moqian merged 1 commit into
mainfrom
Topology
May 9, 2026
Merged

Update#1
Xinze-Li-Moqian merged 1 commit into
mainfrom
Topology

Conversation

@zhifeizhu92
Copy link
Copy Markdown
Collaborator

No description provided.

@Xinze-Li-Moqian Xinze-Li-Moqian merged commit cc78a96 into main May 9, 2026
2 checks passed
Xinze-Li-Moqian added a commit that referenced this pull request May 9, 2026
- Remove .codex-gitconfig: Windows-specific Codex tooling artifact
  accidentally bundled with the contribution; not project state.
- Drop Loop space stanza from Riemannian.lean public API list. The
  file and import are retained; names (BasedLoop, FreeLoop,
  LoopInterval) are not yet committed as stable surface pending
  iteration over Mathlib.Topology.Path.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Xinze-Li-Moqian added a commit that referenced this pull request May 9, 2026
- Remove .codex-gitconfig: Windows-specific Codex tooling artifact
  accidentally bundled with the contribution; not project state.
- Drop Loop space stanza from Riemannian.lean public API list. The
  file and import are retained; names (BasedLoop, FreeLoop,
  LoopInterval) are not yet committed as stable surface pending
  iteration over Mathlib.Topology.Path.
Xinze-Li-Moqian added a commit that referenced this pull request May 9, 2026
Mathlib-style layout: every Lean module now lives under OpenGALib/, with
OpenGALib.lean as the only root entry. Five sub-namespace umbrellas
(Algebraic, Riemannian, GeometricMeasureTheory, MinMax, Regularity) and
their subdirectories moved verbatim into OpenGALib/.

- 153 import lines rewritten from `import Foo.Bar` to
  `import OpenGALib.Foo.Bar` across 60 files (includes
  Riemannian.LoopSpace from PR #1).
- Docstring path references rewritten to the OpenGALib/ prefix.
- lakefile globs collapse to `.andSubmodules `OpenGALib`.
- CI sorry/axiom grep paths updated to scan `OpenGALib`.
- references/ directory deleted (cite_verification table outdated;
  removed mention from CLAUDE.md).

Namespaces inside files are unchanged (`namespace Riemannian` stays
as-is); folder structure is now decoupled from Lean namespaces,
mirroring the Mathlib pattern.
Copy link
Copy Markdown
Contributor

@Xinze-Li-Moqian Xinze-Li-Moqian left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good job!

Xinze-Li-Moqian added a commit that referenced this pull request May 10, 2026
Substantive progress on manifold scalar Hessian-Lie:

* `mfderiv_extChartAt_eq_id_eventually` (Helper #1): chart's mfderiv at
  base-point-in-coherent-nbhd is identity. Closed via
  `continuousLinearMapAt_trivializationAt_eq_core` + `coordChange_self`
  + `IsLocallyConstantChartedSpace`. ~20 lines, Mathlib upstream PR
  candidate.

* Inner locality bridges (`h_inner_W`, `h_inner_V`) within main proof:
  `mfderiv f y (W y) = fderivWithin f_loc s (phi y) (W y)` on chart-
  coherent nbhd. Closed via `MDifferentiableAt.mfderiv` +
  `writtenInExtChartAt` unfolding + chart coherence.

* Local pullback vectors `V_loc, W_loc : E_M → E_M` defined.

Remaining: outer mfderiv chart-pullback + `mlieBracket` unfolding via
`mlieBracketWithin_apply` + match against `flat_hessianLieWithin_apply`.
~30-50 lines of careful term-mode Lean.
Xinze-Li-Moqian added a commit that referenced this pull request May 10, 2026
`h_outer_W`/`h_outer_V`: outer mfderiv'd functions reformulated as
`g_chart ∘ phi` where `g_chart : E_M → F` is the flat chart-form. Closed
via `phi.symm ∘ phi = id` on chart source.

Remaining: chain rule (`mfderiv (g_chart ∘ phi) x = fderiv g_chart (phi x)
∘ mfderiv phi x` + Helper #1) + flat Within application + RHS bridge
via `mlieBracketWithin_apply`. ~30-50 lines.
Xinze-Li-Moqian added a commit that referenced this pull request May 10, 2026
Document concrete remaining steps after Helpers #1, #2 + locality bridges:
1. Smoothness of g_chart from f C² + V/W C¹
2. Apply Helper #2 to LHS terms
3. Substitute V/W base-point identities
4. Apply flat_hessianLieWithin_apply
5. RHS bridge via Helper #2 + mlieBracketWithin_apply + Helper #1

Each step bounded mechanical follow-up. File: 1 sorry, build clean.
Xinze-Li-Moqian added a commit that referenced this pull request May 10, 2026
…cker

`change` tactic to inline `extChartAt I x` for `rw [Helper #2]` fails due
to `TangentSpace 𝓘(ℝ,F) (g_chart_W (...))` basepoint def-eq under HSub
instance synthesis. Workaround requires explicit `@HSub.hSub` ascription
or `show`-based goal restructuring (~30-40 lines).

State: 1 sorry remaining (main body), Helpers #1, #2 + locality bridges
+ base-point identities all closed.
Xinze-Li-Moqian added a commit that referenced this pull request May 10, 2026
Multiple attempts to apply Helper #2 via rw/simp_only/show all blocked by
Lean's `set phi := extChartAt I x` interaction with pattern matching.
Architectural path documented; ~30-50 lines of careful term-mode work
remains.

State: 1 sorry, build clean. Helpers #1, #2 + locality + base-point
identities all closed (~150 lines real proof in this file).
Xinze-Li-Moqian added a commit that referenced this pull request May 10, 2026
Added mDirDeriv-form Helper #2 (`mDirDeriv_chart_compose_apply`) — F-typed
wrapper that sidesteps the basepoint HSub elaboration issue.

Main theorem proof body now substantially fleshed out:
* Re-fold to mDirDeriv form via show
* Apply mDirDeriv-form Helper #2 to LHS terms (works on F-typed mDirDeriv)
* Substitute V/W base-point identities
* Apply flat_hessianLieWithin_apply
* RHS: rewrite mDirDeriv f x via Filter.EventuallyEq.mfderiv_eq + Helper #2
* mlieBracketWithin_apply expansion via Helper #1 (chart mfderiv = id)

Remaining gaps:
* Smoothness premises sorry'd (5 sub-sorrys for f_loc C², V/W_loc, g_chart_W/V)
* `mpullbackWithin V (range I)` vs `V ∘ phi.symm` identification
  (needs chart-inverse mfderiv = id helper)
* `ContinuousLinearMap.id.inverse` simplification

Architectural path complete; closure is substantive Lean engineering.
Xinze-Li-Moqian added a commit that referenced this pull request May 10, 2026
…lans

5 remaining sorrys in main theorem (4 smoothness + 1 mpullbackWithin bridge).
All have concrete repair paths via:
* hV.coordSmoothAt + IsLocallyConstantChartedSpace + extChartAt_symm pull
* fderivWithin smoothness + clm_apply chain rule
* chart-inverse mfderiv = id helper (analog of Helper #1)

Bianchi I, flat Hessian-Lie, Helpers #1+#2, locality bridges, base-point
identities, RHS bridge structure all in place (~250 lines real proof).
Xinze-Li-Moqian added a commit that referenced this pull request May 10, 2026
Closed via hV/hW.mdifferentiableAt → mdifferentiableAt_totalSpace projection
→ congr_of_eventuallyEq with chart-coherent identification of trivAt.cLMA = id
(Helper #1 logic) → MDifferentiableWithinAt.differentiableWithinAt_comp_extChartAt_symm.

Sorry count: 5 → 3.
Riemannian package: 8 → 6.
Xinze-Li-Moqian added a commit that referenced this pull request May 10, 2026
After substantial closure in HessianLie.lean:
- Helpers #1, #2: 0 sorry
- Flat Hessian-Lie (univ + Within): 0 sorry
- Inner/outer locality bridges: closed inline
- Base-point V/W identities: closed
- f_loc, V_loc, W_loc, g_chart_W, g_chart_V smoothness: all closed
- Only h_lieBr_eq's mpullbackWithin bridge remaining

Riemannian package: 8 → 4 sorrys this session.
Xinze-Li-Moqian added a commit that referenced this pull request May 10, 2026
id.inverse simplification in main theorem

Helper #3 (`mfderivWithin_extChartAt_symm_eq_id_at_base`) closed via
mfderiv_extChartAt_comp_mfderivWithin_extChartAt_symm + Helper #1.

Main theorem: rewrite chain reaches `id (lieBracketWithin (mpullbackWithin V)
(mpullbackWithin W) (range I) (phi x))` form. Final step needs:
* `id v = v` (trivial)
* `mpullbackWithin V (range I) =ᶠ V_loc` on chart-target nbhd within range I,
  via Helper #3 extended to nbhd + lieBracketWithin congruence
Xinze-Li-Moqian added a commit that referenced this pull request May 10, 2026
…-sorry)

Final closure step: extended Helper #3 to chart-target nbhd via
`Filter.Tendsto.mono_left` of phi.symm continuity + chart-coherence
pull-back. Then `Filter.EventuallyEq.lieBracketWithin_vectorField_eq_of_mem`
bridges `mpullbackWithin V (range I)` to `V_loc` (and same for W).

The complete proof chain now:
* Bianchi I (Connection/Bianchi.lean): 0-sorry ✓
* Flat scalar Hessian-Lie (univ + Within): 0-sorry ✓
* Helper #1 (chart mfderiv = id eventually): 0-sorry ✓
* Helper #2 (chart-compose mfderiv → fderivWithin): 0-sorry ✓
* mDirDeriv-form Helper #2: 0-sorry ✓
* Helper #3 (chart-inverse mfderivWithin = id at base): 0-sorry ✓
* Helper #3 extended (eventually within range I): 0-sorry ✓
* mfderiv_iterate_sub_eq_mlieBracket_apply (manifold scalar Hessian-Lie):
  0-sorry ✓ (~250 lines real proof)

Riemannian package: 4 → 3 sorrys (only Curvature.lean's 3 remaining,
which are unblocked by this closure).
Xinze-Li-Moqian added a commit that referenced this pull request May 10, 2026
Restructure 726-line monolithic `Foundations/HessianLie.lean` into
single-responsibility modules:

* `HessianLie/Flat.lean` (105 lines) — flat fderiv versions
* `HessianLie/ChartHelpers.lean` (175 lines) — Helper #1, #2, #3
* `HessianLie/Manifold.lean` (315 lines) — manifold version + mDirDeriv

`HessianLie.lean` becomes a 30-line facade re-exporting the three.

Engineering improvements:
* Extracted 4 named helper lemmas in Manifold.lean
  (`MDifferentiableAt_of_tangent_bundle_section`,
   `DifferentiableWithinAt_chart_pullback_of_section`,
   `mfderiv_inner_eq_fderivWithin_eventually`,
   `mpullbackWithin_extChartAt_symm_eq_eventually`,
   `mlieBracket_eq_lieBracketWithin_chart_pullback`)
  — eliminates V/W code duplication in main proof body
* Tightened docstrings (concise + structured)
* Removed dev-comment noise; kept algorithmic 1-2 line annotations
* `omit` clauses for unused typeclass instances
* Total: 726 → 595 lines (-18%) with cleaner separation

All 3 modules + facade build clean, 0-sorry. Riemannian package: 3 sorrys
remaining (all in Curvature.lean).
Xinze-Li-Moqian added a commit that referenced this pull request May 13, 2026
Port external `riemannSec_eq_zero_of_Z_eq_zero` to OpenGALib's
SmoothVectorField interface. Strategy: local frame `e.localFrame basisF`
at `x` + smooth bump `χ` with `tsupport χ ⊆ e.baseSet` produces a
finite-sum decomposition `Z =ᶠ ∑ gᵢ • s'ᵢ` near `x` where each
`gᵢ x = 0` (since `Z x = 0` and `localFrame_coeff` is linear). Apply
Z-slot scalar Leibniz (`riemannCurvature_smul_third_scalar_field`)
and additivity (`riemannCurvature_add_third`) inductively to each
summand; the empty case reduces via the zero-section identity for
`leviCivitaConnection.isCovariantDerivativeOnUniv`.

Item #2 in the Bochner closure plan (#1 = Z-slot locality landed).
Xinze-Li-Moqian added a commit that referenced this pull request May 13, 2026
…d + vanishing + eq_at

Five new lemmas mirroring the Z-slot machinery for the first slot of
riemannCurvature. The X-slot scalar Leibniz has clean cancellation
(no h_interior required, no curvature correction): the Y(f) boundary
contributions from the inner-section Leibniz pair against the
Lie-bracket smul-Leibniz with opposite sign.

* `riemannCurvature_smul_first_scalar_field`: R(f•X, Y) Z x = f x • R(X, Y) Z x
* `riemannCurvature_add_first`: R(X+X', Y) Z = R(X, Y) Z + R(X', Y) Z
* `riemannCurvature_eq_of_X_eventuallyEq`: X =ᶠ X' near x ⇒ R(X, Y) Z x = R(X', Y) Z x
* `riemannCurvature_eq_zero_of_X_eq_zero_field`: X x = 0 ⇒ R(X, Y) Z x = 0
* `riemannCurvature_eq_of_X_eq_at`: X x = X' x ⇒ R(X, Y) Z x = R(X', Y) Z x

Same chart-frame + bump + induction template as Z-slot vanishing,
using `mlieBracket_smul_left` and `mlieBracket_add_left` for the
direction-slot Leibniz rules.

Item #4 in the Bochner closure plan (Z-slot chain #1-#3 already landed).
@Xinze-Li-Moqian Xinze-Li-Moqian deleted the Topology branch May 15, 2026 23:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants