Documentation

LeanPool.JacobianDiffgeo.ProperDegree.ChallengeDegree

The challenge-signature mapping degree (proper-map-degree, file 1 of 3) #

Unit: proper-map-degree (docs/design/proper-map-degree.md ยง3.1). Root-level wrapper of RS.degree (Jacobian/MappingDegree/Degree.lean) matching the EXACT signature the challenge file (docs/Jacobian_challenge.lean:147) demands.

Deviation from the design doc (proper-map-degree.md ยง3.1): the design's sketch declared variable {f : X โ†’ Y} (implicit). The challenge file's own preamble (docs/Jacobian_challenge.lean:104, variable (f : X โ†’ Y) (hf : ContMDiff ๐“˜(โ„‚) ๐“˜(โ„‚) ฯ‰ f)) declares f explicit โ€” confirmed load-bearing by its own call site pushforward_pullback's RHS (ContMDiff.degree f hf) โ€ข P, which applies f positionally. To match "the exact challenge signature" this file declares f explicit throughout; hf.degree (dot notation) still works since f is fully determined by unification against hf's type.

The degree of a holomorphic map between compact Riemann surfaces (challenge signature, docs/Jacobian_challenge.lean:147). Equal to 0 for constant maps (RS.degree_of_forall_eq), otherwise the usual mapping degree (RS.degree). One-line wrapper โ€” RS.degree already has the right junk-0 convention definitionally, no case split needed. [Nonempty Y] (needed by RS.degree) is discharged for free by ConnectedSpace.toNonempty (Mathlib.Topology.Connected.Basic:636).

Equations
Instances For

    Restated junk convention in wrapper form (RS.degree_of_forall_eq, unfolded).

    Functoriality, restated in wrapper form (statement bank; no critical consumer identified, kept for API parity with RS.degree_comp).