Theorem: linearIndependent_bounded_of_finset_linearIndependent_bounded
File: Mathlib/LinearAlgebra/LinearIndependent.lean

tactic: intro s li
state_before: ι : Type u'
ι' : Type ?u.142157
R : Type u_2
K : Type ?u.142163
M : Type u_1
M' : Type ?u.142169
M'' : Type ?u.142172
V : Type u
V' : Type ?u.142177
v : ι → M
inst✝⁶ : Semiring R
inst✝⁵ : AddCommMonoid M
inst✝⁴ : AddCommMonoid M'
inst✝³ : AddCommMonoid M''
inst✝² : Module R M
inst✝¹ : Module R M'
inst✝ : Module R M''
a b : R
x y : M
n : ℕ
H : ∀ (s : Finset M), (LinearIndependent R fun i => ↑i) → Finset.card s ≤ n
⊢ ∀ (s : Set M), LinearIndependent R Subtype.val → (#↑s) ≤ ↑n

tactic: apply Cardinal.card_le_of
state_before: ι : Type u'
ι' : Type ?u.142157
R : Type u_2
K : Type ?u.142163
M : Type u_1
M' : Type ?u.142169
M'' : Type ?u.142172
V : Type u
V' : Type ?u.142177
v : ι → M
inst✝⁶ : Semiring R
inst✝⁵ : AddCommMonoid M
inst✝⁴ : AddCommMonoid M'
inst✝³ : AddCommMonoid M''
inst✝² : Module R M
inst✝¹ : Module R M'
inst✝ : Module R M''
a b : R
x y : M
n : ℕ
H : ∀ (s : Finset M), (LinearIndependent R fun i => ↑i) → Finset.card s ≤ n
s : Set M
li : LinearIndependent R Subtype.val
⊢ (#↑s) ≤ ↑n

tactic: intro t
state_before: case H
ι : Type u'
ι' : Type ?u.142157
R : Type u_2
K : Type ?u.142163
M : Type u_1
M' : Type ?u.142169
M'' : Type ?u.142172
V : Type u
V' : Type ?u.142177
v : ι → M
inst✝⁶ : Semiring R
inst✝⁵ : AddCommMonoid M
inst✝⁴ : AddCommMonoid M'
inst✝³ : AddCommMonoid M''
inst✝² : Module R M
inst✝¹ : Module R M'
inst✝ : Module R M''
a b : R
x y : M
n : ℕ
H : ∀ (s : Finset M), (LinearIndependent R fun i => ↑i) → Finset.card s ≤ n
s : Set M
li : LinearIndependent R Subtype.val
⊢ ∀ (s_1 : Finset ↑s), Finset.card s_1 ≤ n

tactic: rw [← Finset.card_map (Embedding.subtype s)]
state_before: case H
ι : Type u'
ι' : Type ?u.142157
R : Type u_2
K : Type ?u.142163
M : Type u_1
M' : Type ?u.142169
M'' : Type ?u.142172
V : Type u
V' : Type ?u.142177
v : ι → M
inst✝⁶ : Semiring R
inst✝⁵ : AddCommMonoid M
inst✝⁴ : AddCommMonoid M'
inst✝³ : AddCommMonoid M''
inst✝² : Module R M
inst✝¹ : Module R M'
inst✝ : Module R M''
a b : R
x y : M
n : ℕ
H : ∀ (s : Finset M), (LinearIndependent R fun i => ↑i) → Finset.card s ≤ n
s : Set M
li : LinearIndependent R Subtype.val
t : Finset ↑s
⊢ Finset.card t ≤ n

tactic: apply H
state_before: case H
ι : Type u'
ι' : Type ?u.142157
R : Type u_2
K : Type ?u.142163
M : Type u_1
M' : Type ?u.142169
M'' : Type ?u.142172
V : Type u
V' : Type ?u.142177
v : ι → M
inst✝⁶ : Semiring R
inst✝⁵ : AddCommMonoid M
inst✝⁴ : AddCommMonoid M'
inst✝³ : AddCommMonoid M''
inst✝² : Module R M
inst✝¹ : Module R M'
inst✝ : Module R M''
a b : R
x y : M
n : ℕ
H : ∀ (s : Finset M), (LinearIndependent R fun i => ↑i) → Finset.card s ≤ n
s : Set M
li : LinearIndependent R Subtype.val
t : Finset ↑s
⊢ Finset.card (Finset.map (Embedding.subtype s) t) ≤ n

tactic: apply linearIndependent_finset_map_embedding_subtype _ li
state_before: case H.a
ι : Type u'
ι' : Type ?u.142157
R : Type u_2
K : Type ?u.142163
M : Type u_1
M' : Type ?u.142169
M'' : Type ?u.142172
V : Type u
V' : Type ?u.142177
v : ι → M
inst✝⁶ : Semiring R
inst✝⁵ : AddCommMonoid M
inst✝⁴ : AddCommMonoid M'
inst✝³ : AddCommMonoid M''
inst✝² : Module R M
inst✝¹ : Module R M'
inst✝ : Module R M''
a b : R
x y : M
n : ℕ
H : ∀ (s : Finset M), (LinearIndependent R fun i => ↑i) → Finset.card s ≤ n
s : Set M
li : LinearIndependent R Subtype.val
t : Finset ↑s
⊢ LinearIndependent R fun i => ↑i