let ⟨b,hb⟩ := f_surj a
case f_surj
α : Type u
β : Type v
inst✝³ : BishopFin α
inst✝² : BishopFin β
p q : α → Prop
inst✝¹ : DecidablePred p
inst✝ : DecidablePred q
f : β → α
f_surj : ∀ (a : α), ∃ b, f b = a
x : { a // p a }
a : α
ha : p a
⊢ ∃ a_1, { val := f a_1.val, property := (_ : (p ∘ f) a_1.val) } = { val := a, property := ha }
case f_surj
α : Type u
β : Type v
inst✝³ : BishopFin α
inst✝² : BishopFin β
p q : α → Prop
inst✝¹ : DecidablePred p
inst✝ : DecidablePred q
f : β → α
f_surj : ∀ (a : α), ∃ b, f b = a
x : { a // p a }
a : α
ha : p a
b : β
hb : f b = a
⊢ ∃ a_1, { val := f a_1.val, property := (_ : (p ∘ f) a_1.val) } = { val := a, property := ha }