HOME

TheInfoList



OR:

The level-index (LI) representation of numbers, and its
algorithm In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
s for
arithmetic Arithmetic is an elementary branch of mathematics that deals with numerical operations like addition, subtraction, multiplication, and division. In a wider sense, it also includes exponentiation, extraction of roots, and taking logarithms. ...
operations, were introduced by Charles Clenshaw and Frank Olver in 1984. The symmetric form of the LI system and its arithmetic operations were presented by Clenshaw and Peter Turner in 1987. Michael Anuta, Daniel Lozier, Nicolas Schabanel and Turner developed the algorithm for symmetric level-index (SLI) arithmetic, and a parallel implementation of it. There has been extensive work on developing the SLI arithmetic algorithms and extending them to
complex Complex commonly refers to: * Complexity, the behaviour of a system whose components interact in multiple ways so possible interactions are difficult to describe ** Complex system, a system composed of many components which may interact with each ...
and
vector Vector most often refers to: * Euclidean vector, a quantity with a magnitude and a direction * Disease vector, an agent that carries and transmits an infectious pathogen into another living organism Vector may also refer to: Mathematics a ...
arithmetic operations.


Definition

The idea of the level-index system is to represent a non-negative
real number In mathematics, a real number is a number that can be used to measure a continuous one- dimensional quantity such as a duration or temperature. Here, ''continuous'' means that pairs of values can have arbitrarily small differences. Every re ...
as : X = e^, where 0 \leq f < 1, and the process of exponentiation is performed times, with \ell \geq 0. and are the level and index of respectively. is the LI image of . For example, : X = 1234567 = e^, so its LI image is : x = \ell + f = 3 + 0.9711308 = 3.9711308. The symmetric form is used to allow negative exponents, if the magnitude of is less than 1. One takes or and stores it (after substituting +1 for 0 for the reciprocal sign; since for the LI image is and uniquely defines , we can do away without a third state and use only one bit for the two states −1 and +1) as the reciprocal sign . Mathematically, this is equivalent to taking the reciprocal (multiplicative inverse) of a small-magnitude number, and then finding the SLI image for the reciprocal. Using one bit for the reciprocal sign enables the representation of extremely small numbers. A sign bit may also be used to allow negative numbers. One takes sgn(''X'') and stores it (after substituting +1 for 0 for the sign; since for the LI image is and uniquely defines , we can do away without a third state and use only one bit for the two states −1 and +1) as the sign . Mathematically, this is equivalent to taking the inverse (additive inverse) of a negative number, and then finding the SLI image for the inverse. Using one bit for the sign enables the representation of negative numbers. The mapping function is called the generalized logarithm function. It is defined as : \psi(X) = \begin X & \text 0 \leq X < 1, \\ 1 + \psi(\ln X) & \text X \geq 1, \end and it maps _ = \left.\frac\_. The generalized logarithm function is closely related to the iterated logarithm used in computer science analysis of algorithms. Formally, we can define the SLI representation for an arbitrary real (not 0 or 1) as : X = s_X\varphi(x)^, where is the sign (additive inversion or not) of , and is the reciprocal sign (multiplicative inversion or not) as in the following equations: : s_X = \sgn(X),\quad r_X = \sgn\big(, X, - , X, ^\big),\quad x = \psi\big(\max\big(, X, , , X, ^\big)\big) = \psi\big(, X, ^\big), whereas for = 0 or 1, we have : s_0 = +1,\quad r_0 = +1,\quad x = 0.0, : s_1 = +1,\quad r_1 = +1,\quad x = 1.0. For example, : X = -\dfrac = -e^, and its SLI representation is : x = -\varphi(3.9711308)^.


See also

* Tetration * Floating point (FP) * Tapered floating point (TFP) * Logarithmic number system (LNS) * Level (logarithmic quantity)


References


Further reading

* * *

*
https://web.archive.org/web/20180709200456/https://www.americanscientist.org/sites/americanscientist.org/files/20097301410207456-2009-09Hayes.pdf -->
Also reprinted in: {{cite book , title=Foolproof, and Other Mathematical Meditations , chapter=Chapter 8: Higher Arithmetic , publisher=
The MIT Press The MIT Press is the university press of the Massachusetts Institute of Technology (MIT), a private research university in Cambridge, Massachusetts. The MIT Press publishes a number of academic journals and has been a pioneer in the Open Ac ...
, author-first=Brian , author-last=Hayes , date=2017 , edition=1 , isbn=978-0-26203686-3 , id={{ISBN, 0-26203686-X , pages=113–126 , url=https://books.google.com/books?id=E4c3DwAAQBAJ


External links

* sli-c-library (hosted by Google Code)
"C++ Implementation of Symmetric Level-Index Arithmetic"
Computer arithmetic