# Generating Polynomials through points Suppose the function $f$ goes through the points $(x_1, y_1)$ and $(x_2, y_2)$. $f$ can be represented as the polynomial, $$ f(x) = (x-x_2)\left(\frac{y_1}{x_1-x_2}\right) + (x-x_1)\left(\frac{y_2}{x_2-x_1}\right) $$ Notice that, $$ \begin{align*} f(x_1) &= (x_1-x_2)\left(\frac{y_1}{x_1-x_2}\right) + (x_1-x_1)\left(\frac{y_2}{x_2-x_1}\right) \\ &=y_1 + 0 \\ f(x_2) &= (x_2-x_2)\left(\frac{y_1}{x_1-x_2}\right) + (x_2-x_1)\left(\frac{y_2}{x_2-x_1}\right) \\ &=0 + y_2 \end{align*} $$ Since all $x_n, y_n$ are integers, all coefficients will be rational. A similar method works for more points as well. Suppose $g$ passes through $(x_1, y_1), (x_2, y_2),$ and $(x_3, y_3)$. $g$ can be represented as, \begin{align*} g(x) &= (x-x_2)(x-x_3)\left( \frac{y_1}{(x_1 - x_2)(x_1-x_3)} \right) \\ &+ (x-x_1)(x-x_3)\left( \frac{y_2}{(x_2 - x_1)(x_2-x_3)} \right) \\ &+ (x-x_1)(x-x_2)\left( \frac{y_3}{(x_3 - x_1)(x_3-x_2)} \right). \\ \end{align*} ## Recursive method Suppose $f$ is already defined, and we want the same property \begin{align*} g(x_1) &= f(x_1) = y_1 \\ g(x_2) &= f(x_2) = y_2 \\ g(x_3) &= y_3. \\ \end{align*} This means that the poly $g(x) - f(x)$ has zeros at $x_1$ and $x_2$. Therefore we get, \begin{align*} g(x) - f(x) &= a(x-x_1)(x-x_2) \\ g(x) &= a(x-x_1)(x-x_2) + f(x) \end{align*} for some constant $a$. We can solve for $a$ since we know $g(x_3) = y_3$. \begin{align*} g(x_3) = y_3 &= a(x_3-x_1)(x_3-x_2) + f(x_3) \\ y_3 - f(x_3) &= a(x_3-x_1)(x_3-x_2) \\ a &= \frac{y_3 - f(x_3)}{(x_3-x_1)(x_3-x_2)} \end{align*} Putting everything together, we can see that, $$ g(x) = \left(\frac{y_3 - f(x_3)}{(x_3-x_1)(x_3-x_2)}\right)(x-x_1)(x-x_2) + f(x) $$ So long all points have integer coordinates, $g(x)$ will have rational coefficients.