intro b _
α : Type
A B : Set α
hA : A.Finite
hB : B.Finite
f : { x // A x } → { x // B x }
n : ℕ
h1 : ∀ (b : { x // B x }), {a | f a = b}.ncard = n
hfa : Fintype ↑A
hfb : Fintype ↑B
hbf : (b : { x // B x }) → Fintype { a // f a = b }
h2 : ∀ (b : { x // B x }), {a | f a = b}.ncard = Fintype.card { a // f a = b }
⊢ ∀ b ∈ Finset.univ, (Finset.filter {a | f a = b} Finset.univ).card = n
α : Type
A B : Set α
hA : A.Finite
hB : B.Finite
f : { x // A x } → { x // B x }
n : ℕ
h1 : ∀ (b : { x // B x }), {a | f a = b}.ncard = n
hfa : Fintype ↑A
hfb : Fintype ↑B
hbf : (b : { x // B x }) → Fintype { a // f a = b }
h2 : ∀ (b : { x // B x }), {a | f a = b}.ncard = Fintype.card { a // f a = b }
b : ↑B
a✝ : b ∈ Finset.univ
⊢ (Finset.filter {a | f a = b} Finset.univ).card = n