Documentation

Mathlib.RingTheory.TensorProduct.IsBaseChangeFree

Base change of a free module #

noncomputable def IsBaseChange.basis {R : Type u_1} [CommSemiring R] {S : Type u_2} [CommSemiring S] [Algebra R S] {V : Type u_3} [AddCommMonoid V] [Module R V] {W : Type u_4} [AddCommMonoid W] [Module R W] [Module S W] [IsScalarTower R S W] {ι : Type u_5} {ε : V →ₗ[R] W} (b : Module.Basis ι R V) (ibc : IsBaseChange S ε) :

The basis of a module deduced by base change from a free module with a basis.

Equations
Instances For
    theorem IsBaseChange.basis_apply {R : Type u_1} [CommSemiring R] {S : Type u_2} [CommSemiring S] [Algebra R S] {V : Type u_3} [AddCommMonoid V] [Module R V] {W : Type u_4} [AddCommMonoid W] [Module R W] [Module S W] [IsScalarTower R S W] {ι : Type u_5} {ε : V →ₗ[R] W} (b : Module.Basis ι R V) (ibc : IsBaseChange S ε) (i : ι) :
    (basis b ibc) i = ε (b i)
    theorem IsBaseChange.basis_repr_comp_apply {R : Type u_1} [CommSemiring R] {S : Type u_2} [CommSemiring S] [Algebra R S] {V : Type u_3} [AddCommMonoid V] [Module R V] {W : Type u_4} [AddCommMonoid W] [Module R W] [Module S W] [IsScalarTower R S W] {ι : Type u_5} {ε : V →ₗ[R] W} (b : Module.Basis ι R V) (ibc : IsBaseChange S ε) (v : V) (i : ι) :
    ((basis b ibc).repr (ε v)) i = (algebraMap R S) ((b.repr v) i)
    theorem IsBaseChange.basis_repr_comp {R : Type u_1} [CommSemiring R] {S : Type u_2} [CommSemiring S] [Algebra R S] {V : Type u_3} [AddCommMonoid V] [Module R V] {W : Type u_4} [AddCommMonoid W] [Module R W] [Module S W] [IsScalarTower R S W] {ι : Type u_5} {ε : V →ₗ[R] W} (b : Module.Basis ι R V) (ibc : IsBaseChange S ε) (v : V) :
    theorem IsBaseChange.free {R : Type u_1} [CommSemiring R] {S : Type u_2} [CommSemiring S] [Algebra R S] {V : Type u_3} [AddCommMonoid V] [Module R V] {W : Type u_4} [AddCommMonoid W] [Module R W] [Module S W] [IsScalarTower R S W] {ε : V →ₗ[R] W} (ibc : IsBaseChange S ε) [Module.Free R V] :
    theorem IsBaseChange.of_basis {R : Type u_1} [CommSemiring R] {V : Type u_2} [AddCommMonoid V] [Module R V] (A : Type u_3) [CommSemiring A] [Algebra A R] [Module A V] [IsScalarTower A R V] {ι : Type u_4} (b : Module.Basis ι R V) :
    theorem IsBaseChange.of_fintype_basis {R : Type u_1} [CommSemiring R] {V : Type u_2} [AddCommMonoid V] [Module R V] (A : Type u_3) [CommSemiring A] [Algebra A R] [Module A V] [IsScalarTower A R V] {ι : Type u_4} (b : Module.Basis ι R V) [Fintype ι] :

    Any finite basis of a module can express it as the base change of a finite free module from any under-ring.

    theorem IsBaseChange.of_fintype_basis_eq {R : Type u_1} [CommSemiring R] {V : Type u_2} [AddCommMonoid V] [Module R V] {A : Type u_3} [CommSemiring A] [Algebra A R] [Module A V] [IsScalarTower A R V] {ι : Type u_4} {b : Module.Basis ι R V} [Fintype ι] {a : ιA} {v : V} :
    (Fintype.linearCombination A b) a = v (algebraMap A R) a = b.equivFun v