[proofplan]
The proof has three parts. First, we show that the series $f_a(x) = \sum a_n \binom{x}{n}$ converges uniformly on $\mathbb{Z}_p$ and defines a continuous function with $\|f_a\| \leq \|(a_n)\|$, using the fact that $\left|\binom{x}{n}\right|_p \leq 1$ for all $x \in \mathbb{Z}_p$ and $|a_n|_p \to 0$. Second, we establish the shift identity $\Delta f_a = f_{a^{(1)}}$ using the Pascal recurrence for binomial coefficients. Third, iterating and evaluating at $x = 0$ recovers $a_n(f_a) = \Delta^n f_a(0) = a_n$.
[/proofplan]
[step:Prove uniform convergence and the norm bound]
We are given $(a_n)_{n \geq 0} \in c_0$, meaning $a_n \in \mathbb{Q}_p$ and $|a_n|_p \to 0$ as $n \to \infty$.
For each $x \in \mathbb{Z}_p$ and $n \geq 0$, the binomial coefficient $\binom{x}{n} = \frac{x(x-1)\cdots(x-n+1)}{n!}$ belongs to $\mathbb{Z}_p$ (i.e., $\left|\binom{x}{n}\right|_p \leq 1$), since $\binom{x}{n}$ is a continuous $\mathbb{Z}_p$-valued function on $\mathbb{Z}_p$ that agrees with the integer-valued binomial coefficient on the dense subset $\mathbb{Z}_{\geq 0}$.
Therefore each term satisfies $\left|a_n\binom{x}{n}\right|_p \leq |a_n|_p$ uniformly in $x$. Since $|a_n|_p \to 0$, the general term tends to $0$ uniformly. By the non-archimedean convergence criterion (a series in a complete non-archimedean field converges if and only if its terms tend to $0$), the series $\sum_{n=0}^{\infty} a_n\binom{x}{n}$ converges for each $x \in \mathbb{Z}_p$, and the convergence is uniform on $\mathbb{Z}_p$.
Since each partial sum $x \mapsto \sum_{n=0}^{N} a_n\binom{x}{n}$ is continuous (a finite linear combination of continuous functions) and the convergence is uniform, the limit $f_a$ is continuous by the uniform limit theorem. Hence $f_a \in C(\mathbb{Z}_p, \mathbb{Q}_p)$.
For the norm bound, the ultrametric inequality gives:
\begin{align*}
|f_a(x)|_p = \left|\sum_{n=0}^{\infty} a_n\binom{x}{n}\right|_p \leq \sup_{n \geq 0} \left|a_n\binom{x}{n}\right|_p \leq \sup_{n \geq 0} |a_n|_p = \|(a_n)\|
\end{align*}
for all $x \in \mathbb{Z}_p$. Taking the supremum over $x$ yields $\|f_a\| \leq \|(a_n)\|$.
[guided]
Why is $\binom{x}{n} \in \mathbb{Z}_p$ for all $x \in \mathbb{Z}_p$? The function $x \mapsto \binom{x}{n} = \frac{x(x-1)\cdots(x-n+1)}{n!}$ is a polynomial in $x$ of degree $n$ with rational coefficients. For $x \in \mathbb{Z}_{\geq 0}$, $\binom{x}{n}$ is a non-negative integer, so $\left|\binom{x}{n}\right|_p \leq 1$. The map $x \mapsto \binom{x}{n}$ is a polynomial (hence continuous) function $\mathbb{Z}_p \to \mathbb{Q}_p$, and $\mathbb{Z}_{\geq 0}$ is dense in $\mathbb{Z}_p$. Since $\mathbb{Z}_p$ is closed in $\mathbb{Q}_p$ and $\binom{x}{n}$ maps the dense subset $\mathbb{Z}_{\geq 0}$ into $\mathbb{Z}_p$, continuity forces $\binom{x}{n} \in \mathbb{Z}_p$ for all $x \in \mathbb{Z}_p$.
The non-archimedean convergence criterion states: in a complete non-archimedean valued field, a series $\sum b_n$ converges if and only if $|b_n| \to 0$. This is strictly stronger than the real/complex case, where $|b_n| \to 0$ is necessary but not sufficient. The "if" direction follows because the partial sums form a Cauchy sequence: for $M > N$, $|\sum_{n=N+1}^{M} b_n| \leq \max_{N < n \leq M} |b_n| \to 0$.
[/guided]
[/step]
[step:Establish the shift identity $\Delta f_a = f_{a^{(1)}}$ via the Pascal recurrence]
The forward difference operator acts on $f_a$ as:
\begin{align*}
\Delta f_a(x) = f_a(x+1) - f_a(x) = \sum_{n=0}^{\infty} a_n\left(\binom{x+1}{n} - \binom{x}{n}\right).
\end{align*}
The term-by-term computation is justified because both series converge uniformly and the difference of uniformly convergent series converges uniformly.
By the Pascal recurrence $\binom{x+1}{n} - \binom{x}{n} = \binom{x}{n-1}$ (valid for all $n \geq 1$, with the $n = 0$ term giving $\binom{x+1}{0} - \binom{x}{0} = 1 - 1 = 0$):
\begin{align*}
\Delta f_a(x) = \sum_{n=1}^{\infty} a_n \binom{x}{n-1} = \sum_{m=0}^{\infty} a_{m+1}\binom{x}{m},
\end{align*}
where we substituted $m = n - 1$. Defining the shifted sequence $a^{(1)} := (a_1, a_2, a_3, \ldots)$, which belongs to $c_0$ since $(a_n) \in c_0$, we have
\begin{align*}
\Delta f_a = f_{a^{(1)}}.
\end{align*}
[guided]
The Pascal recurrence for the generalised binomial coefficient states: for $x \in \mathbb{Z}_p$ and $n \geq 1$,
\begin{align*}
\binom{x+1}{n} = \binom{x}{n} + \binom{x}{n-1}.
\end{align*}
This identity holds as an identity of polynomials in $x$ (it is the standard Pascal identity), so it extends from $\mathbb{Z}$ to $\mathbb{Z}_p$ by continuity (or simply by polynomial identity).
The shift $a^{(1)} = (a_1, a_2, \ldots)$ belongs to $c_0$ because dropping the first term of a null sequence yields a null sequence. So $f_{a^{(1)}}$ is well-defined by the convergence result in the previous step.
[/guided]
[/step]
[step:Iterate and evaluate at $x = 0$ to recover the Mahler coefficients]
Iterating the shift identity $k$ times:
\begin{align*}
\Delta^k f_a = f_{a^{(k)}}, \qquad a^{(k)} = (a_k, a_{k+1}, a_{k+2}, \ldots).
\end{align*}
Evaluating at $x = 0$ and using $\binom{0}{m} = \delta_{m,0}$ (the Kronecker delta: $\binom{0}{0} = 1$ and $\binom{0}{m} = 0$ for $m \geq 1$):
\begin{align*}
\Delta^k f_a(0) = f_{a^{(k)}}(0) = \sum_{m=0}^{\infty} a_{k+m}\binom{0}{m} = a_k \cdot 1 + \sum_{m=1}^{\infty} a_{k+m} \cdot 0 = a_k.
\end{align*}
By definition, the $n$-th Mahler coefficient of $f_a$ is $a_n(f_a) := \Delta^n f_a(0)$. The computation above gives
\begin{align*}
a_n(f_a) = \Delta^n f_a(0) = a_n
\end{align*}
for all $n \geq 0$, which shows that the Mahler coefficients of $f_a$ recover the original sequence $(a_n)$.
[/step]