Definitions/Def_AlgebraicGeometry_HilbertFunctor.lean
Points of the Hilbert functor of projective space
Over a commutative ring A and for n : \mathbb{N}, the graded pieces of a homogeneous quotient are given a name: for an ideal I of A[x_0,\dots,x_n] = MvPolynomial (Fin (n+1)) A and d : \mathbb{N}, piece I d is the quotient of the A-submodule homogeneousSubmodule (Fin (n+1)) A d of degree-d homogeneous polynomials by the preimage of I (viewed as an A-submodule via restrictScalars) under the inclusion of that submodule — that is, the A-module of degree-d forms modulo the degree-d forms lying in I.
The structure Point A n h, for h : \mathbb{N} \to \mathbb{N}, is the type of A-valued points of the Hilbert functor with Hilbert function h. Its data is a single ideal I \subseteq A[x_0,\dots,x_n], and its remaining fields are propositions: I is homogeneous in the sense that for every p \in I and every d the homogeneous component homogeneousComponent d p again lies in I; each piece I d is a finite A-module; each piece I d is a projective A-module; and for every d and every prime p of A, Module.rankAtStalk (piece I d) p equals h(d), so the pieces have constant rank prescribed by h. Since the three conditions are proof-irrelevant, two points with the same ideal coincide; this is recorded as an @[ext] lemma.
Finally, hilbertFunctionOf n P D₀, for a rational polynomial P and a truncation bound D_0, is the function sending d to \binom{n+d}{n} when d < D_0 and to the non-negative part of \lfloor P(d) \rfloor otherwise: the Hilbert function of an ideal generated in degrees \geq D_0 whose Hilbert polynomial is P.
Relation to Mathlib
Mathlib has no Hilbert functor or Hilbert scheme; this is the project's own vocabulary, phrased in the same style as Mathlib's Module.Grassmannian (a submodule with finite projective quotient of constant Module.rankAtStalk) and built from Mathlib's MvPolynomial.homogeneousSubmodule and MvPolynomial.homogeneousComponent.
Where it is used
These definitions supply the language in which the project states and uses the Hilbert functor of \mathbb{P}^n — its points over a base ring, base change of the defining ideal, and its representability by a projective scheme together with the universal family — as part of the moduli-theoretic infrastructure underlying the modularity arguments.
References
- A. Grothendieck, Techniques de construction et théorèmes d'existence en géométrie algébrique IV: Les schémas de Hilbert, Séminaire Bourbaki, exposé 221 (1960/61)
- G. Gotzmann, Eine Bedingung für die Flachheit und das Hilbertpolynom eines graduierten Ringes, Mathematische Zeitschrift 158 (1978), 61–70
- J. Kollár, Rational Curves on Algebraic Varieties, Ergebnisse der Mathematik und ihrer Grenzgebiete 32, Springer, 1996, Chapter I
References are suggested automatically and have not been individually verified.
English text generated automatically from the Lean source; the Lean statement is authoritative.
- 38 lines
- 9 declarations
- used in the statements of 68 theorems and imported by 70 proofs
- imports 0 definition modules
Source file: Definitions/Def_AlgebraicGeometry_HilbertFunctor.lean
Declarations
- abbrev
AlgebraicGeometry.HilbertFunctor.piece - structure
AlgebraicGeometry.HilbertFunctor.Point - field
AlgebraicGeometry.HilbertFunctor.Point.I - field
AlgebraicGeometry.HilbertFunctor.Point.homogeneous - field
AlgebraicGeometry.HilbertFunctor.Point.finite_piece - field
AlgebraicGeometry.HilbertFunctor.Point.projective_piece - field
AlgebraicGeometry.HilbertFunctor.Point.rankAtStalk_piece - theorem
AlgebraicGeometry.HilbertFunctor.Point.ext - def
AlgebraicGeometry.HilbertFunctor.hilbertFunctionOf
Source
import Mathlib set_option autoImplicit false namespace AlgebraicGeometry.HilbertFunctor open MvPolynomial variable {A : Type*} [CommRing A] {n : ℕ} abbrev piece (I : Ideal (MvPolynomial (Fin (n + 1)) A)) (d : ℕ) : Type _ := ↥(homogeneousSubmodule (Fin (n + 1)) A d) ⧸ Submodule.comap (homogeneousSubmodule (Fin (n + 1)) A d).subtype (I.restrictScalars A) variable (A n) structure Point (h : ℕ → ℕ) where I : Ideal (MvPolynomial (Fin (n + 1)) A) homogeneous : ∀ p ∈ I, ∀ d : ℕ, homogeneousComponent d p ∈ I finite_piece : ∀ d : ℕ, Module.Finite A (piece I d) projective_piece : ∀ d : ℕ, Module.Projective A (piece I d) rankAtStalk_piece : ∀ (d : ℕ) (p : PrimeSpectrum A), Module.rankAtStalk (piece I d) p = h d variable {A} @[ext] theorem Point.ext {h : ℕ → ℕ} {P Q : Point A n h} (e : P.I = Q.I) : P = Q := by cases P; cases Q; cases e; rfl noncomputable def hilbertFunctionOf (P : Polynomial ℚ) (D₀ : ℕ) : ℕ → ℕ := fun d => if d < D₀ then Nat.choose (n + d) n else Int.toNat ⌊P.eval (d : ℚ)⌋ end AlgebraicGeometry.HilbertFunctor
Statements phrased using this module (68)
- Quasi-projective fine moduli of framed polarised abelian schemes
AlgebraicGeometry.FramedPolarisedAbelianScheme.exists_isFineModuli_quasiProjective_of_trunk1,454 below · depth 29 - The Hilbert scheme of Pⁿ_ℤ is proper and finitely presented
AlgebraicGeometry.HilbertFunctor.exists_scheme_represents_isProper_locallyOfFinitePresentation_hilbertFunctionOf44 below · depth 29 - Embedded moduli of framed polarised abelian schemes over a Noetherian base
AlgebraicGeometry.FramedPolarisedAbelianScheme.exists_isImmersion_proj_represents_embedded_of_isNoetherianRing1,449 below · depth 30 - Framed rigidity: frame-compatible isomorphisms of framed polarised abelian schemes
AlgebraicGeometry.FramedPolarisedAbelianScheme.iso_of_iso_comp_toProj_eq_of_one_comp_toProj_eq_of_forall_comp_toProj_eq64 below · depth 30 - Representability and projectivity of the Hilbert functor Hilb^P_{Pⁿ}
AlgebraicGeometry.HilbertFunctor.exists_scheme_represents_and_isClosedImmersion_toProjSpace_hilbertFunctionOf41 below · depth 30 - Hilbert point cutting out a framed polarised abelian scheme
AlgebraicGeometry.FramedPolarisedAbelianScheme.exists_point_forall_mem_iff_frame_toProj1,174 below · depth 31 - Emptiness of framed polarised abelian schemes without Hilbert polynomial (N+1)t^g
AlgebraicGeometry.FramedPolarisedAbelianScheme.isEmpty_of_not_exists_hilbertPolynomial1,163 below · depth 31 - Hilbert points of Pⁿ versus flat closed subschemes
AlgebraicGeometry.HilbertFunctor.exists_closedImmersion_flat_lfp_forall_mem_iff_of_point_hilbertFunctionOf231 below · depth 31 - Descent of Hilbert-functor points from geometric fibres to the base
AlgebraicGeometry.HilbertFunctor.exists_point_I_eq_span_of_isClosedImmersion_of_flat_of_locallyOfFinitePresentation221 below · depth 31 - Representability of the Hilbert functor for maximal-growth h
AlgebraicGeometry.HilbertFunctor.exists_scheme_represents_and_isClosedImmersion_toProjSpace_of_maximal_growth38 below · depth 31 - Base change of ZsubseteqPⁿ composes along a scalar tower
AlgebraicGeometry.ProjSpace.isPullback_comp_and_comp_eq_map_of_isScalarTower0 below · depth 31 - Existence of a Gotzmann bound for a Hilbert polynomial
MvPolynomial.exists_forall_finrank_piece_succ_le_eval_and_exists_eq_eval4 below · depth 31 - Geometric fibre h⁰(L^{⊗ d})=(N+1)d^g for framed abelian schemes
AlgebraicGeometry.FramedPolarisedAbelianScheme.geomFibreH0Finrank_natRec_tensor_eq_of_realisation1,085 below · depth 32 - Generation in degree m for points of the Hilbert functor
AlgebraicGeometry.HilbertFunctor.Point.I_eq_span_of_forall_finrank_piece_succ_le1 below · depth 32 - Flatness over the base of the subscheme cut out by a Hilbert-functor point
AlgebraicGeometry.HilbertFunctor.Point.flat_comp_of_ideal_basicOpen_eq_span2 below · depth 32 - Large-degree h⁰ of tensor powers equals the Hilbert function
AlgebraicGeometry.HilbertFunctor.exists_forall_geomFibreH0Finrank_tensorPow_eq_hilbertFunctionOf_of_point50 below · depth 32 - Gotzmann saturation for Hilbert functor points over any ring
AlgebraicGeometry.HilbertFunctor.exists_forall_mem_of_forall_X_pow_mul_mem_hilbertFunctionOf17 below · depth 32 - Uniform Gotzmann regularity for points of the Hilbert functor
AlgebraicGeometry.HilbertFunctor.exists_forall_subsingleton_HSucc_twist_and_forall_H0_exists_of_point_hilbertFunctionOf169 below · depth 32 - Hilbert–Serre for a closed subscheme of Pⁿ_k
AlgebraicGeometry.HilbertFunctor.exists_ideal_forall_mem_iff_app_awayToSection_eq_zero_and_polynomial4 below · depth 32 - The rank-r locus of the degree-(m+1) piece is cut out by an ideal
AlgebraicGeometry.HilbertFunctor.exists_ideal_forall_projective_piece_succ_iff2 below · depth 32 - Base change of points of the Hilbert functor
AlgebraicGeometry.HilbertFunctor.exists_point_I_eq_map1 below · depth 32 - Gotzmann persistence over a base ring: I defines a Hilbert-functor point
AlgebraicGeometry.HilbertFunctor.exists_point_I_eq_of_projective_piece_succ17 below · depth 32 - Graded quotient data defines a point of the Hilbert functor
AlgebraicGeometry.HilbertFunctor.exists_point_I_eq_span_of_forall_surjective_of_forall_projective0 below · depth 32 - Hilbert-functor point from a closed subscheme with h⁰ = P
AlgebraicGeometry.HilbertFunctor.exists_point_forall_mem_iff_of_isClosedImmersion_of_forall_geomFibreH0Finrank_eq_eval76 below · depth 32 - Truncating a homogeneous ideal to a Hilbert-functor point
AlgebraicGeometry.HilbertFunctor.exists_point_hilbertFunctionOf_forall_mem_iff_of_forall_finrank_piece_eq0 below · depth 32 - Chart-ideal membership on D₊(xᵢ) versus xᵢ^N F ∈ I
AlgebraicGeometry.ProjSpace.awayToSection_mk_mem_span_iff_exists_X_pow_mul_mem0 below · depth 32 - Base change of the ideal sheaf of a homogeneous ideal on Pⁿ
AlgebraicGeometry.ProjSpace.eq_comap_map_of_ideal_basicOpen_eq_span1 below · depth 32 - Kernel ideal sheaf of a closed immersion into Pⁿ_A
AlgebraicGeometry.ProjSpace.eq_ker_of_ideal_basicOpen_eq_span_of_isClosedImmersion3 below · depth 32 - Ideals of A[x₀,…,xₙ] cut out ideal sheaves on Pⁿ_A
AlgebraicGeometry.ProjSpace.exists_idealSheafData_ideal_basicOpen_eq_span3 below · depth 32 - Uniqueness of base-change realisations inside Pⁿ_B
AlgebraicGeometry.ProjSpace.exists_iso_hom_comp_eq_of_isPullback_of_comp_eq_map1 below · depth 32 - Transport of check H⁰(𝒪(d)) along a realised base change
AlgebraicGeometry.ProjSpace.finite_projective_H0_twist_of_ker_baseChange_of_isPullback6 below · depth 32 - Base-changed twisted Čech complex at a Hilbert-functor point
AlgebraicGeometry.ProjSpace.ker_baseChange_le_range_and_finrank_ker_eq_of_point_of_isPullback6 below · depth 32 - Closed subschemes of Pⁿ_A from finitely generated homogeneous ideals
AlgebraicGeometry.ProjSpace.locallyOfFinitePresentation_comp_of_fg_of_ideal_basicOpen_eq_span1 below · depth 32 - Macaulay's bound is attained by a homogeneous ideal
MvPolynomial.exists_span_monomial_finrank_piece_eq_and_finrank_piece_succ_eq_macaulayPow0 below · depth 32 - Macaulay's bound on Hilbert functions of graded quotients
MvPolynomial.finrank_piece_succ_le_macaulayPow1 below · depth 32 - Gotzmann regularity in uniform numerical form
AlgebraicGeometry.HilbertFunctor.exists_forall_finrank_piece_eq_eval_of_isClosedImmersion_of_forall_mem_iff_of_eventually_eq21 below · depth 33 - Gotzmann saturation over a field in degrees beyond D₀
AlgebraicGeometry.HilbertFunctor.exists_forall_mem_of_forall_X_pow_mul_mem_hilbertFunctionOf_field16 below · depth 33 - Base change of the graded pieces of a homogeneous ideal
AlgebraicGeometry.HilbertFunctor.exists_linearEquiv_baseChange_piece_map0 below · depth 33 - Gotzmann freeness step over a local base
AlgebraicGeometry.HilbertFunctor.free_piece_of_isLocalRing_of_forall_relation_mem_span1 below · depth 33 - Chartwise spreading of ideal-sheaf membership on Pⁿ_A
AlgebraicGeometry.ProjSpace.exists_forall_awayToSection_mk_X_pow_mul_mem_ideal_of_mem_ideal0 below · depth 33 - Čech acyclicity and surjectivity for ideals of maximal growth
AlgebraicGeometry.ProjSpace.forall_subsingleton_HSucc_twist_and_forall_H0_exists_of_maximal_growth157 below · depth 33 - Gotzmann persistence for ideals of maximal Hilbert growth
MvPolynomial.finrank_piece_eq_of_maximal_growth13 below · depth 33 - Maximal Hilbert growth forces relations in degrees ≤ 1
MvPolynomial.relation_mem_span_of_forall_finrank_piece_succ_le12 below · depth 33 - Hilbert points versus flat closed subschemes of Pⁿ
AlgebraicGeometry.HilbertFunctor.exists_closedImmersion_flat_lfp_forall_mem_iff_ker_ideal_eq_of_point_hilbertFunctionOf231 below · depth 34 - A homogeneous ideal cuts a finitely presented closed subscheme of Hilb
AlgebraicGeometry.HilbertFunctor.exists_isClosedImmersion_locallyOfFinitePresentation_forall_factors_iff_forall_mem_of_isHomogeneous_of_le_of_fg7 below · depth 34 - Uniform truncation level for geometric fibres in Pⁿ
AlgebraicGeometry.HilbertFunctor.exists_uniform_cover_forall_geomFibre_ideal_eq_point_of_isClosedImmersion_of_flat_of_locallyOfFinitePresentation181 below · depth 34 - Ideals cut out chartwise on Pⁿ_k are variable-saturated
AlgebraicGeometry.HilbertFunctor.mem_of_forall_exists_X_pow_mul_mem_of_forall_mem_iff_app_awayToSection_eq_zero0 below · depth 34 - Hyperplane short exact sequence of twists, with Čech comparison
AlgebraicGeometry.ProjSpace.exists_affSES_twist_succ_of_forall_mul_eq_zero_imp3 below · depth 34 - Generic linear form for an ideal of maximal growth
AlgebraicGeometry.ProjSpace.exists_linearForm_section_maximal_growth28 below · depth 34 - Degree-d forms surject onto Čech H⁰ under maximal growth
AlgebraicGeometry.ProjSpace.forall_H0_twist_exists_of_forall_subsingleton_HSucc_of_maximal_growth136 below · depth 34 - Vanishing degree-m piece forces trivial twisted Čech groups
AlgebraicGeometry.ProjSpace.forall_subsingleton_HSucc_twist_and_forall_H0_exists_of_finrank_piece_eq_zero0 below · depth 34 - Geometric fibre Hilbert function read off a defining ideal
AlgebraicGeometry.exists_forall_geomFibreH0Finrank_tensorPow_eq_hilbertFunctionOf_of_point_geomFibre_of_hom57 below · depth 34 - Green's hyperplane restriction theorem for a general linear form
MvPolynomial.exists_forall_eval_ne_zero_macaulayPow_finrank_piece_sup_add_le1 below · depth 34 - Gotzmann maximal growth: general linear form regular in degrees ≥ m
MvPolynomial.exists_forall_eval_ne_zero_mem_of_mul_mem_of_finrank_piece_succ_eq_macaulayPow9 below · depth 34 - A linear form that is a non-zero-divisor modulo a saturated homogeneous ideal
MvPolynomial.exists_forall_sum_C_mul_X_mul_mem_imp_of_forall_exists_X_pow_mul_mem16 below · depth 34 - One step of Gotzmann's persistence theorem
MvPolynomial.finrank_piece_add_two_eq_macaulayPow_of_finrank_piece_succ_eq_macaulayPow11 below · depth 34 - Hilbert function drop along a nonzerodivisor linear form
MvPolynomial.finrank_piece_sup_span_singleton_succ_add_finrank_piece_eq_of_forall_mul_mem_imp0 below · depth 34 - Macaulay lower bound for Hilbert functions of maximal growth
MvPolynomial.le_finrank_piece_of_forall_succ_eq_macaulayPow_of_eventually_eq3 below · depth 34 - Locally constant Hilbert polynomial of flat finitely presented families
AlgebraicGeometry.HilbertFunctor.exists_cover_forall_finrank_piece_eq_of_isClosedImmersion_of_flat_of_locallyOfFinitePresentation160 below · depth 35 - Membership in a base-changed Hilbert point via graded pieces
AlgebraicGeometry.HilbertFunctor.map_mem_iff_tmul_mkQ_piece_eq_zero0 below · depth 35 - Chartwise non-zero-divisor property of a linear form on Z
AlgebraicGeometry.ProjSpace.app_awayToSection_linearForm_mul_eq_zero_imp_of_forall_mul_mem_imp1 below · depth 35 - Chart dictionary for J+(ℓ) under maximal growth
AlgebraicGeometry.ProjSpace.mem_span_sup_linearForm_iff_forall_app_eq_zero_of_maximal_growth24 below · depth 35 - Hilbert function of a geometric fibre from a Hilbert point
AlgebraicGeometry.exists_forall_geomFibreH0Finrank_tensorPow_eq_hilbertFunctionOf_of_point_geomFibre56 below · depth 35 - Maximal growth persists under a general hyperplane section
MvPolynomial.exists_forall_eval_ne_zero_mem_of_mul_mem_and_finrank_piece_sup_eq_macaulayPow4 below · depth 35 - Maximal growth passes to the degree-m part of J+(ℓ)
MvPolynomial.finrank_piece_span_sup_linearForm_eq_macaulayPow_and_lt1 below · depth 35 - Gotzmann persistence for maximal Macaulay growth
MvPolynomial.forall_finrank_piece_succ_eq_macaulayPow_of_finrank_piece_succ_eq_macaulayPow14 below · depth 35 - Local constancy of geometric fibre Hilbert polynomials, Noetherian base
AlgebraicGeometry.HilbertFunctor.exists_cover_forall_finrank_piece_eq_of_isClosedImmersion_of_flat_of_isNoetherianRing131 below · depth 36 - Maximal Macaulay growth at m forces saturation in degrees ≥ m
MvPolynomial.mem_of_forall_exists_X_pow_mul_mem_of_finrank_piece_succ_eq_macaulayPow15 below · depth 36