Addition-subtraction chain

Addition-subtraction chain

An addition-subtraction chain, a generalization of addition chains to include subtraction, is a sequence "a"0, "a"1, "a"2, "a"3, ... that satisfies

:a_0 = 1, ,: ext{for }k > 0, a_k = a_i pm a_j ext{ for some }0 leq i,j < k.

An addition-subtraction chain for "n", of length "L", is an addition-subtraction chain such that a_L = n. That is, one can thereby compute "n" by "L" additions and/or subtractions. (Note that "n" need not be positive. In this case, one may also include "a"-1=0 in the sequence, so that "n"=-1 can be obtained by a chain of length 1.)

By definition, every addition chain is also an addition-subtraction chain, but not vice-versa. Therefore, the length of the "shortest" addition-subtraction chain for "n" is bounded above by the length of the shortest addition chain for "n". In general, however, the determination of a minimal addition-subtraction chain (like the problem of determining a minimum addition chain) is a difficult problem for which no efficient algorithms are currently known. The related problem of finding an optimal addition sequence is NP-complete (Downey et al., 1981), but it is not known for certain whether finding optimal addition or addition-subtraction chains is NP-hard.

For example, one addition-subtraction chain is: a_0=1, a_2=2=1+1, a_2=4=2+2, a_3=3=4-1. This is not a "minimal" addition-subtraction chain for "n"=3, however, because we could instead have chosen a_2=3=2+1. The smallest "n" for which an addition-subtraction chain is shorter than the minimal addition chain is "n"=31, which can be computed in only 6 additions (rather than 7 for the minimal addition chain):

:a_0=1, a_1=2=1+1, a_2=4=2+2, a_3=8=4+4, a_4=16=8+8, a_5=32=16+16, a_6=31=32-1.

Like an addition chain, an addition-subtraction chain can be used for addition-chain exponentiation: given the addition-subtraction chain of length "L" for "n", the power x^n can be computed by multiplying or dividing by "x" "L" times, where the subtractions correspond to divisions. This is potentially efficient in problems where division is an inexpensive operation, most notably for exponentiation on elliptic curves where division corresponds to a mere sign change (as proposed by Morain and Olivos, 1990).

References

* Hugo Volger, "Some results on addition/subtraction chains," "Information Processing Letters" 20, pp. 155-160 (1985).
* François Morain and Jorge Olivos, " [ftp://ftp.inria.fr/INRIA/publication/Theses/TU-0144/ch4.ps Speeding up the computations on an elliptic curve using addition-subtraction chains] ," "RAIRO Informatique théoretique et application" 24, pp. 531-543 (1990).
* Peter Downey, Benton Leong, and Ravi Sethi, "Computing sequences with addition chains," "SIAM J. Computing" 10 (3), 638-646 (1981).
* [http://www.research.att.com/~njas/sequences/A128998 Sequence A128998] , length of minimum addition-subtraction chain, "The On-Line Encyclopedia of Integer Sequences".


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • Addition-chain exponentiation — In mathematics and computer science, optimal addition chain exponentiation is a method of exponentiation by positive integer powers that requires a minimal number of multiplications. It works by creating a minimal length addition chain that… …   Wikipedia

  • Addition chain — In mathematics, an addition chain is a sequence a 0, a 1, a 2, a 3, ... that satisfies: a 0 = 1, and :for each k >0: a k = a i + a j for some i , j < k .As an example: 1, 2, 3, 6, 12, 24, 30, 31 is an addition chain for 31, of length 7, since:2 …   Wikipedia

  • Addition — is the mathematical process of putting things together. The plus sign + means that two numbers are added together. For example, in the picture on the right, there are 3 + 2 apples meaning three apples and two other apples which is the same as… …   Wikipedia

  • addition */*/ — UK [əˈdɪʃ(ə)n] / US noun Word forms addition : singular addition plural additions 1) a) [countable] something that you add to something else addition to: The latest addition to her business empire is a chain of clothes shops. New additions to the …   English dictionary

  • List of mathematics articles (A) — NOTOC A A Beautiful Mind A Beautiful Mind (book) A Beautiful Mind (film) A Brief History of Time (film) A Course of Pure Mathematics A curious identity involving binomial coefficients A derivation of the discrete Fourier transform A equivalence A …   Wikipedia

  • computer — computerlike, adj. /keuhm pyooh teuhr/, n. 1. Also called processor. an electronic device designed to accept data, perform prescribed mathematical and logical operations at high speed, and display the results of these operations. Cf. analog… …   Universalium

  • Field (mathematics) — This article is about fields in algebra. For fields in geometry, see Vector field. For other uses, see Field (disambiguation). In abstract algebra, a field is a commutative ring whose nonzero elements form a group under multiplication. As such it …   Wikipedia

  • mathematics — /math euh mat iks/, n. 1. (used with a sing. v.) the systematic treatment of magnitude, relationships between figures and forms, and relations between quantities expressed symbolically. 2. (used with a sing. or pl. v.) mathematical procedures,… …   Universalium

  • Euclidean vector — This article is about the vectors mainly used in physics and engineering to represent directed quantities. For mathematical vectors in general, see Vector (mathematics and physics). For other uses, see vector. Illustration of a vector …   Wikipedia

  • Matrix (mathematics) — Specific elements of a matrix are often denoted by a variable with two subscripts. For instance, a2,1 represents the element at the second row and first column of a matrix A. In mathematics, a matrix (plural matrices, or less commonly matrixes)… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”