Skip to main content
MethodsX logoLink to MethodsX
. 2020 Jun 19;7:100956. doi: 10.1016/j.mex.2020.100956

Split difference method to determine the polynomial function that models the first few given terms of a sequence

Rithvik Ravikumar
PMCID: PMC7347646  PMID: 32670801

Abstract

When looking at a sequence of numbers, one that can be defined by a polynomial function of a natural number degree, one most commonly would use a difference table to find the degree followed by a system of equations to find the equation that models the sequence. This method can prove to be very time consuming as solving a system of equations can become tedious at higher degrees. Alternately, some people would use a method where they use the difference table to find the leading coefficient in addition to the degree to give the first term. Then they would subtract this term from the function and repeat this process. However, this can be unnecessarily complicated as this method requires one to create a difference table numerous times only to need the last difference. This method uses a simple pattern triangle and only the first difference table of the sequence. It is already necessary to create the first difference table and this pattern triangle can be used to improve upon the second method. The pattern triangle allows us to walk through the difference table of the lower degree polynomials quite easily, removing the need for multiple difference table. This method differs from existing methods in that:

  • It is much faster

  • It uses a unique pattern triangle.

Keywords: Quadratic functions, Polynomials, Sequences, Split, Difference

Graphical abstract

Graphical abstract

Image, graphical abstract

Direct submission or co-submission

Co-submissions are papers that have been submitted alongside an original research paper accepted for publication by another Elsevier journal

Specifications Table

Subject Area Computer Science
More specific subject area Identifying a Function
Method name Method: Split Difference Pattern Triangles: 1st Difference and Difference Zero Triangles
Name and reference of original method System of Equations http://www.math.cmu.edu/~bkell/21110–2010s/formula.html Method of Differences.  Brilliant.org. Retrieved 21:28, May 9, 2020, from https://brilliant.org/wiki/method-of-differences/ Newton's Interpolation Formula https://www.encyclopediaofmath.org/index.php/Newton_interpolation_formula
Resource availability

Method details

Introduction

Often in algebra, we see sequences and need to find the polynomial that fits that sequence. The current method known involves setting up an equation similar to:

y=ax3+bx2+cx+d

and solving a system of equations. This method uses a pattern to determine the coefficients of the polynomial rather than the extensive method that we use today.

Experimental and computational details

Split difference

Finding the differences

Splitting the sequence into its differences

Given are the first few terms of the sequence:

9,49,169,441,961,1849

There is a function that can resemble this sequence. The first step would be to split the sequence into its differences. To do so, the differences of the terms would be found. Then, the differences of those differences are found, and this process can be repeated till all the differences are the same.

Example:

Row 4 24 24
Row 3 72 96 120
Row 2 80 152 248 368
Row 1 40 120 272 520 888
Row 0 9 49 169 441 961 1849
Determine the degree of the polynomial

If the function is a polynomial of some whole number degree, the successive differences between the differences should at one point be the same. The number of rows of differences obtain would be the degree of the polynomial.

Example:

Row 4 shows constant differences. Therefore, the degree of the polynomial equation that represents the given sequence is 4.

Finding the 0th differences

For this method it is necessary to start at the 0th term and its successive differences. When given a sequence that starts at the first term, we can use its difference table to find the 0th differences. Once the triangle of differences is found, the 0th term can be found by working backwards and finding the 0th differences.

Example:

Row 4 24 24 24
Row 3 48 72 96 120
Row 2 32 80 152 248 368
Row 1 8 40 120 272 520 888
Row 0 1 9 49 169 441 961 1849

Now, you should have the following differences for each row:

1,8,32,48,24

Creating the term zero difference triangle

Begin with the triangle:

101

The next step is to add another row. This is done by adding the numbers above it, similar to the rule used in Pascal's Triangle. However, now we will multiply each sum by their own term number. The leftmost number of each row will have the term number of 0. This process must be repeated till there are one plus the degree found in part one number of rows. Like Pascal's Triangle, this pattern triangle is the same every time you use this method.

Repeating this pattern will give you the triangle:

Row 0 1
Row 1 0 1
Row 2 0 2 2
Row 3 0 1 6 6
Row 4 0 1 14 36 24

Apply and solve

Finding the coefficients

The final step is to piece together parts 1 and 2 to determine the function.

To do so, the 0th differences found in part 1 is used. First, the final difference is divided by the last term of the last row of the triangle in part 2. That value will be the leading coefficient. The rest of the numbers of that row is multiplied by that coefficient and subtracted from the other differences respectively. While going up the triangle, this process will be repeated till all of the numbers have been used up.

Example:

Begin with the differences found in Part 1.

1,8,32,48,24

Divide the last term of the differences by the corresponding term in the pattern triangle and subtract. Repeat until all the numbers in the pattern triangle are used.

1832482424=10114361718126=202121562=303121=2011=1
Determine the equation

Here, we use the empty polynomial equation of the degree you found in Part 1, as shown below:

y=ax4+bx3+cx2+dx+e

Substitute the variables in the equation above with the quotients found earlier in Part 3 (a is the first quotient).

Example:

y=x4+2x3+3x2+2x+1

Alternate form of split difference

There is a similar method to split difference which can be found to be easier in some circumstances.

Finding the differences

Repeat the Part 1 process from the standard Split Difference method. However, there is no need to find the 0th term or the 0th differences.

Example:

Row 4 24 24
Row 3 72 96 120
Row 2 80 152 248 368
Row 1 40 120 272 520 888
Row 0 9 49 169 441 961 1849

Creating the first term difference triangle

Begin with the triangle:

111

Create another row by adding the numbers above times the term number each number holds, starting with left as 1. For example, the second number in the next row would be (1 * 1) + (1 * 2). Once again, create as many rows as the degree plus 1. Like Pascal's Triangle, this pattern triangle is the same every time you use this method.

Row 0 1
Row 1 1 1
Row 2 1 3 2
Row 3 1 7 12 6
Row 4 1 15 50 6 24

Apply and solve - Here, the method works same as it did in part 1

Finding the coefficients

The final step is to piece together parts 1 and 2 to determine the function. To do so, the 0th differences found in part 1 is used. First, the final difference is divided by the last term of the last row of the triangle in part 2. That value will be the leading coefficient. The rest of the numbers of that row is multiplied by that coefficient and subtracted from the other differences respectively. While going up the triangle, this process will be repeated till all of the numbers have been used up.

Example:

Begin with the differences found in Part 1.

9,40,80,72,24

Divide the last term of the differences by the corresponding term in the pattern triangle and subtract. Repeat until all the numbers in the pattern triangle are used.

Example:

94080722424=1115506082530126=22142461162=339321=2211=1

Determine the equation

Here, we use the empty polynomial equation of the degree you found in Part 1, as shown below:

y=ax4+bx3+cx2+dx+e

Substitute the variables in the equation above with the quotients found earlier in Part 3

Example:

y=x4+2x3+3x2+2x+1

Current methods

System of equations [1]

The current method works by using a system of equations to solve the polynomial. One must set up multiple equations following the structure:

y=ax4+bx3+cx2+dx+e

They will then substitute x for 1 and y for the first term and so on till they have as many equations as coefficients. Using the elimination method, this method requires you to find the coefficients one by one. However, this method can become very tedious, especially when dealing with higher degree polynomials. It is also very difficult when dealing with non-integer coefficients.

Difference table [2]

The Split Difference Method is certainly based off the ideas behind this method. This method requires creating the difference table for the sequence to find the leading coefficient and highest degree. Then, the method calls for subtracting this value from each term in the sequence and drawing the difference table once more to find the next highest degree. This process is repeated until all the terms are found. However, this method is extremely time consuming as it requires one to create multiple difference tables.

Newton's interpolation method [3]

This method involves creating a special difference table where the ‘difference’ between each successive term is found using a special equation. While this method may be fast, it doesn't provide one with a simplified polynomial function, but rather a quite large one that will take too much time to simplify at higher degrees.

Split difference method benefits

This method compared to any previous method runs much faster, especially at higher degree equations. The first step of finding the differences and degree is the same as you would in any other method because it is necessary to determine the degree of the function. The triangle is one that doesn't change based on the scenario and therefore can be memorized for quick use. The only extra calculation occurs in the final step which is comprised of simple arithmetic and very little of it. This minimizes the issue of making an accidental error which tends to be common in the system of equations method. By reusing the difference table that would need to have been made anyways and limiting the method to only one difference table, we get a much faster process than that of the System of Equations and the Difference Table method. Additionally, we get a simplified result unlike that of Newton's Interpolation Method.

Proof of pattern triangle

Proof of the first term difference triangle

f(x)=Adxd+Ad1xd1+Ad2xd2++A0x0
x f(x)/Δ0 Δ1 Δ2 Δ3 Δ4 Δn

1 f(1)
f(2) – f(1)
2 f(2) f(3) – 2f(2) + f(1)
f(3) – f(2) f(4) – 3f(3) + 3f(2) – f(1)
3 f(3) f(4) – 2f(3) + f(2) f(5) – 4f(4) + 6f(3) – 4f(2) + f(1)
f(4) – f(3) f(5) – 3f(4) + 3f(3) – f(2) k=0n(1)n(nk)f(nk+1)
4 f(4) f(5) – 2f(4) + f(3) f(6) – 4f(5) + 6f(4) – 4f(3) + f(2)
f(5) – f(4) f(6) – 3f(5) + 3f(4) – f(3)
5 f(5) f(6) – 2f(5) + f(4)
f(6) – f(5)
6 f(6)

Given the degree, d, is n when Δn is constant, the leading coefficient, Ad, is:

k=0n(1)n(nk)f(nk+1)n!

Let g(x) = f(x) – Adxd

x g(x) or Δ0 Δ1 Δ2 Δ3 Δn

1 g(1)
g(2) – g(1)
2 g(2) g(3) – 2g(2) + g(1)
g(3) – g(2) g(4) – 3g(3) + 3g(2) – g(1)
3 g(3) g(4) – 2g(3) + g(2) k=0n(1)n(nk)g(nk+1)
g(4) – g(3) g(5) – 3 g(4) + 3 g(3) – g(2)
4 g(4) g(5) – 2g(4) + g(3) k=0n(1)n(nk)g(nk+2)
g(5) – g(4) g(6) – 3g(5) + 3g(4) – g(3)
5 g(5) g(6) – 2g(5) + g(4)
g(6) – g(5)
6 g(6)

Substitute f(x) – Adxd for g(x).

x g(x) or Δ0 Δ1 Δ2 Δ3 Δn

1 f(1) – Ad1d
(f(2) – Ad2d) – (f(1) – Ad1d)
2 f(2) – Ad2d (f(3) – Ad3d) – 2(f(2) – Ad2d) +
(f(1) – Ad1d)
(f(3) – Ad3d) – (f(2) – Ad2d) (f(4) – Ad4d) – 3(f(3) – Ad3d) +
3(f(2) – Ad2d) – (f(1) – Ad1d)
3 f(3) – Ad3d (f(4) – Ad4d) – 2(f(3) – Ad3d) +(f(2) – Ad2d) k=0n(1)n(nk)[f(nk+1)Ad(nk+1)d]
(f(4) – Ad4d) – (f(3) – Ad3d) (f(5) – Ad5d) – 3(f(4) – Ad4d) +3(f(3) – Ad3d) – (f(2) – Ad2d)
4 f(4) – Ad4d (f(5) – Ad5d) – 2(f(4) – Ad4d) +(f(3) – Ad3d) k=0n(1)n(nk)[f(nk+2)Ad(nk+2)d]
(f(5) – Ad5d) – (f(4) – Ad4d) (f(6) – Ad6d) – 3(f(5) – Ad5d) +3(f(4) – Ad4d) – (f(3) – Ad3d)
5 f(5) – Ad5d (f(6) – Ad6d) – 2(f(5) – Ad5d) +(f(4) – Ad4d)
(f(6) – Ad6d) – (f(5) – Ad5d)
6 f(6) – Ad6d

Given the degree of g(x), d-1, is n when Δn is constant, the leading coefficient, Ad-1, is:

k=0n(1)n(nk)[f(nk+1)Ad(nk+1)d]n!

Using the previous two coefficients, we can let h(x) = f(x) – Adxd – Ad-1xd-1 .

The first term of Δn for h(x) would be:

k=0n(1)n(nk)[f(nk+1)Ad(nk+1)dAd1(nk+1)d1]

If this process is repeated until every coefficient is found, the function will only have the leading coefficient. We can call this function z(x).

z(x)=f(x)AdxdAd1xd1A1x1=A0x0

The first term of Δn for z(x) would be:

k=0n(1)n(nk)[f(nk+1)Ad(nk+1)dAd1(nk+1)d1A1(nk+1)1]

Since z(x) is a constant coefficient function, there is only one Δn to pay attention to - Δ0. All other columns will be 0.

Thus, we can simplify the summation above to:

k=0n(1)n(nk)[f(nk+1)i=0dAdi(nk+1)di]

Now we can define a function, Pm(x) which represents a part of the original polynomial, f(x) with degree d, where m represents the degree of the function. The general formula for first difference of each column Δn for Pm(x) would be:

k=0n(1)n(nk)[f(nk+1)i=0dm1Adi(nk+1)di]

Now if we write the first term of each column Δn for any degree, d we get:

 .

PM 0 1 2 N

0 f(1)[i=0d1Adi(1)di]
1 f(1)[i=0d2Adi(1)di]k=01(1)k[f(2k)i=0d2Adi(2k)di]
2 f(1)[i=0d3Adi(1)di] k=01(1)k[f(2k)i=0d3Adi(2k)di] k=02(1)k(nk)[f(3k)i=0d3Adi(3k)di]
D–3 f(1)[i=02Adi(1)di] k=01(1)k[f(2k)i=02Adi(2k)di] k=02(1)k(nk)[f(3k)i=02Adi(3k)di] k=01(1)k(nk)[f(nk+1)i=02Adi(nk+1)di]
D–2 f(1)[i=01Adi(1)di] k=01(1)k[f(2k)i=01Adi(2k)di] k=02(1)k(nk)[f(3k)i=01Adi(3k)di] k=01(1)k(nk)[f(nk+1)i=01Adi(nk+1)di]
D–1 f(1) – Ad1d f(2) – f(1) – Ad2d + Ad1d k=02(1)k(nk)[f(3k)i=00Adi(3k)di] k=01(1)k(nk)[f(nk+1)i=00Adi(nk+1)di]
D f(1) f(2) – f(1) f(3) – 2f(2) + f(1) k=0n(1)k(nk)f(nk+1)

Taking the difference between the rows, without the last value in each row, we get:

PM – PM-1 0 1 2 N

P0 - 0
P1 – P0 A111
P2– P1 A212 A2(22 – 12)
P3 – P2 A313 A3(23 – 13) A3(33 – 2(2)3 + 13)
PD-3 – PD-4 Ad3k=00(1)k(0k)(1k)d3 Ad3k=01(1)k(1k)(2k)d3 Ad3k=02(1)k(2k)(3k)d3 Ad3k=0n(1)k(nk)(nk+1)d3
PD-2 – PD-3 Ad2k=00(1)k(0k)(1k)d2 Ad2k=01(1)k(1k)(2k)d2 Ad2k=02(1)k(2k)(3k)d2 Ad2k=0n(1)k(nk)(nk+1)d2
PD-1 – PD-2 Ad1k=00(1)k(0k)(1k)d1 Ad1k=01(1)k(1k)(2k)d1 Ad1k=02(1)k(2k)(3k)d1 Ad1k=0n(1)k(nk)(nk+1)d1
PD – PD-1 Adk=00(1)k(0k)(1k)d Adk=01(1)k(1k)(2k)d Adk=02(1)k(2k)(3k)d Adk=0n(1)k(nk)(nk+1)d

With the last value in each row being:

k=0n(1)n(nk)[f(nk+1)i=0dm1Adi(nk+1)di]=m!

This pattern is similar to the pattern triangle which shows the values as:

11113217126115506024

The difference between this pattern triangle and the table we have above is that the constants behind each number in the pattern triangle are set as 1.

Simplify the following equation

(n+1)[k=0n(1)k(nk)(nk+1)m]+(n+2)[k=0n+1(1)k(n+1k)(nk+2)m]

Expand the summation:

=(n+1)[(n0)(n+1)m(n1)(n)m+(n2)(n1)m+(1)n(nn)(1)m]+(n+2)[(n+10)(n+2)m(n+11)(n+1)m+(n+12)(n)m+(1)n+1(n+1n+1)(1)m]

Distribute:

=s(n+1)(n0)(n+1)m(n+1)(n1)(n)m+(n+1)(n2)(n1)m+(n+1)(1)n(nn)(1)m+(n+2)(n+10)(n+2)m(n+2)(n+11)(n+1)m+(n+2)(n+12)(n)m+(n+2)(1)n+1(n+1n+1)(1)m

Group like terms:

=(n+2)(n+10)(n+2)m+(n+1)m[(n+1)(n0)(n+2)(n+11)](n)m[(n+1)(n1)(n+2)(n+12)]+(n1)m[(n+1)(n2)(n+2)(n+13)]+(1)n1m[(n+1)(nn)(n+2)(n+1n+1)]

Expand the combinations:

=(n+2)(n+10)(n+2)m+(n+1)m[(n+1)n!0!n!(n+2)(n+1)!1!n!](n)m[(n+1)n!1!(n1)!(n+2)(n+1)!2!(n1)!]+(n1)m[(n+1)n!2!(n2)!(n+2)(n+1)!3!(n2)!]+(1)n1m[(n+1)n!n!0!(n+2)(n+1)!(n+1)!0!]

Factor out like terms from each group:

=(n+2)(n+10)(n+2)m+(n+1)m+1[(n+1)!0!(n+1)!(n+2)!1!(n+1)!](n)m+1[(n+1)!1!(n)!(n+2)!2!(n)!]+(n1)m+1[(n+1)!2!(n1)!(n+2)!3!(n1)!]+(1)n1m[(n+1)!(n+1)!0!(n+2)!(n+1)!0!]

Simplify into a summation:

(n+2)(n+10)(n+2)m+k=0n(1)k(nk+1)m+1[(n+1k)(n+2k+1)]

Simply the inner combinations:

(n+1k)-(n+2k+1)=(n+1)!k!(nk+1)!(n+2)!(k+1)!(nk+1)!=(k+1)(n+1)!(k+1)!(nk+1)!(n+2)!(k+1)!(nk+1)!=(n+1)![k+1-n-2(k+1)!(nk+1)!]=[(n+1)!(k+1)!(nk)!]=(n+1k+1)

The expression above can be simplified to:

=[k=0n+1(1)k(n+1k)(nk+2)m+1]=(n+2)(n+10)(n+2)m+k=0n(1)k+1(n+1k+1)(nk+1)m+1=k=-1n(1)k+1(n+1k+1)(nk+1)m+1=k=0n+1(1)k(n+1k)(nk+2)m+1(n+1)[k=0n(1)k(nk)(nk+1)m]+(n+2)[k=0n+1(1)k(n+1k)(nk+2)m]

Therefore, this follows the pattern of the First Term Difference Triangle

Term zero difference triangle

The first pattern triangle can be derived in a similar way except we start with the x = 0 term instead of x = 1 since the pattern triangle uses the 0th differences rather than the 1st. The difference table would for the sequence would be:

x f(x) or Δ0 Δ1 Δ2 Δ3 Δ4 Δn

0 f(0)
f(1) – f(0)
1 f(1) f(2) – 2f(1) + f(0)
f(2) – f(1) f(3) – 3f(2) + 3f(1) – f(0)
2 f(2) f(3) – 2f(2) + f(1) f(4) – 4f(3) + 6f(2) – 4f(1) + f(0)
f(3) – f(2) f(4) – 3f(3) + 3f(2) – f(1) k=0n(1)n(nk)f(nk)
3 f(3) f(4) – 2f(3) + f(2) f(5) – 4f(4) + 6f(3) – 4f(2) + f(1)
f(4) – f(3) f(5) – 3f(4) + 3f(3) – f(2) k=0n(1)n(nk)f(nk+1)
4 f(4) f(5) – 2f(4) + f(3) f(6) – 4f(5) + 6f(4) – 4f(3) + f(2)
f(5) – f(4) f(6) – 3f(5) + 3f(4) – f(3)
5 f(5) f(6) – 2f(5) + f(4)
f(6) – f(5)
6 f(6)

Now if we write the first term of each column Δn for any degree, d we get:

 .

PM 0 1 2 N

0 f(0)--[i=0d1Adi(0)di]
1 f(0)--[i=0d2Adi(0)di] k=01(1)k[f(1k)i=0d2Adi(1k)di]
2 f(0)--[i=0d3Adi(0)di] k=01(1)k[f(1k)i=0d3Adi(1k)di] k=02(1)k(nk)[f(2k)i=0d3Adi(2k)di]
d–3 f(0)--[i=02Adi(0)di] k=01(1)k[f(1k)i=02Adi(1k)di] k=02(1)k(nk)[f(2k)i=02Adi(2k)di] k=01(1)k(nk)[f(nk)i=02Adi(nk)di]
d–2 f(0)--[i=01Adi(0)di] k=01(1)k[f(1k)i=01Adi(1k)di] k=02(1)k(nk)[f(2k)i=01Adi(2k)di] k=01(1)k(nk)[f(nk)i=01Adi(nk)di]
d–1 f(0) – Ad0d f(1) – f(0) – Ad1d + Ad0d k=02(1)k(nk)[f(2k)i=00Adi(2k)di] k=01(1)k(nk)[f(nk)i=00Adi(nk)di]
d f(0) f(1) – f(0) f(2) – 2f(1) + f(0) k=0n(1)k(nk)f(nk)

The last difference is each row is still equal to that row factorial, which gives the degree of that partial polynomial. Taking the difference between the rows, without the last value in each row, we get:

PM – PM-1 0 1 2 N

P0 - 0
P1– P0 A101
P2 – P1 A202 A2(12 – 02)
P3 – P2 A303 A3(13 – 03) A3(23 – 2(1)3+ 03)
PD-3 – PD-4 Ad3k=00(1)k(0k)(k)d3 Ad3k=01(1)k(1k)(1k)d3 Ad3k=02(1)k(2k)(2k)d3 Ad3k=0n(1)k(nk)(nk)d3
PD-2 – PD-3 Ad2k=00(1)k(0k)(k)d2 Ad2k=01(1)k(1k)(1k)d2 Ad2k=02(1)k(2k)(2k)d2 Ad2k=0n(1)k(nk)(nk)d2
PD-1 – PD-2 Ad1k=00(1)k(0k)(k)d1 Ad1k=01(1)k(1k)(1k)d1 Ad1k=02(1)k(2k)(2k)d1 Ad1k=0n(1)k(nk)(nk)d1
PD – PD-1 Adk=00(1)k(0k)(k)d Adk=01(1)k(1k)(1k)d Adk=02(1)k(2k)(2k)d Adk=0n(1)k(nk)(nk)d

With the last value in each row being:

k=0n(1)n(nk)[f(nk)i=0dm1Adi(nk)di]=m!

This pattern is similar to the pattern triangle which shows the values as:

1010120166011436240130150240120.

The difference between this pattern triangle and the table we have above is that the constants behind each number in the pattern triangle are set as 1.

Simplify the following equation:

[n+1][k=0n(1)k(nk)(nk)m+k=0n+1(1)k(n+1k)(nk+1)m]

Expand the summation:

=(n+1)[(n0)(n)m(n1)(n1)m+(n2)(n2)m+(1)n(nn)(0)m+(n+10)(n+1)m(n+11)(n)m+(n+12)(n1)m+(1)n+1(n+1n+1)(0)m]

Distribute:

=(n+1)(n0)(n)m(n+1)(n1)(n1)m+(n+1)(n2)(n)m+(n+1)(1)n(nn)(0)m+(n+1)(n+10)(n+1)m(n+1)(n+11)(n)m+(n+1)(n+12)(n1)m+(n+1)(1)n+1(n+1n+1)(0)m

Group like terms:

=(n+10)(n+1)m+1+(n+1)[(n)m[(n0)(n+11)](n1)m[(n1)(n+12)]+(n2)m[(n2)(n+13)]+(1)n0m[(nn)(n+1n+1)]]

Expand the combinations:

=(n+2)(n+10)(n+2)m+(n+1)m[(n+1)n!0!n!(n+2)(n+1)!1!n!](n)m[(n+1)n!1!(n1)!(n+2)(n+1)!2!(n1)!]+(n1)m[(n+1)n!2!(n2)!(n+2)(n+1)!3!(n2)!]+(1)n1m[(n+1)n!n!0!(n+2)(n+1)!(n+1)!0!]

Combine the difference of factorials.

=(n+10)(n+1)m+(n+1)[(n)m[(1(n+1))(n)!1!(n)!](n1)m[(2(n+1))(n)!2!(n1)!]+(n2)m[(3(n+1))(n)!3!(n2)!]+(1)n11m[(n(n+1))(n)!(n)!1!]+0]=(n+10)(n+1)m+(n+1)[(n)m[(n)(n)!1!(n)!](n1)m[(n1)(n)!2!(n1)!]+(n2)m[(n2)(n)!3!(n2)!]+(1)n11m[1(n)!(n)!1!]+0]

Factor out like terms.

=(n+10)(n+1)m+(n+1)[(n)m+1[(n)!1!(n)!](n1)m+1[(n)!2!(n2)!]+(n2)m+1[(n)!3!(n3)!]+(1)n11m+1[1(n)!(n)!1!]+0]

Distribute.

=(n+10)(n+1)m+1+[(n)m+1[(n+1)!1!(n)!](n1)m+1[(n+1)!2!(n2)!]+(n2)m+1[(n+1)!3!(n3)!]+(1)n11m+1[1(n+1)!(n)!1!]+0]

Simplify into a summation.

=(n+10)(n+1)m+k=1n+1(1)k+1(n+1k)(nk+1)m+1=k=0n(1)k+1(n+1k)(nk+1)m+1[n+1][k=0n(1)k(nk)(nk)m+k=0n+1(1)k(n+1k)(nk+1)m]=k=0n+1(1)k(n+1k)(nk+1)m+1

This follows the pattern of the Term Zero Difference Triangle

Proof of application of pattern triangle

From the previous proof, we know that the first term of each column Δn for any degree is:

k=0n(1)n(nk)[f(nk+1)i=0dm1Adi(nk+1)di]

We know that

Δd,nΔd1,n=Adk=0n(1)k(nk)(nk+1)d

where the summation gives each term in the pattern triangle. Thus, the following equation:

Δd1,n=Δd,nAdk=0n(1)k(nk)(nk+1)d

will give you the differences of the polynomial function one degree lower (removing the highest degree variable like shown in the proof of the pattern triangle for g(x)). Since Ad is the last term of each row divided by n!, the equation above can be simplified to:

Δd1,n=Δd,n[k=0n(1)n(nk)f(nk+1)n!]k=0n(1)k(nk)(nk+1)d

This equation above means that the first term of each column in the difference table of the function Pd-1(x) can be found by taking the first term of each column in the difference table of the function Pd(x) and subtracting the quantity of each respective value in the pattern triangle times the value of the leading coefficient of Pd(x), which can also be found by knowing the differences of Pd(x).

It is important to understand that there can be an infinite amount number of polynomial equations that can represent the function. For example, if you were given the first two terms of a sequence – 0,1 – any equation of form f(x) = (x-1)d will match the function, where d is all real numbers.

Therefore, if given the first n terms of a sequence, one can determine the lowest degree polynomial function of maximum degree, n – 1, that represents the sequence.

Conclusion

In summary, the “Split Difference” method can be used to determine the equation to fit a given sequence. This method uses a pattern triangle and applies it to the difference table used to find the degree of a polynomial in order to speed up this process of determining a representative polynomial function. The experimental results have shown this method to be fast and very accurate.

  • A HEADINGS IN APPENDICES

  • A.1 INTRODUCTION

  • A.2 EXPERIMENTAL AND COMPUTATIONAL DETAILS

  • A.2.1 SPLIT DIFFERENCE

  • 2.1.1 Finding the Differences

  • 2.1.1.1 Splitting the Sequence into its Differences

  • 2.1.1.2 Determine the Degree of the Polynomial

  • 2.1.1.3 Finding the 0th Differences

  • 2.1.2 Creating the Difference Zero Triangle

  • 2.1.3 Apply and Solve

  • 2.1.3.1 Finding the Coefficients

  • 2.1.3.2 Determine the Equation

  • A.2.2 ALTERNATIVE METHOD

  • 2.2.1 Finding the Differences

  • 2.2.2 Creating the First Difference Triangle

  • 2.2.3 Apply and Solve

  • 2.2.3.1 Finding the Coefficients

  • 2.2.3.2 Determine the Equation

  • A.3 CURRENT METHODS

  • A.3.1 System of Equations

  • A.3.2 Difference Table

  • A.3.3 Newton's Interpolation

  • A.3.4 Split Difference Method Benefits

  • A.4 PROOF

  • A.4.1 Proof of First Difference Pattern Triangle

  • A.4.2 Proof of Application of Pattern Triangle

  • A.4.3 Proof of Split Difference Methods

  • A.5 CONCLUSIONS

Declaration of Competing Interests

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

References


Articles from MethodsX are provided here courtesy of Elsevier

RESOURCES