Let $i$ be a positive integer and $V_1, V_2$ be the vertex sets of a bipartite graph. We want to sample uniformly at random a bigraph in the set of bigraphs with vertex set $V_1 \cup V_2$ such that for each $v \in V_1$, it has at least $i$ neighbors in $V_2$ and for each $u \in V_2$, it has at least one neighbor in $V_1$.
Is there any efficient way to do this?
A plausible method is rejection sampling, along the following lines:
In step $1$, the graphs that satisfy the degree condition in $V_1$ are sampled uniformly at random. So if we repeat until the degree condition in $V_2$ is also satisfied, we end up sampling uniformly from the set of graphs that satisfy both kinds of conditions.
Unless $V_2$ is much much larger than $V_1$, this will still be reasonably efficient. Let $n_1 = |V_1|$ and $n_2 = |V_2|$. Each edge in a graph created in step $1$ exists with probability $> \frac12$: the condition that $\deg(v) \ge i$ only makes edges more likely relative to the baseline. Therefore the probability that a given vertex in $V_2$ is isolated is less than $2^{-n_1}$, and the probability that any vertex in $V_2$ is isolated is less than $n_2 \cdot 2^{-n_1}$.
In particular, when $n_2 \le 2^{n_1 - 1}$, the probability of failure is less than $\frac12$, and the average number of times we have to do step 1 is less than $2$.