Definitions/Def_AlgebraicGeometry_RelativePicardFunctor.lean
Invertible module sheaves and the rigidified relative Picard presheaf
Over a scheme X, Scheme.Modules.IsInvertible is a predicate on a sheaf of \mathcal O_X-modules M: for every point x of X there is an open U \subseteq X containing x such that the pullback of M along the inclusion U \hookrightarrow X admits an isomorphism to the unit sheaf of modules on U (the assertion is the nonemptiness of the type of such isomorphisms, so no trivialisation is chosen). The accompanying results give the canonical isomorphism f^{*}\mathcal O_Y \cong \mathcal O_X for a morphism f \colon X \to Y, invertibility of the unit sheaf, and stability of invertibility under pullback; an instance records that the induced map of lattices of opens is a final functor.
Fix a commutative ring R, a scheme c \colon C \to \operatorname{Spec} R and \varepsilon, a morphism \operatorname{Spec} R \to C with \varepsilon \circ c = \mathrm{id} in the sense of SchemeHomOver. For t \colon T \to \operatorname{Spec} R, rigSection c t ε is the section T \to C \times_R T with components t followed by \varepsilon, and \mathrm{id}_T; for a morphism \psi \colon T' \to T over \operatorname{Spec} R, baseChangeSnd c ψ is \mathrm{id}_C \times \psi \colon C \times_R T' \to C \times_R T. Three lemmas record that baseChangeSnd respects identities and composition (with postComp composing over-morphisms) and that rigSection is natural for it. RigidifiedLineBundle c ε t is a structure bundling a sheaf of modules L on C \times_R T, a proof that it is invertible, and the assertion that the pullback of L along rigSection c t ε is isomorphic to the unit sheaf (again nonemptiness, not a chosen rigidification). Such data pull back along \psi; the setoid identifies two of them when the underlying modules are isomorphic, disregarding the rigidification, and Classes is the quotient. Finally relPicardPresheaf c ε is the functor (\mathrm{Over}\ \operatorname{Spec} R)^{\mathrm{op}} \to \mathrm{Type}\ (u+1) sending t to these classes and a morphism to pullback of classes, with its functoriality laws proved; relPicardPresheaf.unitClass is the class of the unit sheaf. No degree condition is imposed.
Relation to Mathlib
Mathlib supplies sheaves of modules on a scheme, their unit object and pullback functors, together with the finality of the opens-map functor from representable flatness; the invertibility predicate for Scheme.Modules, the rigidified line bundles and the relative Picard presheaf are the project's own.
Where it is used
These definitions give the language for the relative Picard functor of a curve with a section over an affine base, the setting in which \mathrm{Pic}^0 and its comparison with Néron models are formulated for the elliptic curves occurring in the Frey construction.
References
- S. Bosch, W. Lütkebohmert and M. Raynaud, Néron Models, Ergebnisse der Mathematik und ihrer Grenzgebiete 21, Springer, 1990, §8.1
- S. L. Kleiman, The Picard scheme, in: Fundamental Algebraic Geometry: Grothendieck's FGA Explained, Mathematical Surveys and Monographs 123, American Mathematical Society, 2005
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 182 lines
- 26 declarations
- used in the statements of 1,507 theorems and imported by 1,601 proofs
- imports 1 definition modules
Source file: Definitions/Def_AlgebraicGeometry_RelativePicardFunctor.lean
Imported by
Def_AlgebraicGeometry_CechPicardObstructionDef_AlgebraicGeometry_ModulesSectionZeroSchemeDef_AlgebraicGeometry_ModulesSectionZeroSchemeV2Def_AlgebraicGeometry_PolarisedAbelianSchemeDef_AlgebraicGeometry_RelPicardAbelJacobiFamilyDef_AlgebraicGeometry_RelPicardAlgEquivZeroCutDef_AlgebraicGeometry_RelPicardAlgEquivZeroGroupCutDef_AlgebraicGeometry_RelPicardPullbackDef_AlgebraicGeometry_RelPicardStageHomDef_AlgebraicGeometry_RelPicardThetaBundleDef_AlgebraicGeometry_RelSubPicBaseChangeDef_AlgebraicGeometry_RelSubPicGroupDef_AlgebraicGeometry_RelSubPicGroupV2Def_AlgebraicGeometry_RelSubPicPresheafDef_AlgebraicGeometry_RepresentsRelSubPicDef_AlgebraicGeometry_RigKerDualNumberDef_AlgebraicGeometry_RigidifiedLineBundleOfInvertibleDef_AlgebraicGeometry_SquareZeroDeformationDef_AlgebraicGeometry_SymmRootFunctorDef_AlgebraicGeometry_TwoGluedCurvesNodeUnitModuleDef_AlgebraicGeometry_TwoGluedProjectiveLinesNodeUnitModuleDef_GoodReductionJacobian_RelativeGroupLawTranslateDef_ModularCurve_DRModelLegTwoInputDef_ModularCurve_DRModelLegTwoInputV2Def_ModularCurve_DRResolvedModelPackageV4Def_ModularCurve_JZeroNeronObjectAtP_LevelModel
Declarations
- structure
AlgebraicGeometry.Scheme.Modules.IsInvertible - field
AlgebraicGeometry.Scheme.Modules.IsInvertible.exists_trivialization - field
AlgebraicGeometry.Scheme.Modules.IsInvertible.Nonempty - instance
AlgebraicGeometry.Scheme.Hom.opensMapFinal - def
AlgebraicGeometry.Scheme.Modules.pullbackUnitIso - theorem
AlgebraicGeometry.Scheme.Modules.isInvertible_unit - theorem
AlgebraicGeometry.Scheme.Modules.IsInvertible.pullback - def
AlgebraicGeometry.RelPicard.baseChangeSnd - def
AlgebraicGeometry.RelPicard.rigSection - def
AlgebraicGeometry.RelPicard.postComp - theorem
AlgebraicGeometry.RelPicard.baseChangeSnd_id - theorem
AlgebraicGeometry.RelPicard.baseChangeSnd_comp - theorem
AlgebraicGeometry.RelPicard.rigSection_baseChangeSnd - structure
AlgebraicGeometry.RelPicard.RigidifiedLineBundle - field
AlgebraicGeometry.RelPicard.RigidifiedLineBundle.L - field
AlgebraicGeometry.RelPicard.RigidifiedLineBundle.isInvertible - field
AlgebraicGeometry.RelPicard.RigidifiedLineBundle.rigidified - def
AlgebraicGeometry.RelPicard.RigidifiedLineBundle.unit - def
AlgebraicGeometry.RelPicard.RigidifiedLineBundle.pullbackAlong - instance
AlgebraicGeometry.RelPicard.RigidifiedLineBundle.setoid - theorem
AlgebraicGeometry.RelPicard.RigidifiedLineBundle.pullbackAlong_congr - def
AlgebraicGeometry.RelPicard.RigidifiedLineBundle.Classes - def
AlgebraicGeometry.RelPicard.RigidifiedLineBundle.classesMap - def
AlgebraicGeometry.RelPicard.relPicardPresheaf - def
AlgebraicGeometry.RelPicard.relPicardPresheaf.unitClass
Source
import Mathlib import Definitions.Def_AlgebraicGeometry_NeronModelPropertyBundleCarrier set_option autoImplicit false universe u open CategoryTheory CategoryTheory.Limits AlgebraicGeometry open NeronModelInfra noncomputable section namespace AlgebraicGeometry structure Scheme.Modules.IsInvertible {X : Scheme.{u}} (M : X.Modules) : Prop where exists_trivialization : ∀ x : X, ∃ (U : X.Opens), x ∈ U ∧ Nonempty ((Scheme.Modules.pullback U.ι).obj M ≅ SheafOfModules.unit U.toScheme.ringCatSheaf) instance Scheme.Hom.opensMapFinal {X Y : Scheme.{u}} (f : X ⟶ Y) : (TopologicalSpace.Opens.map f.base).Final := CategoryTheory.final_of_representablyFlat _ def Scheme.Modules.pullbackUnitIso {X Y : Scheme.{u}} (f : X ⟶ Y) : (Scheme.Modules.pullback f).obj (SheafOfModules.unit Y.ringCatSheaf) ≅ SheafOfModules.unit X.ringCatSheaf := by haveI h : IsIso (SheafOfModules.pullbackObjUnitToUnit f.toRingCatSheafHom) := inferInstance exact @asIso _ _ _ _ _ h theorem Scheme.Modules.isInvertible_unit (X : Scheme.{u}) : Scheme.Modules.IsInvertible (SheafOfModules.unit X.ringCatSheaf) := ⟨fun _ => ⟨⊤, trivial, ⟨Scheme.Modules.pullbackUnitIso _⟩⟩⟩ theorem Scheme.Modules.IsInvertible.pullback {X Y : Scheme.{u}} (f : X ⟶ Y) {L : Y.Modules} (hL : Scheme.Modules.IsInvertible L) : Scheme.Modules.IsInvertible ((Scheme.Modules.pullback f).obj L) := by refine ⟨fun x => ?_⟩ obtain ⟨U, hyU, ⟨eU⟩⟩ := hL.1 (f.base x) refine ⟨f ⁻¹ᵁ U, hyU, ⟨?_⟩⟩ have hfact : (f ⁻¹ᵁ U).ι ≫ f = (f ∣_ U) ≫ U.ι := (morphismRestrict_ι f U).symm exact (Scheme.Modules.pullbackComp _ _).app L ≪≫ (Scheme.Modules.pullbackCongr hfact).app L ≪≫ ((Scheme.Modules.pullbackComp _ _).app L).symm ≪≫ (Scheme.Modules.pullback (f ∣_ U)).mapIso eU ≪≫ Scheme.Modules.pullbackUnitIso (f ∣_ U) namespace RelPicard variable {R : Type u} [CommRing R] def baseChangeSnd {C T T' : Scheme.{u}} (c : C ⟶ Spec (CommRingCat.of R)) {t : T ⟶ Spec (CommRingCat.of R)} {t' : T' ⟶ Spec (CommRingCat.of R)} (s : SchemeHomOver t' t) : pullback c t' ⟶ pullback c t := pullback.map c t' c t (𝟙 C) s.1 (𝟙 _) ((Category.comp_id c).trans (Category.id_comp c).symm) ((Category.comp_id t').trans s.2.symm) def rigSection {C T : Scheme.{u}} (c : C ⟶ Spec (CommRingCat.of R)) (t : T ⟶ Spec (CommRingCat.of R)) (ε : SchemeHomOver (𝟙 (Spec (CommRingCat.of R))) c) : T ⟶ pullback c t := pullback.lift (t ≫ ε.1) (𝟙 T) (by rw [Category.assoc, ε.2, Category.comp_id, Category.id_comp]) def postComp {X X' T' : Scheme.{u}} {x : X ⟶ Spec (CommRingCat.of R)} {x' : X' ⟶ Spec (CommRingCat.of R)} {t' : T' ⟶ Spec (CommRingCat.of R)} (φ : SchemeHomOver x x') (ψ : SchemeHomOver t' x) : SchemeHomOver t' x' := ⟨ψ.1 ≫ φ.1, by rw [Category.assoc, φ.2, ψ.2]⟩ theorem baseChangeSnd_id {C T : Scheme.{u}} (c : C ⟶ Spec (CommRingCat.of R)) (t : T ⟶ Spec (CommRingCat.of R)) : baseChangeSnd c (⟨𝟙 T, Category.id_comp t⟩ : SchemeHomOver t t) = 𝟙 (pullback c t) := pullback.map_id theorem baseChangeSnd_comp {C X X' T' : Scheme.{u}} (c : C ⟶ Spec (CommRingCat.of R)) {x : X ⟶ Spec (CommRingCat.of R)} {x' : X' ⟶ Spec (CommRingCat.of R)} {t' : T' ⟶ Spec (CommRingCat.of R)} (φ : SchemeHomOver x x') (ψ : SchemeHomOver t' x) : baseChangeSnd c ψ ≫ baseChangeSnd c φ = baseChangeSnd c (postComp φ ψ) := by unfold baseChangeSnd postComp refine (pullback.map_comp (𝟙 C) (𝟙 C) ψ.1 φ.1 (𝟙 (Spec (CommRingCat.of R))) (𝟙 (Spec (CommRingCat.of R))) _ _ _ _).trans ?_ apply pullback.hom_ext <;> simp only [pullback.lift_fst, pullback.lift_snd, Category.comp_id] theorem rigSection_baseChangeSnd {C T T' : Scheme.{u}} (c : C ⟶ Spec (CommRingCat.of R)) {t : T ⟶ Spec (CommRingCat.of R)} {t' : T' ⟶ Spec (CommRingCat.of R)} (ε : SchemeHomOver (𝟙 (Spec (CommRingCat.of R))) c) (g : SchemeHomOver t' t) : rigSection c t' ε ≫ baseChangeSnd c g = g.1 ≫ rigSection c t ε := by unfold rigSection baseChangeSnd apply pullback.hom_ext · simp only [Category.assoc, pullback.lift_fst, Category.comp_id] rw [← Category.assoc, g.2] · simp only [Category.assoc, pullback.lift_snd, pullback.lift_snd_assoc, Category.comp_id, Category.id_comp] structure RigidifiedLineBundle {C : Scheme.{u}} (c : C ⟶ Spec (CommRingCat.of R)) (ε : SchemeHomOver (𝟙 (Spec (CommRingCat.of R))) c) {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) : Type (u + 1) where L : (pullback c t).Modules isInvertible : Scheme.Modules.IsInvertible L rigidified : Nonempty ((Scheme.Modules.pullback (rigSection c t ε)).obj L ≅ SheafOfModules.unit T.ringCatSheaf) namespace RigidifiedLineBundle variable {C : Scheme.{u}} {c : C ⟶ Spec (CommRingCat.of R)} {ε : SchemeHomOver (𝟙 (Spec (CommRingCat.of R))) c} def unit {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) : RigidifiedLineBundle c ε t where L := SheafOfModules.unit (pullback c t).ringCatSheaf isInvertible := Scheme.Modules.isInvertible_unit _ rigidified := ⟨Scheme.Modules.pullbackUnitIso _⟩ instance {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) : Inhabited (RigidifiedLineBundle c ε t) := ⟨unit t⟩ def pullbackAlong {T T' : Scheme.{u}} {t : T ⟶ Spec (CommRingCat.of R)} {t' : T' ⟶ Spec (CommRingCat.of R)} (M : RigidifiedLineBundle c ε t) (ψ : SchemeHomOver t' t) : RigidifiedLineBundle c ε t' where L := (Scheme.Modules.pullback (baseChangeSnd c ψ)).obj M.L isInvertible := M.isInvertible.pullback _ rigidified := ⟨(Scheme.Modules.pullbackComp _ _).app M.L ≪≫ (Scheme.Modules.pullbackCongr (rigSection_baseChangeSnd c ε ψ)).app M.L ≪≫ ((Scheme.Modules.pullbackComp _ _).app M.L).symm ≪≫ (Scheme.Modules.pullback ψ.1).mapIso M.rigidified.some ≪≫ Scheme.Modules.pullbackUnitIso ψ.1⟩ instance setoid {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) : Setoid (RigidifiedLineBundle c ε t) where r M M' := Nonempty (M.L ≅ M'.L) iseqv := ⟨fun _ => ⟨Iso.refl _⟩, fun ⟨i⟩ => ⟨i.symm⟩, fun ⟨i⟩ ⟨j⟩ => ⟨i ≪≫ j⟩⟩ theorem pullbackAlong_congr {T T' : Scheme.{u}} {t : T ⟶ Spec (CommRingCat.of R)} {t' : T' ⟶ Spec (CommRingCat.of R)} {M M' : RigidifiedLineBundle c ε t} (ψ : SchemeHomOver t' t) (h : Nonempty (M.L ≅ M'.L)) : Nonempty ((M.pullbackAlong ψ).L ≅ (M'.pullbackAlong ψ).L) := ⟨(Scheme.Modules.pullback (baseChangeSnd c ψ)).mapIso h.some⟩ def Classes (c : C ⟶ Spec (CommRingCat.of R)) (ε : SchemeHomOver (𝟙 (Spec (CommRingCat.of R))) c) {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) : Type (u + 1) := Quotient (RigidifiedLineBundle.setoid (c := c) (ε := ε) t) def classesMap {T T' : Scheme.{u}} {t : T ⟶ Spec (CommRingCat.of R)} {t' : T' ⟶ Spec (CommRingCat.of R)} (ψ : SchemeHomOver t' t) : Classes c ε t → Classes c ε t' := Quotient.map (fun M => M.pullbackAlong ψ) (fun _ _ h => pullbackAlong_congr ψ h) end RigidifiedLineBundle def relPicardPresheaf {C : Scheme.{u}} (c : C ⟶ Spec (CommRingCat.of R)) (ε : SchemeHomOver (𝟙 (Spec (CommRingCat.of R))) c) : (Over (Spec (CommRingCat.of R)))ᵒᵖ ⥤ Type (u + 1) where obj X := RigidifiedLineBundle.Classes c ε X.unop.hom map {X X'} φ := TypeCat.ofHom (RigidifiedLineBundle.classesMap (c := c) (ε := ε) (⟨φ.unop.left, Over.w φ.unop⟩ : SchemeHomOver X'.unop.hom X.unop.hom)) map_id X := TypeCat.homEquiv.injective (funext fun x => by induction x using Quotient.ind with | _ M => exact Quotient.sound ⟨(Scheme.Modules.pullbackCongr (baseChangeSnd_id c X.unop.hom)).app M.L ≪≫ (Scheme.Modules.pullbackId (pullback c X.unop.hom)).app M.L⟩) map_comp {X X' X''} φ χ := TypeCat.homEquiv.injective (funext fun x => by induction x using Quotient.ind with | _ M => exact Quotient.sound ⟨(Scheme.Modules.pullbackCongr (baseChangeSnd_comp c (⟨φ.unop.left, Over.w φ.unop⟩ : SchemeHomOver X'.unop.hom X.unop.hom) (⟨χ.unop.left, Over.w χ.unop⟩ : SchemeHomOver X''.unop.hom X'.unop.hom)).symm).app M.L ≪≫ ((Scheme.Modules.pullbackComp _ _).app M.L).symm⟩) def relPicardPresheaf.unitClass {C : Scheme.{u}} (c : C ⟶ Spec (CommRingCat.of R)) (ε : SchemeHomOver (𝟙 (Spec (CommRingCat.of R))) c) (X : Over (Spec (CommRingCat.of R))) : (relPicardPresheaf c ε).obj (Opposite.op X) := Quotient.mk _ (RigidifiedLineBundle.unit X.hom) end RelPicard end AlgebraicGeometry end
Statements phrased using this module (1,507)
- Representing Pic⁰ makes the level datum an abelian scheme
ModularCurve.JHNeronObjectAtP.LevelData.abelianSchemePropertyBundle_of_nonempty_representsRelSubPic1,567 below · depth 11 - Néron object for J_H(M) at p ∥ M with torus coordinates
ModularCurve.JHNeronObjectAtP.exists_levelData_representsRelSubPic_dictionary_of_xHDRModelAtP_torusCoords2,647 below · depth 11 - Toric-by-finite filtration of Tₚ J_H(M) at p ∥ M
ModularCurve.JHNeronObjectAtP.exists_toricFiniteFiltration_tateModule_jH_self70 below · depth 11 - Frobenius acts as Uₚ on toric ℓ^k-torsion
ModularCurve.JHNeronObjectAtP.genOpH_U_smul_eq_cyclotomicCharacter_toZModPow_smul_of_mem_toricPts123 below · depth 11 - Frobenius on node units: p-th power twisted by the crossing permutation
ModularCurve.JHNeronObjectAtP.ptsSp_symm_eq_nodeUnit_pow_comp_frobPerm_of_isFrobeniusAt100 below · depth 11 - Comparison of the H=top and Igusa integral models
ModularCurve.exists_iso_xHDRLevel_top_drLevel_epsInf_pointEquivPlace191 below · depth 11 - Néron object of J₀(N₀p) at p with its bridges
ModularCurve.exists_jZeroNeronObjectAtP_and_bridge4,509 below · depth 11 - Finite and toric parts transport from Jₜop(N₀p) to J₀(N₀p)
ModularCurve.map_finPts_jHNeronObjectAtP_top_eq_and_map_toricPts_eq_of_pic0Congr_of_bridge136 below · depth 11 - Independence of the Pic⁰ representing scheme from the rigidifying section
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.exists_inverse_pair_of_sections5 below · depth 12 - Pull-back along e and e⁻¹ are mutually inverse
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.pullbackHom_inv_comp_pullbackHom_hom_of_iso0 below · depth 12 - Néron object of J₀(N₀p) at p from a level model
ModularCurve.DRModelPackageLevel.exists_jZeroNeronObjectAtP_and_bridge_representsRelSubPic_abqFibre_of_levelModel4,507 below · depth 12 - Correspondence α_*β^* on J_H induced by an endomorphism
ModularCurve.XH.pic0Correspondence_pts_eq_comp_of_poincare_pullbackAlong_iso_laurentBaseChange180 below · depth 12 - Degeneracy pull-backs between relative Pic⁰ representing objects
ModularCurve.XHDRModelAtP.exists_degPull_classifies_pullback_and_mul4 below · depth 12 - Degeneracy morphisms D → D₀ and Ribet's special-fibre formula
ModularCurve.XHDRModelAtP.exists_degeneracyHom_mul_pts_special1,698 below · depth 12 - Diamond operators induced by endomorphisms of the Pic⁰ scheme
ModularCurve.XHDRModelAtP.exists_hom_mul_and_pts_diamondHBar_eq_comp163 below · depth 12 - Hecke operators at ℓ≠ p on a relative Pic⁰ of X_H(M)
ModularCurve.XHDRModelAtP.exists_hom_mul_and_pts_heckeOperatorHAlong_eq_comp_of_ne719 below · depth 12 - Uₚ at p ∥ M as a group endomorphism of Pic⁰
ModularCurve.XHDRModelAtP.exists_hom_mul_and_pts_heckeOperatorHAlong_self_eq_comp719 below · depth 12 - Glued special-fibre dictionary for relative Pic⁰ at p ‖ M
ModularCurve.XHDRModelAtP.exists_ptsSp_gluedPic0_dictionary_specialFibre1,294 below · depth 12 - Special-fibre Pic⁰ dictionary for the level-Γ_N model
ModularCurve.XHDRModelAtP.exists_ptsSp_levelN_pic0_equiv_of_representsRelSubPic1,183 below · depth 12 - Generic fibre and points dictionary for the level-M/p Pic⁰ object
ModularCurve.XHDRModelAtP.exists_representsRelSubPic_abelJacobi_pts_levelN_of_representsRelSubPic299 below · depth 12 - Abel–Jacobi dictionary for the relative Pic⁰ of X_H(M)
ModularCurve.XHDRModelAtP.exists_representsRelSubPic_abelJacobi_pts_of_representsRelSubPic299 below · depth 12 - Relative Pic⁰ of the X_H(M) model at p
ModularCurve.XHDRModelAtP.exists_representsRelSubPic_algEquivZeroCut_epsInf_of_atkinLehner_generic_of_ker_le1,758 below · depth 12 - Representability of relative Pic⁰ for the level-M/p model
ModularCurve.XHDRModelAtP.exists_representsRelSubPic_levelN_comp_epsInf_pi1,564 below · depth 12 - Matching the generic and special Pic⁰ dictionaries by an A-section
ModularCurve.XHDRModelAtP.exists_schemeHomOver_pts_eq_and_ptsSp_symm_eq_mk_of_sameComponent30 below · depth 12 - Push-down and reduction agree on level-(M/p) dictionaries
ModularCurve.XHDRModelAtP.exists_schemeHomOver_pts_levelN_degPts_eq_and_ptsSp_levelN_symm_eq_mk166 below · depth 12 - Two-sided pools of étale blocks in the smooth locus
ModularCurve.XHDRModelAtP.exists_twoSided_pools_smoothLocus_of_atkinLehner_generic_of_ker_le1,160 below · depth 12 - Inertia differences σ x - x extend over the place
ModularCurve.XHDRModelAtP.extendsToPlace_pts_smul_sub_of_mem_inertiaSubgroupIn1,446 below · depth 12 - Properness and geometric connectedness of the generic fibre of Pic⁰
ModularCurve.XHDRModelAtP.isProper_and_geometricallyConnected_pullback_snd_rat_of_representsRelSubPic392 below · depth 12 - Flatness, surjectivity and quasi-finiteness of [n] on D
ModularCurve.XHDRModelAtP.nsmul_flat_surjective_locallyQuasiFinite_of_representsRelSubPic1,960 below · depth 12 - Degeneracy pull-backs match the point dictionaries
ModularCurve.XHDRModelAtP.pts_alphaPull_eq_pts_levelN_comp_degPull364 below · depth 12 - Special fibre of the degeneracy pull-backs on Pic⁰ coordinates
ModularCurve.XHDRModelAtP.toPic0Pair_ptsSp_symm_schemeHomOverComp_degPull_eq1,100 below · depth 12 - Pull-back along φ⁻¹ intertwines the two Abel–Jacobi dictionaries
ModularCurve.jZeroNeronObjectAtP_pts_pic0Congr_eq_pts_comp_pullbackHom_of_modelIso_levelData66 below · depth 12 - Base change of 𝒪(± u) for a point in the smooth locus
AlgebraicGeometry.RelEffCartierDiv.nonempty_pullback_ofPoint_lineBundle_iso_and_idealModule_iso_of_range_subset21 below · depth 13 - Unique morphism of representing schemes induced by a transformation
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.existsUnique_hom_of_transform0 below · depth 13 - Norm–pullback endomorphism of the relative Pic⁰ over a DVR
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.exists_hom_classifies_norm_pullback_poincare_of_twoGluedCurves_of_mem_of_ringKrullDim_le_one341 below · depth 13 - Pullback along a non-pointed curve morphism induces a Pic⁰-homomorphism
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.exists_hom_classifies_rigidify_pullback_curveChange3 below · depth 13 - Curve isomorphism on Pic⁰ points: N(a)· b=g
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.mul_comp_eq_of_classifies_rigidify_pullback_of_ofPoint_of_isIso21 below · depth 13 - Norm description of the Poincaré bundle under arbitrary base change
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.nonempty_poincare_pullbackAlong_comp_iso_rigidify_normModule_of_range_subset58 below · depth 13 - Poincaré bundle pulled back along a product of points
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.nonempty_poincare_pullbackAlong_mul_iso0 below · depth 13 - Triviality of the Poincaré bundle at the unit point
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.nonempty_poincare_pullbackAlong_one_iso0 below · depth 13 - Base-changed Picard restriction maps commute with 1×τ
AlgebraicGeometry.RelPicard.baseChangeSnd_comp_restrictHom_eq_of_baseChangeSnd_comp0 below · depth 13 - Base change compatibility of the relative group law on points
AlgebraicGeometry.RelPicard.baseChange_relativeGroupLaw_mul_compat1 below · depth 13 - Abel–Jacobi morphism for a represented relative Pic⁰
AlgebraicGeometry.RelPicard.exists_abelJacobi_of_representsRelSubPic29 below · depth 13 - Raynaud's dictionary for Pic⁰ of a two-component curve
AlgebraicGeometry.RelPicard.exists_gluedPic0_equiv_of_twoGluedSmoothCurves346 below · depth 13 - Represented relative Pic⁰ is abelian; Abel–Jacobi dictionary
AlgebraicGeometry.RelPicard.exists_pic0_equiv_points_of_representsRelSubPic_of_abelJacobi291 below · depth 13 - Relative Pic⁰ representable over a discrete valuation ring
AlgebraicGeometry.RelPicard.exists_representsRelSubPic_algEquivZeroCut_of_finiteMapData_of_isDiscreteValuationRing684 below · depth 13 - Relative Pic⁰ for curves degenerating to two glued smooth curves
AlgebraicGeometry.RelPicard.exists_representsRelSubPic_algEquivZeroCut_of_smoothLocus_of_twoGluedSmoothCurveDegenerations618 below · depth 13 - Base change of a relative Pic⁰ representation
AlgebraicGeometry.RelPicard.exists_representsRelSubPic_baseChange0 below · depth 13 - Split torus in Pic⁰ of a two-component curve
AlgebraicGeometry.RelPicard.exists_torus_characterLattice_equiv_of_twoGluedSmoothCurves32 below · depth 13 - Degree-zero point twists are algebraically equivalent to zero
AlgebraicGeometry.RelPicard.isAlgEquivZero_foldr_ofPoint_of_sum_filter_eq_zero275 below · depth 13 - Properness and geometric connectedness of Pic⁰ after base change to a field
AlgebraicGeometry.RelPicard.isProper_and_geometricallyConnected_baseChange_toBase_of_representsRelSubPic_of_field391 below · depth 13 - Picard pullback along a curve isomorphism transports divisor classes
AlgebraicGeometry.RelPicard.pullbackHom_points_eq_pic0_congr_of_iso24 below · depth 13 - Group law of the base-changed relative Pic⁰
AlgebraicGeometry.RelPicard.relativeGroupLaw_baseChange_eq2 below · depth 13 - Invertibility of the dual of an invertible ideal sheaf
AlgebraicGeometry.Scheme.IdealSheafData.IsInvertible.isInvertible_invModule4 below · depth 13 - Invertible ideal sheaves give invertible modules
AlgebraicGeometry.Scheme.IdealSheafData.IsInvertible.isInvertible_module2 below · depth 13 - Invertible ideal sheaf: I ⊗ I^∨ ≅ mathcal O_X, both orders
AlgebraicGeometry.Scheme.IdealSheafData.IsInvertible.nonempty_module_tensor_invModule_iso5 below · depth 13 - Duals of invertible ideal sheaves: (IJ)^∨ ≅ I^∨ ⊗ J^∨
AlgebraicGeometry.Scheme.IdealSheafData.IsInvertible.nonempty_mul_invModule_iso_tensor7 below · depth 13 - Pullback of the dual of an invertible ideal sheaf
AlgebraicGeometry.Scheme.IdealSheafData.IsInvertible.nonempty_pullback_invModule_iso10 below · depth 13 - The dual of an invertible sheaf of modules is an inverse
AlgebraicGeometry.Scheme.Modules.IsInvertible.dual2 below · depth 13 - Invertible sheaves of modules admit tensor inverses
AlgebraicGeometry.Scheme.Modules.IsInvertible.exists_tensor_inverse2 below · depth 13 - Invertible modules on the spectrum of a field are trivial
AlgebraicGeometry.Scheme.Modules.IsInvertible.nonempty_iso_tensorUnit_of_field0 below · depth 13 - Invertible modules on the spectrum of a local ring are trivial
AlgebraicGeometry.Scheme.Modules.IsInvertible.nonempty_iso_tensorUnit_of_isLocalRing5 below · depth 13 - Norm of an invertible module along a finite flat morphism
AlgebraicGeometry.Scheme.Modules.IsInvertible.normModule29 below · depth 13 - Tensor product of invertible sheaves of modules is invertible
AlgebraicGeometry.Scheme.Modules.IsInvertible.tensor2 below · depth 13 - Norm of invertible sheaves along a finite surjective map to a normal scheme
AlgebraicGeometry.Scheme.Modules.exists_norm_isInvertible_tensor_pullback_normModule_of_isFinite_of_isIntegrallyClosed53 below · depth 13 - Multiplicativity of the norm of invertible modules
AlgebraicGeometry.Scheme.Modules.nonempty_normModule_tensor_iso35 below · depth 13 - Norm of the unit module along a finite flat map
AlgebraicGeometry.Scheme.Modules.nonempty_normModule_unit_iso29 below · depth 13 - Base change for the norm of an invertible module
AlgebraicGeometry.Scheme.Modules.nonempty_pullback_normModule_iso55 below · depth 13 - Degeneracy morphisms on Pic⁰ representing schemes as norm maps
ModularCurve.DRModelPackageLevel.exists_degeneracyHom_classifies_normModule78 below · depth 13 - Points dictionary for the relative Pic⁰ of the level-N₀p model
ModularCurve.DRModelPackageLevel.exists_representsRelSubPic_abelJacobi_pts_of_representsRelSubPic388 below · depth 13 - Special-fibre torus, abelian quotient and pins at level N₀p
ModularCurve.DRModelPackageLevel.exists_torusFibre_abqFibre_degeneracy_specialFibre_pins_of_levelModel1,857 below · depth 13 - Extension to an A-point of relative Pic⁰ versus good classes
ModularCurve.DRModelPackageLevel.extendsToPlace_pts_iff_isGoodClass3,053 below · depth 13 - Inertia displacements σ x-x extend over the place
ModularCurve.DRModelPackageLevel.extendsToPlace_pts_smul_sub2,607 below · depth 13 - Hecke algebra acts by homomorphic endomorphisms of D
ModularCurve.DRModelPackageLevel.forall_heckeAlg_exists_hom_mul_and_pts_smul_eq_comp2,300 below · depth 13 - Properness and geometric connectedness of the generic Picard fibre
ModularCurve.DRModelPackageLevel.isProper_and_geometricallyConnected_pullback_snd_rat_of_representsRelSubPic392 below · depth 13 - Multiplication by n on relative Pic⁰: flat, surjective, quasi-finite
ModularCurve.DRModelPackageLevel.nsmul_flat_surjective_locallyQuasiFinite_of_representsRelSubPic2,149 below · depth 13 - Norm morphisms realise the degeneracy pushforwards on ℚ̄-points
ModularCurve.DRModelPackageLevel.pts_degeneracyPushforwardPair_eq_comp_degeneracyHom298 below · depth 13 - Component immersions commute with twists of the geometric point
ModularCurve.XHDRModelAtP.baseChangeSnd_comp_comp943 below · depth 13 - H⁰ of every base change of the model at p is A
ModularCurve.XHDRModelAtP.bijective_algebraMap_sections_baseChange211 below · depth 13 - Classifying morphisms D₀ → D respect group law and zero
ModularCurve.XHDRModelAtP.degPull_mul_and_zeroSection_comp_of_classifies_pullback5 below · depth 13 - Degeneracy morphisms of relative Pic⁰ as norm maps
ModularCurve.XHDRModelAtP.exists_degeneracyHom_classifies_normModule78 below · depth 13 - Constant arithmetic genus of the geometric fibres at p
ModularCurve.XHDRModelAtP.exists_forall_finrank_H1_fibre_eq245 below · depth 13 - Torus and abelian quotient on the special fibre of Pic⁰
ModularCurve.XHDRModelAtP.exists_representsRelSubPic_torus_abq_specialFibre1,035 below · depth 13 - An A-point of relative Pic⁰ carrying 𝒪(u₁)⊗𝒪(u₂)⁻¹
ModularCurve.XHDRModelAtP.exists_schemeHomOver_poincare_iso_ofPoint_tensor_idealModule_of_sameComponent1,204 below · depth 13 - Two glued smooth curves in non-smooth fibres of X_H(M)
ModularCurve.XHDRModelAtP.exists_twoGluedSmoothCurveDegeneration_of_not_smooth140 below · depth 13 - Two-sided pools of étale blocks at the closed prime
ModularCurve.XHDRModelAtP.exists_twoSidedPool_smoothLocus_closedPrime_of_five_le_of_atkinLehner_generic1,156 below · depth 13 - Two-sided pools of étale blocks at the closed prime, p=3
ModularCurve.XHDRModelAtP.exists_twoSidedPool_smoothLocus_closedPrime_three_of_atkinLehner_generic1,156 below · depth 13 - Two-sided pools of étale blocks in the smooth locus, p=2
ModularCurve.XHDRModelAtP.exists_twoSidedPool_smoothLocus_closedPrime_two_of_atkinLehner_generic1,156 below · depth 13 - Generic-prime two-sided pools in the Γ_H smooth locus
ModularCurve.XHDRModelAtP.exists_twoSidedPool_smoothLocus_genericPrime_of_atkinLehner_generic1,159 below · depth 13 - Inertia displacement at a non-crossing place extends over A
ModularCurve.XHDRModelAtP.extendsToPlace_pts_mk_smul_single_sub_single_of_not_mem_range_comp_inter1,214 below · depth 13 - Inertial displacement of a place extends: crossing case
ModularCurve.XHDRModelAtP.extendsToPlace_pts_mk_smul_single_sub_single_of_range_subset_range_comp_inter1,429 below · depth 13 - Local quasi-finiteness of [n] on fibres of relative Pic⁰
ModularCurve.XHDRModelAtP.locallyQuasiFinite_fibre_schemeNsmul_of_not_isUnit1,950 below · depth 13 - Algebraically trivial invertible sheaves with a section on geometric fibres
ModularCurve.XHDRModelAtP.nonempty_iso_unit_of_isAlgEquivZero_of_ne_zero_fibre463 below · depth 13 - Poincaré bundle at ℚ̄-points of the integral model
ModularCurve.XHDRModelAtP.nonempty_poincare_pullbackAlong_iso_ofPoint_tensor_ofPoint_idealModule_of_eq_comp_ajbar15 below · depth 13 - Special-fibre formula for the degeneracy push-forwards at p ∥ M
ModularCurve.XHDRModelAtP.ptsSp_levelN_symm_schemeHomOverComp_degeneracyHom_eq_of_pts_levelN_degPts_eq_comp1,637 below · depth 13 - Degeneracy push-forwards as norm homomorphisms on ℚ̄-points
ModularCurve.XHDRModelAtP.pts_levelN_degPts_eq_comp_degeneracyHom_of_classifies_normModule230 below · depth 13 - Smooth locus of the Γ_H(M) model: smooth and maximal
ModularCurve.XHDRModelAtP.smoothOfRelativeDimension_one_smoothLocus_and_maximal0 below · depth 13 - Relative Jacobian of X₀(p) over ℤ_{(ℓ)}, Abel–Jacobi normalised
ModularCurve.exists_pts_heckeRingAction_relJacobian_jZero_of_representsRelSubPic_of_ratCurveModel_of_abelJacobi1,167 below · depth 13 - Norms preserve fibrewise algebraic triviality of line bundles
AlgebraicGeometry.RelPicard.FibrewiseAlgEquivZero.ofInvertible_normModule_curveChange63 below · depth 14 - Multiplicative transformations induce homomorphisms of representing Picard schemes
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.comp_mul_eq_mul_comp_of_transform0 below · depth 14 - Norm of the Poincaré bundle is fibrewise algebraically trivial
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.fibrewiseAlgEquivZero_ofInvertible_norm_pullback_poincare_of_twoGluedCurves_of_mem_of_ringKrullDim_le_one335 below · depth 14 - Norm morphism of relative Pic⁰ and Abel–Jacobi classes
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.mul_comp_eq_of_classifies_rigidify_normModule_of_ofPoint75 below · depth 14 - Restriction morphism classifies the re-rigidified pullback bundle
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.nonempty_poincare_pullbackAlong_schemeHomOverComp_pullbackHom_iso_rigidify1 below · depth 14 - Primitivity of the rigidified norm of the Poincaré bundle
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.nonempty_pullbackAlong_mul_iso_tensor_ofInvertible_norm_pullback_poincare10 below · depth 14 - Norm of the pulled-back Poincaré bundle is trivial along the zero section
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.nonempty_pullback_zeroSection_norm_pullback_poincare_iso_unit_of_mem_of_ringKrullDim_le_one73 below · depth 14 - Base change of a represented relative Pic⁰: points, group law, Poincaré bundle
AlgebraicGeometry.RelPicard.baseChange_points_mul_poincare_compat1 below · depth 14 - Every point of Pic⁰(X) comes from admissible gluing data
AlgebraicGeometry.RelPicard.exists_hom_admissible_eq_of_twoGluedSmoothCurves19 below · depth 14 - Admissible gluing data give points of Pic⁰
AlgebraicGeometry.RelPicard.exists_hom_admissible_of_twoGluedSmoothCurves334 below · depth 14 - Finite sets of points of the relative Pic⁰ lie in affine opens
AlgebraicGeometry.RelPicard.exists_isAffineOpen_of_representsRelSubPic_algEquivZeroCut_of_finiteMapData512 below · depth 14 - Pic⁰(F/k)≃ J(k) with Abel–Jacobi normalisation
AlgebraicGeometry.RelPicard.exists_pic0_equiv_points_abelJacobi_of_curveModel284 below · depth 14 - Group law, Abel–Jacobi map and points of a represented relative Pic⁰
AlgebraicGeometry.RelPicard.exists_relativeGroupLaw_abelJacobi_of_representsRelSubPic291 below · depth 14 - Representability of fibrewise Pic⁰ over a reduced Noetherian base
AlgebraicGeometry.RelPicard.exists_representsRelSubPic_algEquivZeroCut_of_finiteMapData_of_isReduced487 below · depth 14 - Representability of the Pic⁰ cut is Zariski-local on the base
AlgebraicGeometry.RelPicard.exists_representsRelSubPic_algEquivZeroCut_of_forall_prime_exists_localizationAway16 below · depth 14 - Representability of relative Pic⁰ under two-line degenerations
AlgebraicGeometry.RelPicard.exists_representsRelSubPic_algEquivZeroCut_of_smoothLocus_of_twoLineDegenerations628 below · depth 14 - Finite étale descent of a relative Pic⁰ representing scheme
AlgebraicGeometry.RelPicard.exists_representsRelSubPic_of_finite_etale_descent_of_finiteMapData144 below · depth 14 - Restriction morphisms on Pic⁰ for two transversally glued curves
AlgebraicGeometry.RelPicard.exists_restrictHom_pair_of_twoGluedSmoothCurves6 below · depth 14 - Rigidified 𝒪_X(P)⊗𝒪_X(-Q) on a two-component curve is fibrewise algebraically trivial
AlgebraicGeometry.RelPicard.exists_rigidifiedLineBundle_ofPoint_tensor_ofPoint_fibrewiseAlgEquivZero_of_twoGluedSmoothCurves30 below · depth 14 - Torus G_m^{s-1} closed-immerses as kernel of the restriction pair
AlgebraicGeometry.RelPicard.exists_torus_isClosedImmersion_ker_restrictPair_of_twoGluedSmoothCurves34 below · depth 14 - Faithful flatness of restriction to two glued smooth curves
AlgebraicGeometry.RelPicard.flat_surjective_restrictPair_of_twoGluedSmoothCurves57 below · depth 14 - Relative Pic⁰ over a basic open, two-component degenerations
AlgebraicGeometry.RelPicard.forall_prime_exists_representsRelSubPic_algEquivZeroCut_baseChange_away_of_smoothLocus_of_twoGluedSmoothCurveDegenerations614 below · depth 14 - Injectivity of the glued Pic⁰ dictionary for two components
AlgebraicGeometry.RelPicard.gluedPic0_mk_eq_zero_of_hom_admissible_eq_one_of_twoGluedSmoothCurves12 below · depth 14 - Algebraic equivalence to zero equals equality of Čech Euler characteristics
AlgebraicGeometry.RelPicard.isAlgEquivZero_iff_eulerChar_sectionsOf_eq257 below · depth 14 - Properness and geometric connectedness of a representing Pic⁰
AlgebraicGeometry.RelPicard.isProper_and_geometricallyConnected_of_representsRelSubPic_algEquivZeroCut_of_finiteMapData332 below · depth 14 - Change of curve and change of test scheme form a cartesian square
AlgebraicGeometry.RelPicard.isPullback_baseChangeSnd_curveChange1 below · depth 14 - Triviality criterion on two transversally glued smooth proper curves
AlgebraicGeometry.RelPicard.nonempty_iso_unit_of_isAlgEquivZero_of_ne_zero_of_twoGluedSmoothCurves150 below · depth 14 - Trace of the smooth locus on a two-component degenerate fibre
AlgebraicGeometry.RelPicard.preimage_smoothLocus_eq_compl_range_and_openImmersion_of_twoGluedSmoothCurves13 below · depth 14 - Rigidity of Pic⁰-endomorphisms from ℚ̄-points
AlgebraicGeometry.RelPicard.schemeHomOver_ext_of_forall_algebraicClosure_point4 below · depth 14 - Euler characteristic additivity along a word of Cartier twists
AlgebraicGeometry.Scheme.IdealSheafData.IsInvertible.eulerChar_sectionsOf_pullback_foldr_pow_invModule_tensor_pow_module_tensor_eq_add_sum107 below · depth 14 - Invertible ideal sheaves: 𝒪(-Z₁-Z₂)≅𝒪(-Z₁)⊗𝒪(-Z₂)
AlgebraicGeometry.Scheme.IdealSheafData.IsInvertible.nonempty_mul_module_iso_tensor2 below · depth 14 - Dual of a tensor product of invertible sheaves
AlgebraicGeometry.Scheme.Modules.IsInvertible.dual_tensor4 below · depth 14 - Invertible 𝒪_X-modules admit local frames
AlgebraicGeometry.Scheme.Modules.IsInvertible.exists_isFrameOn2 below · depth 14 - Semilocal triviality of line bundles along finite morphisms
AlgebraicGeometry.Scheme.Modules.IsInvertible.exists_mem_and_nonempty_pullback_preimage_iso_unit_of_isFinite8 below · depth 14 - Local triviality over the target along a finite morphism
AlgebraicGeometry.Scheme.Modules.IsInvertible.exists_nonempty_pullback_preimage_iso_tensorUnit_of_isFinite14 below · depth 14 - Zero-scheme ideal of c Ω on affine opens inside a frame
AlgebraicGeometry.Scheme.Modules.IsInvertible.ideal_zeroSchemeIdeal_eq_span_of_app_eq_smul6 below · depth 14 - Canonical evaluation X ⊗ X^∨ → 𝒪_Y is an isomorphism
AlgebraicGeometry.Scheme.Modules.IsInvertible.isIso_ev_app_tensorUnit3 below · depth 14 - Trivial rigidification forces L ≅ q^*σ^*L
AlgebraicGeometry.Scheme.Modules.IsInvertible.nonempty_iso_pullback_pullback_of_rigidify_iso_unit0 below · depth 14 - Rigidification commutes with base change
AlgebraicGeometry.Scheme.Modules.IsInvertible.nonempty_pullback_rigidify_iso4 below · depth 14 - Pullback of the dual of an invertible sheaf of modules
AlgebraicGeometry.Scheme.Modules.IsInvertible.pullback_dual3 below · depth 14 - Trivialisation over an open yields a frame on it
AlgebraicGeometry.Scheme.Modules.exists_isFrameOn_of_pullback_iso_unit0 below · depth 14 - Determinant of a locally free sheaf of rank n is invertible
AlgebraicGeometry.Scheme.Modules.isInvertible_det_of_isLocallyFreeOfRank2 below · depth 14 - Modules glued from a unit cocycle are invertible
AlgebraicGeometry.Scheme.Modules.isInvertible_glueOfCocycle4 below · depth 14 - Trivialisation on an open pulls back to the preimage
AlgebraicGeometry.Scheme.Modules.nonempty_pullback_preimage_iso_unit_of_pullback_iso_unit0 below · depth 14 - Isomorphic node-unit bundles have proportional gluing units
AlgebraicGeometry.TwoGluedCurves.IsNodeUnitModule.exists_eq_mul_of_iso9 below · depth 14 - Node-unit line bundles are fibrewise algebraically trivial
AlgebraicGeometry.TwoGluedCurves.IsNodeUnitModule.fibrewiseAlgEquivZero6 below · depth 14 - Uniqueness of node-unit modules with given gluing units
AlgebraicGeometry.TwoGluedCurves.IsNodeUnitModule.nonempty_iso0 below · depth 14 - Node-unit modules pull back to the unit on each component
AlgebraicGeometry.TwoGluedCurves.IsNodeUnitModule.nonempty_pullback_curveChange_iso_unit8 below · depth 14 - Node-unit modules are stable under base change in T
AlgebraicGeometry.TwoGluedCurves.IsNodeUnitModule.pullback_baseChangeSnd3 below · depth 14 - Rescaling all gluing units by a global unit preserves node-unit modules
AlgebraicGeometry.TwoGluedCurves.IsNodeUnitModule.smul_units0 below · depth 14 - Tensoring node-unit modules multiplies the gluing units
AlgebraicGeometry.TwoGluedCurves.IsNodeUnitModule.tensor11 below · depth 14 - Invertible node-unit modules with prescribed gluing units exist
AlgebraicGeometry.TwoGluedCurves.exists_isInvertible_isNodeUnitModule1 below · depth 14
… and 1,357 more statements (search for the module name to find them).