Documentation

Mathlib.LinearAlgebra.FreeModule.Rank

Extra results about Module.rank #

This file contains some extra results not in LinearAlgebra.Dimension.

theorem rank_finsupp' (R : Type u) (M : Type v) [Ring R] [StrongRankCondition R] [AddCommGroup M] [Module R M] [Module.Free R M] (ι : Type v) :

The rank of (ι →₀ R) is (#ι).lift.

theorem rank_finsupp_self' (R : Type u) [Ring R] [StrongRankCondition R] {ι : Type u} :

If R and ι lie in the same universe, the rank of (ι →₀ R) is # ι.

@[simp]
theorem rank_directSum (R : Type u) [Ring R] [StrongRankCondition R] {ι : Type v} (M : ιType w) [(i : ι) → AddCommGroup (M i)] [(i : ι) → Module R (M i)] [∀ (i : ι), Module.Free R (M i)] :
Module.rank R (DirectSum ι fun (i : ι) => M i) = Cardinal.sum fun (i : ι) => Module.rank R (M i)

The rank of the direct sum is the sum of the ranks.

@[simp]

If m and n are Fintype, the rank of m × n matrices is (#m).lift * (#n).lift.

@[simp]

If m and n are Fintype that lie in the same universe, the rank of m × n matrices is (#n * #m).lift.

theorem rank_matrix'' (R : Type u) [Ring R] [StrongRankCondition R] (m : Type u) (n : Type u) [Finite m] [Finite n] :

If m and n are Fintype that lie in the same universe as R, the rank of m × n matrices is # m * # n.

@[simp]

The rank of M ⊗[R] N is (Module.rank R M).lift * (Module.rank R N).lift.

If M and N lie in the same universe, the rank of M ⊗[R] N is (Module.rank R M) * (Module.rank R N).