Tensor Euler difference on a curve as a length
OpenOAI.MaximalSeshadri.Geometry.projective_tensor_euler_differenceOn a projective curve over with line bundles and a nonzero section of : equals the -dimension of the global sections of the cokernel of (sectionMultiply L M s).
Notation. is eulerCharacteristic: the alternating sum of -dimensions of , for on a surface and on a curve. The iso-open of (SectionOpens.isoOpen s) is the union of the opens on which the morphism restricts to an isomorphism. sectionsMorphism k s hs is the morphism from to of the graded polynomial ring in variables indexed by the sections, defined by sections whose iso-opens cover , with the ring map from the base into .
Formalization Note The statement is verbatim from OpenAI's Lean development, with Definitions files of this development imported in place of the upstream modules; these are supporting code for the statement.
import Mathlib
import Definitions.Def_MaximalSeshadriConstants
import Definitions.Def_SeshadriPrelim6
namespace OAI
section
noncomputable section
section
namespace MaximalSeshadri.Geometry
noncomputable section
open CategoryTheory CategoryTheory.Abelian CategoryTheory.Limits AlgebraicGeometry TopologicalSpace
open MaximalSeshadri.Frames MaximalSeshadri.SectionOpens MaximalSeshadri.Projective
variable {X : Scheme.{0}}
variable [IsIntegral X] [IsNoetherian X]
theorem projective_tensor_euler_difference {σ : Type} [Fintype σ]
(p : X ⟶ Spec (CommRingCat.of ℂ)) [IsProper p]
(hd : topologicalKrullDim X = 1) {A : X.Modules}
(a : σ → (O X ⟶ A)) (ha : (⨆ i, SectionOpens.isoOpen (a i)) = ⊤)
[IsClosedImmersion (sectionsMorphism (baseScalars p) a ha)]
(L M : LineBundle X) (s : O X ⟶ L.sheaf) (hs : s ≠ 0) :
eulerCharacteristic p 1 (L.tensor M).sheaf - eulerCharacteristic p 1 M.sheaf =
letI := Module.compHom Γ(cokernel (sectionMultiply L M s), ⊤) (baseScalars p)
(Module.finrank ℂ Γ(cokernel (sectionMultiply L M s),⊤) : ℤ) := by
sorry
end
end MaximalSeshadri.Geometry
end
end
end
end OAI