on-line-multiplication-in.pdf
0 comments
0 distinctions
0 member(s) added it to their favorites
On-line multiplication in real and complex base Christiane Frougny LIAFA, CNRS UMR 7089 2 place Jussieu, 75251 Paris Cedex 05, France and Universit´e Paris 8 Christiane. Frougny@liafa. jussieu. fr Athasit Surarerks Computer Engineering Department Faculty of Engineering Chulalongkorn University Phayathai road, Bangkok 10330, Thailand athasit@cp. eng. chula. ac. th Abstract Multiplication of two numbers represented in base is shown to be computable by an on-line algorithm when is a negative integer, a positive non-integer real number, or a complex number of the form ¡£¢ ¤ , where ¤ is a positive integer. 1 Introduction On-line arithmetic, introduced in [24], is a mode of computation where operands and results flow through arithmetic units in a digit serial manner, starting with the most significant digit. To generate the first digit of the result, the ¥ first digits of the operands are required. The integer ¥ is called the delay of the algorithm. This technique allows the pipelining of different operations such as addition, multiplication and division. It is also appropriate for the processing of real numbers having infinite expansions : it is well known that when multiplying two real numbers, only the left part of the result is significant. On-line arithmetic is used for special circuits such as in signal processing, and for very long precision arithmetic. One of the interests of on-line computable functions is that they are continuous for the usual topology on the set of infinite sequences on a finite digit set. To be able to perform on-line computation, it is necessary to use a redundant number system, where a number may have more than one representation (see [24, 5]). An example of such a system is the so-called signed-digit number system. It is composed of an integer base §¦©¨ and a signed-digit set of the form £! , with #"$¨&% % (' . In this sytem addition can be performed in constant time in parallel [1, 4]. On-line multiplication is also feasible [24, 5]. Parallel addition is used internally in the multiplication algorithm. On-line algorithms for addition, subtraction, multiplication, division and square-root in integer base are well studied, see [2, 6, 19]. In this paper we study the multiplication in base when is a negative integer, or a non-integer real number, or a complex number of the form ¡£¢ ¤ . It is known that any real number can be represented in negative integer base without a sign [12, 13, 15], and that, with a signed-digit set, addition is computable in constant time in parallel, and is computable by an on-line finite state automaton [7]. We show that the on-line multiplication used in the signed-digit number system can be applied in negative base. Negative base is related to some complex number systems, see below. When the base is a real number )0' , by the greedy algorithm of R´enyi [23], one can compute a representation in base of any real number belonging to the interval 1 23' 4 , called its -expansion, and where the digits are elements of the canonical digit set 56879@23 A CB ! if is not an integer, or of 56D7E@23F G'$! if is an integer. In such a representation, when is not an integer, not all the patterns of digits are allowed (see [21] for instance). For instance in base 7IHP'RQ ¢ SUT "$¨ the golden ratio, the expansion of the number VW7YX` ¢ S is '@2$23'2$2U2a . The pattern '$' is forbidden. Different -representations of V are 2b'U'$'2U2$2a , or '2U23Hc23' T Hc2b' T Hd2b' T for instance. This system is thus naturally redundant. Representation of numbers in non-integer base is encountered for instance in coding theory, see [10], and in the modelization of quasicrystals, see [3]. In [8] we have studied the problem of the conversion in a real base from a digit set ef78@2bF£g3! with g ¦ A CB to the canonical digit set 5 6 , without changing the numerical value. Addition and multiplication by a fixed positive integer are particular cases of digit set conversion. We have proved that the digit set conversion is on-line computable. 1