Theorem: Matroid.Basis'.encard (Matroid/Rank.lean)

State before:
α : Type u_1
ι : Type u_2
M N : Matroid α
I B X X' Y Y' Z R : Set α
n : ℕ∞
e f : α
hI : M.Basis' I X
⊢ I.encard = M.er X
Tactic:
rw [er,erk]
State after:
α : Type u_1
ι : Type u_2
M N : Matroid α
I B X X' Y Y' Z R : Set α
n : ℕ∞
e f : α
hI : M.Basis' I X
⊢ I.encard = ⨅ B, (↑B).encard

State before:
α : Type u_1
ι : Type u_2
M N : Matroid α
I B X X' Y Y' Z R : Set α
n : ℕ∞
e f : α
hI : M.Basis' I X
⊢ I.encard = ⨅ B, (↑B).encard
Tactic:
rw [← base_restrict_iff'] at hI
State after:
α : Type u_1
ι : Type u_2
M N : Matroid α
I B X X' Y Y' Z R : Set α
n : ℕ∞
e f : α
hI : (M ↾ X).Base I
⊢ I.encard = ⨅ B, (↑B).encard

State before:
α : Type u_1
ι : Type u_2
M N : Matroid α
I B X X' Y Y' Z R : Set α
n : ℕ∞
e f : α
hI : (M ↾ X).Base I
⊢ I.encard = ⨅ B, (↑B).encard
Tactic:
have : _root_.Nonempty ↑{B | (M ↾ X).Base B} := ⟨I, hI⟩
State after:
α : Type u_1
ι : Type u_2
M N : Matroid α
I B X X' Y Y' Z R : Set α
n : ℕ∞
e f : α
hI : (M ↾ X).Base I
this : Nonempty ↑{B | (M ↾ X).Base B}
⊢ I.encard = ⨅ B, (↑B).encard

State before:
α : Type u_1
ι : Type u_2
M N : Matroid α
I B X X' Y Y' Z R : Set α
n : ℕ∞
e f : α
hI : (M ↾ X).Base I
this : Nonempty ↑{B | (M ↾ X).Base B}
⊢ I.encard = ⨅ B, (↑B).encard
Tactic:
rw [iInf_congr (_ : ∀ B : ↑{B | (M ↾ X).Base B}, (B : Set α).encard = I.encard), iInf_const]
State after:
α : Type u_1
ι : Type u_2
M N : Matroid α
I B X X' Y Y' Z R : Set α
n : ℕ∞
e f : α
hI : (M ↾ X).Base I
this : Nonempty ↑{B | (M ↾ X).Base B}
⊢ ∀ (B : ↑{B | (M ↾ X).Base B}), (↑B).encard = I.encard

State before:
α : Type u_1
ι : Type u_2
M N : Matroid α
I B X X' Y Y' Z R : Set α
n : ℕ∞
e f : α
hI : (M ↾ X).Base I
this : Nonempty ↑{B | (M ↾ X).Base B}
⊢ ∀ (B : ↑{B | (M ↾ X).Base B}), (↑B).encard = I.encard
Tactic:
simp only [mem_setOf_eq, Subtype.forall]
State after:
α : Type u_1
ι : Type u_2
M N : Matroid α
I B X X' Y Y' Z R : Set α
n : ℕ∞
e f : α
hI : (M ↾ X).Base I
this : Nonempty ↑{B | (M ↾ X).Base B}
⊢ ∀ (a : Set α), (M ↾ X).Base a → a.encard = I.encard

State before:
α : Type u_1
ι : Type u_2
M N : Matroid α
I B X X' Y Y' Z R : Set α
n : ℕ∞
e f : α
hI : (M ↾ X).Base I
this : Nonempty ↑{B | (M ↾ X).Base B}
⊢ ∀ (a : Set α), (M ↾ X).Base a → a.encard = I.encard
Tactic:
exact fun B' hB' ↦ hB'.card_eq_card_of_base hI
State after:
no goals