A positional numeration system is given by a base and by a set of digits. The base is a real or complex number $\beta$ such that $|\beta|>1$, and the digit set $A$ is a finite set of digits including $0$. Thus a number can be seen as a finite or infinite string of digits. An on-line algorithm processes the input piece-by-piece in a serial fashion. On-line arithmetic, introduced by Trivedi and Ercegovac, is a mode of computation where operands and results flow through arithmetic units in a digit serial manner, starting with the most significant digit. In this paper, we first formulate a generalized version of the on-line algorithms for multiplication and division of Trivedi and Ercegovac for the cases that $\beta$ is any real or complex number, and digits are real or complex. We then define the so-called OL Property, and show that if $(\beta, A)$ has the OL Property, then on-line multiplication and division are feasible by the Trivedi-Ercegovac algorithms. For a real base $\beta$ and a digit set $A$ of contiguous integers, the system $(\beta, A)$ has the OL Property if $\# A > |\beta|$. For a complex base $\beta$ and symmetric digit set $A$ of contiguous integers, the system $(\beta, A)$ has the OL Property if $\# A > \beta\overline{\beta} + |\beta + \overline{\beta}|$. Provided that addition and subtraction are realizable in parallel in the system $(\beta, A)$ and that preprocessing of the denominator is possible, our on-line algorithms for multiplication and division have linear time complexity. Three examples are presented in detail: base $\beta=\frac{3+\sqrt{5}}{2}$ with digits $A=\{-1,0,1\}$; base $\beta=2i$ with digits $A = \{-2,-1, 0,1,2\}$; and base $\beta = -\frac{3}{2} + i \frac{\sqrt{3}}{2} = -1 + \omega$, where $\omega = \exp{\frac{2i\pi}{3}}$, with digits $A = \{0, \pm 1, \pm \omega, \pm \omega^2 \}$.

Source : oai:arXiv.org:1610.08309

DOI : 10.23638/DMTCS-21-3-14

Volume: Vol. 21 no. 3

Section: Discrete Algorithms

Published on: June 20, 2019

Submitted on: February 24, 2018

Keywords: Computer Science - Data Structures and Algorithms