Evaluation Schemes in the Ring of Quaternionic Polynomials

Evaluation Schemes in the Ring of Quaternionic Polynomials

View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Universidade do Minho: RepositoriUM .pt Universidade do Minho Evaluation schemes in the ring of quaternionic polynomials M. Irene Falc~aoa;c Fernando Mirandaa;c Ricardo Severinoc M. Joana Soaresb;c a CMAT - Centre of Mathematics, University of Minho, Portugal b NIPE - Economic Policies Research Unit, University of Minho, Portugal c Department of Mathematics and Applications, University of Minho, Portugal Information Abstract Keywords: In this paper we focus on computational aspects associated with poly- Quaternions, nomial problems in the ring of one-sided quaternionic polynomials. The Polynomial evaluation, complexity and error bounds of quaternion arithmetic are considered and Error analysis. several evaluation schemes are analyzed from their complexity point of view. The numerical stability of generalized Horner's and Goertzel's Original publication: algorithms to evaluate polynomials with quaternion floating-point co- BIT Numerical Mathematics, 58(1) efficients is addressed. Numerical tests illustrate the behavior of the (2018), 51{72 algorithms from the point of view of performance and accuracy. DOI:10.1007/s10543-017-0667-8 Springer Link 1 Introduction The processes of factoring and evaluating real or complex polynomials are very important problems and have received a lot of attention over the years [10, 12, 14]. In the ring of quaternionic polynomials new problems arise, mainly because the structure of the zero-set of quaternionic polynomials is quite different from the complex case. In particular, the relation between the factors and the zeros of a polynomial is not so simple now. In this paper we address the problem of evaluating a polynomial, i.e., given a polynomial, find its value at a given argument. The paper is organized as follows: in Section2 we introduce the algebra of real quaternions, the complexity of the elementary arithmetic operations and the fundamentals of quaternion floating-point arithmetic. Section3 contains a review of the main results concerning the ring of one-sided left quaternionic polynomials (i.e. quaternionic polynomials whose coefficients are on the left-hand side of the variable). Section4 is entirely dedicated to several polynomial evaluation schemes, each of one associated to a particular form in which the polynomial can be given: expanded form, nested form, factor form or one of two remainder forms. Of these, we would like to point out the method which we have designated by Niven's method | acknowledging in this way the work of [17] | calling the attention to the fact that this procedure can be seen as a quaternionic version of the well-known algorithm of Goertzel [5]; in addition, we show that this method also corresponds to a particular case of the algorithm proposed in [19] for the efficient evaluation of powers. The main objective of Section5 is to obtain forward error bounds for the Horner's and Niven's algorithms to polynomial evaluation. 2 Evaluation schemes in the ring of quaternionic polynomials In this context, we introduce the notion, similar to the classical case, of the condition number of the evaluation of a polynomial at a given point, and express the relative error bound in the approximations produced by each of the aforementioned methods in terms of this number. Finally, Section6 illustrates the results of the paper by examples. 2 Quaternion arithmetic 2.1 The quaternion algebra Let H denote the algebra of real quaternions. H is a vector space of dimension 4 over R with basis f1; i; j; kg 2 2 2 and multiplication rules i = j = k = −1; ij = −ji = k: Given a quaternion x = x0 + x1i + x2j + x3k, with x0; x1; x2; x3 2 R, its conjugate x is defined as x = x0 − x1i − x2j − x3k; the real part of x is the number x0 and is denoted by Re x andp the vector part of x, denoted by x, is given by x = x1i + x2j + x3k; p 2 2 2 2 −1 the norm of x, jxj, is given by jxj = xx = x0 + x1 + x2 + x3; if x 6= 0, the inverse of x, denoted by x , −1 −1 −1 x is the (unique) quaternion such that xx = x x = 1 and is given by x = jxj2 . Note that the norm is multiplicative, i.e. we have jxyj = jxjjyj, for all x; y 2 H. 2.2 Complexity In the next sections we are going to present several algorithms to perform operations on polynomials together with their computational costs. We will assume that for quaternion numbers x = x0 + x1i + x2j + x3k and y = y0 + y1i + y2j + y3k we compute x ± y = x0 ± y0 + (x1 ± y1)i + (x2 ± y2)j + (x3 ± y3)k (2.1) kx = kx0 + kx1i + kx2j + kx3k; k 2 R (2.2) xy := x × y = (x0y0 − x1y1 − x2y2 − x3y3) + (x1y0 + x0y1 − x3y2 + x2y3)i + (x2y0 + x3y1 + x0y2 − x1y3)j + (x3y0 − x2y1 + x1y2 + x0y3)k (2.3) 1 x0 − x1i − x2j − x3k = 2 2 2 2 (2.4) x x0 + x1 + x2 + x3 Table1 summarizes the number of flops 1 required by each of the arithmetic operations (2.1)-(2.4). Table 1: Operations cost Operations × ± ÷ flops R R R ± : quaternion ± quaternion − 4 − 4 H ×scalar : real × quaternion 4 − − 4 × : quaternion × quaternion 16 12 − 28 H inv : 1=quaternion 4 3 4 11 H Remark 2.1. It is possible to perform a quaternionic multiplication using only 8 real multiplications, but using 27 additions. In our days, with machines where the multiplications are as fast as additions, it is not important anymore to distinguish these type of operations and so multiplication performed as indicated in (2.3) is preferable. 1In the context of this paper, a flop is any of the four elementary arithmetic operations +, −, ×, ÷. M.I. Falc~ao,F. Miranda, R. Severino and M.J. Soares 3 2.3 Quaternion floating-point arithmetic To carry out error analysis of algorithms in quaternion arithmetic we recall first the principles of real floating- point arithmetic. We mostly follow [10] (see also [22] and [7]) and adapt the results to the quaternion context, considering the operations (2.1)-(2.4). Let F ⊂ R denote the set of all normalized floating-point numbers and let fl : R ! F denote rounding to the nearest according to IEEE 754. Floating-point operations in IEEE 754 satisfy the following standard model (assuming that no underflow nor overflow occurs), in which x; y 2 F and op 2 f+; −; ×; ÷}: x op y fl(x op y) = (x op y)(1 + δ1) = ; jδ1j; jδ2j ≤ u; 1 + δ2 where u is the unit roundoff of the system. For binary IEEE 754 double precision, u = 2−53. Throughout the paper, we assume that, in the operations performed, overflow or underflow never occurs. The following results play an important role in the error analysis performed in this section. Lemma 2.1 ([10, Lemma 3.1]). If jδij ≤ u and ρi = ±1, i = 1; : : : ; n and nu < 1, then n Y nu (1 + δ )ρi = 1 + θ ; where jθ j ≤ =: γ : (2.5) i n n 1 − nu n i=1 Lemma 2.2 ([10, Lemma 3.3]). For any positive integer k let θk denote a quantity bounded according to jθkj ≤ γk with γk defined by (2.5). The following relations hold: i. (1 + θk)(1 + θj) = 1 + θj+k; ( 1 + θk+j; j ≤ k; ii. 1+θk = ; 1+θj 1 + θk+2j; j > k 1 iii. γkγj ≤ γmin(k;j), if max(j; k) u ≤ 2 ; iv. iγk ≤ γik; v. γk + u ≤ γk+1; vi. γk + γj + γkγj ≤ γk+j. Theorem 2.1 ([11, Theorem 4.2]). For n 2 N and given x = (xi); y = (yi), with xi; yi 2 F for i = 1; : : : ; n, any order of evaluation of the inner-product xTy produces an approximation fl(xTy) such that n T T X j fl(x y) − x yj ≤ nu jxijjyij: i=1 We denote by FH := F + Fi + Fj + Fk the set of quaternion floating-point numbers. As in the real (or complex) case we denote by fl(·) the result of a floating-point computation, where all operations inside parentheses are done in floating-point working precision in the obvious way ([10,7]). We adapt [10, Lemma 3.5] to derive the following error bounds of the quaternion operations. Theorem 2.2. For x; y 2 FH and k 2 F we have, with δ denoting a quaternion: i. fl(x ± y) = (x ± y)(1 + δ); jδj ≤ u; ii. fl(kx) = (kx)(1 + δ); jδj ≤ u; iii. fl(xy) = (xy)(1 + δ); jδj ≤ 8u; p iv. fl(x y) = (x y)(1 + δ); jδj ≤ 3 3u; 1 1 v. fl( x ) = x (1 + δ); jδj ≤ γ5; 4 Evaluation schemes in the ring of quaternionic polynomials vi. fl(jxj2) = jxj2(1 + δ); jδj ≤ 4u: Proof. We only prove relation iii., the other results being obtained in a similar manner. From (2.3), we have e := fl(xy) − xy = e0 + e1i + e2j + e3k; where e0 = fl(x0y0 − x1y1 − x2y2 − x3y3) − (x0y0 − x1y1 − x2y2 − x3y3); e1 = fl(x1y0 + x0y1 − x3y2 + x2y3) − (x1y0 + x0y1 − x3y2 + x2y3); e2 = fl(x2y0 + x3y1 + x0y2 − x1y3) − (x2y0 + x3y1 + x0y2 − x1y3); e3 = fl(x3y0 − x2y1 + x1y2 + x0y3) − (x3y0 − x2y1 + x1y2 + x0y3): By using the result of Theorem 2.1, it follows that jeij ≤ 4u Ai; i = 0; 1; 2; 3; where A0 := jx0jjy0j + jx1jjy1j + jx2jjy2j + jx3jjy3j; A1 := jx1jjy0j + jx0jjy1j + jx3jjy2j + jx2jjy3j; A2 := jx2jjy0j + jx3jjy1j + jx0jjy2j + jx1jjy3j; A3 := jx3jjy0j + jx2jjy1j + jx1jjy2j + jx0jjy3j: Using the fact that (jaj + jbj + jcj + jdj)2 ≤ 4(a2 + b2 + c2 + d2), we can write 2 2 2 2 2 2 2 2 2 A0 ≤ 4 x0y0 + x1y1 + x2y2 + x3y3 ; 2 2 2 2 2 2 2 2 2 A1 ≤ 4 x1y0 + x0y1 + x3y2 + x2y3 ; 2 2 2 2 2 2 2 2 2 A2 ≤ 4 x2y0 + x3y1 + x0y2 + x1y3 ; 2 2 2 2 2 2 2 2 2 A3 ≤ 4 x3y0 + x2y1 + x1y2 + x0y3) : Therefore, we obtain q q 2 2 2 2 2 2 2 2 jej = e0 + e1 + e2 + e3 ≤ 4u A0 + A1 + A2 + A3 q 2 2 2 2 2 2 2 2 ≤ 8u (x0 + x1 + x2 + x3)(y0 + y1 + x2 + y3) = 8ujxjjyj = 8ujxyj; where in the last equality we used the fact that the norm is multiplicative.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    17 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us