English

A Simple and Fast Algorithm for Computing the $N$-th Term of a Linearly Recurrent Sequence

Symbolic Computation 2020-08-21 v1

Abstract

We present a simple and fast algorithm for computing the NN-th term of a given linearly recurrent sequence. Our new algorithm uses O(M(d)logN)O(\mathsf{M}(d) \log N) arithmetic operations, where dd is the order of the recurrence, and M(d)\mathsf{M}(d) denotes the number of arithmetic operations for computing the product of two polynomials of degree dd. The state-of-the-art algorithm, due to Charles Fiduccia (1985), has the same arithmetic complexity up to a constant factor. Our algorithm is simpler, faster and obtained by a totally different method. We also discuss several algorithmic applications, notably to polynomial modular exponentiation, powering of matrices and high-order lifting.

Keywords

Cite

@article{arxiv.2008.08822,
  title  = {A Simple and Fast Algorithm for Computing the $N$-th Term of a Linearly Recurrent Sequence},
  author = {Alin Bostan and Ryuhei Mori},
  journal= {arXiv preprint arXiv:2008.08822},
  year   = {2020}
}

Comments

34 pages

R2 v1 2026-06-23T17:58:57.272Z