Man stelle sich vor, wir haben eine Menge $M$ von Männern und eine Menge $F$ von Frauen, die wir verheiraten wollen. Jeder Mann gibt zudem an, welche Frauen er möglicherweise heiraten wollen würde. Wann ist es möglich, die Männer mit den Frauen zu verheiraten, sodass jeder Mann eine seiner Wunschfrauen bekommt, und natürlich keine Frau doppelt verheiratet wird?\\ Wir können dies graphentheoretisch formulieren, indem wir einen bipartiten Graphen zeichenn, deren Hälften die Männer und Frauen sind, wobei wir einen Knoten zwischen einem Mann und einer Frau zeichen, wenn der Mann diese Frau potenziell heiraten will. 'Zu verheiraten' heißt hier also, eine Menge von Kanten auszuwählen, sodass jeder Mann eine entsprechende Kante hat, und jede Frau höchstens eine. \\ Man kann nun mehr oder weniger offensichtliche Bedingungen feststellen, die gelten müssen, hierzu zählen: \begin{itemize} \item Jeder Mann sollte mindestens eine Frau mögen. \item Es sollte mindestens so viele Frauen wie Männer geben \item Wenn zwei Männer jeweils nur eine Frau mögen, so darf dies nicht die gleich sein. \end{itemize} Nach einer Weil könnte man auch auf folgendes kommen: \begin{itemize} \item Für Jede Teilmenge $N\subset M$ von (manchen) Männern, muss es mindestens $\abs{N} $ viele Frauen geben, die von einem dieser Männer gemocht wird. Nehmen wir nämlich an, dass wir die Männer verheiraten können, so sind dies (mindestens) die $\abs{N} $ vielen Partnerinnen der Männer. \end{itemize} Diese Bedingung nennt man auch Halls Heiratsbedingung, benannt nach Paul Hall, der diesen Sachverhalt das erste Mal untersuchte. Das überraschende ist nun, dass diese Bedingung bereits ausreicht: \begin{thm}[Hall, 1935] Gegeben sei ein bipartiter Graph mit den Knotenmengen $M$ und $F$. Dann gibt es ein vollständiges Matching von den Männern (in die Frauen) genau dann, wenn für jede Teilmenge $M'\subset M$ gilt, dass $\abs{M'} \leq \abs{N(M')} $. \end{thm} \begin{remark} Wir bezeichnen hierbei mit $N(M')$ die Nachbarschaft der Knotenmenge $M'$, also alle Knoten, die von $M'$ mit genau einer Kante erreichbar sind (in unserem fall genau die Frauen). \end{remark} \begin{proof} Starke Induktion nach der Anzahl der Männer. Für $n=1$ gibt es nichts zu zeigen. Betrachte nun $n+1$ Männer $m_1,\ldots m_{n+1}$ und setze $M= \left\{m_1,\ldots,m_n\right\} $. Wir wollen 2 Fälle unterscheiden: \begin{itemize} \item \textbf{Fall 1}: Die Hall-Bedingung ist für Teilmengen von $M$ immer 'lasch' (nicht scharf), d.h. für jede Teilmenge $M'\subset M$ gilt $\abs{N(M')} \geq \abs{M'}+1 $ . \\ Dann verheiraten wir $m_{n+1}$ mit einer seiner Wunschpartnerinnen und stellen fest, dass nach Induktion die Menge $M$ die Hall-Bedingung (auch mit der fehlenden Frau) immer noch erfüllt, Induktion liefert uns ein Matching. \item \textbf{Fall 2}: Dies ist nicht der Fall, d.h. es gibt eine Teilmenge $M'\subset M$, sodass $\abs{ N(M')} = \abs{M'} $ ist. Dann verheiraten wir zunächst mittels Induktion die Männer aus $M'$. Es bleibt zu überprüfen, dass die Hall-Bedingung nun noch für alle Teilmengen von $M\setminus M'$ gilt, wobei bereits verheiratete Frauen nicht mehr zur Nachbarschaft zählen. Nehmen wir also an, es gibt eine Menge von $k$ Männern, die nicht aus $M'$ sind, sodass es $x