JacobianVarieties.Picard.Proofs.Exists_twoAffineOpenCover_fibre_finrank_H0_eq_and_finrank_H1_eq.AlgebraicGeometry.RelPicard.ChiExt.main
Source context 18 commands
Surrounding namespaces, section variables, and local commands at this declaration.
section ProofImplementation
namespace JacobianVarieties.Picard.Proofs
namespace Exists_twoAffineOpenCover_fibre_finrank_H0_eq_and_finrank_H1_eq
attribute [-simp] AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
namespace AlgebraicGeometry
open _root_.AlgebraicGeometry
namespace RelPicard
open _root_.AlgebraicGeometry.RelPicard
namespace ChiExt
open _root_.AlgebraicGeometry.RelPicard
open _root_.AlgebraicGeometry
open TensorProductLean source · statement
theorem main
{k : Type u} [Field k] {k' : Type u} [Field k'] [Algebra k k']
{P0 P1 P01 : Type u} [AddCommGroup P0] [Module k P0] [AddCommGroup P1] [Module k P1]
[AddCommGroup P01] [Module k P01]
(r0 : P0 →ₗ[k] P01) (r1 : P1 →ₗ[k] P01)
{Q0 Q1 Q01 : Type u} [AddCommGroup Q0] [Module k' Q0] [AddCommGroup Q1] [Module k' Q1]
[AddCommGroup Q01] [Module k' Q01]
(s0 : Q0 →ₗ[k'] Q01) (s1 : Q1 →ₗ[k'] Q01)
(e0 : k' ⊗[k] P0 ≃ₗ[k'] Q0) (e1 : k' ⊗[k] P1 ≃ₗ[k'] Q1) (e01 : k' ⊗[k] P01 ≃ₗ[k'] Q01)
(h0 : ∀ x, e01 ((r0.baseChange k') x) = s0 (e0 x)) (h1 : ∀ x, e01 ((r1.baseChange k') x) =
s1 (e1 x)) :
Module.finrank k' (LinearMap.ker ((-s0).coprod s1)) = Module.finrank k (LinearMap.ker
((-r0).coprod r1)) ∧
Module.finrank k' (Q01 ⧸ LinearMap.range ((-s0).coprod s1)) =
Module.finrank k (P01 ⧸ LinearMap.range ((-r0).coprod r1))