An integer-valued polynomial is a polynomial $p(x)$ such that $\forall x \in \mathbb{Z}, p(x) \in \mathbb{Z}$.

Theorem: For any $n$-degree polynomial $p$, if $p(x) \in \mathbb{Z}$ for all $x \in \{0, 1, ..., n\}$, then $p$ is an integer-valued polynomial.

The proof is pretty simple for $n = 0, 1$

I have a proof for $n = 2$ and a sketch of the proof for $n = 3$

Is this provable for arbitrary $n$ or is there a counterexample?

Possibly relevant: A polynomial $p$ of degree $n$ can be uniquely identified by the numbers $a_0, a_1, a_2, ... a_n$ where the polynomial is $a_0*x^n + a_1*x^(n-1) + a_2*x^(n-2) ... + a_n$. The same polynomial can be uniquely identified by the numbers $b_0, b_1, b_2, ... b_n$ where $p(0) = b_0, p(1) = b_1, ... p(n) = b_n$, as these create a set of $n+1$ linear equations comprised of the $n+1$ variables $a_0$ through $a_n$, thus uniquely generating $a_0$ through $a_n$.