Definitions/Def_ModularCurve_NodeDepth.lean
Node depths, crossing coordinates, and the component-group law
Throughout, q is a prime, A a valuation subring of \overline{\mathbb Q} with a reduction homomorphism red : A \to k to a field k of characteristic q, N \ge 1, and P a PlaceSpecialization attached to modular polynomial data satisfying a Kronecker congruence together with integrality hypotheses for the two degeneracy maps; R is a ProlongationTuple over P. First, for a finite index set \iota and s \in \iota, crossingCoord s is the \mathbb Z-linear functional on the character lattice characterLattice ι (a submodule of \iota \to \mathbb Z) given by \gamma \mapsto \gamma(s). Next, given a weight function depth on the places of \overline{\mathbb Q}-rational function field of level Nq and a divisor D there, depthDiv is the divisor on the level-N fibre over k obtained by pushing D forward along P's first reduction map reduceFst, each multiplicity being multiplied by depth of the place; depthDual packages this into the functional \sum_s (\mathrm{depthDiv}\,D)(s_1)\cdot\,crossingCoord s on the character lattice of the set of node pairs \{(w, g\cdot w) : w \in W\} for a semilinear automorphism g and a finite set W of places. DepthCompLaw is then a property of an additive map comp from the inertia invariants of \mathrm{Pic}^0 at level Nq to the component group of the width function w \mapsto e(w): for every degree-zero divisor D whose class lies in those invariants and all of whose support places are fixed by the arithmetic Galois action of the inertia subgroup of A over \mathbb Q and are strict for the first or second reduction or reduce to a place of W, and for every node pair s_0, the value of comp on the class of D is the image under componentGroupProj of depthDual applied to D plus \deg(P.\mathrm{sndDiv}\,D) times e(s_{0,1})\cdotcrossingCoord at s_0. Finally, for a place w of the level-N fibre, ValueIntegralityLaw asserts that every f in the node ring R.\mathrm{nodeIntegers}\,w takes values in A at all places V with \mathrm{reduceFst}\,V = w; and for node coordinates c = (x,y) at w over an intermediate field K (so that x has zero first residue and is a uniformiser for the second residue at g\cdot w, and y symmetrically), xDepth and yDepth are the A-valuations of the values x(V), y(V) in the value group of A, and DepthValueLaw states that at every inertia-fixed V over w one has \mathrm{yDepth}(V) = v_A(q)^{depth(V)}.
Relation to Mathlib
The linear algebra and valuation-theoretic ingredients are Mathlib's (Module.Dual, LinearMap.proj, Finsupp divisors, ValuationSubring.valuation and its value group); the node rings, depth weights, character lattice of crossings and the component-group laws are project notions with no Mathlib counterpart.
Where it is used
These notions quantify how a divisor on the level-Nq curve meets the crossings of a semistable model at q: the depth of a place measures the q-adic position of the point in the annulus xy = (power of q) at a node, and DepthCompLaw records that specialisation of inertia-invariant degree-zero classes into the component group of the special fibre is computed by the resulting functional on the character lattice. They are the local input for the description of the inertia action on the Jacobian at q used in the level-lowering step.
References
- M. Raynaud, Spécialisation du foncteur de Picard, Publications Mathématiques de l'IHÉS 38 (1970), 27–76
- P. Deligne and M. Rapoport, Les schémas de modules de courbes elliptiques, in: Modular Functions of One Variable II, Lecture Notes in Mathematics 349, Springer, 1973, 143–316
- H. Darmon, F. Diamond and R. Taylor, Fermat's Last Theorem, in: Current Developments in Mathematics 1995, International Press, 1995, 1–154, §2
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 100 lines
- 9 declarations
- used in the statements of 142 theorems and imported by 146 proofs
- imports 1 definition modules
Source file: Definitions/Def_ModularCurve_NodeDepth.lean
Declarations
- def
ModularCurve.crossingCoord - theorem
ModularCurve.crossingCoord_apply - def
ModularCurve.PlaceSpecialization.depthDiv - def
ModularCurve.PlaceSpecialization.depthDual - def
ModularCurve.PlaceSpecialization.DepthCompLaw - def
ModularCurve.PlaceSpecialization.ProlongationTuple.ValueIntegralityLaw - def
ModularCurve.PlaceSpecialization.ProlongationTuple.NodeCoordinates.xDepth - def
ModularCurve.PlaceSpecialization.ProlongationTuple.NodeCoordinates.yDepth - def
ModularCurve.PlaceSpecialization.ProlongationTuple.NodeCoordinates.DepthValueLaw
Source
import Definitions.Def_ModularCurve_NodeLocalizedPlaces set_option autoImplicit false noncomputable section open AlgebraicCurve IsLocalRing ModularCurve namespace ModularCurve section CrossingCoord variable {ι : Type*} [Fintype ι] def crossingCoord (s : ι) : Module.Dual ℤ (characterLattice ι) := (LinearMap.proj s).comp (characterLattice ι).subtype @[simp] theorem crossingCoord_apply (s : ι) (γ : characterLattice ι) : crossingCoord s γ = γ.1 s := rfl end CrossingCoord namespace PlaceSpecialization variable {q : ℕ} [Fact q.Prime] {A : ValuationSubring (AlgebraicClosure ℚ)} {N : ℕ} [NeZero N] {k : Type*} [Field k] [CharP k q] {red : A →+* k} {data : ModularPolynomialData q} {hKr : KroneckerCongruence q data} {hα : HeckeAlphaBarIntegral (AlgebraicClosure ℚ) N q} {hβ : HeckeBetaBarIntegral (AlgebraicClosure ℚ) N q} (P : PlaceSpecialization A q N data hKr k red hα hβ) def depthDiv (depth : Place (AlgebraicClosure ℚ) (modularFunctionFieldBar (N * q)) → ℕ) (D : Divisor (AlgebraicClosure ℚ) (modularFunctionFieldBar (N * q))) : Divisor k (modularFunctionFieldC k N) := D.sum fun V n => Finsupp.single (P.reduceFst V) (n * (depth V : ℤ)) def depthDual (g : SemilinearAut k (modularFunctionFieldC k N)) (W : Finset (Place k (modularFunctionFieldC k N))) (depth : Place (AlgebraicClosure ℚ) (modularFunctionFieldBar (N * q)) → ℕ) (D : Divisor (AlgebraicClosure ℚ) (modularFunctionFieldBar (N * q))) : Module.Dual ℤ (characterLattice ↥(nodePairsOfPlaces g W)) := ∑ s : ↥(nodePairsOfPlaces g W), P.depthDiv depth D (s : Place k (modularFunctionFieldC k N) × Place k (modularFunctionFieldC k N)).1 • crossingCoord s def DepthCompLaw (g : SemilinearAut k (modularFunctionFieldC k N)) (W : Finset (Place k (modularFunctionFieldC k N))) (e : Place k (modularFunctionFieldC k N) → ℕ) (depth : Place (AlgebraicClosure ℚ) (modularFunctionFieldBar (N * q)) → ℕ) (comp : ↥(inertiaInvariants A (N * q)) →+ componentGroup (widthOfPlaces g W e)) : Prop := ∀ (D : ↥(Divisor.degZero (K := AlgebraicClosure ℚ) (F := ↥(modularFunctionFieldBar (N * q))))) (hH : Pic0.mk D ∈ inertiaInvariants A (N * q)), (∀ V ∈ (D : Divisor (AlgebraicClosure ℚ) (modularFunctionFieldBar (N * q))).support, (∀ σ ∈ A.inertiaSubgroupIn ℚ, arithmeticGalois (modularFunctionFieldFull (N * q)) σ • V = V) ∧ (P.IsStrictFst V ∨ P.IsStrictSnd V ∨ P.reduceFst V ∈ W)) → ∀ (s₀ : Place k (modularFunctionFieldC k N) × Place k (modularFunctionFieldC k N)) (hs₀ : s₀ ∈ nodePairsOfPlaces g W), comp ⟨Pic0.mk D, hH⟩ = componentGroupProj (widthOfPlaces g W e) (P.depthDual g W depth (D : Divisor (AlgebraicClosure ℚ) (modularFunctionFieldBar (N * q))) + Divisor.degree (P.sndDiv (D : Divisor (AlgebraicClosure ℚ) (modularFunctionFieldBar (N * q)))) • ((e s₀.1 : ℤ) • crossingCoord ⟨s₀, hs₀⟩)) namespace ProlongationTuple variable {P} (R : ProlongationTuple P) def ValueIntegralityLaw (w : Place k (modularFunctionFieldC k N)) : Prop := ∀ f : ↥(modularFunctionFieldBar (N * q)), f ∈ R.nodeIntegers w → ∀ V : Place (AlgebraicClosure ℚ) ↥(modularFunctionFieldBar (N * q)), P.reduceFst V = w → V.evalAt f ∈ A namespace NodeCoordinates variable {R} [PerfectField k] {K : IntermediateField ℚ (AlgebraicClosure ℚ)} {w : Place k (modularFunctionFieldC k N)} (c : R.NodeCoordinates K w) def xDepth (V : Place (AlgebraicClosure ℚ) ↥(modularFunctionFieldBar (N * q))) : A.ValueGroup := A.valuation (V.evalAt (c.x : ↥(modularFunctionFieldBar (N * q)))) def yDepth (V : Place (AlgebraicClosure ℚ) ↥(modularFunctionFieldBar (N * q))) : A.ValueGroup := A.valuation (V.evalAt (c.y : ↥(modularFunctionFieldBar (N * q)))) def DepthValueLaw (depth : Place (AlgebraicClosure ℚ) ↥(modularFunctionFieldBar (N * q)) → ℕ) : Prop := ∀ V : Place (AlgebraicClosure ℚ) ↥(modularFunctionFieldBar (N * q)), P.reduceFst V = w → (∀ σ ∈ A.inertiaSubgroupIn ℚ, arithmeticGalois (modularFunctionFieldFull (N * q)) σ • V = V) → c.yDepth V = A.valuation ((q : ℕ) : AlgebraicClosure ℚ) ^ depth V end NodeCoordinates end ProlongationTuple end PlaceSpecialization end ModularCurve end
Statements phrased using this module (142)
- Hecke equivariance of the depth functional in the component group
ModularCurve.PlaceSpecialization.componentGroupProj_depthDual_add_eq_heckeComponentAction_of_heckeGen_smul2,247 below · depth 13 - Depth function and surjective component map on inertia invariants
ModularCurve.PlaceSpecialization.exists_depth_comp_depthCompLaw_depthValueLaw_sndDegLaw_surjective_repOfKer_repOfInvariant_principalGood_of_widthPinChar_of_isModel1,732 below · depth 13 - Depth of an inertia-fixed place over a node is less than E
ModularCurve.PlaceSpecialization.ProlongationTuple.NodeCoordinates.depth_lt_of_depthValueLaw_of_nodeEquation468 below · depth 14 - Positivity of depth at inertia-fixed places over a node
ModularCurve.PlaceSpecialization.ProlongationTuple.NodeCoordinates.depth_pos_of_depthValueLaw_of_nodeEquation468 below · depth 14 - Node depth of inertia-fixed places is a power of v_A(q)
ModularCurve.PlaceSpecialization.ProlongationTuple.NodeCoordinates.exists_yDepth_eq_pow_of_forall_inertia_smul_eq12 below · depth 14 - Existence of an inertia-fixed strict place avoiding W
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_isStrictFst_and_smul_eq_self445 below · depth 14 - Inertia-invariant places at prescribed depth over a supersingular node
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_reduceFst_eq_and_smul_eq_self_and_yDepth_eq_pow_of_orderLawFixed1,313 below · depth 14 - Value integrality at supersingular nodes from the fixed-place order law
ModularCurve.PlaceSpecialization.ProlongationTuple.valueIntegralityLaw_of_orderLawFixed453 below · depth 14 - Principal divisors have trivial depth class in the component group
ModularCurve.PlaceSpecialization.componentGroupProj_depthDual_add_degree_sndDiv_smul_eq_zero_of_div1,545 below · depth 14 - Hecke transport of the depth functional: annulus case, q≥ 5
ModularCurve.PlaceSpecialization.componentGroupProj_depthDual_add_eq_heckeComponentAction_of_heckeGen_smul_of_five_le_of_not_isGoodDiv2,172 below · depth 14 - Hecke transport of depth functionals in component groups, q<5
ModularCurve.PlaceSpecialization.componentGroupProj_depthDual_add_eq_heckeComponentAction_of_heckeGen_smul_of_lt_five2,237 below · depth 14 - Depth functional of a principal divisor lies in the Gram image
ModularCurve.PlaceSpecialization.depthDual_add_mem_range_gramMap_of_isPrincipal1,553 below · depth 14 - Vanishing of the depth functional on good divisors
ModularCurve.PlaceSpecialization.depthDual_eq_zero_of_isGoodDiv0 below · depth 14 - Inertia-fixed representative with strict or supersingular support
ModularCurve.PlaceSpecialization.exists_inertiaFixedSupport_degZero_pic0Mk_eq_of_isModel1,581 below · depth 14 - Depth-component kernel classes are classes of good divisors
ModularCurve.PlaceSpecialization.exists_isGoodDiv_pic0Mk_eq_of_comp_eq_zero_of_depthCompLaw_depthValueLaw_repOfInvariant_of_isModel1,541 below · depth 14 - Surjectivity from hitting all crossing-coordinate classes
ModularCurve.comp_surjective_of_forall_exists_eq_crossingCoord0 below · depth 14 - Integral D-points have vanishing component invariant
ModularCurve.DRModelPackageLevel.comp_eq_zero_of_exists_schemeHomOver_of_depthCompLaw_of_abelJacobiPin_of_surjective_red_of_sp_eq_spPlace2,485 below · depth 15 - Depth bound at a supersingular node: depth V < e'E
ModularCurve.PlaceSpecialization.ProlongationTuple.NodeCoordinates.depth_lt_mul_of_yDepth_pow_eq468 below · depth 15 - Depth dichotomy for the node coordinate y at a rational place
ModularCurve.PlaceSpecialization.ProlongationTuple.NodeCoordinates.exists_hasDepth_or_depthBetween_y_of_nodeEquation_of_orderLawFixed459 below · depth 15 - Relational depth equals value-group depth of y
ModularCurve.PlaceSpecialization.ProlongationTuple.NodeCoordinates.hasValuation_y_iff_yDepth_eq0 below · depth 15 - Unique place over a supersingular node with prescribed value of y
ModularCurve.PlaceSpecialization.ProlongationTuple.existsUnique_reduceFst_eq_and_hasValue_y_of_orderLawFixed1,302 below · depth 15 - Node annulus at a supersingular place with parameter y
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_annulus_dom_iff_reduceFst_eq_and_param_eq_y_of_ringEquiv_uvCrossingModel587 below · depth 15 - Gauss-order function at a supersingular node: slope drops
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_slopeDrop_eq_sum_div_depth_of_sum_div_reduceFst_eq570 below · depth 15 - Slope-drop function at a supersingular node on subdivided depths
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_slopeDrop_eq_sum_div_depth_of_yDepth_pow_eq570 below · depth 15 - Node residue of the first prolongation equals reduced value at V
ModularCurve.PlaceSpecialization.ProlongationTuple.hasValue_nodeResidueFst_red_evalAt_of_orderLawFixed454 below · depth 15 - Node depths below one partition the crossing exponent
ModularCurve.PlaceSpecialization.ProlongationTuple.nodeDepths_lt_one_and_partition_of_nodeEquation_of_orderLawFixed457 below · depth 15 - Node order bound by branch orders of the two reductions
ModularCurve.PlaceSpecialization.ProlongationTuple.sum_div_reduceFst_le_ord_residueFst_add_ord_residueSnd488 below · depth 15 - Order of a principal divisor above a supersingular node
ModularCurve.PlaceSpecialization.ProlongationTuple.sum_div_reduceFst_le_ord_residues488 below · depth 15 - Presentation-invariance of the node crossing valuation
ModularCurve.PlaceSpecialization.ProlongationTuple.valuation_pow_crossingExponent_eq0 below · depth 15 - Node depths are independent of the chosen presentation
ModularCurve.PlaceSpecialization.ProlongationTuple.xDepth_eq_and_yDepth_eq_of_nodeCoordinates122 below · depth 15 - Hecke equivariance of the depth class, good case
ModularCurve.PlaceSpecialization.componentGroupProj_depthDual_add_eq_heckeComponentAction_of_heckeGen_smul_of_isGoodDiv2,025 below · depth 15 - Hecke transport of the depth functional: annulus case, q<5
ModularCurve.PlaceSpecialization.componentGroupProj_depthDual_add_eq_heckeComponentAction_of_heckeGen_smul_of_lt_five_of_not_isGoodDiv2,235 below · depth 15 - Depths and component map over the residue field of A
ModularCurve.PlaceSpecialization.exists_depth_comp_depthCompLaw_depthValueLaw_sndDegLaw_surjective_repOfKer_repOfInvariant_principalGood_of_widthPinChar_of_isModel_residueField1,733 below · depth 15 - Inertia-stable divisor classes with strict or supersingular support
ModularCurve.PlaceSpecialization.exists_inertiaStable_pic0Mk_eq_of_inertiaStable_of_isModel935 below · depth 15 - Cross-power law for node depths under the ℓ-degeneracy maps
ModularCurve.PlaceSpecialization.exists_reduceFst_eq_and_yDepth_restrictAlong_heckeAlphaBar_pow_width_eq_of_ne_of_not_dvd1,950 below · depth 15 - Trivial component classes extend to A-points of Pic⁰
ModularCurve.DRModelPackage.exists_schemeHomOver_of_comp_eq_zero_of_abelJacobiPin_of_surjective2,060 below · depth 16 - Existence of a resolved Deligne–Rapoport model with place–component dictionary
ModularCurve.DRModelPackageLevel.exists_dRResolvedModelPackageLevel_nodeEquiv_swap_nodeCoordinates_of_surjective_of_sp_eq_spPlace2,427 below · depth 16 - Sections of the resolved X₀(N₀p) model with depth-prescribed components
ModularCurve.DRModelPackageLevel.exists_sections_multidegree_eq_depth_of_exists_schemeHomOver_of_branch186 below · depth 16 - Node parameter separates the places above a supersingular place
ModularCurve.PlaceSpecialization.ProlongationTuple.eq_of_evalAt_y_eq_of_reduceFst_eq_of_ringEquiv_uvCrossingModel219 below · depth 16 - Surjective depth–component homomorphism on inertia invariants, level one
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_comp_depthCompLaw_and_surjective_levelOne1,340 below · depth 16 - Inertia-invariant rational depth at supersingular nodes of X₀(Nq)
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_depthQ_cleared_law_and_forall_inertia_smul_eq467 below · depth 16 - Moving lemma on X₀(Nq) with inertia equivariance
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_ord_eq_one_forall_isStrict_reduceFst_reduceSnd_notMem_forall_inertia_smul_eq_of_isModel927 below · depth 16 - Admissible values attained by y at places over a supersingular node
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_reduceFst_eq_and_evalAt_y_eq_of_ringEquiv_uvCrossingModel506 below · depth 16 - Unit principle at a supersingular node of X₀(Nq)
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_zpow_unit_principle_evalAt_y_of_ringEquiv_uvCrossingModel416 below · depth 16 - Second node residue equals the reduction of g(V)
ModularCurve.PlaceSpecialization.ProlongationTuple.hasValue_nodeResidueSnd_red_evalAt_of_orderLawFixed454 below · depth 16 - Node coordinate minus its value is a uniformiser
ModularCurve.PlaceSpecialization.ProlongationTuple.ord_y_sub_algebraMap_evalAt_eq_one_of_ringEquiv_uvCrossingModel501 below · depth 16 - Depth-wise zero count at a node equals crossing-model count
ModularCurve.PlaceSpecialization.ProlongationTuple.sum_ord_eq_finsum_rank_mul_length_of_total_eq199 below · depth 16 - Node total over a supersingular place via the crossing model
ModularCurve.PlaceSpecialization.ProlongationTuple.sum_ord_eq_finsum_rank_mul_length_total_of_nodeResidue_ne_zero429 below · depth 16 - Total order over a node bounded by horizontal crossing-model count
ModularCurve.PlaceSpecialization.ProlongationTuple.sum_ord_le_finsum_rank_mul_length_total196 below · depth 16 - Valuation of values less than one detects the maximal ideal
ModularCurve.PlaceSpecialization.ProlongationTuple.valuation_evalAt_lt_one_iff_mem_maximalIdeal126 below · depth 16 - Depth dual of a principal divisor lies in the Gram image
ModularCurve.PlaceSpecialization.depthDual_add_mem_range_gramMap_of_isPrincipal_widthChar1,985 below · depth 16 - Level-one prolongation tuple with node coordinates and depth
ModularCurve.PlaceSpecialization.exists_prolongationTuple_nodeCoordinates_depthValueLaw_levelOne1,069 below · depth 16 - Cross-power law for node depths along the level-ℓ Hecke roof
ModularCurve.PlaceSpecialization.exists_reduceFst_eq_and_yDepth_restrictAlong_heckeAlphaBar_pow_placeWidthChar_eq_of_ne_of_not_dvd1,949 below · depth 16 - Depth dictionary gives the depth divisor and second-branch degree
ModularCurve.PlaceSpecialization.sum_height_mul_multidegree_comp_eq_depthDiv_and_apply_inl_one_eq_degree_sndDiv_level144 below · depth 16 - Node depth along the degeneracy tower is a ramification power
ModularCurve.PlaceSpecialization.yDepth_restrictAlong_towerInclBar_eq_yDepth_pow_ramificationIndexAlong_heckeAlphaC1,296 below · depth 16 - Depth along the ℓ-substitution leg is a ramification power
ModularCurve.PlaceSpecialization.yDepth_restrictAlong_towerSubstBar_eq_yDepth_pow_ramificationIndexAlong_heckeBetaC985 below · depth 16 - Valuation ring of the inertia field inside A
ModularCurve.inertiaField_comap_incl_and_surjective_and_isAlgClosed_residueField10 below · depth 16 - Normal form for a pair cutting out a crossing UV = p^E
IsLocalRing.eq_and_exists_isUnit_and_eq_mul_of_mul_eq_pow_of_span_pair_isPrime0 below · depth 17 - Residue-field point above a crossing point of the mod-p fibre
ModularCurve.DRModelPackage.exists_residueField_point_baseChangeMap_eq_of_isAlgClosed_residueField270 below · depth 17 - Geometric-fibre transport of the Poincaré bundle with section twists
ModularCurve.DRModelPackage.nonempty_poincare_pullbackAlong_comp_iso_of_pullback_toDR_iso_of_sectionTwist17 below · depth 17 - Recognising pts of a divisor class from its Poincaré fibre
ModularCurve.DRModelPackage.pts_pic0Mk_eq_comp_of_poincare_pullbackAlong_iso21 below · depth 17 - Transporting a degree-zero divisor along a level equivalence
ModularCurve.DRModelPackage.sum_coef_eq_zero_and_exists_degZero_mapDomain_of_equiv_support145 below · depth 17 - Depth-to-component dictionary for the resolved Deligne–Rapoport model
ModularCurve.DRModelPackageLevel.exists_nodeCoordinates_and_forall_mem_support_iff_chainPos_of_charts_of_sp_eq_spPlace2,052 below · depth 17 - Inertia-fixed places give sections over the inertia valuation ring
ModularCurve.DRModelPackageLevel.exists_section_generic_eq_pointEquivPlace_symm_of_forall_inertia_smul_eq0 below · depth 17 - Strict places specialise into one labelled component
ModularCurve.DRModelPackageLevel.exists_swap_forall_isStrict_section_mem_range_comp_of_sp_eq_spPlace1,861 below · depth 17 - Node widths of the resolved model equal place widths
ModularCurve.DRModelPackageLevel.forall_width_eq_of_charts_of_sp_eq_spPlace2,299 below · depth 17 - Poincaré pullback of an O-point as a twist of sections
ModularCurve.DRModelPackageLevel.nonempty_pullback_toDR_poincare_pullbackAlong_iso_foldr_sectionTwist180 below · depth 17 - Non-strict inertia-fixed places specialise to crossings
ModularCurve.DRModelPackageLevel.section_base_closedPoint_eq_crossing_of_reduceFst_mem_of_sp_eq_spPlace1,891 below · depth 17 - Base change along τ of a section and its geometric generic point
ModularCurve.DRResolvedModelPackage.eEta_comp_pullbackMap_eq_comp_toDR_of_comp_fst_eq0 below · depth 17 - Node bijection and orientation bit for the component dictionary
ModularCurve.DRResolvedModelPackage.exists_nodeEquiv_swap_forall_comp_eq_dict_of_sections_of_charts1,640 below · depth 17 - An O-point of D whose Poincaré class is M
ModularCurve.DRResolvedModelPackage.exists_schemeHomOver_poincare_pullbackAlong_iso_of_generic_sectionTwist_of_forall_isAlgEquivZero36 below · depth 17 - Inertia-fixed places give sections of the resolved model
ModularCurve.DRResolvedModelPackage.exists_section_toDR_generic_eq_pointEquivPlace_symm_of_forall_inertia_smul_eq0 below · depth 17 - Vertical twist to multidegree zero fixing the generic fibre
ModularCurve.DRResolvedModelPackage.exists_verticalTwist_multidegree_eq_zero_and_generic_iso_sectionTwist46 below · depth 17 - Multidegree zero forces algebraic equivalence to zero on fibres
ModularCurve.DRResolvedModelPackage.isAlgEquivZero_fibre_of_pullback_toDR_iso_divisorial_of_multidegree_eq_zero1,241 below · depth 17 - Vanishing component class puts the multidegree in α's image
ModularCurve.DRResolvedModelPackage.multidegree_mem_range_intersectionAlpha_of_comp_eq_zero482 below · depth 17 - Sections of the resolved model avoid the edge points
ModularCurve.DRResolvedModelPackage.ne_edgePt_and_mem_smoothOffEdges_and_existsUnique_mem_comp_support_of_section1 below · depth 17 - Generic fibre of a bundle descended through the resolution
ModularCurve.DRResolvedModelPackage.nonempty_pullback_comp_toDR_iso_sectionTwist_of_iso_divisorial0 below · depth 17 - Places over a supersingular node counted by crossing-model branches
ModularCurve.PlaceSpecialization.ProlongationTuple.card_eq_finsum_finrank_quotient_of_forall_iff_evalAt_eq_zero467 below · depth 17 - Places over a node separated by node-ring values
ModularCurve.PlaceSpecialization.ProlongationTuple.eq_of_forall_evalAt_eq_of_reduceFst_eq128 below · depth 17 - Coefficient rigidity of the crossing presentation
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_ringEquiv_adicCompletion_coeffSubring_forall_apply_nodeConst_eq_const5 below · depth 17 - Rational depth window for places over a supersingular node
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_xDepth_pow_eq_valuation_pow_of_reduceFst_eq135 below · depth 17 - Branch lengths in the crossing model equal lengths at a node prime
ModularCurve.PlaceSpecialization.ProlongationTuple.length_localizedModule_quotient_map_eq_of_mem_minimalPrimes468 below · depth 17 - Crossing-model constant π forces varpi to generate mathfrak m_{A∩ K}
ModularCurve.PlaceSpecialization.ProlongationTuple.maximalIdeal_coeffSubring_eq_span_of_ringEquiv_apply_nodeConst_eq_const5 below · depth 17 - Evaluations along one branch of a node multiply to a norm
ModularCurve.PlaceSpecialization.ProlongationTuple.prod_evalAt_eq_norm_quotient_of_forall_iff_exists_ker_eq179 below · depth 17 - Finiteness of places with prescribed node-ring vanishing ideal
ModularCurve.PlaceSpecialization.ProlongationTuple.setOf_reduceFst_eq_and_forall_mem_iff_evalAt_eq_zero_finite124 below · depth 17 - Places over a supersingular node bounded by horizontal primes
ModularCurve.PlaceSpecialization.ProlongationTuple.sum_ord_le_finsum_rank_mul_length_of_ringEquiv_uvCrossingModel195 below · depth 17 - Order sum at a node place: length times branch rank bound
ModularCurve.PlaceSpecialization.ProlongationTuple.sum_toNat_ord_le_length_mul_finsum_finrank_of_forall_mem_iff_evalAt_eq_zero183 below · depth 17 - Order at V equals length at the node ring's prime q
ModularCurve.PlaceSpecialization.ProlongationTuple.toNat_ord_eq_length_localizedModule_quotient_of_forall_mem_iff_evalAt_eq_zero126 below · depth 17 - Principal divisors have trivial depth component class at level one
ModularCurve.PlaceSpecialization.componentGroupProj_depthDual_add_degree_sndDiv_smul_eq_zero_of_div_levelOne_of_five_le1,304 below · depth 17 - Vanishing of the depth functional on good divisors
ModularCurve.PlaceSpecialization.depthDual_add_degree_sndDiv_smul_eq_branchDegrees_snd_smul_of_isGoodDivisor0 below · depth 17 - Node depth along the ℓ-degeneracy leg is a ramified power
ModularCurve.PlaceSpecialization.yDepth_restrictAlong_towerInclBar_eq_yDepth_pow_ramificationIndexAlong_heckeAlphaC_of_prime1,308 below · depth 17 - Node depth along the substitution degeneracy leg at ℓ≠ q
ModularCurve.PlaceSpecialization.yDepth_restrictAlong_towerSubstBar_eq_yDepth_pow_ramificationIndexAlong_heckeBetaC_of_prime985 below · depth 17 - Node coordinates at a supersingular crossing from a chart presentation
ModularCurve.DRModelPackage.exists_nodeCoordinates_and_forall_mem_support_iff_chainPos_of_chartPresentation_of_branch_of_jPin1,158 below · depth 18 - Supersingular places enumerate the crossings, with width and j-pin
ModularCurve.DRModelPackage.exists_nodeEquiv_width_eq_and_jPin414 below · depth 18 - An orientation bit matching strict places to branch components
ModularCurve.DRModelPackage.exists_swap_forall_isStrict_section_mem_range_comp_of_reading445 below · depth 18 - Supersingular O-lift of j at each crossing
ModularCurve.DRModelPackage.forall_exists_lift_jFun_sub_mem_maximalIdeal_and_mem_ssJSet404 below · depth 18 - Sections through non-strict inertia-fixed places meet the matched crossing
ModularCurve.DRModelPackage.section_base_closedPoint_eq_crossing_of_reduceFst_mem337 below · depth 18 - Node coordinates and chain position at one supersingular crossing
ModularCurve.DRModelPackageLevel.exists_nodeCoordinates_and_forall_mem_support_iff_chainPos_of_chartPresentation2,007 below · depth 18 - Function field of the O-model inside ℚ̄(X₀(N₀q))
ModularCurve.DRModelPackageLevel.exists_ringHom_functionField_pullback_forall_eq_algebraMap_and_coe_eq_coeffEmb0 below · depth 18 - Strict places orient sections onto the two special-fibre components
ModularCurve.DRModelPackageLevel.forall_isStrict_section_mem_range_comp_zero_comp_one_of_sp_eq_spPlace1,861 below · depth 18 - Integrality of the q-adic base change of the Deligne–Rapoport model
ModularCurve.DRModelPackageLevel.isIntegral_pullback_toBase_specMap3 below · depth 18 - Non-emptiness of the finite Igusa chart over O
ModularCurve.DRModelPackageLevel.nonempty_preimage_iotaFin_pullback_toBase_specMap0 below · depth 18 - Local chart presentation at a node of the resolved model
ModularCurve.DRResolvedModelPackage.DRResolvedModelCharts.exists_chartPresentation_stalk255 below · depth 18 - Strict transforms detected on the Deligne–Rapoport closed fibre
ModularCurve.DRResolvedModelPackage.eq_inl_iff_toDR_base_mem_range_compInf_of_mem_comp_support56 below · depth 18 - Multidegree zero gives χ=χ(𝒪) on a strict transform
ModularCurve.DRResolvedModelPackage.eulerChar_sectionsOf_pullback_strictTransform_eq_of_multidegree_eq_zero_of_surjective237 below · depth 18 - Node width equals the j-width of the reduced j-value
ModularCurve.DRResolvedModelPackage.width_eq_jWidth_of_exists_jFun_sub_mem_maximalIdeal_of_prolongationTuple1,630 below · depth 18 - Places on one branch bounded by that branch's W-rank
ModularCurve.PlaceSpecialization.ProlongationTuple.card_le_finrank_quotient_of_forall_ker_eq7 below · depth 18 - Places over a supersingular node bounded by total branch rank
ModularCurve.PlaceSpecialization.ProlongationTuple.card_le_finsum_finrank_quotient_map_of_forall_mem_iff_evalAt_eq_zero137 below · depth 18 - Evaluation at a place extends to the completed node ring
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_ringHom_adicCompletion_nodeIntegersOver_comp_eq_evalAt134 below · depth 18 - Per-depth zero count at a supersingular node
ModularCurve.PlaceSpecialization.ProlongationTuple.sum_toNat_ord_le_length_mul_finsum_finrank_of_forall_mem_iff_evalAt_eq_zero_of_xDepth_pow_eq182 below · depth 18 - Node maximal ideal generator has valuation below one
ModularCurve.PlaceSpecialization.ProlongationTuple.valuation_coe_lt_one_of_maximalIdeal_eq_span0 below · depth 18 - Germ reading j(qᵖ)-j(q)ᵖ at a supersingular crossing
ModularCurve.DRModelPackage.exists_germ_jq_sub_pow_and_stalkSpecializes_mem_maximalIdeal_of_swap568 below · depth 19 - Germ of j(q^q)-j^q vanishing along the first component
ModularCurve.DRModelPackageLevel.exists_germ_jq_sub_pow_and_stalkSpecializes_mem_maximalIdeal_comp_zero299 below · depth 19 - Maximal ideals preserved at crossings under base change
ModularCurve.DRModelPackageLevel.map_maximalIdeal_stalkMap_bcMap_eq_of_inertia_grain0 below · depth 19 - Germs at a supersingular crossing lie in the node ring
ModularCurve.DRModelPackageLevel.mem_nodeIntegers_of_stalk_of_specializes_of_nodeEquiv_eq1,993 below · depth 19 - Branch residues and orders at a supersingular crossing
ModularCurve.DRModelPackageLevel.nodeResidue_eq_zero_iff_and_ord_eq_of_specializes_of_mem_maximalIdeal364 below · depth 19 - Crossing coordinates are uniformisers on the two branches
ModularCurve.DRModelPackageLevel.ord_placeOfPoint_stalkMap_eq_one_of_span_eq_maximalIdeal0 below · depth 19 - Evaluation at a place equals pull-back along an O-section
ModularCurve.DRModelPackageLevel.phi_mem_and_evalAt_eq_stalkClosedPointTo_of_section3 below · depth 19 - Crossing points are rational over the inertia ring O
ModularCurve.DRModelPackageLevel.surjective_residue_comp_germ_comp_appTop_of_inertia_grain10 below · depth 19 - Places over a supersingular node bounded by branch ranks
ModularCurve.PlaceSpecialization.ProlongationTuple.card_le_finsum_finrank_quotient_map_of_xDepth_pow_eq136 below · depth 19 - Inertia-stable node telescoping identity at a supersingular crossing
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_hasValue_residueFst_div_pow_and_residueSnd_div_pow_and_div_eq_angFactor_of_inertiaStable584 below · depth 19 - A-points above supersingular places specialise to the crossing
ModularCurve.DRModelPackageLevel.base_closedPoint_eq_crossing_of_reduceFst_eq_of_sp_eq_spPlace1,891 below · depth 20 - Branch germs read as Gauss residues on X₀(N₀)_{κ_A}
ModularCurve.DRModelPackageLevel.ffEquiv_symm_stalkMap_genericPoint_eq_residue_phi363 below · depth 20 - Germs at a point met by both branches lie in both prolongations
ModularCurve.DRModelPackageLevel.mem_integers_and_mem_integers_of_stalk_of_specializes361 below · depth 20 - Branch generic stalks map into the two Gauss prolongations
ModularCurve.DRModelPackageLevel.phi_algebraMap_stalk_mem_integers_comp_genericPoint360 below · depth 20 - Chart-pinned readings agree at the generic point
ModularCurve.DRModelPackageLevel.specMap_comp_fromSpecStalk_genericPoint_comp_fst_eq_of_coe_eq_coeffEmb0 below · depth 20 - Inertia-fixed strict place with an 𝒪-section of the resolved model
ModularCurve.DRResolvedModelPackage.exists_isStrictFst_forall_inertia_smul_eq_and_section_toDR_generic_eq444 below · depth 20 - Admissibility of the twisted gluing datum at level one
ModularCurve.PlaceSpecialization.ProlongationTuple.AnnulusDatumQ.spData_mem_admissible385 below · depth 20 - Rational node depth: cleared law and inertia invariance
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_depthQ_cleared_law_and_forall_inertia_smul_eq_levelOne467 below · depth 20 - Branch-norm factorisation of the y-product at a supersingular node
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_prod_evalAt_y_eq_pow_mul_prod_units_of_forall_iff_evalAt_eq_zero180 below · depth 20 - Reading first-branch leading coefficients in the crossing model
ModularCurve.PlaceSpecialization.ProlongationTuple.hasValue_nodeResidueFst_div_nodeResidueFst_y_pow_of_sub_mul_V_pow_mem_of_hasValue1 below · depth 20 - Second-branch value of f/x^m at a supersingular node
ModularCurve.PlaceSpecialization.ProlongationTuple.hasValue_nodeResidueSnd_div_nodeResidueSnd_x_pow_of_sub_mul_U_pow_mem_of_hasValue1 below · depth 20 - Admissible scalings of a function have fixed valuation
ModularCurve.PlaceSpecialization.ProlongationTuple.smul_mem_integers_and_residue_ne_zero_iff_valuation_eq0 below · depth 20 - Twisted chord bounds and rigidity at a supersingular crossing
ModularCurve.PlaceSpecialization.ProlongationTuple.valuation_pow_le_mul_prod_and_rigid_of_twist1,331 below · depth 20 - Uniqueness and Galois equivariance of the place transport 1· p → p
ModularCurve.placeEquiv_unique_and_arithmeticGalois_smul_of_forall_mem_iff0 below · depth 20 - Component charts and attached annuli at a supersingular crossing
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_componentCharts_annuli_isAttached_of_crossingPresentation1,325 below · depth 21 - Node values as a product of branch norms
ModularCurve.PlaceSpecialization.ProlongationTuple.prod_evalAt_eq_prod_norm_quotient_of_forall_iff_evalAt_eq_zero179 below · depth 21 - Attachment of the node annulus to the first component chart
ModularCurve.PlaceSpecialization.ProlongationTuple.isAttached_fst_of_ringEquiv_uvCrossingModel_of_regularityLaw388 below · depth 22 - Attachment of the opposite node annulus to the second chart
ModularCurve.PlaceSpecialization.ProlongationTuple.isAttached_snd_of_ringEquiv_uvCrossingModel_of_regularityLaw388 below · depth 22 - Twisted chord bounds and rigidity at a supersingular node
ModularCurve.PlaceSpecialization.ProlongationTuple.valuation_pow_le_mul_prod_and_rigid_of_twist_levelOne1,587 below · depth 23 - Component charts and attached annuli at a supersingular node
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_componentCharts_annuli_isAttached_of_isModel1,585 below · depth 24 - Component charts and a doubly attached annulus at j∈{0,1728}
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_componentCharts_annuli_isAttached_of_isModel_of_eq_zero_or_eq_ofNat17281,584 below · depth 25