Lemma forall_P_Q_a_b_notPa_or_notPb_iff_forall_a_notPa_or_forall_b_notPb : forall (T : Type) (P Q : T->Prop),
(forall a b, P a \/ Q b) <-> ((forall a, P a) \/ (forall b, Q b))
.
Proof.
intros. split; intros.
- admit.
- destruct H; auto.
Admitted.
I proved the one side easily, but couldn't find a way to prove the other side.
edestruct didn't work for me due to the scope.
How should I prove the theorem?