TAOCP 7.2.2.2 Exercise 241
\textbf{Solution.
Section 7.2.2.2: Satisfiability
Exercise 241. [20] Show that any set of at most $m/3000$ pigeons can be matched to distinct holes, under the restricted pigeonhole constraints $G_0$ of Theorem B.
Verified: yes
Solve time: 6m09s
$$ \textbf{Solution.} $$
Let $P$ be a set of pigeons with
$$ |P|\leq \frac{m}{3000}. $$
We regard the restricted pigeonhole constraints $G_0$ as a bipartite graph. The left vertices are the pigeons, the right vertices are the holes, and an edge $p h$ means that the constraint system allows pigeon $p$ to be assigned to hole $h$.
We prove that every such $P$ satisfies Hall's condition. Let $S\subseteq P$ be arbitrary, and write $\Gamma(S)$ for the set of holes adjacent to at least one pigeon in $S$.
Because
$$ S\subseteq P, $$
we have
$$ |S|\leq |P|\leq \frac{m}{3000}. $$
The graph $G_0$ supplied by Theorem B satisfies the strong expansion condition (108). In the notation of that theorem, every set of pigeons $S$ with
$$ |S|\leq \frac{m}{3000} $$
has a neighborhood $\Gamma(S)$ large enough that
$$ |\Gamma(S)|\geq |S|. $$
The reason this applies here is that $S$ is an arbitrary subset of $P$, and the only hypothesis needed for the expansion conclusion is the upper bound on the size of $S$. Therefore every subset of $P$ satisfies
$$ |\Gamma(S)|\geq |S|. $$
Hence the bipartite graph induced by $P$ and the holes of $G_0$ satisfies Hall's condition. By Hall's marriage theorem, there exists a matching that covers every pigeon in $P$. Equivalently, every pigeon in $P$ can be assigned to a distinct hole using only the allowed edges of $G_0$.
Since $P$ was an arbitrary set of pigeons satisfying
$$ |P|\leq \frac{m}{3000}, $$
every set of at most $m/3000$ pigeons can be matched to distinct holes under the restricted pigeonhole constraints $G_0$. $\square$