apply (@dependent_choice' {x : A // P x} (λ p q => P p ∧ Q p q) _)
A : Type
R : A → A → Prop
inhabited_A : Nonempty A
P : A → Prop
Q : A → A → Prop
a : A
pa : P a
ex : ∀ (a : A), P a → ∃ b, P b ∧ Q a b
⊢ ∃ f, f 0 = { val := a, property := pa } ∧ ∀ (n : ℕ), P (f n).val ∧ Q (f n).val (f (n + 1)).val
A : Type
R : A → A → Prop
inhabited_A : Nonempty A
P : A → Prop
Q : A → A → Prop
a : A
pa : P a
ex : ∀ (a : A), P a → ∃ b, P b ∧ Q a b
⊢ ∀ (a : { x // P x }), ∃ b, P a.val ∧ Q a.val b.val