Correction to Polynomial Lattice

In a previous posting, I created a “polynomial lattice” out of structures found within the Pascal Triangle.  I have found some errors and boundary gaps within the definition I created.

Rather than post differences between the two, I claim that this post has Precedence.  The previous posting is now superseded.

Given a polynomial p(x) specified by a vector _b_ in Z^n as p(x) = b_0 + b_1(x | 1) + b_2(x | 2) + … + b_n-2(x | n-2) + b_n-1(x | n-1), the integer polynomial lattice surrounding p(x) is simply specified as q(x; y) = p`(x) + p(y); r(x; z) = p(x) + p`(z).  This lattice is simple, covers all the necessary bases, and achieves exactly what is required of it:  it is a lattice interleaving one set of polynomials with another; the balance of a polynomial and its parallels and the lattice-pairing of each of these is perfect; no gaps are admitted within the given parameters of the lattice, including boundaries such as when _b_ is an almost-zero vector.

The previous lattice definition allowed for many possibilities of error, and was also incorrectly specified.  Under this definition, it is possible to have _b_ = {0, 0, …, 0, 0, 1}, and to also have a viable lattice useful for determining many properties of p(x).

The Pseudo-Anti-Derivative

Like Calculus, these “finite difference” methods also apply in the reverse direction, i.e., there is also a “pseudo-anti-derivative” which is the reverse of the “pseudo-derivative” process.

Given an integer polynomial p(x), let the pseudo-anti-derivative of p be marked as ‘p(x).  The value of ‘p(x) is unknown, since we must know the value of ‘p(0) to determine it.  This fits nicely with how our other methods operate, so use ‘p(0) to denote this unknown value.  Also, let (x/k) be my representation of the binomial term “x choose k”:

‘p(x) = ‘p(0) + p(0)*(x/1) + p`(0)*(x/2) + …

To show that this is a correct “pseudo-anti-derivative,” we calculate ‘p(x+1) – ‘p(x):

‘p(x+1)-‘p(x) = p(0)(((x+1)/1) – (x/1)) + p`(0)*(((x+1)/2) – (x/2)) + …

= p(0)*1 + p`(0)*(x/1) + p“(0)*(x/2) + …

Note that ((x+1)/k) – (x/k) = (x/(k-1)).  Since this is what the above proof is based on, here is why it’s true:

((x+1)/k) – (x/k) = (x+1)x(x-1)(x-2)…(x-k+2)/k! – x(x-1)(x-2)(x-3)…(x-k+1)/k! = (x+1 – (x-k+1)) * x(x-1)(x-2)…(x-k+2)/k! = kx(x-1)(x-2)…(x-k+2)/k! = (x/(k-1)).

This form of “anti-derivative” creates polynomials with all-integer results, but does not have the restriction that all coefficients are integers.  For example, if p(x) = x + 1, p(0) = p`(0) = 1, then:

‘p(x) = ‘p(0) + x + x(x-1)/2 = ‘p(0) + x/2 + x^2/2.

Refining (Pseudo-)Derivatives of Integer Polynomials

In the past couple posts, polynomials have taken on some new presentations.  This time, I’ll construct some values of a polynomial using only its values at x=0 of p(x) and all of its pseudo-derivatives.

In particular, I’ve established that p`(x)=p(x+1)-p(x).  This means that p(x+1)=p(x)+p`(x).  This has an expansion matching Pascal’s Triangle, because p(x+2) = p(x)+2p`(x)+p“(x), and p(x+3) = p(x)+3p`(x)+3p“(x)+p“`(x).

This pattern continues across all possible values of p(x).  In fact, it is possible to express every value of p(x) as p(0) + ap`(0) + bp“(0) + … where a, b, … coefficients are the entries of the xth row of Pascal’s Triangle.