Dimension of vector spaces #
In this file we provide results about Module.rank and Module.finrank of vector spaces
over division rings.
Main statements #
For vector spaces (i.e. modules over a division ring), we have
rank_quotient_add_rank_of_divisionRing: ifV₁is a submodule ofV, thenModule.rank (V/V₁) + Module.rank V₁ = Module.rank V.DivisionRing.hasRankNullity: The rank-nullity theorem for division rings.Submodule.rank_span_le_rank: TheK-rank of theK-span of anR-submoduleMofVis at most theR-rank ofM.
See also Mathlib/LinearAlgebra/Dimension/ErdosKaplansky.lean for the Erdős-Kaplansky theorem.
If a vector space has a finite dimension, the index set of Basis.ofVectorSpace is finite.
Also see rank_quotient_add_rank.
This is mostly an auxiliary lemma for Submodule.rank_sup_add_rank_inf_eq.
The K-rank of the K-span of an R-submodule M of V is at most the R-rank of M.
The K-rank of the K-span of a set s in V is at most the R-rank of the R-span
of s.
The K-rank of the K-span of a finitely generated R-submodule M of V is at most
the R-rank of M. This is the Module.finrank version of Submodule.rank_span_le_rank.
The K-rank of the K-span of a finite set s in V is at most the R-rank of the
R-span of s. This is the Module.finrank version of Submodule.rank_span_le_rank_span.
If every R-linearly independent subset of M is K-linearly independent, then the
K-rank of the K-span of M equals the R-rank of M.
If every R-linearly independent subset of M is K-linearly independent, then the
K-rank of the K-span of M equals the R-rank of M.
This is the Module.finrank version of Submodule.rank_span_eq_rank_of_linearIndepOn; see also
Submodule.finrank_span_eq_finrank for an equality in a different setting.
If the R-rank of a finitely generated R-module M is at most the K-rank of the K-span
of M, then every R-linearly independent subset of M is K-linearly independent.
The K-rank of the K-span of a finitely generated M is equal to the R-rank of M if
and only if every R-linearly independent subset of M is K-linearly independent. See also
Submodule.finrank_span_eq_finrank for an equality in a different setting.