@@ -933,29 +933,30 @@ end Span
933
933
934
934
section Basis
935
935
936
- theorem span_eq_top_of_linearIndependent_of_card_eq_finrank {ι : Type *} [hι : Nonempty ι]
937
- [Fintype ι] {b : ι → V} (lin_ind : LinearIndependent K b)
936
+ theorem LinearIndependent.span_eq_top_of_card_eq_finrank' {ι : Type *}
937
+ [Fintype ι] [FiniteDimensional K V] {b : ι → V} (lin_ind : LinearIndependent K b)
938
938
(card_eq : Fintype.card ι = finrank K V) : span K (Set.range b) = ⊤ := by
939
- by_cases fin : FiniteDimensional K V
940
- · by_contra ne_top
941
- have lt_top : span K (Set.range b) < ⊤ := lt_of_le_of_ne le_top ne_top
942
- exact ne_of_lt (Submodule.finrank_lt lt_top)
943
- (_root_.trans (finrank_span_eq_card lin_ind) card_eq)
944
- · exfalso
945
- apply ne_of_lt (Fintype.card_pos_iff.mpr hι)
946
- symm
947
- replace fin := (not_iff_not.2 IsNoetherian.iff_fg).2 fin
948
- calc
949
- Fintype.card ι = finrank K V := card_eq
950
- _ = 0 := dif_neg (mt IsNoetherian.iff_rank_lt_aleph0.mpr fin)
951
- #align span_eq_top_of_linear_independent_of_card_eq_finrank span_eq_top_of_linearIndependent_of_card_eq_finrank
939
+ by_contra ne_top
940
+ rw [← finrank_span_eq_card lin_ind] at card_eq
941
+ exact ne_of_lt (Submodule.finrank_lt <| lt_top_iff_ne_top.2 ne_top) card_eq
942
+
943
+ theorem LinearIndependent.span_eq_top_of_card_eq_finrank {ι : Type *} [Nonempty ι]
944
+ [Fintype ι] {b : ι → V} (lin_ind : LinearIndependent K b)
945
+ (card_eq : Fintype.card ι = finrank K V) : span K (Set.range b) = ⊤ :=
946
+ have : FiniteDimensional K V := .of_finrank_pos <| card_eq ▸ Fintype.card_pos
947
+ lin_ind.span_eq_top_of_card_eq_finrank' card_eq
948
+ #align span_eq_top_of_linear_independent_of_card_eq_finrank LinearIndependent.span_eq_top_of_card_eq_finrank
949
+
950
+ @[deprecated] -- 2024-02-14
951
+ alias span_eq_top_of_linearIndependent_of_card_eq_finrank :=
952
+ LinearIndependent.span_eq_top_of_card_eq_finrank
952
953
953
954
/-- A linear independent family of `finrank K V` vectors forms a basis. -/
954
955
@[simps! repr_apply]
955
956
noncomputable def basisOfLinearIndependentOfCardEqFinrank {ι : Type *} [Nonempty ι] [Fintype ι]
956
957
{b : ι → V} (lin_ind : LinearIndependent K b) (card_eq : Fintype.card ι = finrank K V) :
957
958
Basis ι K V :=
958
- Basis.mk lin_ind <| (span_eq_top_of_linearIndependent_of_card_eq_finrank lin_ind card_eq).ge
959
+ Basis.mk lin_ind <| (lin_ind.span_eq_top_of_card_eq_finrank card_eq).ge
959
960
#align basis_of_linear_independent_of_card_eq_finrank basisOfLinearIndependentOfCardEqFinrank
960
961
961
962
@[simp]
0 commit comments