on a generalization of bernstein polynomials and … · bezier curves based on umbral calculus...
TRANSCRIPT
ON A GENERALIZATION OF BERNSTEIN POLYNOMIALS ANDBEZIER CURVES BASED ON UMBRAL CALCULUS (III):
BLOSSOMING
RUDOLF WINKEL
Abstract. The investigation of a-Bernstein polynomials and a-Bezier curves is con-
tinued in this paper. It is shown that convolution of the parameters a = (a1, . . . , an) is
fundamental for (1) the definition of a-Bernstein polynomials, (2) a simplified deriva-
tion of the a-de Casteljau algorithm, (3) the recurrences that give the blossoming of
a-Bernstein polynomials and a-Bezier curves, (4) the dual functional property and
the a-dual functional property for an a-Bezier curve – it is necessary to make this
distinction – and (5) the a-degree elevation.
1. Introduction
Blossoming is the Swiss army knife for the understanding of geometric design of curves
and surfaces. With blossoming it is easy to derive algorithms and formulas for control
points, recursive evaluation, subdivision, degree elevation, basis transformations and
more. Blossoming has been pioneered by Ramshaw ([4, 5, 6]) and brought to perfection
in [3]. The easiest way to understand blossoming – and the standard approach since
its introduction by Ramshaw – is to label the points in the de Casteljau algorithm
appropriately and to replace the variable t by different variables uj on different levels
j of the algorithm. A triangular scheme that connects functions or geometric points
by labeled arrows gives a clean picture of the algebraic structure of the de Casteljau
algorithm and its blossoming.
However, as we will see in this paper, the blossoming of the de Casteljau algorithm
as described above works only for Bernstein polynomials and can not be adapted in
a straightforward manner to generalized Bernstein polynomials, although triangular
schemes remain useful. We will see that the common basis of the generalized de Castel-
jau algorithm, generalized Bernstein polynomials, and generalized blossoming is the
convolution of the constitutive parameters a = (a1, . . . , an). In addition this approach
allows us to derive essential results of the previous papers with a minimum of algebra
and combinatorics. Since the generalization investigated is based on the parameters
a, we will speak subsequently of a-X, whenever we generalize a classical concept X
Date: October 19th, 2015, corrected April 29th, 2016.1991 Mathematics Subject Classification. 2010 Mathematics Subject Classification: 65D15, 65D17,
68U07.
Key words and phrases. umbral calculus ; Bernstein polynomial; Bezier curve; blossoming.1
with the help of these parameters, e.g., a-Bernstein polynomials , a-Bezier curves, a-de
Casteljau algorithm. Note that we use a = (a1, . . . , an) instead of a = (a1, . . . , an) in
compliance with notational conventions in umbral calculus (cf. [7]).
For a sequence P = (P0, . . . , Pn) of control points in RN and an (almost) arbitrary
sequence of real parameters a = (a1, . . . , an), a1 6= 0 with associated a-Bernstein poly-
nomials Bnk (t; a) — for the precise definition of these polynomials see the beginning of
section 2 up to formula (2.7) — we established in [13] a geometrically meaningful up
recurrence or a-de Casteljau algorithm
X0k = Pk for k = 0, . . . , n,
Xrk =
r∑i=1
(r − 1
i− 1
)ai
((1− t) Xr−i
k + t Xr−ik+i
)(1.1)
for r = 1, . . . , n and k = 0, . . . , n− r.
Then the top element Xn0 (t; a) of this up recurrence is – up to a normalizing factor
ρn(a) defined after formula (2.7) – the a-Bezier curve
(1.2) X(t; a) =n∑k=0
PkBnk (t; a).
For a = (1, 0, . . . , 0) this clearly specializes to the ordinary de Casteljau algorithm.
A straightforward calculation (see the proof of Thm 4.6 in [13]) shows that (1.1)
is equivalent to the down recurrence for the (non-normalized) bivariate a-Bernstein
polynomials Brk(x, y; a) = ρr(a)Br
k(x, y; a)
B00(x, y; a) = 1 and for r = 1, . . . , n and k = 0, . . . , r:
Brk(x, y; a) = y
r−k∑i=1
(r − 1
i− 1
)aiB
r−ik (x, y; a) + x
k∑i=1
(r − 1
i− 1
)aiB
r−ik−i(x, y; a) .(1.3)
However, the derivation of (1.1) or (1.3) directly from the original definition of a-
Bernstein polynomials turned out to be less than straightforward. The blossoming of
(1.1) or (1.3) that is the subject of the present paper can be derived from convolutional
powers of the the parameter sequence a. In section 2 we recast and simplify essential
parts of the previous papers in terms of the convolutional approach. The convolutional
approach will also turn out to be crucial for the quite involved derivation of the a-
blossoming formulas in section 3.
In the remaining parts of the paper we investigate properties of a-Bernstein polyno-
mials and a-Bezier curves that can be derived easily from blossoming in the ordinary
case, namely, the dual functional property (in section 4) and degree elevation (in section
5). However, it turns out again that in the generalized case things are not that easy
and that we have to deploy additional arguments.2
More precisely, in section 4 it will turn out that a distinction between the dual
functional property and the a-dual functional property is necessary, because for an a-
Bezier curve there are two relevant kinds of control points: the ordinary control points P
that represents the a-Bezier curve as combination of a-Bernstein polynomials according
to (1.2) and the a-control points P(a) that represents the same a-Bezier curve as a
combination of ordinary Bernstein polynomials Bnk (t) according to
(1.4) X(t; a) =n∑k=0
Pk(a)Bnk (t).
We will see that the a-control points P(a) can be derived from the blossom of X(t; a)
in the usual (ordinary) fashion, whereas the recovery of ordinary control points P from
the a-Bezier curve X(t; a) need a modified blossoming. We demonstrate in Theorem 4.3
that such a modified blossoming for a-Bezier curves is available only if the a-Bernstein
polynomials are specialized to the h-Bernstein functions of [8].
In the final section 5 a-degree elevation is investigated, and in particular the problem
of how to choose parameters b = (b1, . . . , bn, bn+1) for given parameters a = (a1, . . . , an)
such that the b-control points Q(b) for the degree elevated control points Q of P are
matched by the degree elevation of the a-control points P(a). In other words: in
Theorem 5.1 we give a pleasing answer to the natural question of how to find parameters
b for given parameters a such that the control polygon for the b-Bezier curve is the
(ordinarily) degree elevated control polygon of the a-Bezier curve.
2. a-Bernstein polynomial explained by convolution of parameters
2.1. Generating functions. Let P = R[[t]] denote the R-algebra of formal power
series in t with coefficients in R and let P+ = {f ∈ R[[t]] | f(0) = 0, f ′(0) 6= 0} be the
subalgebra of delta series – these are exactly the formal power series f(t) =∑
n≥1ann!tn
that have a compositional inverse. Let R≤n[t] = {p ∈ R[t] | deg p ≤ n} and Rn[x, y] =
{p ∈ R[x, y] | deg p = n} denote the R-vector spaces of polynomials of degree ≤ n in t
and of bivariate homogeneous polynomials of degree n in x and y.
A delta series can be written in exponential form with coefficients a = (a1, a2, a3, . . . )
or in ordinary form with coefficients a = (a1, a2, a3, . . . ) as
(2.1) f(t) =∑n≥1
ann!tn =
∑n≥1
antn ∈ P+,
i.e., an := an/n!. Then f(t) (with compositional inverse f(t) =∑
n≥1ann!tn) is the
exponential generating function for the associated polynomials pn(x; a) in the following
sense
(2.2) exf(t) =∑n≥0
pn(x; a)
n!tn with pn(x; a) =
∑nk=0 pn,k(a)xk.
3
In other words: Formal exponentiation of xf(t) and collection of terms generates the
pn(x; a) as coefficients of the tn (see [3] or the more recent [10] for more details about
generating functions).
Thus the coefficients pn,k(a) of the associated polynomials are given as k-fold Cauchy
product of power series or convolution of the an (for a0 = a0 = 0) by
exf(t) =∑k≥0
f(t)k
k!xk =
∑k≥0
(∑n≥1
( ∑i1+···+ik=n
ai1i1!· · · aik
ik!
)tn
)xk
k!
=∑n≥1
(∑k≥0
∑i1+···+ik=n
(n
i1, . . . , ik
)ai1 · · · aik
xk
k!
)tn
n!=∑n≥0
pn(x; a)tn
n!
with the Bell polynomials [1, 7]
(2.3) pn,k(a) =1
k!
∑i1+···+ik=ni1,...,ik>0
(n
i1, . . . , ik
)ai1 · · · aik .
The recursion
(2.4) pn,k+1 =1
k + 1
n−k∑j=1
(n
j
)ajpn−j,k
allows a fast calculation. To see that (2.4) is correct, plug in (2.3) on both sides in (2.4)
and set j = ik+1.
Moreover, (2.2) applied to
e(x+y)f(t) = exf(t)eyf(t)
yields
(2.5) pn(x+ y; a) =n∑k=0
(n
k
)pk(x; a)pn−k(y; a).
Since (2.5) is a generalization of the binomial theorem, the associated polynomials
pk(x; a) are said to be of binomial type. Now the homogeneous a-Bernstein polynomials
of order n defined by
(2.6) Bnk (x, y; a) =
1
ρn(a)
(n
k
)pk(x; a)pn−k(y; a), 0 ≤ k ≤ n,
with normalizing factor ρn(a) = pn(x + y; a) are a partition of unity. The canonical
dehomogenization (x, y) = (t, 1− t) of (2.6) gives the a-Bernstein polynomials of order
n
(2.7) Bnk (t; a) =
1
ρn(a)
(n
k
)pk(t; a)pn−k(1− t; a), 0 ≤ k ≤ n,
4
with normalizing factor ρn(a) = pn(1; a) as long as ρn(a) 6= 0, i.e., the parameter
sequence a is feasible. Subsequently we write Bnk (x, y; a) and Bn
k (t; a) for the non-
normalized a-Bernstein polynomials and pn(t), pn,k, and ρn if a is clear from the context.
Since formula (2.3) is symmetric in the summation indices i1, . . . , ik, but we can make
progress in the understanding of a-Bernstein polynomials only if we rewrite (2.3) in a
form that collects all summands with identical products ai1 · · · aik .
Let Λ(n, k) be the set of all (number) partitions of n into k parts, i.e., λ ∈ Λ(n, k)
means that λ = (λ1, . . . , λk) with λ1 ≥ · · · ≥ λk > 0, λ1 + · · ·+ λk = n is a partition of
length l(λ) = k. The multiplicity ji = ji(λ) = |{ν | λν = i}| of a part of size i of λ allows
for the convenient notation λ = . . . 2j21j1 , e.g., λ = (4, 2, 2, 2, 1, 1) = 4 2312 ∈ Λ(12, 6).
Note that j(λ) = (j1, j2, . . . ) is a composition or ordered number partition of k.
Now by ordering the summation indices i1, . . . , ik for every summand of (2.3) in a
decreasing fashion one gets with the above notation
(2.8) pn,k(a) =∑
j1+j2+···=kj1+2j2+···=n
n!
j1!j2! . . . (1!)j1(2!)j2 . . .aj11 a
j22 · · · =
∑λ∈Λ(n,k)
cλ aλ ,
where aλ = aλ1 aλ2 · · · = aj11 aj22 · · · = aj(λ). Note that
(2.9) pn,k(a) =n!
k!
∑j1+j2+···=kj1+2j2+···=n
(k
j(λ)
)aj11 a
j22 . . . with
(kj(λ)
)= k!
j1!j2!....
2.2. a-Recursions. To understand why pn,k(a) can be expressed by (2.3) or (2.9) and
to proof (2.11) below it is necessary to observe that for λ ∈ Λ(n, k) the coefficient cλcounts the number of set partitions of [n] := {1, . . . , n} of type λ, i.e., of set partitions
of [n] into k blocks such that ji(λ) of them have cardinality i (see [1]). In (2.3) the
partitions of [n] into k blocks are formed by taking any ordering of the numbers 1, . . . , n
and subdividing this permutation of numbers into consecutive blocks of size i1, . . . , ik.
Since ordering of blocks and ordering of elements inside blocks does not matter for set
partitions, one has to divide by k! and the iν ’s. In (2.9) one subdivides any ordering
of 1, . . . , n into consecutive blocks of sizes λ1, . . . , λk. Since ordering of blocks of equal
size and ordering of elements inside blocks cannot matter, one has to divide by the ji’s,
and the (i!)ji ’s.
For example, there are c3 12 = 10 set partitions of [5] into three blocks of sizes 3, 1, 1.
Hence 10 is the coefficient of a21a3 in the following table of the pn,k for n, k = 0, . . . , 5:
1 0 0 0 0 0
0 a1 0 0 0 0
0 a2 a21 0 0 0
0 a3 3 a2a1 a31 0 0
0 a4 4 a3a1 + 3 a22 6 a2a
21 a4
1 0
0 a5 5 a4a1 + 10 a3a2 10 a21a3 + 15 a2
2a1 10 a2a31 a5
15
We derive now the crucial recursions (2.11-12) and some other formulas from (2.9)
with only a little algebra and combinatorics.
Theorem 2.1. For the numbers cλ, the coefficients pn,k(a), and the polynomials pn(x; a)
defined by (2.8), (2.3), and (2.2), one has the following recursions∑λ∈Λ(n,k+1)
cλ =n−k∑ν=1
(n− 1
n− ν
)(
∑λ′∈Λ(n−ν,k)
cλ′) ,(2.10)
pn,k+1(a) =n−k∑ν=1
(n− 1
n− ν
)aν pn−ν,k(a) ,(2.11)
pn(x; a) = x
n∑i=1
(n− 1
n− i
)ai pn−i(x; a) .(2.12)
The (non-normalized) homogeneous and dehomogenized a-Bernstein polynomial
Brk = Br
k(x, y; a) = ρn(a)Brk(x, y; a)
and
Brk = Br
k(t; a) = ρn(a)Brk(t; a)
can be computed recursively for r = 1, . . . , n and k = 0, . . . , r from B00 = 1 by the down
recurrences
Brk = y
r−k∑i=1
(r − 1
i− 1
)aiB
r−ik + x
k∑i=1
(r − 1
i− 1
)aiB
r−ik−i and(2.13)
Brk = (1− t)
r−k∑i=1
(r − 1
i− 1
)aiB
r−ik + t
k∑i=1
(r − 1
i− 1
)aiB
r−ik−i .(2.14)
Proof. The l.h.s. of (2.10) is the number of partitions of the set [n] into k + 1 parts.
Take any partition π of [n] into k + 1 blocks. Then the number n must be contained
in some block β(π) of π with size ν, 1 ≤ ν ≤ n− k. The other blocks not containing n
then form a partition π′ of [n] \ β(π) with block sizes λ′ ∈ Λ(n− ν, k). Since there are(n−1n−ν
)possible ways to choose the other elements of β(π) and there are cλ′ partitions of
type λ′ formula (2.10) follows. But this implies (2.11) with aλ = aν aλ′ and (2.8). For
(2.12) one computes
pn(x; a)(2.3)=
n∑k=1
pn,k(a)xk =n−1∑k=0
pn,k+1(a)xk+1
(2.11)=
n−1∑k=0
(n−k∑i=1
(n− 1
n− i
)ai pn−i,k(a)
)xk+1
= xn∑i=1
(n− 1
n− i
)ai
(n−i∑k=0
pn−i,k(a)xk
)(2.3)= x
n−1∑i=1
(n− 1
n− i
)ai pn−i(x; a) .
6
For (2.12) one computes with Brk = Br
k(x, y; a) and (2.12)
Brk =
(r
k
)pk(x)pr−k(y) =
(r − 1
k
)pk(x)pr−k(y) +
(r − 1
k − 1
)pk(x)pr−k(y)
=
(r − 1
k
)pk(x)y
r−k∑i=1
(r − k − 1
i− 1
)aipr−k−i(y) +
(r − 1
k − 1
)pr−k(y)x
k∑i=1
(k − 1
i− 1
)aipk−i(x)
= yr−k∑i=1
(r − 1
i− 1
)ai
(r − ik
)pk(x)pr−i−k(y) + x
k∑i=1
(r − 1
i− 1
)ai
(r − ik − i
)pk−i(x)pr−k(y)
= yr−k∑i=1
(r − 1
i− 1
)aiB
r−ik + x
k∑i=1
(r − 1
i− 1
)aiB
r−ik−i .
(2.13) follows from (2.12) by the canonical dehomogenization. �
Remark 2.2. Formulas (2.10) and (2.11) are probably new. Formula (2.12) is proved
in section 4,1.8 of [7] in a non-elementary fashion that uses Cor.3.6.6 of [7] and the
umbral operator λf : xn 7→ pn(x; a). Formula (2.12) is derived in a non-elementary
fashion in [13] from the definition of a-Bernstein polynomials using the umbral shift
operator θf .
2.3. Convolutions. For a-blossoming it will be crucial to return to the convolutional
representation (2.3) of the Bell polynomials pn,k(a) and to recast formula (2.3) in
terms of convolution of sequences. Let l(R) be the set of all real sequences a =
(a0, a1, a2, . . . ) = (an)n≥0. With the usual component wise addition and scalar mul-
tiplication and the (ordinary) convolution
a⊗ b = (a0, a1, a2, . . . )⊗ (b0, b1, b2, . . . ) :=
(n∑k=0
akbn−k
)n≥0
l(R) becomes a commutative R-algebra that is isomorphic to P with Cauchy multipli-
cation of ordinary power series (cf. (2.)). Let ak⊗ denote the k-fold convolutional power
of a ∈ l(R) with n-th component ak⊗n = (ak⊗)n. Then
ak⊗n =∑
i1+···+ik=n
ai1 · · · aik .
For sequences written in exponential form, e.g., ai = ai/i!, this gives
ak⊗n =∑
i1+···+ik=n
1
i1! · · · ik!ai1 · · · aik
!=cnn!
or
cn =∑
i1+···+ik=n
(n
i1, . . . , ik
)ai1 · · · aik =: ak∗n
7
for the exponential convolutional multiplication
a ∗ b = (a0, a1, a2, . . . ) ∗ (b0, b1, b2, . . . ) :=
(n∑k=0
(n
k
)akbn−k
)n≥0
Therefore
(2.15) pn,k(a) =1
k!ak∗n =
n!
k!ak⊗n .
Note that in l(R) convolution distributes through addition and that the neutral element
of both convolutions is 1 = (1, 0, 0, . . . ), e.g., 1 ⊗ a = a ⊗ 1 = a for every a ∈ l(R).
We also define a0 = 1. Since by definition a0 = 0 for the parameter sequence a as
well as the delta series f in (2.1) and since the order n of some a-Bernstein polynomial
is fixed, we subsequently use the short form a = (a1, . . . , an) for a ∈ l(R) instead of
a = (0, a1, . . . , an, 0, 0, . . . ).
3. a-blossoming
3.1. Elementary symmetric polynomials and blossoms. For n, r ∈ N0 and 0 ≤r ≤ n let C(n, r) = {I | I ⊂ [n], |I| = r} again with [n] := {1, . . . , n}. Of course,
|C(n, r)| =(nr
). We also use the notation
uI = ui1ui2 · · ·uir (product) for I = {i1, i2, . . . , ir} ∈ C(n, r),u(r) = u1, u2, . . . , ur (sequence),
x(r) = x, . . . , x︸ ︷︷ ︸r-fold
, (sequence) where x is any symbol or number.
Then the elementary symmetric polynomials of order n are defined by
(3.1) enr (u) = er(u(n)) :=∑
1≤i1<i2<···<ir≤n
ui1ui2 · · ·uir =∑
I∈C(n,r)
uI .
For r > n and n, r < 0 we set enr (u) = 0. In particular, en0 (u) = 1, en1 (u) = u1 + · · ·+un,
and enn(u) = u1 · · ·un. The elementary symmetric polynomials of order n have the
generating function
(3.2) En(t) =n∏i=1
(1 + uit) =n∑r=0
enr (u) tr .
Symmetric means er(u1, . . . , un) = er(uπ(1), . . . , uπ(n)) for all permutations π ∈ Sn,
which is clear by (3.1) or by (3.2). Repeated application of (3.2) gives the recursion
(3.3) enr (u) = en−1r (u) + un e
n−1r−1 (u) ,
8
namely,
n∑r=0
enr (u) tr = (1 + unt)n−1∏i=1
(1 + uit) = (1 + unt)n−1∑r=0
en−1r (u) tr
=n−1∑r=0
en−1r (u) tr +
n∑r=1
un en−1r−1 (u) tr .
Now the blossom of any univariate polynomial P (t) =∑n
r=0 crtr of degree n is given by
the unique multivariate polynomial
p(u) = p(u(n)) =n∑r=0
cr(nr
)enr (u) .
The blossom p(u) of P (t) is symmetric and has the diagonal property P (t) = p(t(n)),
because the division by |C(n, r)| =(nr
)normalizes enr (u). Moreover, the blossom is
multiaffine, i.e.,
p(. . . , (1− α)ui + αu′i, . . . ) = (1− α)p(. . . , ui, . . . ) + αp(. . . , u′i, . . . )
for all i and all α ∈ R. An easy to check criterion for multiaffinity of a multivariate
polynomial p ∈ R[u1, . . . , un] is that in every term of p every variable ui appears at most
in the first power ([3], Lemma 6.2). Clearly, P (t) can be blossomed also in a number
of variables j 6= n = deg(P ) by
(3.4) p(u(j)) =
min(n,j)∑r=0
cr(jr
)ejr(u) .
We call this expression the j-blossom of P (t). Note that for j < n the j-blossom is the
blossom of the j-truncation of P :
(3.5) P [j] =
j∑r=0
crtr .
and that for j > n one does not have p(u(n)) = p(u(j))|un+1=···=uj=0 because of the
normalizing factors.
The power of blossoming for Bernstein polynomials and Bezier curves is based to a
great extent in the availability of a recursive (triangular) scheme for its computation.
Since pn(x; a) = Bnn(x, y; a) we first describe such a recursive scheme for this special
case before proceeding to the general case of Bnk (x, y; a), 0 ≤ k ≤ n. For pr = pr(x; a)
the down recurrence (2.12) reads
(3.6) pr = x
r∑i=1
(r − 1
i− 1
)ai pr−i for r = 1, . . . , n with p0 = 1.
Simply setting x = ur will not lead to a symmetric pn(u). Instead one has to run n
times through the levels r = 1, . . . , n:9
Theorem 3.1. For r = 1, . . . , n the blossoms prr(u; a) = pr(u(r); a) of the polynomials
pr(x; a) can be computed recursively from p0r(s) := δ0,r and pr0(s) := 1 by
(3.7) pjr(s) = pj−1r (s) + suj
r∑i=1
(r − 1
i− 1
)ai p
j−1r−i (s)
for j = 1, . . . , n and r = 1, . . . , n for fixed j, where pjr(s) = pr(s, u(j); a) = pr(s, u1, . . . , uj; a)
is the j-blossom of the j-truncation p[j]r (x; a) =
∑jk=1 pr,k(a)xk of pr(x; a) in the vari-
ables u(j), where pr,k(a) = 0 for k > r by (2.3) or (2.8).
Then the pjr(u; a) result from substituting in pjr(s) the expressions(jν
)−1for the powers
sν.
Proof. The proof of (3.7) proceeds by induction on j. For j = 1 the recursion (3.7)
gives
p1r(s) = δ0,r + su1
r−1∑i=1
(r − 1
i− 1
)ai δ0,r−i = su1ar
and therefore p1r(u; a) = pr(u1; a) = u1ar.
From (3.6) and (2.2) one computes
r∑i=1
(r − 1
i− 1
)ai p
[j−1]r−i (x; a) =
1
xp[j−1]r (x; a) =
j−1∑k=1
pn,k(a)xk−1 .
Assume that the pj−1r−i (s) for i = 0, 1, . . . , r are the non-normalized (j − 1)-blossoms of
the p[j]r−i(x; a) and note that the powers of s in any term count the number of factors of
type uj. Then with the recursion (3.3) for elementary symmetric polynomials
pj−1r (s) + suj
r∑i=1
(r − 1
i− 1
)ai p
j−1r−i (s)
=
j−1∑k=1
pn,k(a)skej−1k (u) + suj
j−1∑k=1
pn,k(a)sk−1ej−1k−1(u)
=
j−1∑k=1
pn,k(a)sk(ej−1k (u) + uje
j−1k−1(u)
)=
j−1∑k=1
pn,k(a)skejk(u) = pjr(s) .
�
3.2. Bivariate elementary symmetric polynomials and blossoms. To blossom
the non-normalized homogeneous a-Bernstein polynomials Bnk (x, y; a) we define the
bivariate elementary symmetric polynomials of order n by
(3.8) enr,k(u, v) = er,k(u(n), v(n)) :=∑
I∈C(n,r)
∑J∈C(I,k)
uJvI\J ,
10
where C(I, k) = {J | J ⊂ I, |J | = k} and 0 ≤ k ≤ r ≤ n; for all other triples (n, r, k)
we set enr,k(u, v) = 0. Note that enr,k is homogeneous of degree r in (u, v), of degree k in
u, and of degree r − k in v, but that in general enr,k(u, v) 6= enk(u)enr−k(v).
Clearly, enr,r(u, v) = enr (u), enr,0(u, v) = enr (v), en0,0(u, v) = 1, and, for example,
e32,1(u, v) = (u1v2 + u2v1) + (u1v3 + u3v1) + (u2v3 + u3v2)
e33,2(u, v) = u1u2v3 + u1u3v2 + u2u3v1 ,
where the brackets indicate a common I. Symmetry means invariance under arbitrary
permutations π ∈ Sn of indices of the two sets of variables u(n) and v(n).
Lemma 3.2. The bivariate elementary symmetric polynomials of order n have the
generating function
(3.9) En(t, s) =n∏i=1
(1 + (ui + vis)t) =n∑r=0
(r∑
k=0
enr,k(u, v) sr−k
)tr
and satisfy the recursion
(3.10) enr,k(u, v) = en−1r,k (u, v) + vn e
n−1r−1,k(u, v) + un e
n−1r−1,k−1(u, v) .
Proof. Setting wi = ui + vis one computes
En(t, s) =n∏i=1
(1 + wit)(3.2)=
n∑r=0
enr (w) tr(3.1)=
n∑r=0
∑I∈C(n,r)
wI
tr .
But similar to (3.2)
wI =∏i∈I
(ui + vis) =r∑
k=0
∑J∈C(I,k)
uJvI\J
sr−k
A reordering of summations gives (3.9) and a calculation similar to the one proving
(3.3) gives the recursion (3.10). �
Note that (3.9) specializes to (3.2) for s = 0 and that (3.10) specializes to (3.3) for
k = r.
The (bivariate) j-blossom of a polynomial P (x, y) ∈ R[x, y] of degree n is now defined
as the polynomial p(u, v) ∈ R[u(n), v(n)] that results from P by substituting for its
monomials according to
(3.11) xkyl 7→ 1(jk+l
)(k+lk
) ejk+l,k(u, v) .
Again for j < n the j-blossom is the blossom of the j-truncation P [j] of P that contains
only monomials xkyl with k + l ≤ j.
The j-blossom of P is symmetric, multiaffine and has the diagonal property P (x, y) =
p(x(n), y(n)), because the division by |C(n, r)× C(I, k)| =(nr
)(rk
)normalizes enr,k(u, v).
11
Before we state the main result of this paper we remark that a simple copying of
the step from (3.6) to (3.7) as in Thm.3.1 will not give a correct blossoming of the
Bnk (x, y; a). Namely, the resulting polynomials are not symmetric due to the asymmetry
of (2.13) induced by the binomial coefficients. The solution is to switch from the
exponential form of the parameters ai to the ordinary form of the parameters ai = aii!
as introduced in (2.1) and discussed in section 2.3.
Subsequently, calculations in the R-algebra l(R) will show significant advantages. We
will use exclusively the ordinary convolution and can therefore write ak instead of ak⊗
for the kth power of a and akn for its n-th component. Then (2.15) reads
(3.12) pn,k(a) =n!
k!akn .
With a = (0, a1, a2, . . . ) ∈ l(R) let
X = 1 + X with X = sx a = (0, sx a1, sx a2, . . . ),
Y = 1 + Y with Y = sy a = (0, sy a1, sy a2, . . . ).
Also abbreviate Xjr = Xj
r (s, x; a) and Y jr = Y j
r (s, y; a) for j, r ∈ N0. Then (3.6) and
(2.12-13) can be replaced by recursions without binomial coefficients as follows:
Theorem 3.3. (a) For j = 1, . . . , n and r = 1, . . . , n for fixed j the expressions Xjr can
be computed recursively from X0 = 1, i.e., X0r = δr,0, by
(3.13) Xjr = Xj−1
r + sxr∑i=1
aiXj−1r−i .
For r = 1, . . . , n the polynomials pr(x; a) satisfy the equation
(3.14) pr(x; a) = Xrr (s, x; a) with substitutions sl ← (r − l)! .
Moreover, the expressions Xjr are essentially the j-truncations p
[j]r (x; a) =
∑jk=1 pr,k(a)xk
according to
(3.15) p[j]r (x; a) =
r!
j!xjr(s, x; a) with substitutions sl ← (j − l)! .
(b) For j = 1, . . . , n and r = 1, . . . , n, k = 0, . . . , r for fixed j one can compute
recursively the expressions
(3.16) Hr,jk = Hr,j
k (s, x, y; a) =
j∑l=0
(j
l
)Crk,l :=
j∑l=0
(j
l
)( l∑ν=0
(l
ν
)Xνk Y
l−νr−k
).
from Hr,0k = δ0,r by
(3.17) Hr,jk = Hr,j−1
k + syr−k∑i=1
aiHr−i,j−1k + sx
k∑i=1
aiHr−i,j−1k−i .
12
Then for r = 1, . . . , n and k = 0, . . . , r the non-normalized homogeneous a-Bernstein
polynomials Brk(x, y; a) satisfy the equation
(3.18) Brk(x, y; a) = Hr,r
k (s, x, y; a) with substitutions sl ← (r − l)! .
Moreover, the expressions Hr,jk are essentially the j-truncations of the Br
k according to
(3.19) Br,[j]k (x, y; a) =
r!
j!Hr,jk (s, x, y; a) with substitutions sl ← (j − l)! .
Proof. (a) The first equality (3.13) follows directly from the definition of convolution
Xjr = (X ⊗Xj−1)r = Xj−1
r + sx
r∑i=1
aiXj−1r−i .
On the other hand with (3.12)
Xjr =
((1 + sx a)j
)r
= (
j∑k=0
(j
k
)ak(sx)k )r =
j∑k=0
(j
k
)akrs
kxk
=
j∑k=0
(j
k
)k!
r!skpr,k(a)xk =
j∑k=0
skj!
r!(j − k)!pr,k(a)xk .
This shows (3.15) and also (3.14) with j = r.
(b) (3.16) gives for k ≤ r and r ≥ 0
Hr,0k = Cr
k,0 = X0k Y
0r−k = δ0,r
and for j, r > 0, k = 0
Cr0,l =
l∑ν=0
(l
ν
)Xν
0 Ylr = Y l
r and
Hr,j0 =
j∑l=0
(j
l
)Cr
0,l =
j∑l=0
(j
l
)Y lr =
j∑l=0
(j
l
)Y lr1
j−l = (1 + Y )jr = Y jr .
Similarly one gets for j, r > 0 and k = r
Hr,jr = Xj
r .
Therefore (3.17) specializes for k = r to (3.13) and for k = 0 to (3.13) where X is
replaced by Y . Since Br,[j]0 = Xj
r and Br,[j]r = Y j
r with the substitutions of (3.15), the
assertions of part (b) of the theorem are true for the right and left side of the triangular
recurrence scheme defined by (3.17).
For the rest of the proof we can concentrate on the inner part of the triangular
scheme, namely the case k 6= 0, r and r > 0. The j-truncation Br,[j]k of Br
k is with (3.12)13
and the definitions of X and Y
Br,[j]k =
(r
k
)[pk(x)pr−k(y)][j]
=
(r
k
) j∑l=0
(l∑
ν=0
pk,νpr−k,l−νxνyl−ν
)
=
(r
k
) j∑l=0
(l∑
ν=0
k!
ν!
(r − k)!
(l − ν)!aνka
l−νr−kx
νyl−ν
)
=
(r
k
) j∑l=0
(l∑
ν=0
k!
ν!
(r − k)!
(l − ν)!Xνk Y
l−νr−k
1
sl
)But taking into account the factor r!
j!and the substitution sl ← (j − l)! gives(
r
k
) j∑l=0
(l∑
ν=0
k!(r − k)!
r!
(j
l
)l!
ν!(l − ν)!Xνk Y
l−νr−k
)=
j∑l=0
(j
l
)( l∑ν=0
(l
ν
)Xνk Y
l−νr−k
)= Hr,j
k .
This proves (3.18) and (3.19). It remains to verify the recursion (3.17). One computes
with (3.16)
Hr,jk =
j∑l=0
(j
l
)Crk,l =
j−1∑l=0
(j − 1
l
)Crk,l +
j−1∑l=0
(j − 1
l − 1
)Crk,l
= Hr,jk +
j−1∑l=0
(j − 1
l − 1
)Crk,l
= Hr,jk +
j−1∑l=0
(j − 1
l − 1
)( l−1∑ν=0
(l − 1
ν
)Xνk Y
l−νr−k
)+
j−1∑l=1
(j − 1
l − 1
)( l−1∑ν=0
(l − 1
ν − 1
)Xνk Y
l−νr−k
)But
Y l−νr−k = (Y ⊗ Y l−ν−1)r−k = sy
r−k∑i=1
ai Yl−1−νr−k−i
gives again with (3.16)
j−1∑l=0
(j − 1
l − 1
)( l−1∑ν=0
(l − 1
ν
)Xνk Y
l−νr−k
)
= sy
r−k∑i=1
ai
j−1∑l=0
(j − 1
l − 1
)( l−1∑ν=0
(l − 1
ν
)Xνk Y
l−1−νr−k−i
)
= sy
r−k∑i=1
ai
j−1∑l=0
(j − 1
l − 1
)Cr−ik,l−1 = sy
r−k∑i=1
aiHr−i,j−1k
14
Similarly with some index shifting ones sees that
j−1∑l=1
(j − 1
l − 1
)( l−1∑ν=0
(l − 1
ν − 1
)Xνk Y
l−νr−k
)= sx
k∑i=1
aiHr−i,j−1k−i .
�
The parametrized forms of (3.13-19) are obtained easily with the substitutions x =
t−a, y = b− t for a general interval [a, b] ⊂ R or with the canonical substitution x = t,
y = 1 − t for the interval [0, 1] ⊂ R. For the normalized form one has to divide by
pr(x+ y) according to (2.6-7).
Note that the variable s in the above formulas is a convenient device to count the
number l of factors x, y or, equivalently, of factors ai in any term of a polynomial Xjr
or Hr,jk . Hence one can set s = 1 or simply omit s if the computation does not use
concrete values for the mentioned variables. Subsequently, the substitution in formulas
(3.18-19) will be called s-normalization.
Example 3.4. For parameters a = (1, 0, . . . , 0),i.e., in the ordinary case, the recursion
(3.17) becomes
(3.20) Hr,jk = Hr,j−1
k + sy Hr−1,j−1k + sxHr−1,j−1
k−1 .
The explicit solution of this recursion is with pr,k(a) = ar1δk,r = δk,r
Hr,jk (s, x, y) =
j∑l=0
(j
l
)( l∑ν=0
(l
ν
)Xνk Y
l−νr−k
)
=
j∑l=0
(j
l
)( l∑ν=0
(l
ν
)skxkδν,k s
r−kyr−kδl−ν,r−k
)
= sr(j
r
)(r
k
)xkyr−k.
Note that Hr,jk (s, x, y) = 0 for r > j. With s-normalization this gives the ordinary
bivariate Bernstein polynomials
Br,[j]k =
r!
j!(j − r)!
(j
r
)(r
k
)xkyr−k =
(r
k
)xkyr−k
if r ≤ j and zero otherwise. Therefore in the case j = r the recursion (3.20) becomes
with s-normalization the usual recursion of ordinary bivariate Bernstein polynomials
(3.21) Brk(x, y) = y Br−1
k (x, y) + xBr−1k−1(x, y).
The proof of the main recurrence (3.17) above is essentially an extension for additional
parameters a2, a3, . . . of the following simple calculation for the ordinary case a =
(1, 0, . . . , 0):15
(n
r
)(r
k
)xkyr−k
=
(n− 1
r
)(r
k
)xkyr−k +
(n− 1
r − 1
)(r
k
)xkyr−k
=
(n− 1
r
)(r
k
)xkyr−k +
(n− 1
r − 1
)y
(r − 1
k
)xkyr−1−k +
(n− 1
r − 1
)x
(r − 1
k − 1
)xk−1yr−1−k.
Observe that setting all ui = x and all vi = y in the recurrence (3.10) for bivariate
elementary symmetric polynomials
enr,k(u, v) = en−1r,k (u, v) + vn e
n−1r−1,k(u, v) + un e
n−1r−1,k−1(u, v) .
gives exactly the preceding formula. In other words, (3.10) is the blossoming of the
preceding formula, and this gives a clue why the blossoming of (3.17) is now easy. Let
Xj(u) = X(u1)⊗ · · · ⊗X(uj) with X(uν) = 1 + X(uν) = 1 + suν a
Y j(v) = Y (v1)⊗ · · · ⊗ Y (vj) with Y (vν) = 1 + Y (vν) = 1 + svν a.
Corollary 3.5. (a) For j = 1, . . . , n and r = 1, . . . , n for fixed j the blossoms xjr(u) of
the Xjr in Thm.3.3 (a) can be computed recursively from x0 = 1, i.e., x0
r = δr,0, by
(3.22) xjr(u) = xj−1r (u) + suj
r∑i=1
ai xj−1r−i (u).
Then for r = 1, . . . , n the blossoms pr(u; a) of the polynomials pr(x; a) satisfy the equa-
tion
(3.23) pr(u; a) = xrr(s, u; a) with substitutions sl ← (r − l)! .
Moreover, the expressions xjr(u) are essentially the j-truncations p[j]r (u; a) of the blos-
soms pr(u; a) according to
(3.24) p[j]r (u; a) =
r!
j!xjr(s, u; a) with substitutions sl ← (j − l)! .
(b) For j = 1, . . . , n and r = 1, . . . , n, k = 0, . . . , r for fixed j the blossoms hr,jk of the
Hr,jk in Thm.3.3 (b) are given by
(3.25) hr,jk = hr,jk (s, u, v; a) =
j∑l=0
(j
l
)crk,l(u, v) =
j∑l=0
(j
l
)( l∑ν=0
(l
ν
)Xνk (u) Y l−ν
r−k (v)
).
These blossoms can be computed recursively from hr,0k = δ0,r by
(3.26) hr,jk = hr,j−1k + svj
r−k∑i=1
ai hr−i,j−1k + suj
k∑i=1
ai hr−i,j−1k−i .
16
Then for r = 1, . . . , n and k = 0, . . . , r the blossoms Brk(u, v; a) of the non-normalized
bivariate a-Bernstein polynomials Brk(x, y; a) satisfy the equation
(3.27) Brk(u, v; a) = hr,rk (s, u, v; a) with substitutions sl ← (r − l)! .
Moreover, the expressions hr,jk are essentially the j-truncations of the Brk(u, v; a) accor-
ding to
(3.28) Br,[j]k (u, v; a) =
r!
j!hr,jk (s, u, v; a) with substitutions sl ← (j − l)! .
Proof. The proof of (a) is similar to the proof of Thm.3.1. For the proof of (b) one
observes first that the hr,jk of (3.25) are indeed the blossoms of the Hr,jk as defined in
(3.16): the polynomials hr,jk are symmetric and multiaffine by the properties of convolu-
tional multiplication and they become identical with the Hr,jk by setting all uj = x and
all vj = y. That the polynomials hr,jk satisfy the recursion (3.26) can be seen by a cal-
culation similar to the calculation in the proof of Thm.3.3 (b) that uses the recurrence
(3.10) for bivariate elementary symmetric polynomials. �
We observed above that the down recurrence (1.3) for the non-normalized a-Bernstein
polynomials Brk cannot be used directly for blossoming. Instead we had to switch to
the down recurrence (3.17-18) that could be blossomed easily.
Similarly, the up recurrence (1.1) or a-de Casteljau algorithm for the a-Bezier curve
(1.2) cannot be blossomed directly. Again we have to switch to a suitable up recurrence:
Corollary 3.6. Consider a sequence P = (P0, . . . , Pn) of control points in RN and a
sequence of real parameters a = (a1, . . . , an), a1 6= 0 with pn(1) 6= 0.
For j = 1, . . . , n, r = 0, . . . , n, k = 0, . . . , n − r compute the expressions Kr,jk =
Kr,jk (s, x, y; a; P) recursively from the initial values Kr,0
k = δr,0Pk for j = 0 by
(3.29) Kr,jk = Kr,j−1
k + sr∑i=1
ai(y Kr−i,j−1
k + xKr−i,j−1k+i
).
Then the (non-normalized bivariate) a-Bezier curve X(x, y; a; P) is given by
(3.30)
X(x, y; a; P) = Xn0 (x, y; a; P) = Kn,n
0 (s, x, y; a; P) with substitutions sl ← (n− l)! .
Moreover, the (non-normalized bivariate) intermediary a-Bezier curves Xrk(x, y; a; P)
of order r are given by
(3.31) Xrk(x, y; a) = Kr,n
k (s, x, y; a; P) with substitutions sl ← (r − l)! .
To get the a-Bezier curve (1.2) on the interval [0, 1] ⊂ R one has to use the canonical
substitution x = t, y = 1 − t and to divide by pn(1). With the same substitution but17
division by pr(1) one gets the intermediary a-Bezier curve of order r
(3.32) Xrk(t; a; P) =
k+r∑i=k
PiBrk+i(t; a) for k = 0, . . . , n− r.
On a general interval [a, b] ⊂ R with pr(b−a) 6= 0 for r = 1, . . . , n one has to substitute
x = t− a and y = b− t and to divide by pr(b− a) to get these curves.
The proof of this corollary is a straightforward calculation similarly to the one in [13]
Thm.4.6 using (3.17-18). Blossoming the a-de Casteljau algorithm using (3.26-27) is
now easy.
Corollary 3.7. Consider a sequence P = (P0, . . . , Pn) of control points in RN and a
sequence of real parameters a = (a1, . . . , an), a1 6= 0 with pn(1) 6= 0.
For j = 1, . . . , n, r = 1, . . . , n, k = 0, . . . , n − r one computes the blossoms kr,jk =
kr,jk (s, u, v; a; P) of the expressions Kr,jk = Kr,j
k (s, x, y; a; P) recursively from the initial
values kr,0k = δr,0Pk for j = 0 by
(3.33) kr,jk = kr,j−1k + s
r∑i=1
ai(vj k
r−i,j−1k + uj k
r−i,j−1k+i
).
Then the blossom x(u, v; a; P) of the a-Bezier curve X(x, y; a; P) is given by
(3.34) x(u, v; a; P) = kn,n0 (s, u, v; a; P) with substitutions sl ← (n− l)! .
Moreover, the blossoms xrk(u, v; a; P) of the intermediary a-Bezier curve Brk(x, y; a; P)
of order r are given by
(3.35) xrk(u, v; a; P) = kr,nk (s, u, v; a; P) with substitutions sl ← (r − l)! .
For the blossom x(u; a; P) of the a-Bezier curve (1.2) on the interval [0, 1] ⊂ R one sets
vj = 1− uj and divides by pn(1). With the substitutions uj ← uj − a, vj = b− uj and
division by pn(b−a) 6= 0 one gets the blossom x(u; a; P) on a general interval [a, b] ⊂ R.
Similarly one gets the blossoms of the intermediary Bezier curve.
Remark 3.8. The ordinary de Casteljau algorithm generates a new (intermediary)
control point on level r from two adjacent points on level r − 1. This pattern can be
mimicked in the recursions (3.29) and (3.33) by distributing Kr,j−1k and kr,j−1
k suitably
to the left y- resp. v-part and the right x- resp. u-part of the sums:
Kr,jk = y
(Kr,j−1k + s
r∑i=1
aiKr−i,j−1k
)+ x
(Kr,j−1k + s
r∑i=1
aiKr−i,j−1k+i
)(3.36)
kr,jk = vj
(kr,j−1k + s
r∑i=1
ai kr−i,j−1k
)+ uj
(kr,j−1k + s
r∑i=1
ai kr−i,j−1k+i
)(3.37)
18
where it is assumed that x+y = 1 and uj+vj = 1, otherwise one has to divide explicitly
by the sums. The expressions in the brackets can be seen as generalized left and right
intermediary control points on level r − 1.
4. Applications of a-blossoming
4.1. Dual functional property. For a sequence P = (P0, . . . , Pn) of control points in
RN let x(u; P) be the blossom of the Bezier curve
X(t; P) =n∑k=0
PkBnk (t)
on the (canonical) interval [0, 1] ⊂ R. It is well-known that the control points Pk can
be recovered via the dual functional property from the blossom by
(4.1) x(1(k), 0(n−k)) = Pk for k = 0, . . . , n.
In [8] the h-Bernstein functions of order n with parameter h ∈ R on an arbitrary interval
[a, b] ⊂ R are defined by
(4.2) Bnk (t; [a, b];h) =
(n
k
)∏k−1i=0 (t− a+ ih)
∏n−k−1i=0 (b− t+ ih)∏n−1
i=0 (b− a+ ih)for k = 0, . . . , n
and the h-Bezier curves by
X(t; [a, b];h; P) =n∑k=0
PkBnk (t; [a, b];h).
Then the control points Pk can be recovered from the h-blossom x(u;h) = x(u; [a, b];h; P)
of the h-Bezier curve via
(4.3) x(b, . . . , b+ (k − 1)h︸ ︷︷ ︸k
, a− kh, . . . , a− (n− 1)h︸ ︷︷ ︸n−k
;h) = Pk for k = 0, . . . , n.
Clearly, (4.1) is a special case (4.3) by setting a = 0, b = 1, and h = 0. According to
Thm.2.1 of [12] the h-Bernstein functions, h-Bezier curves, and h-blossoms are special
cases of a-Bernstein polynomials, a-Bezier curves, and a-blossoms. Thus the question
arises how to understand the special formula (4.3) in the a-context. The next definitions
provide a general framework for this task.
Definition 4.1. (a) Let c = (cn)n≥0 ∈ l(R) be a sequence of real numbers with c0 6= 0.
Then a sequence of polynomials (pn)n≥0 with pn = pn(t; c) ∈ R[x] is c-cumulative if
recursively pn(t; c) = (t− cn)pn−1(t; c) for n ∈ N and p0(t; c) = c0.
(b) For c-cumulative pn(t; c) the Bernstein-type c-polynomials of order n are defined by
Bnk (t; c) :=
1
ρn
(n
k
)pk(t; c)pn−k(1− t; c)
19
with suitable normalizing factor ρn. For c-cumulative pn(x; c) and d-cumulative qn(y; d)
the bivariate Bernstein-type (c, d)-polynomials of order n are defined by
Bnk (x, y; c) :=
1
ρn
(n
k
)pk(x; c)pn−k(y; c).
(c) For a polynomial P ∈ R[t] the c-blossom p(u(n); c) of order n ≥ degP is the
symmetric multiaffine polynomial that satisfies the c-diagonal property
P (t) = p(t− c1, . . . , t− cn; c).
For a bivariate P ∈ R[x, y] the bivariate (c, d)-blossom p(u(n), v(n); c, d) of order n ≥degP is the bivariate symmetric multiaffine polynomial that satisfies the (c, d)-diagonal
property
P (x, y) = p(x− c1, . . . , x− cn, y − d1, . . . , y − dn; c, d).
To construct the c-blossom p(u(n); c) of order n of P (t) one proceeds as follows:
(1) Compute the polynomials enk(t) by substituting ui = t − ci for i = 1, . . . , n in
the elementary symmetric polynomials enk(u) for k = 0, . . . , n.
(2) Since deg enk(t) = k, it is possible to express the monomials tk as linear combi-
nations of the enk(t). (It is usually difficult to find explicit formulas).
(3) To get p(u(n); c) express the monomials tk in P (t) by the linear combinations as
determined in step 2, and then replace the enk(u) by the enk(t).
Similarly, the (c, d)-blossom p(u(n), v(n); c, d) of P (x, y) can be constructed using the
bivariate elementary symmetric polynomials enr,k(u, v).
Clearly with the canonical substitution (x, y) = (t, 1 − t), the ordinary Bernstein
polynomials of any order are a special case of c-polynomials with c = (1, 0, 0, 0, . . . ).
The h-Bernstein basis functions can be rewritten as
Bnk (t; [a, b];h) =
(n
k
)pk(t− a)pn−k(b− t)
pn(b− a)=
(n
k
)pk(x)pn−k(y)
pn(x+ y)with
pn(x) =n−1∏i=0
(x+ ih) =n∏i=1
(x+ (i− 1)h), x = t− a, y = b− t.
Therefore these basis functions are of the form Bnk (x, y; c, c) with c0 = 1, ci = (i− 1)h
for i ≥ 1, and normalizing factor ρn = pn(x + y). Alternatively, they are of the form
Bnk (t− a, b− t; c, d) with c0 = d0 = 1 and ci = a− (i− 1)h, di = b+ (i− 1)h for i ≥ 1.
Theorem 4.2. Let bns (u, v; c, d) be the blossom of Bns (t− a, b− t; c, d). If the ci and di
are not zeros of the pn−s(b− t; d) and ps(t− a; c), then for k = 1, . . . , n:
bns (d1, . . . , dk, ck+1, . . . , cn) = δs,k.(4.4)20
Proof. From the definitions one sees that
bns (u, v; c, d) =1
ρn
(ns
)(nn
)(ns
)enn,s(u, v) =1
ρn
∑I∈C(n,s)
uIv[n]\I(4.5)
with ui = t − ci, vi = di − t, and ρn =∏n
i=1(di − ci). If now s > k and I ∈ C(n, s),then I ∩ {k + 1, . . . , n} 6= ∅ and t = ci or ui = 0 for some i ∈ I. Similarly, if s < k
and J = [n] \ I ∈ C(n, n − s), then J ∩ {1, . . . , k} 6= ∅ and t = di or vi = 0 for some
i ∈ J . Finally, for k = s the product uIv[n]\I does not vanish iff I = {1, . . . , k}, but
then uIv[n]\I = ρn, which proves (4.4). �
Now (4.3) follows as a special case of (4.4) for (c, d)-Bezier curves.
Although the (c, d)-theory can be pursued in general and independently of the a-
theory, we investigate it here only in the context of the a-theory. The next theorem
shows that the only c-cumulative a-Bernstein polynomials are the h-Bernstein functions.
Theorem 4.3. For a = (1, a2, a3, . . . ) the sequence of associated polynomials pn(x; a)
is c-cumulative iff pn(x; a) =∏n
i=1(x + (i − 1)h), an = (−1)n−1(n − 1)! hn−1, and
cn = (n− 1)h for n ≥ 1.
Proof. By induction on n. Always with a1 = 1 one computes from the definition (2.2-3)
of associated polynomials p0(x; a) = 1, p1(x; a) = x, and p2(x; a) = x(x + a2); hence
c0 = 1 by definition (not a zero), c1 = 1 and c2 = −a2 =: h. With the notation
(x;h)n =n∏i=1
(x+ (i− 1)h) and (x)n = (x; 1)n
for the falling factorials the well-known recursion ([7], p.58)
(x)n+1 = xn∑k=0
(−1)n−k(n)n−k(x)k(4.6)
can be rewritten as
(x)n = x
n∑k=1
(−1)k−1(n− 1)k−1(x)n−k
and further as
(x;h)n = hn(xh
)n
= hn x
n∑k=1
(−1)k−1(n− 1)k−1
(nh
)n−k
= x
n∑k=1
(−1)k−1
(n− 1
k − 1
)(k − 1)! hk−1(n;h)n−k.
21
Now assume that the assertions of the theorem for ak, ck, and pk(x; a) are true for
k = 0, . . . , n− 1. Then by the recursion (2.12)
pn(x; a) = xn∑k=1
(n− 1
n− k
)ak pn−k(x; a)
= x
n∑k=1
(n− 1
k − 1
)(−1)k−1(k − 1)!hk−1(x;h)n−k = (x;h)n
= (x− (n− 1)h) (x;h)n−1 .
Hence, pn(x; a) is c-cumulative iff pn(x; a) = (x − (n − 1)h) (x;h)n−1 = pn(x; c) with
cn = (n − 1)h. But since pn(x; a) = xn + · · · + anx a comparison of coefficients with
pn(x; c) shows that an = (−1)n−1(n− 1)! hn−1. �
4.2. a-dual functional property and a-subdivision. For an arbitrary sequence of
control points P = (P0, . . . , Pn) any a-Bezier curve is also an ordinary Bezier curve for
a suitably transformed sequence of a-control points P(a) = (P0(a), . . . , Pn(a)):
X(t; a; P) =n∑k=0
PkBnk (t; a)
=n∑k=0
Pk(a)Bnk (t).
In [12] it has been shown that
P(a) = P M(a)(4.7)
with the a-transformation matrix M(a) = 1ρn
(mkl) ∈ R(n+1)×(n+1),
mkl =
(nk
)(nl
) k∑j=0
πk,j πn−k,n−k−l+j, and(4.8)
πk,j =
j∑ν=0
(k − νk − j
)pk,ν .(4.9)
Note that we use the notation P and P(a) both for sequences of points in RN and for
matrices with the respective sequences of column vectors. At the same time M(a) is
the matrix of basis transformation from ordinary Bernstein polynomials to a-Bernstein
polynomials according to
Bn(t; a) = M(a) Bn(t),
where Bn(t; a) = (Bn0 (t; a), . . . , Bn
n(t; a))T and Bn(t) = (Bn0 (t), . . . , Bn
n(t; ))T .
Now the proper a-generalization of the ordinary dual functional property (4.1) is not
the one that leads to the original control polygon P, but the a-dual functional property
described by the following theorem that leads to the a-control polygon P (a).22
Theorem 4.4. For a given sequence of control points P = (P0, . . . , Pn) and a feasible
parameter sequence a = (a1, . . . , an), the a-control points P (a) = (P0(a), . . . , Pn(a)) are
given by
(4.10) x(1(k), 0(n−k); a; P) = Pk(a) for k = 0, . . . , n,
where x(u, v; a; P) is the blossom of the a-Bezier curve X(t; a; P) with vj = 1− uj.
Proof. This assertion follows from the blossom of
X(t; a; P) =n∑k=0
Pk(a)Bnk (t)
and (4.1). �
Hence P(a) can be computed from P with M(a) by P (a) = P M(a) or, alternatively,
using blossoming.
Corollary 4.5. Assume that X(x, y; a; P) has been computed by the recursion (3.29-30)
of Cor.3.7 and
(4.11) X(x, y; a; P) =n∑k=0
αkxkyn−k
with y = 1− x. Then
(4.12) Pk(a) = αk/
(n
k
)for k = 0, . . . , n.
Proof. Since the bivariate blossom of(nk
)xkyn−k is
enn,k(u, v) =∑
I∈C(n,n)
∑J∈C(I,k)
uJvI\J =∑
J∈C(n,k)
uJvI\J
this assertion follows from (4.9). �
If an ordinary Bezier curve is subdivided at some point t0 ∈ (0, 1), it is well-known [2,
3] that the control points Q0, . . . , Qn of the left part of the curve and the control points
R0, . . . , Rn of the right part of the curve can be read off from the left resp. right side
of the triangular scheme of the ordinary de Casteljau algorithm. This simple approach
does not work for the a-de Casteljau algorithm, but it is possible to do something
similar using the generalized left and right intermediary control points that generate
Kn,n0 (x, y; a; P) as discussed in Rem.3.9. We will not give details here, because it is
more efficient to apply ordinary subdivision directly to the points of P(a) or use the
blossom x(u; a; P) of the a-Bezier curve from Cor.3.7 to compute
Qk = x(a(n−k), t(k)0 ; a; P)
Rk = x(t(n−k)0 , b(k); a; P).
23
With respect to h-Bernstein functions the a-control points P(a) and their (ordinary)
subdivisions certainly have better geometric approximation properties than the original
control points P and their h-subdivisions (compare Figs.6-9 of [8]).
5. a-degree elevation
For a given sequence of control points P = (P0, . . . , Pn) the degree elevated sequence
of control points Q = (Q0, . . . , Qn+1) is defined by Q0 = P0, Qn+1 = Pn, and
Qk =n+ 1− kn+ 1
Pk +k
n+ 1Pk−1 for k = 1, . . . , n
so that the Bezier curve of degree n for P is equal to the Bezier curve of degree n + 1
for Q. With the degree elevation matrix D(n) ∈ R(n+1)×(n+2) defined by
D(n)k,j =
n+1−kn+1
, j = kk+1n+1
, j = k + 1
0, otherwise
and the notation in section 4.2 one has Bn(t) = D(n)Bn+1(t) (compare [3]). But this
formula gives for the Bezier curve
X(t; P) = PBn(t) = PD(n)Bn+1(t) = QBn+1(t)
or
Q = PD(n).(5.1)
Therefore we define in accordance with P(a) = PM(a)
Q(a) := P(a)D(n) = PM(a)D(n)(5.2)
Q(b) := QM(b) = PD(n)M(b).(5.3)
In other words, Q(a) is the degree elevated a-transformation of P and Q(b) is the b-
transformation of the degree elevated P. Equations (5.2) and (5.3) lead to the following
(Q(a),Q(b))-Problem (of degree n): For a given parameter sequence a = (1, a2, . . . , an)
does there exist a parameter sequence b = (1, b2, . . . , bn+1) such that Q(a) = Q(b)?
Or with a diagram:
(5.4)
P Q
P(a) Q(a)?= Q(b)
D(n)
M(a)M(b)
D(n)
Using the non-normalized matrices D(n) = (n + 1)D(n), M(a) = ρn(a)M(a), M(b) =
ρn+1(b)M(b), and (5.2-3) the equation Q(a) = Q(b) is equivalent to the matrix equation
ρn+1(b) M(a) D(n) = ρn(a) D(n) M(b) .(5.5)
24
Since the a-transformation matrix M(a) = (mk,l(a)) is point-symmetric ([12]) with
mk,l(a) = mn−k,n−l(a) for k, l = 0, . . . , n, equation (5.5) a system of 12n(n + 1) poly-
nomial equations of degree ≤ n in the variables a2, . . . , an, b2, . . . , bn+1 with rational
coefficients.
Calculations (with MAPLE) provide the following solutions for the (Q(a),Q(b))-
problem for degrees n = 1, . . . , 5:
n b2, . . . , bn1 b2 arbitrary
2 b2 arbitrary
b3 = 2a2b2 + a2 − b2
3 b2 arbitrary
b3 = 3a2b2 − b22 + a2 − b2
b4 = −3a2b2 + b22 − a2 + b2 + 3a3b2 + a3
4 b2 = a2
b3 = 2a22
b4 = −2a22 − 2a3
2 + 4a2a3 + a3
b5 = 2a22 + 2a3
2 − 4a2a3 − a3 + 4a2a4 + a4
5 b2 = a2
b3 = 2a22
b4 = −2a22 − 4a3
2 + 5a2a3 + a3
b5 = 2a22 + 4a4
2 + 5a2a4 − a3 + 6a32 − 5a2
2a3 − 6a2a3 + a4
b6 = −2a22 − 4a4
2 − 5a2a4 + a3 − 6a32 + 5a2
2a3 + 6a2a3 − a4 + 5a2a5 + a5
A closer analysis of these solutions shows that they follow the pattern
bk+1 = (1 + na2) ak − (1 + (n− k)a2) bk for k = 1, . . . , n(5.6)
when one always sets b2 = a2. Unfortunately, this pattern does not work for n = 6
and we conjecture that the (Q(a),Q(b))-problem of degree n ≥ 6 has no solution. This
conjecture is also the reason why we presented the explicit solutions for n ≤ 5. To solve
of the system (5.5) it seems therefore necessary to impose conditions on the choice of a
as given by the following result. Note that (5.7) is a specialization of (5.6) for a2 = 0.
Theorem 5.1. Let N = 2n or N = 2n + 1 for some n ≥ 2. Then the (Q(a),Q(b))-
problem of degree N for the parameter sequence a = (1, a2, . . . , aN) is solved by
bk+1 = ak − bk for k = 1, . . . , N and b1 = 1,(5.7)
if a2 = · · · = an = 0. In particular, b2 = · · · = bn+1 = 0.25
Proof. For a1 = 1 and a2 = · · · = an = 0 one sees from (2.8) that aλ makes a contribu-
tion to pN,k(a) only if
λ1 = 1, k = N and λ = 1N or
n+ 1 ≤ λ1 ≤ N, 1 ≤ k ≤ n and λ = λ11k−λ1 .
With formula (2.8) for the cλ one sees
pN,k(a) =
{(Nk−1
)aN+1−k, for 1 ≤ k < N
a1 = 1, for k = N(5.8)
and therefore
ρN(a) = 1 +n−1∑k=1
(N
k − 1
)aN+1−k.(5.9)
From (5.7) it is not hard to see that
bi+1 =i∑
j=n+1
(−1)i−j aj for n+ 1 ≤ i < N(5.10)
To compute ρN(b) one combines (5.9) and (5.10) and with some straightforward trans-
formations and Pascal’s identity for binomial coefficients one gets
ρN+1(b) = ρN(a).(5.11)
Under the assumption of the theorem the proof of (5.5) is then reduced to the proof of
Ai,j = Bi,j for i = 0, . . . , N and j = 0, . . . , N + 1,(5.12)
where A = M(a) D(n) and B = D(n) M(b). Since the matrices M(a), M(b) and
D(n) are point-symmetric and a product of point-symmetric matrices is again point-
symmetric and since mi,0(a) = ρ(a) δi,0 and mi,0(b) = ρ(b) δi,0, the cases j = 0 and
j = N + 1 are done and we focus on 1 ≤ j ≤ N .
From (4.8) and (5.8) it follows that
πi,j(a) =
{∑jν=1
(i−νj−ν
)(i
ν−1
)ai+1−ν , for n+ 1 ≤ i ≤ N
δi,j, for 0 ≤ i ≤ n.(5.13)
By point-symmetry we can restrict our proof of (5.12) to the case i ≥ n + 1, i.e., the
lower half of (5.12). But then (4.7) with (5.13) gives
mi,j(a) =
(Ni
)(Nj
)πi,j(a).(5.14)
26
With the formulas obtained so far one computes
Ai,j =N∑k=0
mi,k(a)dk,j
= mi,j(a)dj,j + mi,j−1(a)dj−1,j
= (N + 1− j)mi,j(a) + jmi,j−1(a)
= (N + 1− j)(Ni
)(Nj
)πi,j(a) + j
(Ni
)(Nj−1
)πi,j−1(a)
and similarly
Bi,j =N+1∑k=0
di,kmk,j(b)
= di,imi,j(b) + di,i+1mi+1,j(b)
= (N + 1− j)mi,j(b) + (i+ 1)mi+1,j(b)
= (N + 1− j)(N+1i
)(N+1j
)πi,j(b) + (i+ 1)
(N+1i+1
)(N+1j
)πi+1,j(b).
A miraculous cooperation of the entries of D(n) and the fractions of binomial coefficients
allows one to reduce the equations of (5.12) to the equivalent equations
πi,j(a) + πi,j−1(a) = πi,j(b) + πi+1,j(b).(5.15)
With (4.8) one computes
πi,j(a) + πi,j−1(a) =
j∑ν=1
(i− νj − ν
)pi,ν(a) +
j−1∑ν=1
(i− ν
j − 1− ν
)pi,ν(a)
πi,j(b) + πi+1,j(b) =
j∑ν=1
(i− νj − ν
)pi,ν(b) +
j∑ν=1
(i+ 1− νj − ν
)pi+1,ν(b).
By (5.8) one has a contribution of a1 = 1 and b1 = 1 in the above equations exactly
when j = i or j = i + 1. In other words: a summand 1 appears in equations (5.15) on
both sides exactly when j = i or j = i+1. Therefore for the proof of the equations (5.15)
we investigate subsequently only whether the coefficients of the al for l ≥ n + 1 > 1
coincide on both sides.27
For better comparison of these coefficients we compute for π′i,j(a), i.e., πi,j(a) without
a possible summand a1 = 1, and with l = i− n+ 1− ν
π′i,j(a) =
j∑ν=1
(i− νj − ν
)(i
ν − 1
)ai+1−ν =
i−n∑ν=1
(i− νj − ν
)(i
ν − 1
)ai+1−ν
=i−n∑ν=1
(n− 1 + l
j − i+ n− 1 + l
)(i
i− n− 1
)an+l =
i∑l=n+1
(l − 1
i− j
)(i
l
)al.
This yields
π′i,j(a) + π′i,j−1(a) =i∑
l=n+1
(l − 1
i− j
)(i
l
)al +
i∑l=n+1
(l − 1
i− j + 1
)(i
l
)al
=i∑
l=n+1
(l
i− j + 1
)(i
l
)al
and similarly with (5.10)
π′i,j(b) + π′i+1,j(b)
=i−1∑
l=n+1
i−l∑ν=1
(i− νj − ν
)(i
ν − 1
)(−1)i−ν−lal +
i∑l=n+1
i+1−l∑ν=1
(i+ 1− νj − ν
)(i+ 1
ν − 1
)(−1)i+1−ν−lal
=
(i
i− j + 1
)ai +
i−1∑l=n+1
[(l
i+ 1− j
)(i+ 1
l + 1
)+
i−l∑ν=1
((i− νj − ν
)(i
ν − 1
)−(i+ 1− νj − ν
)(i+ 1
ν − 1
))(−1)i−ν−l
]al
For ai we get the desired equality of coefficients. For i > l ≥ n + 1 we get with the
abbreviation k = i− j the equations(l
k + 1
)(i
l
)=(
l
k + 1
)(i+ 1
l + 1
)+
i−l∑ν=1
(−1)i−ν−l[(i− νk
)(i
ν − 1
)−(i+ 1− νk + 1
)(i+ 1
ν − 1
)].
Finally, elementary calculations with the cross product formula for binomial coefficients(n
k
)(k
j
)=
(n
j
)(n− jk − j
)and cancellation of the appearing common factor
(i
k+1
)gives
i−l∑ν=0
(−1)i−l−ν(i− kν
)=
(i− k − 1
i− l
).(5.16)
28
But this is a special case of the formula
n∑ν=0
(−1)n−ν(x
ν
)=
(x− 1
n
)which can be derived from comparing coefficients of the power series expansions of
1
1− t(1− t)x = (1− t)x−1.
�
In view of the conjectured non-solvability of the (Q(a),Q(b))-problem in general
and Theorem 5.1 in particular it is reasonable to ask for a relaxation that imposes
no restriction on the parameter sequence a = (1, a2, . . . , an). This relaxation could be
done, e.g., by modifying the degree elevation of P(a) so that
(5.17)
P Q
P(a) Q(a) = Q(b)
D(n)
M(a) M(b)
D′(n;a)
for a geometrically or algebraically nice choice of D′(n; a) or by modifying the degree
elevation of P so that
(5.18)
P Q
P(a) Q(a) = Q(b)
D′′(n;a)
M(a) M(b)
D(n)
.
The interested reader is invited to pursue this topic.
References
[1] L. Comtet: Advanced Combinatorics. Reidel, Dordrecht, 1974.
[2] G. Farin: Curves and Surfaces for Computer Aided Geometric Design. A Practical Guide. Aca-
demic Press, Boston, 5th Ed., 2001.
[3] R. Goldman: Pyramid Algorithms. A Dynamic Programming Approach to Curves and Surfaces
for Geometric Modeling. Morgan Kaufmann Publishers, San Francisco, 2003.
[4] L. Ramshaw: Blossoming: A Connect-the-Dots Approach to Splines. Digital Equipment Corp.,
Systems Research Center, Technical Report No. 19, 1987.
[5] L. Ramshaw: Bezier and B-splines as multiaffine maps. In: R.A. Earnshaw (Ed.), Theoretical
Foundations of Computer Graphics and CAD, NATO ASI Series F, vol. 40, Springer, New York
(1988), 757 - 776.
[6] L. Ramshaw: Blossoms are polar forms. Comput. Aided Geom. Design 6 (1989), 323 - 358.
[7] S. Roman: The Umbral Calculus. Academic Press, Boston, 1984.
[8] P. Simeonov, V. Zafiris, R. Goldman: h-blossoming: a new approach to algorithms and identities
for h-Bernstein bases and h-Bezier curvees, Comput. Aided Geom. Design 28 (2011), 549 - 565.29
[9] D.D. Stancu: Approximation of functions by a new class of linear polynomial operators, Rev.
Roumaine Math. Pur. Appl. 13 (1968), 1173 - 1194.
[10] R. P. Stanley: Enumerative Combinatorics, Volume 1., Cambridge University Press, 2nd Ed.,
2012.
[11] R. Winkel : Generalized Bernstein Polynomials and Bezier Curves: An Application of Umbral
Calculus to Computer Aided Geometric Design. Adv. Appl. Math. 27 (2001), 51 - 81.
[12] R. Winkel : On a generalization of Bernstein polynomials and Bezier curves based on umbral
calculus. Comput. Aided Geom. Design 31 (2014), 227 - 244.
[13] R. Winkel : On a generalization of Bernstein polynomials and Bezier curves based on umbral
calculus (II): de Casteljau algorithm. Comput. Aided Geom. Design 3x (2015), pp.
University of Applied Sciences Bingen, Berlinstr. 109, D-55411 Bingen on the Rhine,
Germany, http://www.fh-bingen.de/lehrende/winkel-rudolf.html
E-mail address: [email protected]
30