Definitions/Def_AlgebraicCurve_Repartitions.lean
Repartitions, Riemann–Roch spaces and the genus
Throughout, F is a field extension of a field K, and a place of F/K is a valuation subring of F containing the image of K, different from F and a principal ideal ring, hence a discrete valuation ring; Place.adicValuation is the associated \mathbb{Z}^{m0}-valued valuation of F and Place.ord is -\log of it. A group of helper lemmas records the basic translation between the two: the valuation is \le 1 on the valuation subring, in particular on the image of K; for f \neq 0 one has v(f) = \exp(-\operatorname{ord}_v f); and v(f) \le \exp n holds exactly when f = 0 or -n \le \operatorname{ord}_v f, with the specialisations n = 0 and the negated form \neg(v(f) \le 1) \leftrightarrow \operatorname{ord}_v f < 0.
repartitions K F is the F-subalgebra of the product \prod_v F generated by those families \alpha for which \{v : \neg\, v(\alpha_v) \le 1\} is finite, i.e. the subalgebra generated by the families integral at all but finitely many places; membership is recorded for families with finitely many places where \operatorname{ord}_v(\alpha_v) < 0, and for families bounded by a divisor. For a divisor D (a finitely supported integer-valued function on places) repartitionsOf D is the K-submodule of repartitions K F cut out by v(\alpha_v) \le \exp(D v) for every v, equivalently \alpha_v = 0 or -D v \le \operatorname{ord}_v(\alpha_v) at each v; it is monotone in D. riemannRochSpace D is the corresponding K-submodule \{f \in F : \forall v,\ v(f) \le \exp(D v)\} of F, with the same \operatorname{ord}-form description. principalRepartitions K F is the diagonal copy of F inside repartitions K F, viewed as a K-submodule; membership means precisely that the family is constant. Finally H1 D is the quotient K-module of repartitions K F by repartitionsOf D ⊔ principalRepartitions K F, and genusFF K F is the K-dimension of H1 0, so zero when that dimension is infinite.
Relation to Mathlib
Mathlib supplies the valuation machinery used here (valuation subrings, the adic valuation of a height-one prime, WithZero.exp/log); the repartitions (adele) algebra, the spaces L(D), the quotients H1 and the genus are the project's own, built on its Place and Divisor notions.
Where it is used
These definitions provide the Riemann–Roch apparatus attached to the project's places and divisors of F/K, alongside the divisor class groups Pic, Pic0 and their p-power torsion on which the Abel–Jacobi counting predicate is formulated.
References
- H. Stichtenoth, Algebraic Function Fields and Codes, 2nd edition, Graduate Texts in Mathematics 254, Springer, 2009, §§1.4–1.5
- A. Weil, Basic Number Theory, Grundlehren der mathematischen Wissenschaften 144, Springer, 1967, Chapter VI
- C. Chevalley, Introduction to the Theory of Algebraic Functions of One Variable, Mathematical Surveys 6, American Mathematical Society, 1951
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 150 lines
- 19 declarations
- used in the statements of 545 theorems and imported by 698 proofs
- imports 1 definition modules
Source file: Definitions/Def_AlgebraicCurve_Repartitions.lean
Declarations
- theorem
AlgebraicCurve.Place.adicValuation_le_one_of_mem - theorem
AlgebraicCurve.Place.adicValuation_algebraMap_le_one - theorem
AlgebraicCurve.Place.adicValuation_eq_exp_neg_ord - theorem
AlgebraicCurve.Place.adicValuation_le_exp_iff - theorem
AlgebraicCurve.Place.adicValuation_le_one_iff - theorem
AlgebraicCurve.Place.not_adicValuation_le_one_iff - def
AlgebraicCurve.repartitions - theorem
AlgebraicCurve.mem_repartitions_of_finite - theorem
AlgebraicCurve.mem_repartitions_of_finite_ord - theorem
AlgebraicCurve.mem_repartitions_of_forall_le_exp - def
AlgebraicCurve.repartitionsOf - theorem
AlgebraicCurve.mem_repartitionsOf_iff - theorem
AlgebraicCurve.repartitionsOf_mono - def
AlgebraicCurve.riemannRochSpace - theorem
AlgebraicCurve.mem_riemannRochSpace_iff - def
AlgebraicCurve.principalRepartitions - theorem
AlgebraicCurve.mem_principalRepartitions_iff - abbrev
AlgebraicCurve.H1 - def
AlgebraicCurve.genusFF
Source
import Definitions.Def_AlgebraicCurve_DivisorClassGroup set_option autoImplicit false noncomputable section open WithZero namespace AlgebraicCurve namespace Place variable {K F : Type*} [Field K] [Field F] [Algebra K F] (v : Place K F) theorem adicValuation_le_one_of_mem {x : F} (hx : x ∈ v.toValuationSubring) : v.adicValuation x ≤ 1 := by have h := (v.adicValuation_coe ⟨x, hx⟩).trans_le (v.heightOneSpectrum.intValuation_le_one ⟨x, hx⟩) simpa using h theorem adicValuation_algebraMap_le_one (a : K) : v.adicValuation (algebraMap K F a) ≤ 1 := v.adicValuation_le_one_of_mem (v.algebraMap_mem' a) theorem adicValuation_eq_exp_neg_ord {f : F} (hf : f ≠ 0) : v.adicValuation f = exp (-v.ord f) := by unfold ord rw [neg_neg, exp_log (v.adicValuation_ne_zero hf)] theorem adicValuation_le_exp_iff {f : F} {n : ℤ} : v.adicValuation f ≤ exp n ↔ f = 0 ∨ -n ≤ v.ord f := by rcases eq_or_ne f 0 with rfl | hf · simp · rw [v.adicValuation_eq_exp_neg_ord hf, exp_le_exp, neg_le, or_iff_right hf] theorem adicValuation_le_one_iff {f : F} : v.adicValuation f ≤ 1 ↔ f = 0 ∨ 0 ≤ v.ord f := by simpa using v.adicValuation_le_exp_iff (n := 0) theorem not_adicValuation_le_one_iff {f : F} : ¬v.adicValuation f ≤ 1 ↔ v.ord f < 0 := by rw [v.adicValuation_le_one_iff, not_or, not_le] constructor · exact fun h => h.2 · exact fun h => ⟨fun h0 => by simp [h0] at h, h⟩ end Place variable (K F : Type*) [Field K] [Field F] [Algebra K F] def repartitions : Subalgebra F (Place K F → F) := Algebra.adjoin F {α : Place K F → F | {v : Place K F | ¬v.adicValuation (α v) ≤ 1}.Finite} variable {K F} theorem mem_repartitions_of_finite {α : Place K F → F} (hα : {v : Place K F | ¬v.adicValuation (α v) ≤ 1}.Finite) : α ∈ repartitions K F := Algebra.subset_adjoin hα theorem mem_repartitions_of_finite_ord {α : Place K F → F} (hα : {v : Place K F | v.ord (α v) < 0}.Finite) : α ∈ repartitions K F := mem_repartitions_of_finite <| by rwa [show {v : Place K F | ¬v.adicValuation (α v) ≤ 1} = {v : Place K F | v.ord (α v) < 0} from Set.ext fun v => v.not_adicValuation_le_one_iff] theorem mem_repartitions_of_forall_le_exp (D : Divisor K F) (α : Place K F → F) (h : ∀ v : Place K F, v.adicValuation (α v) ≤ exp (D v)) : α ∈ repartitions K F := mem_repartitions_of_finite <| D.support.finite_toSet.subset fun v hv => by rw [Finset.mem_coe, Finsupp.mem_support_iff] intro hD0 exact hv ((h v).trans (by rw [hD0]; simp)) def repartitionsOf (D : Divisor K F) : Submodule K ↥(repartitions K F) where carrier := {α | ∀ v : Place K F, v.adicValuation ((α : Place K F → F) v) ≤ exp (D v)} zero_mem' := by intro v show v.adicValuation (0 : F) ≤ exp (D v) simp add_mem' := by intro α β hα hβ v exact (Valuation.map_add _ _ _).trans (max_le (hα v) (hβ v)) smul_mem' := by intro c α hα v show v.adicValuation (c • (α : Place K F → F) v) ≤ exp (D v) rw [Algebra.smul_def, map_mul] exact (mul_le_of_le_one_left' (v.adicValuation_algebraMap_le_one c)).trans (hα v) theorem mem_repartitionsOf_iff {D : Divisor K F} {α : ↥(repartitions K F)} : α ∈ repartitionsOf D ↔ ∀ v : Place K F, (α : Place K F → F) v = 0 ∨ -D v ≤ v.ord ((α : Place K F → F) v) := by show (∀ v : Place K F, v.adicValuation ((α : Place K F → F) v) ≤ exp (D v)) ↔ _ exact forall_congr' fun v => v.adicValuation_le_exp_iff theorem repartitionsOf_mono {D D' : Divisor K F} (h : D ≤ D') : repartitionsOf D ≤ repartitionsOf D' := fun _ hα v => (hα v).trans (exp_le_exp.mpr (Finsupp.le_def.mp h v)) def riemannRochSpace (D : Divisor K F) : Submodule K F where carrier := {f | ∀ v : Place K F, v.adicValuation f ≤ exp (D v)} zero_mem' := by intro v simp add_mem' := by intro f g hf hg v exact (Valuation.map_add _ _ _).trans (max_le (hf v) (hg v)) smul_mem' := by intro c f hf v show v.adicValuation (c • f) ≤ exp (D v) rw [Algebra.smul_def, map_mul] exact (mul_le_of_le_one_left' (v.adicValuation_algebraMap_le_one c)).trans (hf v) theorem mem_riemannRochSpace_iff {D : Divisor K F} {f : F} : f ∈ riemannRochSpace D ↔ ∀ v : Place K F, f = 0 ∨ -D v ≤ v.ord f := by show (∀ v : Place K F, v.adicValuation f ≤ exp (D v)) ↔ _ exact forall_congr' fun v => v.adicValuation_le_exp_iff variable (K F) in def principalRepartitions : Submodule K ↥(repartitions K F) := (LinearMap.range (Algebra.linearMap F ↥(repartitions K F))).restrictScalars K theorem mem_principalRepartitions_iff {α : ↥(repartitions K F)} : α ∈ principalRepartitions K F ↔ ∃ f : F, (α : Place K F → F) = fun _ => f := by simp only [principalRepartitions, Submodule.restrictScalars_mem, LinearMap.mem_range, Algebra.linearMap_apply] constructor · rintro ⟨f, rfl⟩ exact ⟨f, rfl⟩ · rintro ⟨f, hf⟩ exact ⟨f, Subtype.ext hf.symm⟩ abbrev H1 (D : Divisor K F) : Type _ := ↥(repartitions K F) ⧸ (repartitionsOf D ⊔ principalRepartitions K F) variable (K F) in def genusFF : ℕ := Module.finrank K (H1 (0 : Divisor K F)) end AlgebraicCurve end
Statements phrased using this module (545)
- Riemann–Roch over an algebraically closed base field
AlgebraicCurve.functionFieldRiemannRoch_of_isAlgClosed8 below · depth 9 - A principal divisor P-Q with deg Q=1 forces genus zero
AlgebraicCurve.genus_eq_zero_of_isPrincipal_single_sub_single28 below · depth 9 - Finite-dimensionality of L(0) when the constants are K
AlgebraicCurve.RationalFunctionField.finiteDimensional_lSpace_zero_of_constantsAreBase23 below · depth 10 - Vanishing of ℓ(D) when deg D<0
AlgebraicCurve.ell_eq_zero_of_degree_neg0 below · depth 10 - Riemann's index theorem for curves over a perfect field
AlgebraicCurve.exists_genus_riemannIndex_of_isCurveOver26 below · depth 10 - Deuring reduction of divisors at good constant reduction
AlgebraicCurve.exists_placeMap_mapDomain_eq_ord_of_good_constantReduction74 below · depth 10 - Finite-dimensionality of all L(D) from that of L(0)
AlgebraicCurve.finiteDimensional_lSpace0 below · depth 10 - Riemann–Roch from the residue theorem, K algebraically closed
AlgebraicCurve.functionFieldRiemannRoch_of_residueTheoremK_of_isAlgClosed0 below · depth 10 - Genus invariance under algebraically closed constant field extension
AlgebraicCurve.genusFF_eq_of_constantFieldExtension_of_isAlgClosed59 below · depth 10 - Powers of a transcendental element are linearly independent
AlgebraicCurve.linearIndependent_pow_of_transcendental23 below · depth 10 - Residue theorem over an algebraically closed base field
AlgebraicCurve.residueTheoremK_of_isAlgClosed6 below · depth 10 - Degree of a divisor as a sum over its support
AlgebraicCurve.Divisor.degree_eq_sum_support0 below · depth 11 - Maximal ideal of a place in terms of ordᵥ
AlgebraicCurve.Place.mk_mem_maximalIdeal_iff0 below · depth 11 - Existence of the genus for separable extensions of K(X)
AlgebraicCurve.RationalFunctionField.stichtenothGenusExists23 below · depth 11 - Existence and uniqueness of the reduced place on a chart
AlgebraicCurve.RegularProlongation.existsUnique_place_forall_residue_sub_mem_nonunits9 below · depth 11 - Equal genera force surjective reduction onto affine charts
AlgebraicCurve.RegularProlongation.residue_integralClosure_surjective_of_genusFF_eq61 below · depth 11 - Deuring's reduction of div(f) at a finite place
AlgebraicCurve.RegularProlongation.sum_ord_eq_ord_residue_of_residue_integralClosure_surjective31 below · depth 11 - Degree of a canonical divisor is 2g-2 over ̄ K
AlgebraicCurve.degree_canonicalDivisor_eq_of_isAlgClosed56 below · depth 11 - Adelic Riemann–Roch from existence of the Stichtenoth genus
AlgebraicCurve.exists_genus_riemannIndex_of_stichtenothGenusExists0 below · depth 11 - Riemann–Roch over an algebraically closed constant field
AlgebraicCurve.functionFieldRiemannRoch_of_isAlgClosed_of_isCurveOver9 below · depth 11 - Genus does not increase under algebraically closed constant field extension
AlgebraicCurve.genusFF_le_of_constantFieldExtension_of_isAlgClosed57 below · depth 11 - Genus of an unramified Kummer cover of prime degree
AlgebraicCurve.genusFF_sub_one_eq_of_isSplittingField_of_forall_dvd_ord97 below · depth 11 - Genus does not drop under algebraically closed constant field extension
AlgebraicCurve.le_genusFF_of_constantFieldExtension_of_isAlgClosed51 below · depth 11 - Residue theorem for K(x), K algebraically closed
AlgebraicCurve.residueTheoremK_ratFunc_of_isAlgClosed0 below · depth 11 - Residue–trace commutation through the completion, F/E separable
AlgebraicCurve.residueTraceCompletionCommute4 below · depth 11 - Genus of the mod-ℓ modular function field equals that over ℚ̄
ModularCurve.genusFF_modularFunctionFieldFullC_eq_genusFF_modularFunctionFieldBar729 below · depth 11 - Degree of the pole divisor of x equals [F:K(x)]
AlgebraicCurve.Divisor.degree_eq_finrank_adjoin_of_eq_max_neg_ord13 below · depth 12 - Eventual dimension count for joint residue spans
AlgebraicCurve.RegularProlongation.exists_forall_finrank_residueSpan_inf_add_card_le98 below · depth 12 - Deuring's multiplicity inequality on the finite chart
AlgebraicCurve.RegularProlongation.ord_residue_le_sum_ord_of_isIntegral_adjoin7 below · depth 12 - Residues of L(M· D) lie in both chart spans
AlgebraicCurve.RegularProlongation.span_residue_lSpace_le_residueSpan_inf2 below · depth 12 - Deuring reduction: equal multiplicity totals on the finite chart
AlgebraicCurve.RegularProlongation.sum_ord_eq_sum_ord_residue_of_isIntegral_adjoin30 below · depth 12 - deg D-ℓ(D) is constant above a genus-realising divisor
AlgebraicCurve.RiemannGenusReachedAt.eq_of_ge0 below · depth 12 - Degree of the pole divisor of x equals [F:K(x)]
AlgebraicCurve.degree_poleDivisor_eq_finrank_adjoin_of_isAlgClosed_of_transcendental61 below · depth 12 - Invariance of ℓ(D) under constant field extension
AlgebraicCurve.ell_mapDomain_eq_of_constantFieldExtension_of_isAlgClosed26 below · depth 12 - Eventual exactness of ℓ(N· D) for the pole divisor of x
AlgebraicCurve.exists_ell_nsmul_eq_of_isAlgClosed_of_transcendental66 below · depth 12 - Vanishing index of specialty for a lifted divisor
AlgebraicCurve.exists_indexOfSpecialty_mapDomain_eq_zero_of_constantFieldExtension_of_isAlgClosed40 below · depth 12 - Canonical-degree genus equals the adelic genus dim_K H¹(0)
AlgebraicCurve.genus_eq_genusFF2 below · depth 12 - Index of specialty equals dim_K H¹(D)
AlgebraicCurve.indexOfSpecialty_eq_finrank_H10 below · depth 12 - Index of specialty at an attained Riemann genus
AlgebraicCurve.indexOfSpecialty_eq_of_genusReached0 below · depth 12 - Index of specialty vanishes at a genus-realising divisor
AlgebraicCurve.indexOfSpecialty_eq_zero_of_genusReached0 below · depth 12 - L(D)· L(E)⊆ L(D+E)
AlgebraicCurve.mul_mem_lSpace_add0 below · depth 12 - Residue theorem for curves over an algebraically closed field
AlgebraicCurve.residueTheorem_of_isAlgClosed8 below · depth 12 - Existence of the Stichtenoth genus for a curve over a perfect field
AlgebraicCurve.stichtenothGenusExists_of_isCurveOver25 below · depth 12 - Tate's residue agrees with the local residue trace
AlgebraicCurve.tateAgreement0 below · depth 12 - Chain rule for Tate's residue along F/E
AlgebraicCurve.tateChainRule0 below · depth 12 - Tate's commutator has finite K-rank at every place
AlgebraicCurve.tateCommFinite0 below · depth 12 - Trace compatibility of Tate's local residue for separable F/E
AlgebraicCurve.tateTraceCompat_of_isSeparable0 below · depth 12 - Genus of the level-N modular function field in characteristic ℓ≥ 5
ModularCurve.genusFF_modularFunctionFieldFullC_eq_genusFF_modularFunctionFieldBar_of_five_le710 below · depth 12 - Genus lower bound for X₀(N) in characteristic 2 or 3
ModularCurve.genusFormula_le_genusFF_modularFunctionFieldFullC_of_lt_five441 below · depth 12 - Canonical-divisor genus equals adelic genus for X₀(N) over ℚ̄
ModularCurve.genus_eq_genusFF_modularFunctionFieldBar181 below · depth 12 - Pole divisor degree at most [F:K(x)]
AlgebraicCurve.Divisor.degree_le_finrank_adjoin_of_eq_max_neg_ord3 below · depth 13 - Lower bound [F:K(x)] ≤ deg of the pole divisor
AlgebraicCurve.Divisor.finrank_adjoin_le_degree_of_eq_max_neg_ord10 below · depth 13 - Interpolation with prescribed non-zero values and one pole
AlgebraicCurve.RROpens.exists_forall_hasValue_forall_ord_nonneg8 below · depth 13 - Joint residues of f-integral functions: integrality and monic denominators
AlgebraicCurve.RegularProlongation.forall_ord_residueSpan_nonneg_and_exists_monic_of_isAlgClosed25 below · depth 13 - Constants are the base field when K is algebraically closed
AlgebraicCurve.constantsAreBase_of_isAlgClosed_of_transcendental49 below · depth 13 - Riemann–Roch over an algebraically closed field
AlgebraicCurve.exists_canonicalDivisor_genus_riemannRoch43 below · depth 13 - Integral closure of K[x] spanned by x^jL(M₁D)
AlgebraicCurve.exists_forall_mem_span_pow_mul_of_forall_ord_nonneg69 below · depth 13 - Genus bound attained at a multiple of any single place
AlgebraicCurve.exists_riemannGenusReachedAt_nsmul_single_of_stichtenothGenusExists4 below · depth 13 - Invariance of the repartition genus under K-algebra isomorphism
AlgebraicCurve.genusFF_eq_of_algEquiv0 below · depth 13 - Descent of Riemann–Roch spaces along a constant field extension
AlgebraicCurve.lSpace_mapDomain_subset_span_image_lSpace_of_constantFieldExtension_of_isAlgClosed25 below · depth 13 - Hurwitz genus inequality for F/k(x) in differential form
AlgebraicCurve.sum_ordDiff_D_le_two_mul_genusFF_of_isSeparable106 below · depth 13 - Hurwitz ramification bound for a separable function field over the line
AlgebraicCurve.sum_ord_sub_one_le_two_mul_genusFF_of_isSeparable107 below · depth 13 - Adelic Weil duality over an algebraically closed constant field
AlgebraicCurve.weilDualityAdelic_of_isAlgClosed69 below · depth 13 - pⁿ-torsion of J₀(N) has p^{2gn} points
ModularCurve.JZero.cardinalityAJ_genusFF460 below · depth 13 - Finiteness of p^k-torsion of J₀(N) from the point count
ModularCurve.JZero.finite_torsion_pow_of_cardinalityAJ0 below · depth 13 - Fibre counts for j on the modular curve of level N
ModularCurve.card_fibres_jqModC_modularFunctionFieldFullC_eq362 below · depth 13 - Poles of j count the cusps of level N
ModularCurve.card_poles_jqModC_modularFunctionFieldFullC_eq_cuspCount123 below · depth 13 - Full-level modular function field is essentially of finite type
ModularCurve.essFiniteType_modularFunctionFieldFullC73 below · depth 13 - Genus of X₀(Nq) versus its two-component special fibre
ModularCurve.genusFF_modularFunctionFieldBar_mul_add_one_eq_of_ssPlaces783 below · depth 13 - Wild different over j=0 in characteristics 2 and 3
ModularCurve.le_six_mul_sum_ordDiff_D_jqModC_of_lt_five389 below · depth 13 - Effective divisors have non-negative degree
AlgebraicCurve.Divisor.degree_nonneg_of_nonneg0 below · depth 14 - Deuring–Roquette: invariance of ℓ(D) under good constant reduction
AlgebraicCurve.Divisor.exists_finset_finrank_riemannRochSpace_mapDomain_placeReduction_eq116 below · depth 14 - Finiteness and n^{2g} bound for n-torsion of Pic⁰
AlgebraicCurve.Pic0.finite_and_card_torsion_le_of_natCast_ne_zero946 below · depth 14 - Degree-zero classes as effective divisors minus g[P]
AlgebraicCurve.RROpens.exists_effective_sub_add_smul_single_mem_principal0 below · depth 14 - Riemann–Roch descent: ℓ(G-T)=0 for ℓ(G) places in a prescribed infinite set
AlgebraicCurve.RROpens.exists_finset_subset_ell_sub_sum_single_eq_zero0 below · depth 14 - ordᵤ(X)≥ 0 for every place u≠∞ of K(X)
AlgebraicCurve.RationalFunctionField.ord_X_nonneg_of_ne_placeInfty23 below · depth 14 - ord_∞(X) = -1 on the rational function field
AlgebraicCurve.RationalFunctionField.ord_placeInfty_X23 below · depth 14 - Degree of the pulled-back pole divisor equals [F:E]
AlgebraicCurve.TranscendenceTower.degree_poleDivisor_eq_finrank6 below · depth 14 - Coefficients of the pole divisor π^*(v)
AlgebraicCurve.TranscendenceTower.poleDivisor_apply6 below · depth 14 - Riemann's inequality: ℓ(D)≤deg D+ℓ(0)
AlgebraicCurve.ell_le_degree_add_ellZero0 below · depth 14 - Single-place step: ℓ(D)≤ℓ(D-P)+deg P
AlgebraicCurve.ell_le_ell_sub_single_add_deg0 below · depth 14 - Strong approximation: i(nQ)=0 for some n
AlgebraicCurve.exists_indexOfSpecialty_nsmul_single_eq_zero_of_genusReached1 below · depth 14 - Fixed points of Frobenius on places and the L-polynomial
AlgebraicCurve.exists_monic_natCard_fixedPoints_restrictAlong_eq_of_constantFieldExtension121 below · depth 14 - L(0) is finite-dimensional and ℓ(0)=1 over algebraically closed k
AlgebraicCurve.finiteDimensional_lSpace_zero_and_ell_zero_eq_one_of_isAlgClosed_of_transcendental65 below · depth 14 - Index of specialty equals ℓ(W-D) at a Weil differential
AlgebraicCurve.indexOfSpecialty_eq_ell_sub_of_rankOne_max0 below · depth 14 - L(D)=0 for divisors of negative degree
AlgebraicCurve.lSpace_eq_bot_of_degree_neg0 below · depth 14 - Linear independence of the products x^j uᵢ
AlgebraicCurve.linearIndependent_pow_mul6 below · depth 14 - Coefficients of a constant-field-extension Riemann–Roch element descend
AlgebraicCurve.mem_riemannRochSpace_of_sum_basis_smul_algebraMap_mem_mapDomain3 below · depth 14 - Every place of a curve has degree at least one
AlgebraicCurve.one_le_deg0 below · depth 14 - Weil differentials form a rank-one F-module for curves
AlgebraicCurve.weilDifferentialRankOne_of_isCurveOver26 below · depth 14 - n^{2g} divides the n-torsion count of J₀(N)
ModularCurve.JZero.pow_two_mul_genusFF_le_card_torsion746 below · depth 14 - Jacobi inversion: effective representatives for classes of J₀(M)
ModularCurve.exists_effective_pic0Mk_sub_eq_of_genusFF_le_degree189 below · depth 14 - Transcendence of j and finiteness over K(j)
ModularCurve.transcendental_and_finiteDimensional_adjoin_laurentBaseChange_qExpFunctionFieldC_of_coe_eq_jqModC120 below · depth 14 - Generic upper bound for constant reduction of divisors
AlgebraicCurve.Divisor.exists_finset_finrank_riemannRochSpace_mapDomain_placeReduction_le113 below · depth 15 - Semicontinuity of divisor dimension under constant reduction
AlgebraicCurve.Divisor.finrank_riemannRochSpace_le_finrank_riemannRochSpace_mapDomain_placeReduction77 below · depth 15 - Prime torsion of Pic⁰ has order ℓ^{2g}
AlgebraicCurve.Pic0.natCard_torsion_prime_eq_pow_two_mul_genusFF_of_forall_pow_eq_self810 below · depth 15 - Genus zero forces trivial degree-zero divisor class group
AlgebraicCurve.Pic0.subsingleton_of_genusFF_eq_zero83 below · depth 15 - No cancellation of K'-weighted F-sums at lifted places
AlgebraicCurve.Place.ord_sum_algebraMap_mul_le_ord_of_linearIndependent_of_constantFieldExtension2 below · depth 15 - General position of r-g degree-one places from a finite pool
AlgebraicCurve.RROpens.exists_injective_ell_sub_sum_single_eq_one_of_le_card1 below · depth 15 - A single integral characteristic polynomial for a correspondence on Tₚ(Pic⁰)
AlgebraicCurve.exists_monic_charpoly_tateModule_rep_correspondence_eq_map293 below · depth 15 - Genus invariance under constant-field extension in Frobenius form
AlgebraicCurve.genusFF_eq_of_constantFieldExtension_of_finite_of_isAlgClosed94 below · depth 15 - Finite-dimensionality of the space Ω(D)
AlgebraicCurve.omegaSpace_finite_of_genusReached0 below · depth 15 - Weil differentials have rank one, given the Stichtenoth genus
AlgebraicCurve.weilDifferentialRankOne_of_stichtenothGenusExists0 below · depth 15 - Order of the toric m-torsion subgroup: m^{toricRank}
ModularCurve.JZeroNeronObjectAtP.natCard_toricPts1,633 below · depth 15 - Inertia-fixed lift of a residue pair to L(D)
ModularCurve.PlaceSpecialization.ProlongationTuple.IsModel.exists_mem_riemannRochSpace_residue_eq_forall_arithmeticGalois_smul_eq_of_isGoodDiv869 below · depth 15 - Realising a node-compatible residue pair by a bi-integral section
ModularCurve.PlaceSpecialization.ProlongationTuple.IsModel.exists_mem_riemannRochSpace_residue_eq_of_isGoodDiv863 below · depth 15 - Common unit with simple zero and residue order tables
ModularCurve.PlaceSpecialization.ProlongationTuple.exists_commonUnit_ord_eq_one_orderTables_of_realisation0 below · depth 15 - Uniqueness of place specialisations when the special fibre has positive genus
ModularCurve.PlaceSpecialization.eq_of_genusFF_pos814 below · depth 15 - Interpolation on the full level-N modular curve with simple poles
ModularCurve.exists_mem_riemannRochSpace_ord_sub_eq_one_hasValue_modularFunctionFieldFullC164 below · depth 15 - Counting m-torsion of J₀(N₀p) via supersingular places
ModularCurve.natCard_jZeroTorsion_mul_eq_pow_of_ssPlaces1,629 below · depth 15 - Riemann–Roch genus on a smooth proper model equals genusFF
AlgebraicCurve.CurveModel.eq_genusFF_of_forall_ell_sub_ell_eq60 below · depth 16 - Deuring reduction of a principal divisor along A
AlgebraicCurve.Divisor.mapDomain_placeReduction_eq_ord_of_retraction63 below · depth 16 - ℓ-power torsion of Pic⁰ for curves with Frobenius
AlgebraicCurve.Pic0.abelJacobiCard_genusFF_of_frobenius948 below · depth 16 - Prime-to-p torsion of Pic⁰ over 𝔽̄_q
AlgebraicCurve.Pic0.abelJacobiCard_genusFF_of_frobenius_of_isAlgebraic674 below · depth 16 - Counting effective divisors of large degree over a finite field
AlgebraicCurve.card_sub_one_mul_card_effectiveDivisors_eq33 below · depth 16 - Čech Riemann–Roch on a two-chart cover of a curve
AlgebraicCurve.cechRiemannRoch_of_genusReached12 below · depth 16 - ℓ(D₂)-ℓ(D₁)≤deg D₂-deg D₁ for D₁≤ D₂
AlgebraicCurve.ell_sub_ell_le_degree_sub_degree0 below · depth 16 - Uniqueness of the genus in Riemann–Roch
AlgebraicCurve.eq_genusFF_of_forall_ell_sub_ell_eq32 below · depth 16 - One integral matrix for a correspondence on all Tate modules
AlgebraicCurve.exists_int_matrix_forall_toMatrix_tateModule_rep_correspondence_eq_map292 below · depth 16 - Interpolation of twisted values in a Riemann–Roch space
AlgebraicCurve.exists_mem_riemannRochSpace_forall_hasValue_mul_of_exists_not_mem0 below · depth 16 - Riemann–Roch in two-chart Čech form for 𝒪(D)
AlgebraicCurve.finrank_H0_H1_sectionsOf_of_range_eq_lSpaceOn76 below · depth 16 - Codimension of twisted node conditions on L(E₁)× L(E₂)
AlgebraicCurve.finrank_add_card_le_of_forall_exists_mem_riemannRochSpace_hasValue_mul0 below · depth 16 - Čech cohomology of mathcal O_C computed by places
AlgebraicCurve.nonempty_linearEquiv_cechH0_and_cechH18 below · depth 16 - Geometric fibre of a two-chart Čech complex: h⁰=1, h¹=g
AlgebraicGeometry.Scheme.TwoAffineOpenCover.finrank_cechDiff_baseChange_of_isAlgClosed81 below · depth 16 - Genus of the Drinfeld curve function field is q(q-1)/2
DrinfeldCurve.genusFF_drinfeldFunctionField113 below · depth 16 - Special m-kernel of the J₀(N₀) datum has order m^{2g}
ModularCurve.JZeroNeronObjectAtP.LevelData.isFinite_schemeKerStr_special_and_finrank_eq_pow_two_mul_genusFF1,598 below · depth 16 - Assembling the at-p Néron datum from a Néron object
ModularCurve.JZeroNeronObjectAtP.exists_jZeroNeronAtPDataOrdV22_toric_eq_fin_eq_of_forall_smul_sub_mem5,559 below · depth 16 - Cuspidal Hecke eigen-function yields mod-p cusp eigenform of weight 2m'
ModularCurve.SSHeckeV2.exists_isModPEigen_modPCusp_of_eigen_riemannRochSpace997 below · depth 16 - Hecke eigenfunctions in L(D_m) give mod-p eigenforms
ModularCurve.SSHeckeV2.exists_isModPEigen_of_eigen_riemannRochSpace876 below · depth 16 - Lead coefficients of the weight-2m Hecke image compute T_ℓ^{ss}
ModularCurve.SSHeckeV2.lead_trace_heckeBetaC_mul_pow_eq_ssHeckeFun_of_map893 below · depth 16 - Additivity of the supersingular residue map on L(D_m)
ModularCurve.SSHeckeV2.resFnFun_add_of_mem363 below · depth 16 - Homogeneity of the supersingular leading-coefficient map
ModularCurve.SSHeckeV2.resFnFun_smul_of_mem363 below · depth 16 - Commutativity of the trace Hecke operators on L(weightDivisor)
ModularCurve.SSHeckeV2.trace_heckeBetaC_mul_pow_comm_of_mem874 below · depth 16 - Weight-2m Hecke operator preserves the Riemann–Roch space
ModularCurve.SSHeckeV2.trace_heckeBetaC_mul_pow_mem_riemannRochSpace_weightDivisor866 below · depth 16 - Sharp Riemann–Roch on the full modular function field
ModularCurve.ell_eq_degree_add_one_sub_genusFF_modularFunctionFieldFullC163 below · depth 16 - Galois descent: S-fixed basis of a Riemann–Roch space
ModularCurve.exists_linearIndependent_riemannRochSpace_forall_arithmeticGalois_smul_eq2 below · depth 16 - Uniformisers with correction divisors at supersingular places and their Frobenius translates
ModularCurve.exists_unifFst_unifSnd_correctionDivisor_laws_of_ssPlaces218 below · depth 16 - Finiteness of the weight divisor Riemann–Roch space
ModularCurve.finiteDimensional_riemannRochSpace_weightDivisor134 below · depth 16 - Rank of the period lattice equals twice the genus
ModularCurve.finrank_periodLattice_eq_two_mul_genusFF1,396 below · depth 16 - Integral weight-2m holomorphy gives membership in L(D)
ModularCurve.mem_riemannRochSpace_of_isModPFormFn1 below · depth 16 - Riemann–Roch space of the weight divisor equals mod-p forms
ModularCurve.mem_riemannRochSpace_weightDivisor_iff_isModPFormFn372 below · depth 16 - Vanishing supersingular leading coefficients versus stack order
ModularCurve.resFnFun_eq_zero_iff_forall_one_le_stackOrd364 below · depth 16 - Genus bound for p-torsion of Pic⁰
AlgebraicCurve.CartierB.finite_and_card_torsion_le_pow_genusFF19 below · depth 17 - Two-chart Čech H¹ computes the répartition H¹(D)
AlgebraicCurve.cechH1ToH1_bijective7 below · depth 17 - Functions in L(D) from orthogonality to Ω(D-E)
AlgebraicCurve.exists_mem_riemannRochSpace_forall_adicValuation_sub_le_of_forall_omegaSpace0 below · depth 17 - Weil differentials bounded by W are F-proportional
AlgebraicCurve.exists_weilSmul_eq_of_riemannIndexFormula23 below · depth 17 - Čech h⁰=1 and h¹= genus for smooth proper curves
AlgebraicCurve.finite_H0_H1_structureSheaf_of_isAlgClosed79 below · depth 17 - Finiteness of H¹(D) and duality with Ω_F(D)
AlgebraicCurve.finite_H1_and_exists_linearEquiv_dual_H1_omegaSpace31 below · depth 17 - Finiteness of the répartition space H¹(D)
AlgebraicCurve.finite_H1_of_genusReached3 below · depth 17 - Riemann–Hurwitz for tame separable covers of P¹
AlgebraicCurve.finsum_ramificationIndex_ratFunc_sub_one_eq_of_tame100 below · depth 17
… and 395 more statements (search for the module name to find them).