Computer Aided Geometric Design 16 (1999) 671–689
Blossoming with cancellation Ron Goldman 1 Department of Computer Science-MS-132, Rice University, 6100 Main Street, Houston, TX 77005-1892, USA Received August 1998; revised April 1999
Abstract The blossoming axioms for polynomials are extended to include additional parameters along with a cancellation axiom, further unifying the theories of the multiaffine and multirational blossoms. Several parallel identities are derived that exhibit this close connection between these two distinct forms of the blossom. Divided differences are shown to be intimately related to blossoming, and formulas are presented that express the divided differences of polynomials in terms of the multiaffine blossom. 1999 Elsevier Science B.V. All rights reserved. Keywords: Blossom; Divided difference; Polar form
Dedicated to Paul de Faget de Casteljau 1. The blossoming axioms The multiaffine blossom of a polynomial P (x) of degree less than or equal to n is the unique, symmetric, multiaffine polynomial p(u1 , . . . , un ) that reduces to P (x) along the diagonal. Thus the multiaffine blossom satisfies the following axioms: Multiaffine blossom (polynomials) Symmetry p(u1 , . . . , un ) = p(uσ (1) , . . . , uσ (n) ). Multiaffine p(u1 , . . . , (1 − α)u + αw, . . . , un ) = (1 − α)p(u1 , . . . , u, . . . , un ) + αp(u1 , . . . , w, . . . , un ). 1 E-mail:
[email protected].
0167-8396/99/$ – see front matter 1999 Elsevier Science B.V. All rights reserved. SSDI: 0 1 6 7 - 8 3 9 6 ( 9 9 ) 0 0 0 3 0 - 8
672
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
Diagonal p(x, . . . , x ) = P (x). | {z } n
This multiaffine blossom is well known in mathematics: it is the classical polar form (Ramshaw, 1989; Vegter, 1998). Blossoming plays a fundamental role in the study of Bezier and B-spline curves and surfaces (Barry and Goldman, 1993; de Casteljau, 1985; Dahmen et al., 1992; Goldman, 1990; Goldman and Barry, 1992; Ramshaw, 1988; Seidel, 1989, 1991). The multiaffine blossom provides the dual functionals for the Bernstein and B-spline bases. In particular, the Bezier coefficients of a polynomial curve are given by its blossom evaluated at zeros and ones. More generally, the B-spline coefficients of a piecewise polynomial curve are given by its local blossom evaluated at consecutive knots. Algorithms for subdivision and knot insertion for Bezier and B-spline curves and surfaces are readily derived from blossoming. Recently a new kind of blossom has been introduced, associated with arbitrary analytic functions and with Bezier and B-spline bases of negative degree (Goldman, 1999a, 1999b, 1999c). The multirational blossom is a function in two sets of parameters (u1 , . . . , uk ) and (v1 , . . . , vk+n ), and is defined in the following fashion. The degree −n multirational blossom of an analytic function F (x) is the unique function f (u1 , . . . , uk /v1 , . . . , vk+n ) that is bisymmetric in the u and v parameters, multiaffine in the u parameters, satisfies a cancellation property, and reduces to F (x) along the diagonal. Thus the multirational blossom satisfies the following axioms: Multirational blossom (analytic functions) Bisymmetry f (u1 , . . . , uk /v1 , . . . , vk+n ) = f (uσ (1) , . . . , uσ (k) /vτ (1) , . . . , vτ (k+n) ). Multiaffine in u f (u1 , . . . , (1 − α)u + αw, . . . , uk /v1 , . . . , vk+n ) = (1 − α)f (u1 , . . . , u, . . . , uk /v1 , . . . , vk+n ) + αf (u1 , . . . , w, . . . , uk /v1 , . . . , vk+n ). Cancellation f (u1 , . . . , uk , w/v1 , . . . , vk+n , w) = f (u1 , . . . , uk /v1 , . . . , vk+n ). Diagonal f (x, . . . , x / x, . . . , x ) = F (x). | {z } | {z } k
k+n
Notice that unlike polynomials and the multiaffine blossom, for arbitrary analytic functions a distinct multirational blossom of degree −n exists for every n > 1. Moreover for any fixed value of n > 1, the multirational blossom is defined for every value of k > 0. The multirational blossom plays the same role for analytic functions and negative degree Bernstein and B-spline bases that the multiaffine blossom plays for polynomials
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
673
and positive degree Bernstein and B-spline bases. In particular, the coefficients of an arbitrary analytic function relative to the degree −n Bernstein basis functions are given by its degree −n multirational blossom evaluated at zeros and ones (Goldman, 1999a). More generally, the coefficients of an arbitrary piecewise analytic function relative to the B-splines of degree −n are given by its degree −n multirational blossom evaluated at consecutive knots (Goldman, 1999b). Thus the multirational blossom provides the dual functionals for the Bezier and B-spline bases of negative degree. Algorithms for differentiation and other change of basis procedures can be derived from this multirational blossom (Goldman, 1999a). Explicit formulas for the multirational blossom are provided in (Goldman, 1999a); see also Sections 4 and 5 below. Scanning these two sets of axioms for the multiaffine and multirational blossoms, we see that while the multiaffine blossom has only one set of parameters, the multirational blossom has two distinct sets of parameters: u parameters and v parameters. Moreover, a new axiom—the cancellation axiom—has been introduced into the theory of the multirational blossom, an axiom that does not appear in the theory of the multiaffine blossom. The purpose of this paper is to address these asymmetries by showing how to incorporate additional parameters along with a cancellation axiom into the theory of the multiaffine blossom. We begin in Section 2 by showing that the standard multiaffine blossom is a restricted special case of a much more general blossoming construction. By introducing a new set of v parameters along with a cancellation axiom into the theory of the multiaffine blossom, we extend the multiaffine blossom to a more general polynomial functional. We can then see that the multirational blossom, which appears in the theory of negative degree Bernstein and B-spline bases, is the natural generalization of this extended multiaffine blossom to negative degree. Since these two blossoming theories for positive and negative degree have virtually identical axioms, many formulas and identities involving these two blossoms look very much alike. In Sections 3 and 4 we provide several examples of such parallel formulas and identities. There is, however, one very important difference between these two blossoming theories. The multiaffine blossom, even in its extended form, is essentially a polynomial theory. This is not the case for the multirational blossom, which is defined for a much wider class of functions—not just polynomials or rational functions, but arbitrary piecewise analytic functions as well. Thus the multirational blossom is quite different from other standard extensions of the multiaffine blossom such as the multiprojective blossom, which is defined only for rational functions (Ramshaw, 1987). Such a general theory of dual functionals inevitably reminds us of the divided difference, which, as we shall see in Section 5, can be characterized by a very similar set of axioms. Indeed, the divided difference can be included as a special case of the general theory of the multirational blossom. In Section 5 we shall take advantage of this unification to derive formulas for the divided differences of polynomials in terms of the standard multiaffine blossom. We shall see too that several other blossoming identities also have divided difference interpretations. We close our discussion in Section 6 with a brief summary of our work along with a few open questions for future research.
674
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
2. The extended multiaffine blossom We are now going to generalize the theory of the multiaffine blossom by introducing additional parameters and extending the axioms to include a cancellation axiom. The main result of this section is the existence and uniqueness of this extended multiaffine blossom. The extended multiaffine blossom of a polynomial P (x) of degree less than or equal to n is a polynomial in two sets of parameters (u1 , . . . , un+k ) and (v1 , . . . , vk ), and is defined in the following fashion. The degree n extended multiaffine blossom of P (x) is the unique polynomial p(u1 , . . . , un+k /v1 , . . . , vk ) with degree(p) = degree(P ) that is bisymmetric in the u and v parameters, multiaffine in the u parameters, satisfies a cancellation property, and reduces to P (x) along the diagonal. Thus the extended multiaffine blossom satisfies the following axioms: Extended multiaffine blossom (polynomials) Bisymmetry p(u1 , . . . , un+k /v1 , . . . , vk ) = p(uσ (1) , . . . , uσ (n+k) /vτ (1) , . . . , vτ (k) ). Multiaffine in u p(u1 , . . . , (1 − α)u + αw, . . . , un+k /v1 , . . . , vk ) = (1 − α)p(u1 , . . . , u, . . . , un+k /v1 , . . . , vk ) + αp(u1 , . . . , w, . . . , un+k /v1 , . . . , vk ). Cancellation p(u1 , . . . , un+k , w/v1 , . . . , vk , w) = p(u1 , . . . , un+k /v1 , . . . , vk ). Diagonal p(x, . . . , x / x, . . . , x ) = P (x). | {z } | {z } n+k
k
Notice in particular that when k = 0, the polynomial p(u1 , . . . , un /) is symmetric, multiaffine, and reduces to P (x) along the diagonal. Thus p(u1 , . . . , un /) is the standard multiaffine blossom of P (x). Hence the extended multiaffine blossom contains within it the standard multiaffine blossom. Notice too that p(u1 , . . . , un+k /v1 , . . . , vk ) is defined only if n > degree(P ), for otherwise p(u1 , . . . , un /) cannot be the multiaffine blossom of P (x). We shall see shortly that for any fixed value of n > degree(P ), the extended multiaffine blossom exists for all values of k > 0. Below we are going to demonstrate the existence and uniqueness of this extended multiaffine blossom, but first let us consider a few simple special cases. Example. (1) P (x) = 1; p(u1 , . . . , un+k /v1 , . . . , vk ) = 1.
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
(2) P (x) = x;
Pn+k i=1
p(u1 , . . . , un+k /v1 , . . . , vk ) = (3) P (x) = x 2 ; p(u1 , . . . , un+k /v1 , . . . , vk ) =
ui −
Pk
j =1 vj
n P i
675
ui uj −
P
.
i,j vi uj n 2
+
P
i6j vi vj
.
From the last example, we can see that while the extended multiaffine blossom is always multiaffine in the u parameters, it need not be multiaffine in the v parameters. Indeed, when P (x) = x 2 , there are nonlinear terms of the form vj2 in the expression for p(u1 , . . . , un+k /v1 , . . . , vk ). We could go on in this fashion to deduce a general formula for the extended multiaffine blossom of each monomial x d and in this manner prove the existence of the extended multiaffine blossom. We shall, in fact, present such explicit expressions in Section 4. Here, however, we take a more abstract approach. But before we can proceed with the proof of our main theorem on the existence and uniqueness of the extended multiaffine blossom, we need the following lemma. Lemma 2.1. Let p(u1 , . . . , un+k /v1 , . . . , vk ) be a polynomial of total degree at most n that is bisymmetric in the u and v parameters, multiaffine in the u parameters, satisfies the cancellation property, and reduces to zero along the diagonal. Then p is the zero polynomial. Proof. We proceed by induction on k. When k = 0, the function p(u1 , . . . , un /) is symmetric and multiaffine; hence p(u1 , . . . , un /) is the blossom of p(x, . . . , x/). But by assumption, p(x, . . . , x/) is identically zero; hence, by the uniqueness of the multiaffine blossom, p(u1 , . . . , un /) must also be identically zero. Suppose now that we have established that p(u1 , . . . , un+k /v1 , . . . , vk ) is identically zero, and let us consider p(u1 , . . . , un+k+1 /v1 , . . . , vk+1 ). By the cancellation property and the inductive hypothesis, the polynomial p(u1 , . . . , un+k+1 /v1 , . . . , vk+1 ) vanishes whenever vk+1 = ui . Hence vk+1 − ui is a factor of p(u1 , . . . , un+k+1 /v1 , . . . , vk+1 ) for i = 1, . . . , n + k + 1. Since p(u1 , . . . , un+k+1 /v1 , . . . , vk+1 ) is a polynomial of total degree at most n with n + k + 1 linear factors, it follows that p(u1 , . . . , un+k+1 /v1 , . . . , vk+1 ) must be the zero polynomial. 2 Theorem 2.2 (Existence and uniqueness). Let P (x) be a polynomial of degree less than or equal to n. Then there exists a unique polynomial p(u1 , . . . , un+k /v1 , . . . , vk ) with degree(p) = degree(P ) such that p(u1 , . . . , un+k /v1 , . . . , vk ) is bisymmetric in the u and v parameters, multiaffine in the u parameters, satisfies the cancellation property, and reduces to P (x) along the diagonal. Moreover p(u1 , . . . , un /) is the standard multiaffine blossom of P (x). Proof. (Existence.) Let p∗ (u1 , . . . , un ) denote the standard multiaffine blossom of P (x). By the diagonal property, we can recover the polynomial P from its multiaffine
676
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
blossom p∗ . Since we expect P to determine p uniquely, we should also be able to define p in terms of p∗ . In fact, we can define p in the following fashion: P (2.1) p(u1 , . . . , un+k /v1 , . . . , vk ) = (−1)β p∗ (ui1 , . . . , uiα , vj1 , . . . , vjβ ), where the sum is taken over all collections of indices {i1 , . . . , iα } and {j1 , . . . , jβ } such that (i) i1 , . . . , iα are distinct, (ii) j1 , . . . , jβ need not be distinct, (iii) α + β = n. Clearly from Eq. (2.1), p(u1 , . . . , un+k /v1 , . . . , vk ) is a bisymmetric polynomial that is multiaffine in the u parameters, and degree(p) = degree(P ). Moreover p satisfies the cancellation property for the following reason. Suppose, without lost of generality, that u1 = v1 . Then, by symmetry, (−1)β p∗ (u1 , ui2 , . . . , uiα , vj1 , . . . , vjβ ) + (−1)β+1 p∗ (ui2 , . . . , uiα , v1 , vj1 , . . . , vjβ ) = 0. Hence all the terms containing u1 or v1 cancel. The remaining sum is exactly equal to p(u2 , . . . , un+k /v2 , . . . , vk ), so p satisfies the cancellation property. Finally, we need to show that p reduces to P along the diagonal. But by the cancellation property, p(x, . . . , x / x, . . . , x ) = p(x, . . . , x /) = p∗ (x, . . . , x ) = P (x). | {z } | {z } | {z } | {z } n+k
k
n
n
(Uniqueness.) Suppose that p and q are two polynomials with degree(p) = degree(P ) = degree(q) that are bisymmetric in the u and v parameters, multiaffine in the u parameters, satisfy the cancellation property, and reduce to P (x) along the diagonal. Then p − q satisfies all the hypotheses of Lemma 2.1. In particular, p − q is zero along the diagonal. Hence, by Lemma 2.1, p − q is identically zero, so p = q. 2 Let us now introduce the following notation: πn (x) = polynomials in x of degree less than or equal to n; Sym(u1 , . . . , un ) = symmetric multiaffine polynomials in u1 , . . . , un ; Bsym(u1 , . . . , un+k /v1 , . . . , vk ) = bisymmetric polynomials in u and v, multiaffine in u, that satisfy the cancellation axiom and are of total degree at most n. Then the correspondence between a polynomial and its blossom can be restated as follows: πn (x) ∼ = Sym(u1 , . . . , un ) ∼ = Bsym(u1 , . . . , un+k /v1 , . . . , vk ), where the correspondences are vector space isomorphisms. The first isomorphism is given by the standard correspondence between a polynomial and its blossom; the second isomorphism is the main content of the previous theorem, and is encapsulated in Eq. (2.1).
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
677
3. Some blossoming identities Since the axioms for the extended multiaffine blossom and the axioms for the multirational blossom are virtually identical, identities for one type of blossom often closely resemble identities for the other kind of blossom. Here we exhibit three examples of this phenomenon. We begin with an extension of the blossoming identity in Eq. (2.1). Let P (x) be a polynomial of degree n. Then P (x) is also a polynomial of degree m for all m > n, so the multiaffine blossom p(u1 , . . . , um ) is well-defined and satisfies the usual axioms of the multiaffine blossom. By Theorem 2.2 the extended multiaffine blossom p(u1 , . . . , um+k /v1 , . . . , vk ) of degree m also exists and satisfies the standard axioms of the extended multiaffine blossom. Moreover we have the following identities. Proposition 3.1 (Blossoming formulas for polynomials). Let P (x) be a polynomial of degree n, and let p∗ (u1 , . . . , un ) denote the multiaffine blossom of P (x). Then P (−1)β p∗ (ui1 , . . . , uiα , vj1 , . . . , vjβ ) , p(u1 , . . . , um+k /v1 , . . . , vk ) = m m > n, p(u1 , . . . , uk /v1 , . . . , vm+k ) =
n
(3.1) P
(−1)β p∗ (ui1 , . . . , uiα , vj1 , . . . , vjβ ) , −m
(3.2)
n
where the sums are taken over all collections of indices {i1 , . . . , iα } and {j1 , . . . , jβ } such that (i) i1 , . . . , iα are distinct, (ii) j1 , . . . , jβ need not be distinct, (iii) α + β = n. Proof. We have already proved Eq. (3.1) for the case m = n in Theorem 2.2. The proof for −1 . m > n is much the same, except that we need to account for the constant coefficient mn Define P (−1)β p∗ (ui1 , . . . , uiα , vj1 , . . . , vjβ ) . (3.3) p e(u1 , . . . , um+k /v1 , . . . , vk ) = m n
We will show that p e satisfies the four axioms of the extended multiaffine blossom; we shall then conclude by the uniqueness of the extended multiaffine blossom that p = p e. Clearly from Eq. (3.3), p e(u1 , . . . , um+k /v1 , . . . , vk ) is a bisymmetric polynomial that is multiaffine in the u parameters. Moreover by the same argument as in the proof of Theorem 2.2, the function p e satisfies the cancellation property. It remains only to show that p e reduces to P along the diagonal. By the cancellation property, P ∗ p (ui1 , . . . , uin ) e(u1 , . . . , um /) = , p e(u1 , . . . , um+k /um+1 , . . . , um+k ) = p m n
678
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
where the sum is taken over all subsets {i1 , . . . , in } of order n of the integers {1, . . . , m}. But there are exactly m n such subsets. Hence P ∗ p (x, . . . , x ) | {z } n e(x, . . . , x /) = = P (x). p e(x, . . . , x / x, . . . , x ) = p m | {z } | {z } | {z } m+k
k
n
m
It follows by the uniqueness of the extended multiaffine blossom that p = p e. The proof of Eq. (3.2) for the multirational blossom is much the same, except that now we need to −1 , where account for the constant coefficient −m n −1 (−m)(−m − 1) · · · (−m − n + 1) −m n m+n−1 = (−1) = . n! n n To proceed, we define
P
p e(u1 , . . . , uk /v1 , . . . , vm+k ) =
(−1)β p∗ (ui1 , . . . , uiα , vj1 , . . . , vjβ ) . −m
(3.4)
n
Clearly from Eq. (3.4), p e(u1 , . . . , uk /v1 , . . . , vm+k ) is a bisymmetric polynomial that is multiaffine in the u parameters. Moreover by the same argument as in the proof of Theorem 2.2, the function p e satisfies the cancellation property. So again it remains only to show that p e reduces to P along the diagonal. But by the cancellation property, P (−1)n p∗ (vj1 , . . . , vjn ) e(/v1 , . . . , vm ) = , p e(vm+1 , . . . , vm+k /v1 , . . . , vm+k ) = p −m n
where the sum is over all collections of indices j1 , . . . , jn taken from the set {1, . . . , m}, but now these indices need not be distinct. The number of such terms is exactly equal to the number of non-negative integer solutions of the equation e1 + · · · + em = n, which, in turn, is equal to the number of ways of choosing n objects from m types. But from elementary combinatorics (Rosen, 1995), this value is known to be −m m+n−1 . = (−1)n n n Hence
P (−1)n p∗ (x, . . . , x ) | {z } n e(/ x, . . . , x ) = = P (x). p e(x, . . . , x / x, . . . , x ) = p −m | {z } | {z } | {z } k
m+k
m
n
Therefore by the uniqueness of the multirational blossom, p = p e.
2
Notice that in Eq. (3.2) we need not assume that m > n because the degree −m multirational blossom of a degree n polynomial is well defined even if m < n. This fact allows us to extend the multirational blossom from polynomials to arbitrary analytic functions. Next we derive degree elevation formulas for the extended multiaffine blossom and the multirational blossom that generalize the standard degree elevation formula
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
Pn+1 p(u1 , . . . , un+1 ) =
i=1
p(u1 , . . . , ui−1 , ui+1 , . . . , un+1 ) n+1
679
(3.5)
for the multiaffine blossom.
Proposition 3.2 (Degree elevation). Let P (x) be a polynomial of degree n, and let F (x) be an arbitrary analytic function. Then p(u1 , . . . , um+k+1 /v1 , . . . , vk ) Pm+k+1 p(u1 , . . . , ui−1 , ui+1 , . . . , um+k+1 /v1 , . . . , vk ) = i=1 m+1 Pk j =1 p(u1 , . . . , um+k+1 /v1 , . . . , vj , vj , . . . , vk ) , m > n, − m+1 f (u1 , . . . , uk /v1 , . . . , vm+k+1 ) Pm+k+1 f (u1 , . . . , uk /v1 , . . . , vj , vj , . . . , vm+k+1 ) j =1 = m+1 Pk f (u1 , . . . , ui−1 , ui+1 , . . . , uk /v1 , . . . , vm+k+1 ) . − i=1 m+1
(3.6)
(3.7)
Proof. The proofs of these two identities are much the same, so we shall prove only Eq. (3.7). Since the multirational blossom is unique, it is enough to show that the right hand side of Eq. (3.7) satisfies the four axioms of the multirational blossom. But clearly the right hand side of Eq. (3.7) is bisymmetric in the u and v parameters and multiaffine in the u parameters. To show that the cancellation axiom is also satisfied, suppose, without loss of generality, that u1 = v1 . Then in all the terms on the right hand side that contain both u1 and v1 exactly once, these parameters cancel. What remains are just two terms in which u1 or v1 appear, and these terms also cancel, since f (u2 , . . . , uk /v1 , . . . , vm+k+1 ) = f (u1 , . . . , uk /v1 , v1 , . . . , vm+k+1 ). Finally, along the diagonal the right hand side reduces to k m+k+1 F (x) − F (x) = F (x) m+1 m+1 as required. 2 The axioms for the extended multiaffine and multirational blossoms are not symmetric in the u and v parameters. As our final example, we derive a formula that is the analogue of the multiaffine property for the v parameters.
680
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
Proposition 3.3 (The multirational property). Let P (x) be a polynomial of degree less than or equal to n, and let F (x) be an arbitrary analytic function. If v = (1 − α)vi + αvj , then p(u1 , . . . , uk+n /v1 , . . . , vk ) = (1 − α)p(u1 , . . . , uk+n /v1 , . . . , vi−1 , v, vi+1 , . . . , vk )
(3.8)
+ αp(u1 , . . . , uk+n /v1 , . . . , vj −1 , v, vj +1 , . . . , vk ), f (u1 , . . . , uk /v1 , . . . , vk+n ) = (1 − α)f (u1 , . . . , uk /v1 , . . . , vi−1 , v, vi+1 , . . . , vk+n )
(3.9)
+ αf (u1 , . . . , uk /v1 , . . . , vj −1 , v, vj +1 , . . . , vk+n ). Proof. Again the proofs of these two identities are much the same, so we shall prove only Eq. (3.8). Applying the cancellation, multiaffine, and symmetry properties: p(u1 , . . . , uk+n /v1 , . . . , vk ) = p(u1 , . . . , uk+n , v/v1 , . . . , vk , v) = (1 − α)p(u1 , . . . , uk+n , vi /v1 , . . . , vi−1 , vi , vi+1 , . . . , vk , v) + αp(u1 , . . . , uk+n , vj /v1 , . . . , vj −1 , vj , vj +1 , . . . , vk , v) = (1 − α)p(u1 , . . . , uk+n /v1 , . . . , vi−1 , v, vi+1 , . . . , vk ) + αp(u1 , . . . , uk+n /v1 , . . . , vj −1 , v, vj +1 , . . . , vk ).
2
The multirational property in Proposition 3.3 can be used to replace the multiaffine axiom in the extended multiaffine and multirational blossoming schemes. For a proof of this fact for the multirational blossom as well as additional alternative blossoming axioms, see (Goldman, 1999c).
4. Blossoming formulas for a few special bases Proposition 3.1 allows us to compute both the extended multiaffine blossom and the multirational blossom for arbitrary polynomials in terms of their standard multiaffine blossom. Here we take advantage of this fact to compute these blossoms for some special polynomial bases. We shall also present formulas for the multirational blossoms of a few related rational functions. In our first three examples the sums are taken over all collections of indices {i1 , . . . , iα } and {j1 , . . . , jβ } such that: (i) i1 , . . . , iα are distinct, (ii) j1 , . . . , jβ need not be distinct, (iii) α + β = n. Notice that these are the same summation indices that appear in Theorem 2.2 and Proposition 3.1.
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
681
Example 4.1 (The monomial basis). Let P (x) = x n ; then p(u1 , . . . , un ) = u1 · · · un . Hence by Eqs. (3.1) and (3.2) P (−1)β ui1 · · · uiα vj1 · · · vjβ , m > n, (4.1) p(u1 , . . . , um+k /v1 , . . . , vk ) = m P p(u1 , . . . , uk /v1 , . . . , vm+k ) =
n
(−1)β u
i1
· · · uiα vj1 · · · vjβ . −m
(4.2)
n
Example 4.2 (The power bases). Consider now the following power functions of both positive and negative degree: Pn (x) = (x − t)n , P−n (x) = (x − t)−n . It is easy to see that pn (u1 , . . . , un ) = (u1 − t) · · · (un − t), since the right hand side is clearly symmetric, multiaffine, and reduces to Pn (x) along the diagonal. Therefore by Eq. (3.1), pn (u1 , . . . , un+k /v1 , . . . , vk ) X = (−1)β (ui1 − t) · · · (uiα − t)(vj1 − t) · · · (vjβ − t).
(4.3)
But there is a much simpler formula for p−n (u1 , . . . , uk /v1 , . . . , vn+k ). Indeed p−n (u1 , . . . , uk /v1 , . . . , vn+k ) =
(u1 − t) · · · (uk − t) , (v1 − t) · · · (vn+k − t)
(4.4)
since the right hand side is clearly bisymmetric in the u and v parameters, multiaffine in the u parameters, satisfies the cancellation property, and reduces to P−n (x) along the diagonal. Notice, however, that pn (u1 , . . . , un+k /v1 , . . . , vk ) 6=
(u1 − t) · · · (un+k − t) , (v1 − t) · · · (vk − t)
even though the right hand side clearly satisfies all the axioms of the extended multiaffine blossom. The reason that this identity fails to hold is that the right hand side is not a polynomial in the v parameters, a condition that is required by the definition of the extended multiaffine blossom. To take a particular example: if P (x) = x 2 , then p(u1 , u2 , u3 /v1 ) = u1 u2 + u2 u3 + u1 u3 − v1 u1 − v1 u2 − v1 u3 + v12 , u1 u2 u3 . p(u1 , u2 , u3 /v1 ) 6= v1 Example 4.3 (The Bernstein basis). Let Bin (x) = ni x i (1 − x)n−i , i = 0, . . . , n, denote the Bernstein basis functions of degree n. Then it is easy to check that the multiaffine blossom of Bin (x) is given by the convolution formula X Bp11 (u1 ) · · · Bp1n (un ), bin (u1 , . . . , un ) = p1 +···+pn =i
682
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
Fig. 1. (a) The de Casteljau algorithm for a cubic polynomial curve B(x), and (b) its multiaffine blossom b(u1 , u2 , u3 ).
Fig. 2. Two terms in the sum for the extended multiaffine blossom b(u1 , . . . , um+k /v1 , . . . , vk ) for the cubic curve B(x) in Fig. 1(a).
since the right hand side is clearly symmetric, multiaffine, and reduces to Bin (x) along the diagonal. Hence again by Eqs. (3.1) and (3.2) bin (u1 , . . . , um+k /v1 , . . . , vk ) P P (−1)β Bp11 (ui1 ) · · · Bp1α (uiα )Bq11 (vj1 ) · · · Bq1β (vjβ ) , = m
m > n,
(4.5)
n
bin (u1 , . . . , uk /v1 , . . . , vm+k ) P P (−1)β Bp11 (ui1 ) · · · Bp1α (uiα )Bq11 (vj1 ) · · · Bq1β (vjβ ) , = −m
(4.6)
n
where the P inner sums P are taken over all collections of indices {p1 , . . . , pα } and {q1 , . . . , qβ } such that pr + qs = i. Each of these blossoming formulas has an interpretation in terms of the de Casteljau algorithm. Fig. 1(a) illustrates the de Casteljau algorithm for a cubic polynomial B(x). Replacing x by ui on the ith level of the diagram yields its blossom b(u1, . . . , un )—see Fig. 1(b). Now if we replace x by ui1 , . . . , uiα on the first α levels of the diagram and by vj1 , . . . , vjβ on the last β levels of the diagram and then sum with alternating signs over all these diagrams, we obtain, up to a constant multiple, the blossoms b(u1 , . . . , um+k /v1 , . . . , vk ) and b(u1 , . . . , uk /v1 , . . . , vm+k )—see Fig. 2.
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
683
Example 4.4 (The Bernstein bases of negative degree). Let us consider now the Bernstein bases of negative degree. For a fixed value of n > 1, the Bernstein basis functions of degree −n are defined by −n i −n x (1 − x)−(n+i) , i = 0, 1, . . . . Bi (x) = i The degree −n blossoms of these degree−n Bernstein basis functions are given by: bi−n (u1 , . . . , uk /v1 , . . . , vn+k ) X (v1 ) · · · Bq−1 (vn+k ). = Bp11 (u1 ) · · · Bp1k (uk )Bq−1 n+k 1
(4.7) P
Here the sum is taken over all indices {p1 , . . . , pk } and {q1 , . . . , qn+k } such that pr + P bi−n (u1 , . . . , uk /v1 , . . . , vn+k ) denote qs = i. To establish the validity of this formula, let e the right hand side of Eq. 4.7. Clearly the expression for e bi−n (u1 , . . . , uk /v1 , . . . , vn+k ) is bisymmetric in the u and v parameters and multiaffine in the u parameters. To prove the cancellation property, we need to invoke the following convolution identity (Goldman, 1999a), which is easily verified directly from the definitions of the Bernstein basis functions: X 1, h = 0, 1 −1 Bp (u)Bq (u) = 0, h 6= 0. p+q=h
Setting v1 = u1 , we obtain e bi−n (u1 , . . . , uk /u1 , v2 , . . . , vn+k ) X (u1 )Bq−1 (v2 ) · · · Bq−1 (vn+k ) = Bp11 (u1 ) · · · Bp1k (uk )Bq−1 n+k 1 2 =
i X X
(v2 ) · · · Bq−1 (vn+k ) Bp12 (u2 ) · · · Bp1k (uk )Bq−1 n+k 2
h=0
× =
X
X
p1 +q1 =h
Bp11 (u1 )Bq−1 (u1 ) 1
(v2 ) · · · Bq−1 (vn+k ) Bp12 (u2 ) · · · Bp1k (uk )Bq−1 n+k 2
=e bi−n (u2 , . . . , uk /v2 , . . . , vn+k ), so the cancellation property is indeed satisfied. Finally to prove the diagonal property, we need another convolution identity (Goldman, 1999a): X Bq−1 (u) · · · Bq−1 (u) = Bq−n (u). n 1 q1 +···+qn =q
Now the diagonal property is valid because from the cancellation property: X e bi−n (/ x, . . . , x ) = Bq−1 (x) · · · Bq−1 (x) bi−n (x, . . . , x / x, . . . , x ) = e n 1 | {z } | {z } | {z } k
n
n+k
= Bi−n (x).
q1 +···+qn =i
684
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
Hence e bi−n satisfies the axioms of the multirational blossom, so by the uniqueness of the bi−n . Notice, however, that multirational blossom bi−n = e X Bp11 (u1 ) · · · Bp1n+k (un+k )Bq−1 (v1 ) · · · Bq−1 (vk ) bin (u1 , . . . , un+k /v1 , . . . , vk ) 6= k 1 even though the right hand side satisfies the axioms of the extended multiaffine blossom. As in Example 4.2 for the power functions, the reason that this identity fails to hold is that the right hand side is not a polynomial in the v parameters, a condition that is required by the definition of the extended multiaffine blossom.
5. Blossoming and divided difference The divided difference can be completely characterized by four axioms that are very similar to the axioms for the multirational blossom. Indeed let F (x) be a differentiable function, and let v1 , . . . , vn be arbitrary constants. Then the divided difference F [v1 , . . . , vn ] is the unique operator satisfying the following four axioms (Goldman, 1999d). Divided difference (differentiable functions) Symmetry F [v1 , . . . , vn ] = F [vσ (1) , . . . , vσ (n) ]. Affinity {(x − (1 − α)u − αw)F (x)}[v1 , . . . , vn ] = (1 − α){(x − u)F (x)}[v1 , . . . , vn ] + α{(x − w)F (x)}[v1 , . . . , vn ]. Cancellation {(x − t)F (x)}[v1 , . . . , vn , t] = F [v1 , . . . , vn ]. Differentiation F (n−1) (x) . F [x, . . . , x ] = | {z } (n − 1)! n
Since these axioms for the divided difference resemble so closely the axioms for both the extended multiaffine blossom and for the multirational blossom, we would naturally expect there should be formulas linking these blossoms to the divided difference. Below we derive such identities. Proposition 5.1. Let F (x) be an arbitrary analytic function. Then f (u1 , . . . , uk /v1 , . . . , vk+n ) = (n − 1)!(x − u1 ) · · · (x − uk )F −(n−1) (x) [v1 , . . . , vk+n ], where F −(n−1) (x) denotes the (n − 1)st antiderivative of F (x).
(5.1)
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
685
Proof. It follows easily from the axioms for the divided difference that the right hand side of Eq. (5.1) is bisymmetric in u, v, multiaffine in u, satisfies the cancellation property, and reduces to F (x) along the diagonal. Hence by the uniqueness of the multirational blossom, the right hand side of Eq. (5.1) must be the multirational blossom. 2 As an immediate consequence of Proposition 5.1, we can solve for the divided difference in terms of the multirational blossom simply by leaving out the u parameters. Corollary 5.2. Let F (x) be an arbitrary analytic function. Then F [v1 , . . . , vn ] =
f n−1 (/v1 , . . . , vn ) , (n − 1)!
(5.2)
where f (n−1) denotes the multirational blossom of F (n−1) (x). For polynomial functions we can use Eq. (5.2) together with the relationship given in Eq. (3.2) between the multirational blossom and the standard multiaffine blossom to derive a formula expressing the divided difference of a polynomial in terms of the multiaffine blossom. Corollary 5.3. Let P (x) be a polynomial of degree d, and let p(n−1) denote the multiaffine blossom of P (n−1) (x). Then (d − n + 1)! X (n−1) (vj1 , . . . , vjd−n+1 ), (5.3) p P [v1 , . . . , vn ] = d! where the sum is taken over all indices j1 , . . . , jd−n+1 such that 1 6 j1 6 · · · 6 jd−n+1 6 n. Proof. This result is an immediate consequence of Proposition 3.1 and Corollary 5.2.
2
We can apply Corollary 5.3 to compute the divided difference of any polynomial. For example, let P (x) = x n . Then by Eq. (5.3), the divided difference is given by the following symmetric functions: (i) P [v1 , . . . , vn+1 ] = 1. P (ii) P [v1 , . . . , vn ] = j vj . P (iii) P [v1 , . . . , vn−1 ] = i6j vi vj . P (iv) P [v1 , . . . , vn−k ] = i6···6ik+1 vi1 · · · vjk+1 . P j (v) P [v1 , v2 ] = i+j =n−1 v1i v2 . (vi) P [v1 ] = v1n . The other two blossoming identities presented in Section 3 also have divided difference interpretations. We close with these two formulas for the divided difference. Corollary 5.4. F 0 [v1 , . . . , vn+1 ] =
n+1 X j =1
F [v1 , . . . , vj , vj , . . . , vn+1 ].
686
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
Proof. By Corollary 5.2 and Proposition 3.2 F 0 [v1 , . . . , vn+1 ] = = =
f (n+1) (/v1 , . . . , vn+1 ) n! Pn+1 (n+1) f (/v1 , . . . , vj , vj , . . . , vn+1 ) j =1 Pn+1
(n + 1)!
j =1 F [v1 , . . . , vj , vj , . . . , vn+1 ].
2
Corollary 5.5. Let v = (1 − α)vi + αvj . Then F [v1 , . . . , vn ] = (1 − α)F [v1 , . . . , vi−1 , v, vv+1 , . . . , vn ] + αF [v1 , . . . , vj −1 , v, vj +1 , . . . , vn ]. Proof. This result is an immediate consequence of Proposition 3.3 and Corollary 5.2. Notice too that this result can also be derived directly from the axioms for the divided difference, using an argument similar to the one given in Proposition 3.3 for the extended multiaffine and multirational blossoms. 2 6. Conclusions and open questions Superficially, the multiaffine and multirational blossoms appear to be very different functionals because the multirational blossom has an auxiliary set of parameters and satisfies an additional axiom. But deeper analysis reveals that the standard multiaffine blossom is only a special case of a much more general blossoming construction. By introducing a new set of parameters and adding the cancellation property to the axioms for the multiaffine blossom, we can extend the multiaffine blossom to a polynomial functional that resembles much more closely the multirational blossom. Indeed the multirational blossom, which arises in the theory of negative degree Bernstein and B-spline bases, now appears to be a very natural generalization of the extended multiaffine blossom to negative degree. This unification is conspicuous in the many parallel identities we have derived for these two forms of the blossom. There is, however, one very important difference between these two blossoming theories. The multiaffine blossom, even in its extended form, is essentially a polynomial theory. Since there are more u parameters than v parameters, the multiaffine and cancellation axioms insure that the extended multiaffine blossom reduces to a polynomial along the diagonal. This is not the case for the multirational blossom because here there are more v parameters than u parameters and the multirational blossom is not affine in the v parameters. Thus the multirational theory is valid for a much wider range of functions—not just polynomial or rational functions, but arbitrary analytic functions as well. Such a general theory of dual functionals inevitably reminds us of the divided difference, which, as we have seen in Section 5, can be characterized by a very similar set of axioms. In fact, it turns out that the divided difference is a special case of the general theory of the multirational blossom. This observation allowed us to derive formulas for the divided differences of polynomials in terms of the standard multiaffine blossom. We saw too that
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
687
other generic blossoming identities also have divided difference interpretations. Indeed the multirational blossom extends the divided difference by introducing an auxiliary set of u parameters in much the same way that the extended multiaffine blossom extends the standard multiaffine blossom by introducing an auxiliary set of v parameters. We have come a long way towards unifying the theories of the multiaffine and multirational blossom and integrating the divided difference operator with these two functionals. But many open questions still remain. The multiaffine blossom is important in Computer Aided Geometric Design (CAGD) and Approximation Theory because the dual functionals for the Bernstein and B-spline bases are provided by this blossom evaluated at consecutive knots. The multirational blossom was first introduced because it provides the dual functionals for the negative degree Bernstein and B-spline bases. What new information can we glean from the extended multiaffine blossom? What role does it play in the development of algorithms for Approximation Theory and CAGD? When uk = vk for all k, p(u1 , . . . , uk+n /v1 , . . . , vk ) = p(uk+1 , . . . , uk+n ) for all k. Hence, in this case, the extended multiaffine blossom yields the B-spline coefficients of P (x) for the knot vector {uk }. But we need not take uk = vk for all k. When the sequences v1 , . . . , vn and u1 , . . . , un are distinct, do the n + 1 blossom values p(u1 , . . . , un /), . . . , p(u1 , . . . , u2n /v1 , . . . , vn ) provide the dual functionals for some other interesting polynomial or spline basis? We have seen in Section 3 that there is a simple extension of the degree elevation formula for the standard multiaffine blossom to the extended multiaffine and multirational blossoms. For the standard multiaffine blossom, there also exist simple formulas for the blossom of the product and the blossom of the composite of two polynomials in terms of the blossoms of the original two functions. For example, suppose that P (x) and Q(x) are polynomials with degree(P ) = m and degree(Q) = n, and let R(x) = P (x)Q(x) and S(x) = (P ◦ Q)(x). Then by the uniqueness of the multiaffine blossom P p(uσ (1) , . . . , uσ (m) )q(uσ (m+1), . . . , uσ (m+n) ) , r(u1 , . . . , um+n ) = σ (m + n)! P p(q(uσ (1) , . . . , uσ (n) ), . . . , q(uσ (nm−n+1) , . . . , uσ (mn) )) , s(u1 , . . . , umn ) = σ (mn)! since in each case the right hand side is clearly symmetric, multiaffine, and reduces to the appropriate function along the diagonal. Are there similar simple identities for the extended multiaffine blossom of the product or composite of two polynomials or for the multirational blossom of the product or composite of two analytic functions in terms of the corresponding blossoms of the original two functions? The theory of blossoming has recently been extended to trigonometric splines (Lyche et al., 1998) and to Chebyshev splines (Barry, 1996; Mazure, 1995; Pottmann, 1993). These blossoming theories retain the symmetry and diagonal axioms, but the multiaffine property is replaced by a much more complicated formula. Is there an analogue of the cancellation axiom that extends these blossoming theories in a canonical way? Do either of these blossoming theories have natural multirational extensions?
688
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
Finally, although all our results here were derived only for functions of a single variable, there is a well known generalization of the multiaffine blossom to polynomials in several variables (Ramshaw, 1988). Proceeding as in Section 2, we could introduce, in a straightforward manner, a set of auxiliary parameters along with a cancellation axiom for the multiaffine blossom of a multivariate polynomial. The existence and uniqueness of such an extended multiaffine blossom for polynomials in several variables can be established exactly as in Theorem 2.2. (Lemma 2.1 also generalizes to polynomials in several variables, but the proof is a bit more subtle.) Is there a natural generalization of the multirational blossom to the multivariate setting? If so, how is this multivariate multirational blossom related to the multivariate divided difference?
Acknowledgement I would like to thank Hans-Peter Seidel for pointing out to me that Eq. (2.1) for the extended multiaffine blossom should extend in a canonical way to the multirational blossom. This comment eventually lead me to the discovery of Eq. (3.2) for the multirational blossom of a polynomial function. References Barry, P.J. (1996), de Boor–Fix functionals and algorithms for Tchebycheffian B-spline curves, Const. Approx. 12, 385–408. Barry, P.J. and Goldman, R.N. (1993), Algorithms for progressive curves: Extending B-spline and blossoming techniques to the monomial, power, and Newton dual bases, in: Goldman, R. and Lyche, T., eds., Knot Insertion and Deletion Algorithms for B-spline Curves and Surfaces, SIAM, Philadelphia, 11–63. de Casteljau, P. (1985), Formes a Poles, Hermes, Paris. Dahmen, W., Micchelli, C.A. and Seidel, H.P. (1992), Blossoming begets B-splines built better by B-patches, Mathematics of Computation 59, 97–115. Goldman, R.N. (1990), Blossoming and knot insertion algorithms for B-spline curves, Computer Aided Geometric Design 7, 69–81. Goldman, R.N. (1999a), The rational Bernstein bases and the multirational blossoms, Computer Aided Geometric Design, to appear. Goldman, R.N. (1999b), Rational B-splines and multirational blossoms, in preparation. Goldman, R.N. (1999c), The multirational blossom, in preparation. Goldman, R.N. (1999d), Axiomatic characterizations of divided difference, in preparation. Goldman, R.N. and Barry, P.J. (1992), Wonderful triangle, in: Lyche, T. and Schumaker, L., eds., Mathematical Methods in Computer Aided Geometric Design II, Academic Press, San Diego, 297–320. Lyche, T., Schumaker, L. and Stanley, S. (1998), Quasi-interpolants based on trigonometric splines, J. Approx. Theory 95, 280–309. Mazure, M.-L. (1995), Blossoming of Chebyshev splines, in: Daehlen, M., Lyche, T. and Schumaker, L., eds., Mathematical Methods for Curves and Surfaces, Vanderbilt University Press, Nashville, 355–364. Pottmann, H. (1993), The geometry of Tchebycheffian splines, Computer Aided Geometric Design, 10, 181–210.
R. Goldman / Computer Aided Geometric Design 16 (1999) 671–689
689
Ramshaw, L. (1987), Blossoming: A connect-the-dots approach to splines, Digital Systems Research Center, Technical Report 19, Palo Alto. Ramshaw, L. (1988), Beziers and B-splines as multiaffine maps, in: Earnshaw, R.A., ed., Theoretical Foundations of Computer Graphics and CAD, NATO ASI Series F, Vol. 40, Springer, New York, 757–776. Ramshaw, L. (1989), Blossoms are polar forms, Computer Aided Geometric Design 6, 323–358. Rosen, K.H. (1995), Discrete Mathematics and Its Applications, 3rd ed., McGraw Hill, New York. Seidel, H.P. (1989), A new multiaffine approach to B-splines, Computer Aided Geometric Design 6, 23–32. Seidel, H.P. (1991), Symmetric recursive algorithms for surfaces: B-patches and the de Boor algorithm for polynomials over triangles, Const. Approx. 7, 257–279. Vegter, G. (1998), The apolar bilinear form in geometric modeling, Mathematics of Computation, submitted.