Solution (source code)

= Solution

A <complete> <matching> from $V_1$ to $V_2$ is a set of <edges> with no shared endpoints that contains an <edge> incident to every <vertex> of $V_1$. The theorem in (i) gives the necessary and sufficient condition
$$
\boxed{|N(A)|\ge|A|\quad\text{for every }A\subseteq V_1.}
$$
The intended setting is a finite left <vertex> set; no condition that every <vertex> of $V_2$ be used is imposed.