Interactive · 2 questions
Newton interpolation, or the method of finite differences, is a very interesting technique used in polynomial problems:
Example. Let be a cubic polynomial such that and Compute
How would you first try to solve this problem (if you know about finite differences, how would you do it without them?)
A possible method would be the following:
"Well, we can say where and are some real numbers. Then, we have four equations: We can solve this system (four equations, four variables) for and and so we can determine what is. Then, we can plug in to get our answer!"
While this, in theory, is a good idea, it's not always very practical. Solving that system would be rather tedious without a computer or calculator, and it's very computationally error-prone (unless you're Art Benjamin). Finite differences gives us a better, and much more elegant, way to solve this problem.
Consider some arbitrary cubic polynomial, We define the first finite difference of as
Try computing in terms of and before moving on.
For we get
which simplifies to
Anything you notice about this new polynomial, compared to the old one,
The important thing for us is not the exact coefficients of but the fact that is now a quadratic, not a cubic: the terms canceled when we subtracted from
If we try the finite-difference operation again, we'll see that we cancel out the terms as well. This gives us the second finite difference:
which simplifies to Now we have a linear polynomial! If we repeat the operation once more, we get that the third finite difference is a constant polynomial ("degree ").
Well, how does this help us in the original problem?
We know that and and also. We can also use these newfound values to determine that and and therefore
Now how does this help?
Recall I said that the coefficients of each polynomial were not important. What really matters here are their degrees: specifically, is constant!! This helps immensely, because so as well!
This means (that's how we defined ), so
Then so
Finally, so Boom!
Once you understand the awesomeness behind that trick there, let's move on to more awesome stuff about finite differences:
Finite differences have a very nice visual representation as well, which is usually much easier to understand than all of the notation we used above. Place the values equally spaced in a row. Then, put the values on the next row down, in-between the relevant values (sort of like an upside-down Pascal's Triangle). Place down a row and between values, etc. From just the givens, we have this:
Following the steps in our solution above, what do we add to the table?
Since we add a to the right, on the bottom row of our table:
And what now?
Finally, we can snake our way back up the right side of the table to get :
Pascal's Trapezoid...! (Just kidding.)
In general, for an th degree polynomial, the th finite difference will be constant, the th will be linear, the th will be quadratic, and so on. We go down to the th finite difference, extrapolate one to the right, and build our way back up!
Although it might seem daunting to take so many finite differences, with the visual table structure, it becomes just repeated subtraction! That's what makes finite differences so appealing - it takes many interesting polynomial concepts and distills them down into a simple algorithm.
Summary: We used finite difference polynomials to reduce our givens down, until we got to a constant polynomial. Then, we were cleverly able to exploit the constant polynomial to give us another value we needed. Finally, we backtracked up our finite difference chain to get what we wanted.