[proofplan]
We compare two asymptotic evaluations of the Schur specialization $s_\lambda(1^n)$ as $n \to \infty$. The [hook-content formula](/theorems/5211) expresses this specialization as an explicit product whose leading term is determined by the hook lengths. On the other hand, the standard-tableaux specialization limit identifies the leading coefficient of $s_\lambda(1^n)$ with
\begin{align*}
\frac{f^\lambda}{r!}.
\end{align*}
Equating the two leading coefficients gives the hook-length formula.
[/proofplan]
[step:Introduce the hook and content data attached to the Young diagram]
Let $\ell := \ell(\lambda)$ denote the number of nonzero parts of the partition $\lambda$. Write the Young diagram of $\lambda$ as
\begin{align*}
[\lambda] := \{(i,j) \in \mathbb{N}^2 : 1 \leq i \leq \ell,\ 1 \leq j \leq \lambda_i\}.
\end{align*}
Thus $|[\lambda]| = r$. For each box $u = (i,j) \in [\lambda]$, define its content $c(u) \in \mathbb{Z}$ by
\begin{align*}
c(u) := j - i.
\end{align*}
For each box $u = (i,j) \in [\lambda]$, define its hook length $h(u) \in \mathbb{N}$ by
\begin{align*}
h(u) := \#\{(i,k) \in [\lambda] : k \geq j\} + \#\{(k,j) \in [\lambda] : k > i\}.
\end{align*}
Define the hook product $H_\lambda \in \mathbb{N}$ by
\begin{align*}
H_\lambda := \prod_{u \in [\lambda]} h(u).
\end{align*}
Since every hook length $h(u)$ is a positive integer, $H_\lambda > 0$.
For each $n \in \mathbb{N}$, let $s_\lambda(1^n)$ denote the specialization of the Schur polynomial $s_\lambda$ obtained by setting the first $n$ variables equal to $1$ and all remaining variables equal to $0$.
[/step]
[step:Extract the leading coefficient from the hook-content formula]
We use the hook-content formula for Schur polynomial specializations as an established prerequisite: for every partition $\mu$ and every $n \in \mathbb{N}$, the specialization $s_\mu(1^n)$ is given by the product over the boxes of $[\mu]$ with numerator $n$ plus the content and denominator the hook length. The present $\lambda$ is a partition, and $n \in \mathbb{N}$, so this formula applies and gives
\begin{align*}
s_\lambda(1^n)
= \prod_{u \in [\lambda]} \frac{n + c(u)}{h(u)}
= \frac{1}{H_\lambda}\prod_{u \in [\lambda]}(n + c(u)).
\end{align*}
Because $[\lambda]$ has exactly $r$ boxes, the product $\prod_{u \in [\lambda]}(n + c(u))$ is a monic polynomial in $n$ of degree $r$. Therefore
\begin{align*}
\lim_{n \to \infty} \frac{s_\lambda(1^n)}{n^r}
= \frac{1}{H_\lambda}
= \frac{1}{\prod_{u \in [\lambda]} h(u)}.
\end{align*}
[guided]
We briefly repeat the notation needed inside this step. Let $\ell := \ell(\lambda)$ denote the number of nonzero parts of $\lambda$. The Young diagram is
\begin{align*}
[\lambda] := \{(i,j) \in \mathbb{N}^2 : 1 \leq i \leq \ell,\ 1 \leq j \leq \lambda_i\},
\end{align*}
and for a box $u = (i,j) \in [\lambda]$ the content is $c(u) := j-i$. The hook length $h(u) \in \mathbb{N}$ is
\begin{align*}
h(u) := \#\{(i,k) \in [\lambda] : k \geq j\} + \#\{(k,j) \in [\lambda] : k > i\}.
\end{align*}
We use the hook-content formula for Schur polynomial specializations as an established prerequisite. It applies to every partition and every $n \in \mathbb{N}$; since the present $\lambda$ is a partition and $n \in \mathbb{N}$, it gives
\begin{align*}
s_\lambda(1^n)
= \prod_{u \in [\lambda]} \frac{n + c(u)}{h(u)}.
\end{align*}
For this proof, we only need the leading term of this expression as a polynomial in $n$.
The denominator is independent of $n$, so we collect it into the hook product
\begin{align*}
H_\lambda = \prod_{u \in [\lambda]} h(u).
\end{align*}
This gives
\begin{align*}
s_\lambda(1^n)
= \frac{1}{H_\lambda}\prod_{u \in [\lambda]}(n + c(u)).
\end{align*}
There are exactly $r$ boxes in $[\lambda]$, because $\lambda$ is a partition of $r$. Each factor $n + c(u)$ is a monic degree-one polynomial in $n$. Hence their product is a monic degree-$r$ polynomial in $n$. Dividing by $n^r$ and taking $n \to \infty$ retains only this leading coefficient:
\begin{align*}
\lim_{n \to \infty} \frac{1}{n^r}\prod_{u \in [\lambda]}(n + c(u)) = 1.
\end{align*}
Multiplying by the constant factor $1/H_\lambda$, we obtain
\begin{align*}
\lim_{n \to \infty} \frac{s_\lambda(1^n)}{n^r}
= \frac{1}{H_\lambda}
= \frac{1}{\prod_{u \in [\lambda]} h(u)}.
\end{align*}
[/guided]
[/step]
[step:Identify the same leading coefficient by standard tableaux]
We use the standard-tableaux specialization asymptotic for Schur polynomials as an established prerequisite: for every fixed partition $\mu$ of size $m$, the leading coefficient of $s_\mu(1^n)$ as a polynomial in $n$ is the number of standard Young tableaux of shape $\mu$ divided by $m!$. The present $\lambda$ is a fixed partition of size $r$, so this asymptotic applies and gives
\begin{align*}
\lim_{n \to \infty} \frac{s_\lambda(1^n)}{n^r}
= \frac{f^\lambda}{r!},
\end{align*}
where $f^\lambda$ denotes the number of standard Young tableaux of shape $\lambda$.
[/step]
[step:Equate the two limits and solve for $f^\lambda$]
The preceding two steps compute the same limit. Hence
\begin{align*}
\frac{f^\lambda}{r!}
= \frac{1}{\prod_{u \in [\lambda]} h(u)}.
\end{align*}
Multiplying both sides by $r!$ gives
\begin{align*}
f^\lambda
= \frac{r!}{\prod_{u \in [\lambda]} h(u)}.
\end{align*}
Since $[\lambda]$ is the Young diagram of $\lambda$, this is precisely
\begin{align*}
f^\lambda
= \frac{r!}{\prod_{u \in \lambda} h(u)}.
\end{align*}
This proves the Frame-Robinson-Thrall hook-length formula.
[/step]