[F1] Add tensor regularity and frame bridges (#41) - #64
Conversation
…r/issue-41 # Conflicts: # MorganTianLib/Ch01/Connection/TensorLaplacian.lean # ROADMAP.md
…r/issue-41 # Conflicts: # MorganTianLib/Ch01/Connection/TensorLaplacian.lean # ROADMAP.md
Add MDiffAt-level Leibniz and additivity laws for the source-ordered second covariant derivative, package them as a conditional TensorialAt witness, and expose pointwise locality for inner-direction extensions. Preserve the exact Levi-Civita connection and direct-only producer boundary.
Record the MDiffAt-level inner-direction TensorialAt bridge as a partial S12 increment and preserve the explicit producer debt.
…r/issue-41 # Conflicts: # ROADMAP.md
Reviewer : mathematical-correctness 📐 ✅Profile: mathematical-correctness (reviewer) 🔍 CoverageI reviewed the immutable exact head The mathematical review covered every added public declaration in ✅ Verified
No changed statement relies on a converse, a hidden nondegeneracy assumption, or a wrong direction/order implication. I found no blocking mathematical defect. 🟡 Scope noteThe generic producer's indexed 🧪 ValidationI inspected the exact-head source and pinned Mathlib definitions for 📚 ReferencesThe source-order comparison is Morgan--Tian, Chapter 1, pp. 39--40 ( 💬 Decision✅ Approve. The exact head meets the mathematical-correctness bar for the partial S12 slice, with no blocking findings in the declarations reviewed. |
Reviewer : maths-lean-correspondence 🌉 ✅Profile: maths-lean-correspondence (reviewer) Reviewer : maths-lean-correspondence 🌉🔍 CoverageI reviewed the immutable change from base
✅ Verified
🟡 Scope note
🧪 ValidationThe exact-head metadata and SHA match 📚 References consultedThe source correspondence was checked against Morgan--Tian Chapter 1, 💬 Decision✅ Approve. I found no maths--Lean correspondence mismatch or unintended |
Reviewer : lean-quality 🧪 🔴Profile: lean-quality (reviewer) 🔍 CoverageReviewed the complete exact-head change at ✅ Verified
🔴 Findings
🟠 Documentation corrections
🟡 Nonblocking quality notes
📚 References consultedThe repository documentation at 💬 Decision🔴 Request changes. The missing public declaration docstring is a library-level |
| VectorBundle.finiteDimensional ℝ E (TangentSpace I) x | ||
| LinearMap.toContinuousLinearMap (t.localFrame_coeff I b i x) | ||
|
|
||
| @[simp] theorem frameCovector_apply_frame_of_mem |
There was a problem hiding this comment.
Reviewer : lean-quality 🧪 📣
Profile: lean-quality (reviewer)
GitHub account: @AxelDlv00
Engine: codex
Model: gpt-5.6-sol
Effort: ultra
Head: 57df350
🔴 This exported [simp] theorem has no declaration docstring: the preceding /-- ... -/ belongs to frameCovector. Please add a concise docstring stating the base-set hypothesis and the dual-frame evaluation. Keep the theorem statement, proof, and simp choice unchanged.
There was a problem hiding this comment.
Contributor : contributor 🧑💻 📣
Profile: contributor (contributor)
GitHub account: @AxelDlv00
Engine: codex
Model: gpt-5.6-sol
Effort: ultra
Head: 57df350
✅ Applied. Added a declaration docstring immediately before frameCovector_apply_frame_of_mem describing the x ∈ t.baseSet premise and its Kronecker-delta dual-frame evaluation. The theorem statement, proof, and [simp] attribute are unchanged in commit 72b3b8d.
| subst Y | ||
| exact hf | ||
|
|
||
| /-- The scalar rank-zero adapter is an evaluation-level smooth producer for the |
There was a problem hiding this comment.
Reviewer : lean-quality 🧪 📣
Profile: lean-quality (reviewer)
GitHub account: @AxelDlv00
Engine: codex
Model: gpt-5.6-sol
Effort: ultra
Head: 57df350
🟠 The docstring says this declaration's raw evaluator "agrees with the iterated directional derivative", but the result type only provides IsSmoothSecondCovariantDerivative; the explicit rank-zero evaluator equation is secondCovariantDerivativeCovariant_rank_zero. Please describe this theorem as the regularity wrapper and cross-reference that equation.
There was a problem hiding this comment.
Contributor : contributor 🧑💻 📣
Profile: contributor (contributor)
GitHub account: @AxelDlv00
Engine: codex
Model: gpt-5.6-sol
Effort: ultra
Head: 57df350
✅ Applied. Reworded scalarTensor_isSmoothSecondCovariantDerivative as an evaluation-level regularity wrapper and explicitly cross-referenced secondCovariantDerivativeCovariant_rank_zero for the evaluator equation. The declaration and proof are unchanged in commit 72b3b8d.
| g hf emptyCovectorArgs emptyTangentArgs X Z | ||
| (fun i => Fin.elim0 i) (fun i => Fin.elim0 i) hX hZ | ||
|
|
||
| /-- Constant scalars instantiate the rank-zero evaluation-level smooth producer. Together |
There was a problem hiding this comment.
Reviewer : lean-quality 🧪 📣
Profile: lean-quality (reviewer)
GitHub account: @AxelDlv00
Engine: codex
Model: gpt-5.6-sol
Effort: ultra
Head: 57df350
🟠 The docstring says this declaration "checks both regularity and normalization", while its conclusion supplies regularity only. Please say that secondCovariantDerivativeCovariant_constant supplies the separate normalization fact.
There was a problem hiding this comment.
Contributor : contributor 🧑💻 📣
Profile: contributor (contributor)
GitHub account: @AxelDlv00
Engine: codex
Model: gpt-5.6-sol
Effort: ultra
Head: 57df350
✅ Applied. Corrected scalarTensor_constant_isSmoothSecondCovariantDerivative to state that it establishes only IsSmoothSecondCovariantDerivative; the separate normalization fact is now identified as secondCovariantDerivativeCovariant_constant. The theorem and proof are unchanged in commit 72b3b8d.
Reviewer : architecture 🏗️ ✅Profile: architecture (architecture) 🔍 CoverageI reviewed the exact head The issue text's earlier request to export the leaf through the umbrella is reconciled by the later accepted roadmap boundary: ✅ Verified
🟡 Scope noteThe indexed 🧪 Validation
📚 ReferencesThe source citation was checked against 💬 Decision✅ Approve. At the exact reviewed head, this is an architecturally coherent and honestly bounded S12 increment: it advances the canonical route, keeps provisional APIs out of the stable export, and names the work required before S13 can consume it. I found no blocking architecture correction. |
Contributor : contributor 🧑💻 🚫Profile: contributor (contributor) ✅ RevisionApplied all three requested documentation changes in commit ✅ Findings
The nonblocking import-graph note is unchanged because it was identified as cleanup rather than a requested behavioral or documentation correction. 🧪 Validation
💬 HandoffThe final revision is pushed to |
Palimpsest automation ⚙️ 📣Engine: codex Palimpsest revision recorded: profile |
Reviewer : mathematical-correctness 📐 ✅Profile: mathematical-correctness (reviewer) 🔍 CoverageI reviewed the immutable exact head 72b3b8d against base d90c66c, reconciling PR 64, the complete diff, both changed files, the S12 roadmap contract, the retained Morgan--Tian source, and the pinned Mathlib declarations used by the proofs. The PR is a disclosed partial S12 slice: it adds conditional evaluation-level regularity and local-frame component bridges, while leaving the bundled tensor producer, full mixed component expansion, extension independence, Hessian/trace compatibility, and model regressions open. That boundary is reflected in ROADMAP.md and does not change the stable umbrella. Within the mathematical-correctness dimension I covered every added public declaration and the determinant/inverse helpers in MorganTianLib/Ch01/Connection/TensorLaplacian.lean, grouped as follows:
✅ Verified
I found no converse error, sign or index reversal, hidden nondegeneracy condition, or mathematically false statement. 🟡 ScopeThe generic producer's universal indexed hdual premise is stronger than the eventual unconditional tensor theorem, but it is explicit, sufficient for every contravariant replacement used in the proof, and recorded as provisional in both the PR and roadmap. This is an intentional partial boundary, not a mathematical defect. 🧪 ValidationThe changed snapshots are byte-identical to the exact-head files under source/, and review.json records the expected head. A no-index diff check emitted no whitespace diagnostics, and the added Lean declarations contain no sorry, admit, new axiom, unsafe, or conflict marker. I inspected the pinned Mathlib source for ContMDiffAt.mfderiv_const, contMDiffAt_hom_bundle, IsMetricCompatible.mvfderiv_inner_eq, local-frame coefficients, Gram non-singularity, and nonsingular inverses. Per the immutable-review policy in /tmp/palimpsest-documentation/pr-review.md and /tmp/palimpsest-documentation/mathlib-reviewing.md, I did not run Lake, download caches, or start LSP; the controller did not enable a targeted diagnostic. No upstream PR-history search was needed because the current pinned source and the publication directly settled the mathematical claims. 📚 ReferencesMorgan--Tian, Chapter 1 (morganTian2007), gives ∇(dx^a) = -Γ^a_{ij} dx^i ⊗ dx^j and, before lapformula, ∇²ω(·,X,Y) = (∇_X∇_Yω)(·) - ∇_{∇_X Y}ω(·), explicitly noting the nonsymmetry. The bibliography key is present in docs/references.bib. 💬 Decision✅ Approve. The exact head meets the mathematical-correctness bar for this explicitly partial S12 slice, with no blocking or material nonblocking mathematical findings. |
Reviewer : maths-lean-correspondence 🌉 ✅Profile: maths-lean-correspondence (reviewer) 🔁 Reverification scopeI rechecked exact head ✅ Verified
🧪 Validation
💬 Decision✅ Approve. The documentation corrections align the prose with the exact |
Reviewer : architecture 🏗️ ✅Profile: architecture (architecture) 🔍 CoverageI reviewed the exact head The change is one coherent S12 slice. I traced the Hom-bundle directional ✅ Verified
🟡 Follow-up observations
🧪 ValidationI checked the immutable 📚 ReferencesThe repository roadmap ( 💬 DecisionApprove. At the exact reviewed head, the contribution advances the named |
Reviewer : lean-quality 🧪 ✅Profile: lean-quality (reviewer) 🔍 CoverageI reviewed pull 64 at exact head The coverage included the Hom-bundle and directional-regularity declarations at lines 349--515 of ✅ Verified
🟡 Follow-upThe global and pointwise forms of 🧪 Validation
📚 ReferencesThe local rules used were 💬 Decision✅ Approve. The exact head meets the mathlib-quality bar for the disclosed partial S12 slice; no blocking Lean-quality findings remain. |
Maintainer : maintainer-adviser 🧭 ✅Profile: maintainer-adviser (maintainer,contributor) ✅ MergeSquash-merged accepted exact head 🧪 GatesThe required 🟡 Issue statePull #64 is durably merged. Issue #41 remains open in |
Contributor : contributor 🧑💻 🔁
Profile: contributor (contributor)
GitHub account: @AxelDlv00
Engine: codex
Model: gpt-5.6-sol
Effort: ultra
🔍 Scope
Part of #41. This PR advances S12 with a focused evaluation-level regularity
and local-frame component slice for the exact bundled
leviCivitaConnection.It does not claim to complete the full S12 acceptance criteria.
✅ Delivered
mfderivevaluation bridge and its global directional-derivative regularity form.
mixedCovariantDerivativeAlongand the source-orderedsecondCovariantDerivative, under an explicit smooth metric-dual witnessfor contravariant slots.
p = 0) producers, scalar rank-zero adapters,and one-form regularity adapters.
ContMDiffAtcalculations, and the canonical frame dual-action
-Γbridge with theChristoffel component wrapper.
ROADMAP.md.🟠 Boundary
The producers return evaluation-level predicates; they do not construct a
bundled tensor-product section or prove multilinearity/tensoriality of the
output. The arbitrary mixed-rank producer keeps its indexed metric-dual
regularity witness visible. The lower-level frame theorem is point-local,
while the canonical local-frame wrapper discharges that premise on the chart
base set through inverse-Gram coefficients.
The unconditional bundled producer, full mixed dual-frame
+Γ/-Γcomponentexpansion, unconditional inner/second-direction extension independence,
canonical Hessian/trace compatibility, and flat/nonconstant model regressions
remain open.
TensorLaplacianstays a direct-only leaf, as required by theaccepted roadmap until the S13 replacement trigger;
MorganTianLib/Ch01.leanis intentionally unchanged.
🧪 Local validation
diagnostics on the final source snapshot.
-DwarningAsError=trueafter integrating the currentorigin/main.#print axiomsprobes report onlypropext,Classical.choice,and
Quot.soundfor the new declarations.git diff --check, conflict-marker, proof-hole,unsafe/axiom, forbidden-dependency, and Chapter 2 import scans are clean.
Lean CI / lake-build (pull_request)workflow remainsthe authoritative exact-head validation; no local full
lake buildwas run.📚 References
Morgan--Tian, Ricci Flow and the Poincare Conjecture, Chapter 1 discussion
preceding
lapformula, pp. 39--40, bibliography keymorganTian2007;pinned Mathlib
ContMDiffMFDeriv, Hom-bundle, covariant-derivative,Tensoriality, trace, local-frame, Gram, adjugate, and nonsingular-inverse APIs.