Definitions/Def_GoodReductionJacobian_RelativeGroupLawTranslate.lean
Right translation, translation and stabiliser for relative group laws
Throughout, R is a commutative ring and f : A \to \operatorname{Spec} R a scheme over \operatorname{Spec} R equipped with a RelativeGroupLaw L, i.e. a group structure on each set \{\varphi : T \to A \mid \varphi \circ f = t\} of points over a variable R-scheme t : T \to \operatorname{Spec} R, natural in T.
First, for a morphism q : X \to T of schemes and two sheaves of modules M, M' on X, Scheme.Modules.LocallyIsoOver q M M' asserts that every point \tau of T lies in an open U \subseteq T for which the pullbacks of M and of M' along the inclusion of the open subscheme q^{-1}U are isomorphic (merely Nonempty, so an existence statement about isomorphisms, not a chosen one). It is shown to be reflexive, symmetric and transitive, a global isomorphism yields it, and LocallyIsoOver.restrict produces from a trivialisation over U one over any smaller open V \le U, using the standard coherence isomorphisms for pullbacks of sheaves of modules.
Second, over a test scheme t : T \to \operatorname{Spec} R, on the fibre product A \times_{\operatorname{Spec} R} T two points over \mathrm{pr}_T followed by t are singled out: fstPoint, the first projection, and sndPoint of x, namely \mathrm{pr}_T followed by x. Their product under L has underlying morphism mulRight t x : A \times_R T \to A, the right translation (a,\tau) \mapsto a \cdot x(\tau); mulRight_over records that it lies over \mathrm{pr}_T followed by t, and mulRight_one that for the unit point it is \mathrm{pr}_A. For an R-point x (a point over the identity of \operatorname{Spec} R), translate x : A \to A is the underlying morphism of the product of the identity point of A(A) with f followed by x; it lies over f, and the translation by the unit point is the identity.
Finally, IsInStabilizer L 𝓛 t x, for a sheaf of modules \mathcal L on A, says that the pullback of \mathcal L along mulRight t x and the pullback of \mathcal L along \mathrm{pr}_A are LocallyIsoOver the projection \mathrm{pr}_T — that is, T^*_x \mathcal L_T \cong \mathcal L_T locally on T. Two instances are proved: the unit point stabilises every \mathcal L, and every point stabilises the unit sheaf of modules of A.
Relation to Mathlib
Mathlib supplies the ingredients (Scheme.Modules, pullback of sheaves of modules with its coherence isomorphisms, SheafOfModules.unit) but not the notions defined here: the functorial relative group law, right translation and translation morphisms attached to it, the relation 'locally isomorphic over the base', and the stabiliser predicate are the project's own.
Where it is used
These definitions belong to the project's Néron-model and relative Picard vocabulary, where the stabiliser sub-functor T \mapsto \{x \in A(T) : x \text{ stabilises } \mathcal L\} and the relation 'isomorphic locally over the base' are the input for the study of line bundles on Jacobians and their good reduction.
References
- D. Mumford, Abelian Varieties, Tata Institute Studies in Mathematics 5, Oxford University Press, 1970
- S. Bosch, W. Lütkebohmert and M. Raynaud, Néron Models, Ergebnisse der Mathematik und ihrer Grenzgebiete 21, Springer, 1990
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 128 lines
- 20 declarations
- used in the statements of 70 theorems and imported by 80 proofs
- imports 3 definition modules
Source file: Definitions/Def_GoodReductionJacobian_RelativeGroupLawTranslate.lean
Imports
Declarations
- def
AlgebraicGeometry.Scheme.Modules.LocallyIsoOver - theorem
AlgebraicGeometry.Scheme.Modules.LocallyIsoOver.of_iso - theorem
AlgebraicGeometry.Scheme.Modules.LocallyIsoOver.rfl - theorem
AlgebraicGeometry.Scheme.Modules.LocallyIsoOver.symm - def
AlgebraicGeometry.Scheme.Modules.LocallyIsoOver.restrict - theorem
AlgebraicGeometry.Scheme.Modules.LocallyIsoOver.trans - def
GoodReductionJacobian.RelativeGroupLaw.fstPoint - def
GoodReductionJacobian.RelativeGroupLaw.sndPoint - theorem
GoodReductionJacobian.RelativeGroupLaw.fstPoint_coe - theorem
GoodReductionJacobian.RelativeGroupLaw.sndPoint_coe - def
GoodReductionJacobian.RelativeGroupLaw.mulRight - theorem
GoodReductionJacobian.RelativeGroupLaw.mulRight_over - theorem
GoodReductionJacobian.RelativeGroupLaw.sndPoint_one - theorem
GoodReductionJacobian.RelativeGroupLaw.mulRight_one - def
GoodReductionJacobian.RelativeGroupLaw.translate - theorem
GoodReductionJacobian.RelativeGroupLaw.translate_over - theorem
GoodReductionJacobian.RelativeGroupLaw.translate_one - def
GoodReductionJacobian.RelativeGroupLaw.IsInStabilizer - theorem
GoodReductionJacobian.RelativeGroupLaw.isInStabilizer_one - theorem
GoodReductionJacobian.RelativeGroupLaw.isInStabilizer_unit
Source
import Mathlib import Definitions.Def_AlgebraicGeometry_RelativeGroupLaw import Definitions.Def_GoodReductionJacobian_RelativeGroupLawKernel import Definitions.Def_AlgebraicGeometry_RelativePicardFunctor set_option autoImplicit false noncomputable section universe u open CategoryTheory CategoryTheory.Limits AlgebraicGeometry NeronModelInfra namespace AlgebraicGeometry.Scheme.Modules variable {X T : Scheme.{u}} def LocallyIsoOver (q : X ⟶ T) (M M' : X.Modules) : Prop := ∀ τ : T, ∃ U : T.Opens, τ ∈ U ∧ Nonempty ((Scheme.Modules.pullback (q ⁻¹ᵁ U).ι).obj M ≅ (Scheme.Modules.pullback (q ⁻¹ᵁ U).ι).obj M') namespace LocallyIsoOver variable {q : X ⟶ T} {M M' M'' : X.Modules} theorem of_iso (q : X ⟶ T) {M M' : X.Modules} (e : M ≅ M') : LocallyIsoOver q M M' := fun _ => ⟨⊤, trivial, ⟨(Scheme.Modules.pullback _).mapIso e⟩⟩ theorem rfl : LocallyIsoOver q M M := of_iso q (Iso.refl M) theorem symm (h : LocallyIsoOver q M M') : LocallyIsoOver q M' M := fun τ => by obtain ⟨U, hτ, ⟨e⟩⟩ := h τ exact ⟨U, hτ, ⟨e.symm⟩⟩ def restrict {U V : T.Opens} (hVU : V ≤ U) (e : (Scheme.Modules.pullback (q ⁻¹ᵁ U).ι).obj M ≅ (Scheme.Modules.pullback (q ⁻¹ᵁ U).ι).obj M') : (Scheme.Modules.pullback (q ⁻¹ᵁ V).ι).obj M ≅ (Scheme.Modules.pullback (q ⁻¹ᵁ V).ι).obj M' := have hle : q ⁻¹ᵁ V ≤ q ⁻¹ᵁ U := fun _ hx => hVU hx (Scheme.Modules.pullbackCongr (X.homOfLE_ι hle).symm).app M ≪≫ ((Scheme.Modules.pullbackComp (X.homOfLE hle) (q ⁻¹ᵁ U).ι).app M).symm ≪≫ (Scheme.Modules.pullback (X.homOfLE hle)).mapIso e ≪≫ (Scheme.Modules.pullbackComp (X.homOfLE hle) (q ⁻¹ᵁ U).ι).app M' ≪≫ (Scheme.Modules.pullbackCongr (X.homOfLE_ι hle)).app M' theorem trans (h : LocallyIsoOver q M M') (h' : LocallyIsoOver q M' M'') : LocallyIsoOver q M M'' := fun τ => by obtain ⟨U, hτ, ⟨e⟩⟩ := h τ obtain ⟨U', hτ', ⟨e'⟩⟩ := h' τ exact ⟨U ⊓ U', ⟨hτ, hτ'⟩, ⟨restrict inf_le_left e ≪≫ restrict inf_le_right e'⟩⟩ end LocallyIsoOver end AlgebraicGeometry.Scheme.Modules namespace GoodReductionJacobian.RelativeGroupLaw variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)} def fstPoint (_L : RelativeGroupLaw R f) {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) : SchemeHomOver (pullback.snd f t ≫ t) f := ⟨pullback.fst f t, pullback.condition⟩ def sndPoint (_L : RelativeGroupLaw R f) {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) (x : SchemeHomOver t f) : SchemeHomOver (pullback.snd f t ≫ t) f := ⟨pullback.snd f t ≫ x.1, by rw [Category.assoc, x.2]⟩ @[simp] theorem fstPoint_coe (L : RelativeGroupLaw R f) {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) : (L.fstPoint t).1 = pullback.fst f t := rfl @[simp] theorem sndPoint_coe (L : RelativeGroupLaw R f) {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) (x : SchemeHomOver t f) : (L.sndPoint t x).1 = pullback.snd f t ≫ x.1 := rfl def mulRight (L : RelativeGroupLaw R f) {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) (x : SchemeHomOver t f) : pullback f t ⟶ A := (L.mul (pullback.snd f t ≫ t) (L.fstPoint t) (L.sndPoint t x)).1 theorem mulRight_over (L : RelativeGroupLaw R f) {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) (x : SchemeHomOver t f) : L.mulRight t x ≫ f = pullback.snd f t ≫ t := (L.mul (pullback.snd f t ≫ t) (L.fstPoint t) (L.sndPoint t x)).2 theorem sndPoint_one (L : RelativeGroupLaw R f) {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) : L.sndPoint t (L.one t) = L.one (pullback.snd f t ≫ t) := by have h := L.one_natural t (pullback.snd f t ≫ t) (pullback.snd f t) rfl rw [← h] rfl theorem mulRight_one (L : RelativeGroupLaw R f) {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) : L.mulRight t (L.one t) = pullback.fst f t := by unfold mulRight rw [sndPoint_one, L.mul_one] rfl def translate (L : RelativeGroupLaw R f) (x : SchemeHomOver (𝟙 (Spec (CommRingCat.of R))) f) : A ⟶ A := (L.mul f idPoint ⟨f ≫ x.1, by rw [Category.assoc, x.2, Category.comp_id]⟩).1 theorem translate_over (L : RelativeGroupLaw R f) (x : SchemeHomOver (𝟙 (Spec (CommRingCat.of R))) f) : L.translate x ≫ f = f := (L.mul f idPoint ⟨f ≫ x.1, by rw [Category.assoc, x.2, Category.comp_id]⟩).2 theorem translate_one (L : RelativeGroupLaw R f) : L.translate (L.one (𝟙 (Spec (CommRingCat.of R)))) = 𝟙 A := by have h : (⟨f ≫ (L.one (𝟙 (Spec (CommRingCat.of R)))).1, by rw [Category.assoc, (L.one (𝟙 (Spec (CommRingCat.of R)))).2, Category.comp_id]⟩ : SchemeHomOver f f) = L.one f := by have h1 := L.one_natural (𝟙 (Spec (CommRingCat.of R))) f f (Category.comp_id f) rw [← h1] rfl unfold translate rw [h, L.mul_one] def IsInStabilizer (L : RelativeGroupLaw R f) (𝓛 : A.Modules) {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) (x : SchemeHomOver t f) : Prop := Scheme.Modules.LocallyIsoOver (pullback.snd f t) ((Scheme.Modules.pullback (L.mulRight t x)).obj 𝓛) ((Scheme.Modules.pullback (pullback.fst f t)).obj 𝓛) theorem isInStabilizer_one (L : RelativeGroupLaw R f) (𝓛 : A.Modules) {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) : L.IsInStabilizer 𝓛 t (L.one t) := by unfold IsInStabilizer rw [mulRight_one] exact Scheme.Modules.LocallyIsoOver.rfl theorem isInStabilizer_unit (L : RelativeGroupLaw R f) {T : Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) (x : SchemeHomOver t f) : L.IsInStabilizer (SheafOfModules.unit A.ringCatSheaf) t x := by exact Scheme.Modules.LocallyIsoOver.of_iso _ (Scheme.Modules.pullbackUnitIso (L.mulRight t x) ≪≫ (Scheme.Modules.pullbackUnitIso (pullback.fst f t)).symm) end GoodReductionJacobian.RelativeGroupLaw end
Statements phrased using this module (70)
- A[2] represents the stabiliser of M
AlgebraicGeometry.Polarisation.isClosedImmersion_and_isFinite_and_forall_exists_comp_eq_iff_isInStabilizer_of_kernelIsTwoTorsion711 below · depth 30 - Trivial kernel forces χ(L)² = 1
GoodReductionJacobian.AbelianSchemePropertyBundle.eulerChar_sq_eq_one_of_kernelTrivial944 below · depth 30 - Field extension invariance of the Čech Euler characteristic
AlgebraicGeometry.OModulePresheaf.eulerChar_pullback_eq_eulerChar_of_isPullback_of_field26 below · depth 31 - Kernel trivial: unit section represents the stabiliser
AlgebraicGeometry.Polarisation.isClosedImmersion_one_and_forall_iff_isInStabilizer_of_kernelTrivial7 below · depth 31 - Mumford's Riemann–Roch: χ(M)²=rankK(M)
GoodReductionJacobian.AbelianSchemePropertyBundle.eulerChar_sq_eq_finrank_of_forall_iff_isInStabilizer_type0934 below · depth 31 - Points not separated by |L^{⊗ n}| stabilise L^{⊗ j}
AlgebraicGeometry.Polarisation.isInStabilizer_tensorPow_mul_inv_of_forall_pullbackSection_eq_zero_imp758 below · depth 32 - Tangent vector killing all vanishing sections stabilises mathcal L₀^{⊗ j}
AlgebraicGeometry.Polarisation.isInStabilizer_tensorPow_mul_inv_of_forall_pullbackSection_eq_zero_imp_dualNumber753 below · depth 32 - Euler characteristic of the dual of an invertible sheaf
GoodReductionJacobian.AbelianSchemePropertyBundle.eulerChar_dual_eq_neg_one_pow_mul_eulerChar788 below · depth 32 - Riemann–Roch: χ(M)χ(M^∨)=(-1)^grkK(M)
GoodReductionJacobian.AbelianSchemePropertyBundle.eulerChar_mul_eulerChar_dual_eq_neg_one_pow_mul_finrank_of_forall_iff_isInStabilizer790 below · depth 32 - Finiteness of the stabiliser of L when χ(L)≠ 0
GoodReductionJacobian.RelativeGroupLaw.exists_isClosedImmersion_isFinite_forall_iff_isInStabilizer_of_eulerChar_ne_zero891 below · depth 32 - Stabiliser of M^{⊗ j} maps into stabiliser of M under x ↦ x^j
GoodReductionJacobian.RelativeGroupLaw.isInStabilizer_pow_of_isInStabilizer_tensorPow_of_abelianSchemePropertyBundle586 below · depth 32 - Invariance of the Čech Euler characteristic under isomorphism
AlgebraicGeometry.OModulePresheaf.eulerChar_ofModules_eq_of_iso1 below · depth 33 - Euler characteristic invariance under automorphisms over the base field
AlgebraicGeometry.OModulePresheaf.eulerChar_ofModules_pullback_eq_of_iso_over27 below · depth 33 - Multiplicativity of Čech Euler characteristics over a product
AlgebraicGeometry.OModulePresheaf.eulerChar_ofModules_tensor_pullback_eq_mul_of_isProper101 below · depth 33 - Euler characteristic of a twisted Mumford bundle
AlgebraicGeometry.Polarisation.eulerChar_mumfordBundle_tensor_pullback_snd_eq_neg_one_pow_mul_finrank_of_forall_iff_isInStabilizer782 below · depth 33 - Shear automorphism trivialises the twisted Mumford bundle
AlgebraicGeometry.Polarisation.exists_iso_mumfordBundle_tensor_pullback_snd_iso_pullback2 below · depth 33 - Kernel triviality depends only on the isomorphism class
AlgebraicGeometry.Polarisation.kernelTrivial_of_iso0 below · depth 33 - Projective presentation is constant on a translated tangent vector
AlgebraicGeometry.Polarisation.mul_comp_toProj_eq_const_dualNumber_of_forall_pullbackSection_eq_zero_imp_of_ne_zero601 below · depth 33 - Agreement of projective presentation at translated k-points
AlgebraicGeometry.Polarisation.mul_comp_toProj_eq_mul_comp_toProj_of_forall_pullbackSection_eq_zero_imp_of_ne_zero602 below · depth 33 - Local multiplicative frames for eigenparts of [n]_*𝒪_A
GoodReductionJacobian.AbelianSchemePropertyBundle.exists_affineOpens_bijective_smul_eigenSubdatum_and_bijective_smul_eigenOne733 below · depth 33 - Character eigendecomposition of [n]_*𝒪_A on every open
GoodReductionJacobian.AbelianSchemePropertyBundle.finite_isNsmulCharacter_and_ncard_eq_pow_and_bijective_sum_eigenInclusion730 below · depth 33 - Translation composed with a point is multiplication by the constant point
GoodReductionJacobian.RelativeGroupLaw.comp_translate_eq_mul0 below · depth 33 - Stabiliser K(L) is a closed subscheme of A
GoodReductionJacobian.RelativeGroupLaw.exists_isClosedImmersion_forall_iff_isInStabilizer97 below · depth 33 - χ-eigen-subdatum of [n]_*mathcal O_A comes from a module sheaf
GoodReductionJacobian.RelativeGroupLaw.exists_modules_hom_ofModules_eigenSubdatum_inverse0 below · depth 33 - Right multiplication over the identity base equals pr₁ followed by translation
GoodReductionJacobian.RelativeGroupLaw.mulRight_id_eq_fst_comp_translate0 below · depth 33 - Invariant part of [n]_*𝒪_A is trivial
GoodReductionJacobian.RelativeGroupLaw.nonempty_iso_tensorUnit_of_hom_eigenSubdatum_one_of_bijective_smul_eigenOne2 below · depth 33 - Multiplication of eigen-parts of [n]_*mathcal O_A gives a tensor isomorphism
GoodReductionJacobian.RelativeGroupLaw.nonempty_tensor_iso_of_hom_eigenSubdatum_of_forall_exists_bijective_smul4 below · depth 33 - Translation by an n-torsion section commutes with [n]
GoodReductionJacobian.RelativeGroupLaw.translate_comp_schemeNsmul_of_mem_torsionSubset0 below · depth 33 - Translation by a product is the composite of translations
GoodReductionJacobian.RelativeGroupLaw.translate_mul0 below · depth 33 - Euler characteristic of a twisted Mumford bundle as a sum of stalk lengths
AlgebraicGeometry.Polarisation.eulerChar_mumfordBundle_tensor_pullback_snd_eq_sum_alternating_length_of_forall_mem677 below · depth 34 - Kernel of 2n(1+ι(b^⋆)ι(b)) equals the stabiliser of L⊗ι(b)^*L
AlgebraicGeometry.Polarisation.exists_comp_endKerIncl_eq_iff_isInStabilizer_tensor_pullback_of_rosatiCompatible_of_smooth590 below · depth 34 - Free local model for the Mumford slice, with see-saw
AlgebraicGeometry.Polarisation.exists_free_complex_cech_sliceAt_stalk_and_seesaw168 below · depth 34 - A power of mathfrak m_y kills the sliced Čech cohomology
AlgebraicGeometry.Polarisation.exists_pow_maximalIdeal_smul_cech_sliceAt_stalk_eq_bot669 below · depth 34 - Translation by a point: two spellings agree
AlgebraicGeometry.RiemannForm.translation_eq_translate_toUnitPt_and_translate_eq_translation_ofUnitPt0 below · depth 34 - See-saw theorem over a general base ring
AlgebraicGeometry.Scheme.Modules.IsInvertible.exists_isClosedImmersion_forall_iff_locallyIsoOver_of_flat_of_isProper96 below · depth 34 - Kernel of quaternionic multiplication has rank n²
CerednikDrinfeld.QM.isFinite_endKerStr_act_and_finrank_eq_natAbs_sq720 below · depth 34 - Trivial eigencomponent of [n]_*mathcal O_A is mathcal O_A
GoodReductionJacobian.AbelianSchemePropertyBundle.bijective_smul_eigenOne722 below · depth 34 - Local unit χ-eigensection of [n]_*𝒪_A
GoodReductionJacobian.AbelianSchemePropertyBundle.exists_affineOpens_isUnit_eigenSubdatum729 below · depth 34 - Kernel triviality for a bundle with χ(L)² = 1
GoodReductionJacobian.AbelianSchemePropertyBundle.kernelTrivial_of_eulerChar_sq_eq_one1,033 below · depth 34 - Free local model of the Mumford-slice Čech complex at a stalk
AlgebraicGeometry.Polarisation.exists_free_complex_quasiIso_cech_sliceAt_stalk94 below · depth 35 - Čech cohomology on an affine strip as a sum of stalk lengths
AlgebraicGeometry.Polarisation.finite_and_finrank_cech_restrict_strip_eq_sum_toNat_length_cech_sliceAt_stalk669 below · depth 35 - At stabiliser points the local Čech model has h⁰=1
AlgebraicGeometry.Polarisation.finrank_ker_baseChange_residue_eq_one_of_quasiIso_cech_sliceAt_stalk_of_forall64 below · depth 35 - Cocycle lifting over R/J' versus section lifting on the closed fibre
AlgebraicGeometry.Polarisation.forall_exists_baseChange_iff_forall_exists_pullbackSection_of_quasiIso_cech_sliceAt_stalk_of_forall2 below · depth 35 - See-saw criterion: lifting sections detects the stabiliser
AlgebraicGeometry.Polarisation.forall_exists_pullbackSection_eq_iff_exists_comp_eq_of_mem_range68 below · depth 35 - Stabiliser represented by the base gives trivial kernel
AlgebraicGeometry.Polarisation.kernelTrivial_of_isIso_of_forall_iff_isInStabilizer6 below · depth 35 - Triviality of K(L) descends along a field extension
AlgebraicGeometry.Polarisation.kernelTrivial_of_kernelTrivial_pullback_of_isPullback_of_field2 below · depth 35 - Off-stabiliser vanishing of localised Čech cohomology on an affine chart
AlgebraicGeometry.Polarisation.subsingleton_localizedModule_cech_comap_of_not_mem_range_of_isAffineOpen666 below · depth 35 - See-saw theorem: trivialisation locus is a closed subscheme
AlgebraicGeometry.Scheme.Modules.IsInvertible.exists_isClosedImmersion_forall_iff_locallyIsoOver_unit_of_flat_of_isProper90 below · depth 35 - Quaternion order action read in the endomorphism group
CerednikDrinfeld.QM.act_add_mul_zsmul_neg_pointCommGroup0 below · depth 35 - Lagrange resolvent over the n-torsion deck group
GoodReductionJacobian.AbelianSchemePropertyBundle.exists_fintype_torsionSubset_sum_deckApp_mem_eigenSubmodule691 below · depth 35 - Morphisms agreeing after [n] differ locally by n-torsion translation
GoodReductionJacobian.AbelianSchemePropertyBundle.exists_iSup_eq_top_iota_comp_eq_iota_comp_comp_translate_of_comp_schemeNsmul_eq36 below · depth 35 - Separating a K-point from its non-trivial n-torsion translates
GoodReductionJacobian.AbelianSchemePropertyBundle.exists_mem_basicOpen_forall_notMem_basicOpen_deckApp707 below · depth 35 - n-torsion translations act transitively on fibres of [n]
GoodReductionJacobian.AbelianSchemePropertyBundle.exists_mem_torsionSubset_translate_base_eq_of_schemeNsmul_base_eq37 below · depth 35 - Every point of a proper K-scheme specialises to a K-point
GoodReductionJacobian.AbelianSchemePropertyBundle.exists_point_specializes_base_closedPoint0 below · depth 35 - Acyclicity of Mumford bundle slices off the stabiliser
AlgebraicGeometry.Polarisation.cechH0_eq_bot_and_subsingleton_HSucc_sliceAt_mumfordBundle_of_not_exists_comp_eq655 below · depth 36 - Čech h⁰=1 for the Mumford slice at a stabiliser stalk
AlgebraicGeometry.Polarisation.finrank_H0_baseChange_residue_sliceAt_stalk_eq_one63 below · depth 36 - See-saw: trivialisation locus is Spec(A/I), universally
AlgebraicGeometry.Scheme.Modules.IsInvertible.exists_ideal_forall_iff_locallyIsoOver_unit_of_flat_of_isProper89 below · depth 36 - See-saw theorem, affine-local form over a Noetherian base
AlgebraicGeometry.Scheme.Modules.IsInvertible.exists_ideal_forall_locallyIsoOver_unit_iff_map_eq_bot88 below · depth 37 - [n]^*N ≅ N^{⊗ n} for translation-invariant invertible N
AlgebraicGeometry.Scheme.Modules.nonempty_pullback_schemeNsmul_iso_tensorPow_of_forall_pullback_translate_iso_monoidalV2115 below · depth 37 - Twisting by a Pic⁰ class preserves mathcal L₀⊗[-1]^*mathcal L₀
AlgebraicGeometry.Polarisation.nonempty_tensor_pullback_negMor_iso_of_inPicZero115 below · depth 38 - Two effective bundles with K(mathcal L₀) trivial are never in Pic⁰
AlgebraicGeometry.Polarisation.not_forall_nonempty_pullback_translate_tensor_iso_of_kernelTrivial_of_geomFibreH0Finrank_pos738 below · depth 38 - Nonvanishing and u^g-divisibility of the Euler characteristic
AlgebraicGeometry.RiemannForm.eulerChar_ne_zero_and_pow_dvd_eulerChar_of_isRiemannForm_smul_of_isPerfPair1,007 below · depth 38 - Realising every 2-torsion character by a rigidified line bundle
AlgebraicGeometry.Polarisation.exists_rigidifiedLineBundle_pullback_schemeNsmul_two_trivial_hasValue_translate91 below · depth 39 - Existence of the 2-torsion descent character Φ
AlgebraicGeometry.Polarisation.exists_torsionCharacter_two_hasValue_translate_of_pullback_schemeNsmul_two_trivial68 below · depth 39 - Rigidified line bundles with the same descent character agree
AlgebraicGeometry.Polarisation.nonempty_iso_of_hasValue_translate_eq_of_pullback_schemeNsmul_two_trivial11 below · depth 39 - Naturality of the 2-torsion descent character in the test ring
AlgebraicGeometry.Polarisation.torsionCharacter_val_pullbackAlong_eq_of_hasValue_translate56 below · depth 39 - Finitely many k-points forces finiteness over k
AlgebraicGeometry.isFinite_comp_of_isClosedImmersion_of_finite_setOf_exists_comp_eq0 below · depth 39 - k-points of the stabiliser divide its rank
GoodReductionJacobian.RelativeGroupLaw.natCard_setOf_exists_comp_eq_dvd_finrank_of_forall_iff_isInStabilizer2 below · depth 39 - Descent function over [2] realising a 2-torsion character
AlgebraicGeometry.Polarisation.exists_appTop_eq_one_and_mul_eq_and_appTop_eq_torsionCharacter_two_val2 below · depth 40 - Sections of a stabiliser subscheme are transitively permuted
GoodReductionJacobian.RelativeGroupLaw.exists_iso_hom_comp_eq_of_forall_iff_isInStabilizer0 below · depth 40