Jump to content

Vectorial addition chain

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Cedar101 (talk | contribs) at 08:22, 11 September 2017 (⋮→ fix math italics). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In mathematics, for positive integers k and s, a vectorial addition chain is a sequence V of k-dimensional vectors of nonnegative integers vi for −k + 1 ≤ is together with a sequence w, such that

vk+1 = [1,0,0,...0,0]
vk+2 = [0,1,0,...0,0]
v0 = [0,0,0,,...0,1]
vi =vj+vr for all 1≤is with -k+1≤j, ri-1
vs = [n0,...,nk-1]
w = (w1,...ws), wi=(j,r).

For example, a vectorial addition chain for [22,18,3] is

V=([1,0,0],[0,1,0],[0,0,1],[1,1,0],[2,2,0],[4,4,0],[5,4,0],[10,8,0],[11,9,0],[11,9,1],[22,18,2],[22,18,3])
w=((-2,-1),(1,1),(2,2),(-2,3),(4,4),(1,5),(0,6),(7,7),(0,8))

Vectorial addition chains are well suited to perform multi-exponentiation:[citation needed]

Input: Elements x0,...,xk-1 of an abelian group G and a vectorial addition chain of dimension k computing [n0,...,nk-1]
Output:The element x0n0...xk-1nr-1
  1. for i =-k+1 to 0 do yixi+k-1
  2. for i = 1 to s do yiyj×yr
  3. return ys

Addition sequence

An addition sequence for the set of integer S ={n0, ..., nr-1} is an addition chain v that contains every element of S.

For example, an addition sequence computing

{47,117,343,499}

is

(1,2,4,8,10,11,18,36,47,55,91,109,117,226,343,434,489,499).

It's possible to find addition sequence from vectorial addition chains and vice versa, so they are in a sense dual.[1]

See also

References

  1. ^ Cohen, H., Frey, G. (editors): Handbook of elliptic and hyperelliptic curve cryptography. Discrete Math. Appl., Chapman & Hall/CRC (2006)