Computing

, Volume 91, Issue 3, pp 265–284

Calculating optimal addition chains

Authors

Open AccessArticle

DOI: 10.1007/s00607-010-0118-8

Cite this article as:
Clift, N.M. Computing (2011) 91: 265. doi:10.1007/s00607-010-0118-8

Abstract

An addition chain is a finite sequence of positive integers 1 = a0a1 ≤ · · · ≤ arn with the property that for all i > 0 there exists a j, k with aiajak and r ≥ i > j ≥ k ≥ 0. An optimal addition chain is one of shortest possible length r denoted l(n). A new algorithm for calculating optimal addition chains is described. This algorithm is far faster than the best known methods when used to calculate ranges of optimal addition chains. When used for single values the algorithm is slower than the best known methods but does not require the use of tables of pre-computed values. Hence it is suitable for calculating optimal addition chains for point values above currently calculated chain limits. The lengths of all optimal addition chains for n ≤ 232 were calculated and the conjecture that l(2n) ≥ l(n) was disproved. Exact equality in the Scholz–Brauer conjecture l(2n − 1) = l(n) + n − 1 was confirmed for many new values.

Keywords

Addition chainsExponentiationScholz–BrauerSequencesOptimization

Mathematics Subject Classification (2000)

11Y1611Y5505C20
Download to read the full article text

Copyright information

© The Author(s) 2010