Documentation

Mathlib.LinearAlgebra.Dimension.FreeAndStrongRankCondition

Some results on free modules over rings satisfying strong rank condition #

This file contains some results on free modules over rings satisfying strong rank condition. Most of them are generalized from the same result assuming the base ring being a division ring, and are moved from the files Mathlib/LinearAlgebra/Dimension/DivisionRing.lean and Mathlib/LinearAlgebra/FiniteDimensional/Basic.lean.

noncomputable def Basis.ofRankEqZero {K : Type u} {V : Type v} [Ring K] [StrongRankCondition K] [AddCommGroup V] [Module K V] [Module.Free K V] {ι : Type u_1} [IsEmpty ι] (hV : Module.rank K V = 0) :

The ι indexed basis on V, where ι is an empty type and V is zero-dimensional.

See also Module.finBasis.

Equations
Instances For
    @[simp]
    theorem Basis.ofRankEqZero_apply {K : Type u} {V : Type v} [Ring K] [StrongRankCondition K] [AddCommGroup V] [Module K V] [Module.Free K V] {ι : Type u_1} [IsEmpty ι] (hV : Module.rank K V = 0) (i : ι) :
    (ofRankEqZero hV) i = 0
    theorem rank_le_one_iff {K : Type u} {V : Type v} [Ring K] [StrongRankCondition K] [AddCommGroup V] [Module K V] [Module.Free K V] :
    Module.rank K V 1 ∃ (v₀ : V), ∀ (v : V), ∃ (r : K), r v₀ = v

    A vector space has dimension at most 1 if and only if there is a single vector of which all vectors are multiples.

    theorem rank_eq_one_iff {K : Type u} {V : Type v} [Ring K] [StrongRankCondition K] [AddCommGroup V] [Module K V] [Module.Free K V] :
    Module.rank K V = 1 ∃ (v₀ : V), v₀ 0 ∀ (v : V), ∃ (r : K), r v₀ = v

    A vector space has dimension 1 if and only if there is a single non-zero vector of which all vectors are multiples.

    theorem rank_submodule_le_one_iff {K : Type u} {V : Type v} [Ring K] [StrongRankCondition K] [AddCommGroup V] [Module K V] (s : Submodule K V) [Module.Free K s] :
    Module.rank K s 1 v₀s, s K v₀

    A submodule has dimension at most 1 if and only if there is a single vector in the submodule such that the submodule is contained in its span.

    theorem rank_submodule_eq_one_iff {K : Type u} {V : Type v} [Ring K] [StrongRankCondition K] [AddCommGroup V] [Module K V] (s : Submodule K V) [Module.Free K s] :
    Module.rank K s = 1 v₀s, v₀ 0 s K v₀

    A submodule has dimension 1 if and only if there is a single non-zero vector in the submodule such that the submodule is contained in its span.

    theorem rank_submodule_le_one_iff' {K : Type u} {V : Type v} [Ring K] [StrongRankCondition K] [AddCommGroup V] [Module K V] (s : Submodule K V) [Module.Free K s] :
    Module.rank K s 1 ∃ (v₀ : V), s K v₀

    A submodule has dimension at most 1 if and only if there is a single vector, not necessarily in the submodule, such that the submodule is contained in its span.

    theorem finrank_eq_one_iff {K : Type u} {V : Type v} [Ring K] [StrongRankCondition K] [AddCommGroup V] [Module K V] [Module.Free K V] (ι : Type u_1) [Unique ι] :

    A module has dimension 1 iff there is some v : V so {v} is a basis.

    See also Module.Basis.nonempty_unique_index_of_finrank_eq_one

    theorem finrank_eq_one_iff' {K : Type u} {V : Type v} [Ring K] [StrongRankCondition K] [AddCommGroup V] [Module K V] [Module.Free K V] :
    Module.finrank K V = 1 ∃ (v : V), v 0 ∀ (w : V), ∃ (c : K), c v = w

    A module has dimension 1 iff there is some nonzero v : V so every vector is a multiple of v.

    theorem finrank_le_one_iff {K : Type u} {V : Type v} [Ring K] [StrongRankCondition K] [AddCommGroup V] [Module K V] [Module.Free K V] [Module.Finite K V] :
    Module.finrank K V 1 ∃ (v : V), ∀ (w : V), ∃ (c : K), c v = w

    A finite-dimensional module has dimension at most 1 iff there is some v : V so every vector is a multiple of v.

    theorem Subalgebra.eq_bot_of_rank_le_one {F : Type u_1} {E : Type u_2} [CommRing F] [StrongRankCondition F] [Ring E] [Algebra F E] {S : Subalgebra F E} (h : Module.rank F S 1) [Module.Free F S] :
    S =
    theorem Subalgebra.eq_bot_of_finrank_one {F : Type u_1} {E : Type u_2} [CommRing F] [StrongRankCondition F] [Ring E] [Algebra F E] {S : Subalgebra F E} (h : Module.finrank F S = 1) [Module.Free F S] :
    S =
    @[simp]
    theorem Subalgebra.rank_eq_one_iff {F : Type u_1} {E : Type u_2} [CommRing F] [StrongRankCondition F] [Ring E] [Algebra F E] {S : Subalgebra F E} [Nontrivial E] [Module.Free F S] :
    Module.rank F S = 1 S =
    @[simp]
    theorem Subalgebra.finrank_eq_one_iff {F : Type u_1} {E : Type u_2} [CommRing F] [StrongRankCondition F] [Ring E] [Algebra F E] {S : Subalgebra F E} [Nontrivial E] [Module.Free F S] :
    Module.finrank F S = 1 S =
    @[simp]

    Alias of the reverse direction of Subalgebra.bot_eq_top_iff_rank_eq_one.

    @[simp]

    Alias of the reverse direction of Subalgebra.bot_eq_top_iff_finrank_eq_one.