I'm trying to learn about forcing, and have heard that there are several equivalent ways to define genericity. For instance, let M be a transitive model of ZFC containing a poset (P, ≤). Suppose G ⊆ P is such that q ∈ G whenever both p ∈ G and q ≥ p. Suppose also that whenever p,q ∈ G then there is r ∈ G such that r ≤ p and r ≤ q.
Then the following are equivalent ways to say that G is generic:


(1) G meets every element of M dense in P. That is, for all D ∈ M, if for all p ∈ P there is q ∈ D such that q ≤ p, then G ∩ D is nonempty.


(2) G is nonempty and meets every element of M dense below some p ∈ G. That is, for all p ∈ G and all B ∈ M, if for each q ≤ p there is r ∈ B such that r ≤ q, then G ∩ B is nonempty.


Proving this equivalence seemed like it would be an easy exercise, but I think I'm missing something. Can someone point me toward a source where I can find a proof? I hope this is an acceptable question; this is my first time posting.


EDIT: Typo and omission fixed.



Equivalent definitions of M-genericity.
If $G$ satisfies (1), then it satisfies (2) because if $p$ is in $G$ and $D$ is dense below $p$, then let $D'$ be the set of conditions $q$ which are either in $D$ or incompatible with $p$. This is dense in $P$ since any condition that is compatible with $p$ will have elements of $D$ below it, and any condition incompatible with $p$ is already in $D'$. But $G$ cannot meet $D'$ in something incompatible with $p$, by your assumption on $G$, and so it must meet it in $D$, as desired. 


Conversely, if $G$ satisfies (2), then it will satisfy (1) because if $D$ is dense, then it is dense below any $p$, and so $G$ will meet it.


