Skip to content

9g (part 2): drop Riem, ‖·‖²_g, II, (∇R)— last typeclass-dispatch notations#40

Merged
Xinze-Li-Moqian merged 4 commits into
mainfrom
refactor/explicit-g-9g-part2
May 18, 2026
Merged

9g (part 2): drop Riem, ‖·‖²_g, II, (∇R)— last typeclass-dispatch notations#40
Xinze-Li-Moqian merged 4 commits into
mainfrom
refactor/explicit-g-9g-part2

Conversation

@Xinze-Li-Moqian
Copy link
Copy Markdown
Contributor

Summary

9g (part 2) — completes the _g notation drop started in #39.

Notations dropped

Notation Expansion Callsites
Riem(X, Y) Z riemannCurvature HasMetric.metric X Y Z 41
‖V‖²_g section: fun y => HasMetric.metric.metricInner y (V y) (V y); Bilin: frobeniusSq B 9
II(X, Y) (no callsites) 0
(∇R)[X](Y, Z) W covDerivRiemann X Y Z W 1 (in bianchi_second sorry)

Also removed MetricNormSq typeclass + 3 instances (Tangent, Section, Bilin).

After this PR, the only scoped notation left in OpenGALib's Riemannian namespace is ⟦X, Y⟧ for VectorField.mlieBracket _ X Y — which is metric-independent and stays.

Why

All _g notations dispatched via typeclass to HasMetric.metric, hardcoding a single metric per manifold. Dropping them is the precursor to 9h, which will replace HasMetric.metric with explicit (g : RiemannianMetric I M) parameters file-by-file (enabling Ricci flow / conformal change / comparison geometry where multiple metrics naturally appear).

Vol_g

vol_g (28 grep hits) is only docstring/comment usage — no Lean notation exists. No action needed; left as math prose.

Test plan

  • lake build clean per commit
  • CI green
  • Sorry / shake / MathTag baselines unchanged

@Xinze-Li-Moqian Xinze-Li-Moqian merged commit 1b3a5ef into main May 18, 2026
2 checks passed
@Xinze-Li-Moqian Xinze-Li-Moqian deleted the refactor/explicit-g-9g-part2 branch May 18, 2026 21:08
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.

1 participant