ModuleModule_Invertible_of_projective_of_forall_finrank_eq_one.lean
Nyll.AlgebraicCurves.Foundations.Algebra.Module_Invertible_of_projective_of_forall_finrank_eq_one
7 declarations indexed from sourceView source ↗ Module documentation
Invertibility of projective modules of rank one
Shows that a finite projective module with one-dimensional fibers is invertible.
Imports7
- Mathlib.LinearAlgebra.Dual.BaseChange
- Mathlib.RingTheory.PicardGroup
- Mathlib.Tactic.Conv
- Mathlib.Tactic.Ext
- Mathlib.Tactic.Ring.RingNF
- Mathlib.Tactic.SimpRw
- Mathlib.Tactic.TermCongr
Imported by7
Declarations
AlgebraicCurves.Foundations.Algebra.Proofs.Module_Invertible_of_projective_of_forall_finrank_eq_one.Module.Invertible.RankOneAux.mul_comm_of_equiv
Source context 12 commands
Surrounding namespaces, section variables, and local commands at this declaration.
section ProofImplementation
namespace AlgebraicCurves.Foundations.Algebra.Proofs
namespace Module_Invertible_of_projective_of_forall_finrank_eq_one
universe u v
open TensorProduct
namespace Module
open _root_.Module
namespace Invertible
namespace RankOneAux
open _root_.Module.Invertible
open _root_.Module
variable {A : Type u} [CommRing A] {P : Type v} [AddCommGroup P] [Module A P]
AlgebraicCurves.Foundations.Algebra.Proofs.Module_Invertible_of_projective_of_forall_finrank_eq_one.Module.Invertible.RankOneAux.finrank_localization_eq_one
Source context 14 commands
Surrounding namespaces, section variables, and local commands at this declaration.
section ProofImplementation
namespace AlgebraicCurves.Foundations.Algebra.Proofs
namespace Module_Invertible_of_projective_of_forall_finrank_eq_one
universe u v
open TensorProduct
namespace Module
open _root_.Module
namespace Invertible
namespace RankOneAux
open _root_.Module.Invertible
open _root_.Module
variable {A : Type u} [CommRing A] {P : Type v} [AddCommGroup P] [Module A P]
variable [Module.Finite A P] [Module.Projective A P]
(h : ∀ (K : Type u) [Field K] [Algebra A K], Module.finrank K (TensorProduct A K P) = 1)
include h in
AlgebraicCurves.Foundations.Algebra.Proofs.Module_Invertible_of_projective_of_forall_finrank_eq_one.Module.Invertible.RankOneAux.apply_mul_apply_comm
Source context 14 commands
Surrounding namespaces, section variables, and local commands at this declaration.
section ProofImplementation
namespace AlgebraicCurves.Foundations.Algebra.Proofs
namespace Module_Invertible_of_projective_of_forall_finrank_eq_one
universe u v
open TensorProduct
namespace Module
open _root_.Module
namespace Invertible
namespace RankOneAux
open _root_.Module.Invertible
open _root_.Module
variable {A : Type u} [CommRing A] {P : Type v} [AddCommGroup P] [Module A P]
variable [Module.Finite A P] [Module.Projective A P]
(h : ∀ (K : Type u) [Field K] [Algebra A K], Module.finrank K (TensorProduct A K P) = 1)
include h in
AlgebraicCurves.Foundations.Algebra.Proofs.Module_Invertible_of_projective_of_forall_finrank_eq_one.Module.Invertible.RankOneAux.exists_dualBasis
Source context 14 commands
Surrounding namespaces, section variables, and local commands at this declaration.
section ProofImplementation
namespace AlgebraicCurves.Foundations.Algebra.Proofs
namespace Module_Invertible_of_projective_of_forall_finrank_eq_one
universe u v
open TensorProduct
namespace Module
open _root_.Module
namespace Invertible
namespace RankOneAux
open _root_.Module.Invertible
open _root_.Module
variable {A : Type u} [CommRing A] {P : Type v} [AddCommGroup P] [Module A P]
variable [Module.Finite A P] [Module.Projective A P]
(h : ∀ (K : Type u) [Field K] [Algebra A K], Module.finrank K (TensorProduct A K P) = 1)
omit h in
AlgebraicCurves.Foundations.Algebra.Proofs.Module_Invertible_of_projective_of_forall_finrank_eq_one.Module.Invertible.RankOneAux.surjective_contractLeft
Source context 14 commands
Surrounding namespaces, section variables, and local commands at this declaration.
section ProofImplementation
namespace AlgebraicCurves.Foundations.Algebra.Proofs
namespace Module_Invertible_of_projective_of_forall_finrank_eq_one
universe u v
open TensorProduct
namespace Module
open _root_.Module
namespace Invertible
namespace RankOneAux
open _root_.Module.Invertible
open _root_.Module
variable {A : Type u} [CommRing A] {P : Type v} [AddCommGroup P] [Module A P]
variable [Module.Finite A P] [Module.Projective A P]
(h : ∀ (K : Type u) [Field K] [Algebra A K], Module.finrank K (TensorProduct A K P) = 1)
include h in
AlgebraicCurves.Foundations.Algebra.Proofs.Module_Invertible_of_projective_of_forall_finrank_eq_one.Module.Invertible.RankOneAux.injective_contractLeft
Source context 14 commands
Surrounding namespaces, section variables, and local commands at this declaration.
section ProofImplementation
namespace AlgebraicCurves.Foundations.Algebra.Proofs
namespace Module_Invertible_of_projective_of_forall_finrank_eq_one
universe u v
open TensorProduct
namespace Module
open _root_.Module
namespace Invertible
namespace RankOneAux
open _root_.Module.Invertible
open _root_.Module
variable {A : Type u} [CommRing A] {P : Type v} [AddCommGroup P] [Module A P]
variable [Module.Finite A P] [Module.Projective A P]
(h : ∀ (K : Type u) [Field K] [Algebra A K], Module.finrank K (TensorProduct A K P) = 1)
include h in
Module.Invertible.of_projective_of_forall_finrank_eq_one
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
section ProofImplementation
namespace AlgebraicCurves.Foundations.Algebra.Proofs
namespace Module_Invertible_of_projective_of_forall_finrank_eq_one
universe u v
open TensorProduct