Reference articles on history, science, culture and more
Encyclopedia

Constant-recursive sequence

Infinite sequence of numbers satisfying a linear equation

Image credit is listed at the end of this article.

In mathematics, an infinite sequence of numbers s_{0},s_{1},s_{2},s_{3},\ldots is called constant-recursive if it satisfies an equation of the form

s_{n}=c_{1}s_{n-1}+c_{2}s_{n-2}+\dots +c_{d}s_{n-d},

for all n\geq d, where c_{i} are constants. The equation is called a linear recurrence relation. The concept is also known as a linear recurrence sequence, linear-recursive sequence, linear-recurrent sequence, or a C-finite sequence.

For example, the Fibonacci sequence

0,1,1,2,3,5,8,13,\ldots,

is constant-recursive because it satisfies the linear recurrence F_{n}=F_{n-1}+F_{n-2}: each number in the sequence is the sum of the previous two. Other examples include the power of two sequence 1,2,4,8,16,\ldots, where each number is the sum of twice the previous number, and the square number sequence 0,1,4,9,16,25,\ldots. All arithmetic progressions, all geometric progressions, and all polynomials are constant-recursive. However, not all sequences are constant-recursive; for example, the factorial sequence 1,1,2,6,24,120,\ldots is not constant-recursive.

Constant-recursive sequences are studied in combinatorics and the theory of finite differences. They also arise in algebraic number theory, due to the relation of the sequence to polynomial roots; in the analysis of algorithms, as the running time of simple recursive functions; and in the theory of formal languages, where they count strings up to a given length in a regular language. Constant-recursive sequences are closed under important mathematical operations such as term-wise addition, term-wise multiplication, and Cauchy product.

The Skolem-Mahler-Lech theorem states that the zeros of a constant-recursive sequence have a regularly repeating (eventually periodic) form. The Skolem problem, which asks for an algorithm to determine whether a linear recurrence has at least one zero, is an unsolved problem in mathematics.

01Definition

A constant-recursive sequence is any sequence of integers, rational numbers, algebraic numbers, real numbers, or complex numbers s_{0},s_{1},s_{2},s_{3},\ldots (written as (s_{n})_{n=0}^{\infty } as a shorthand) satisfying a formula of the form

s_{n}=c_{1}s_{n-1}+c_{2}s_{n-2}+\dots +c_{d}s_{n-d}=\sum _{k=1}^{d}c_{k}s_{n-k},

for all n\geq d, for some fixed coefficients c_{1},c_{2},\dots ,c_{d} ranging over the same domain as the sequence (integers, rational numbers, algebraic numbers, real numbers, or complex numbers). The equation is called a linear recurrence with constant coefficients of order d. The order of the sequence is the smallest positive integer d such that the sequence satisfies a recurrence of order d, or d=0 for the everywhere-zero sequence.

The definition above allows eventually-periodic sequences such as 1,0,0,0,\ldots and 0,1,0,0,\ldots. Some authors require that c_{d}\neq 0, which excludes such sequences.

The Fibonacci sequence is constant-recursive: each element of the sequence is the sum of the previous two.
The Fibonacci sequence is constant-recursive: each element of the sequence is the sum of the previous two.

02Examples

Selected examples of integer constant-recursive sequences
NameOrder (d)First few valuesRecurrence (for n\geq d)Generating functionOEIS
Zero sequence00, 0, 0, 0, 0, 0, ...s_{n}=0{\frac {0}{1}}A000004
One sequence11, 1, 1, 1, 1, 1, ...s_{n}=s_{n-1}{\frac {1}{1-x}}A000012
Characteristic function of \{0\}11, 0, 0, 0, 0, 0, ...s_{n}=0{\frac {1}{1}}A000007
Powers of two11, 2, 4, 8, 16, 32, ...s_{n}=2s_{n-1}{\frac {1}{1-2x}}A000079
Powers of −111, −1, 1, −1, 1, −1, ...s_{n}=-s_{n-1}{\frac {1}{1+x}}A033999
Characteristic function of \{1\}20, 1, 0, 0, 0, 0, ...s_{n}=0{\frac {x}{1}}A063524
Decimal expansion of 1/621, 6, 6, 6, 6, 6, ...s_{n}=s_{n-1}{\frac {1+5x}{1-x}}A020793
Decimal expansion of 1/1120, 9, 0, 9, 0, 9, ...s_{n}=s_{n-2}{\frac {9x}{1-x^{2}}}A010680
Nonnegative integers20, 1, 2, 3, 4, 5, ...s_{n}=2s_{n-1}-s_{n-2}{\frac {x}{(1-x)^{2}}}A001477
Odd positive integers21, 3, 5, 7, 9, 11, ...s_{n}=2s_{n-1}-s_{n-2}{\frac {1+x}{(1-x)^{2}}}A005408
Fibonacci numbers20, 1, 1, 2, 3, 5, 8, 13, ...s_{n}=s_{n-1}+s_{n-2}{\frac {x}{1-x-x^{2}}}A000045
Lucas numbers22, 1, 3, 4, 7, 11, 18, 29, ...s_{n}=s_{n-1}+s_{n-2}{\frac {2-x}{1-x-x^{2}}}A000032
Pell numbers20, 1, 2, 5, 12, 29, 70, ...s_{n}=2s_{n-1}+s_{n-2}{\frac {x}{1-2x-x^{2}}}A000129
Powers of two interleaved with 0s21, 0, 2, 0, 4, 0, 8, 0, ...s_{n}=2s_{n-2}{\frac {1}{1-2x^{2}}}A077957
Reciprocal of 6th cyclotomic polynomial21, 1, 0, −1, −1, 0, 1, 1, ...s_{n}=s_{n-1}-s_{n-2}{\frac {1}{1-x+x^{2}}}A010892
Triangular numbers30, 1, 3, 6, 10, 15, 21, ...s_{n}=3s_{n-1}-3s_{n-2}+s_{n-3}{\frac {x}{(1-x)^{3}}}A000217

Fibonacci and Lucas sequences

The sequence 0, 1, 1, 2, 3, 5, 8, 13, ... of Fibonacci numbers is constant-recursive of order 2 because it satisfies the recurrence F_{n}=F_{n-1}+F_{n-2} with F_{0}=0,F_{1}=1. For example, F_{2}=F_{1}+F_{0}=1+0=1 and F_{6}=F_{5}+F_{4}=5+3=8. The sequence 2, 1, 3, 4, 7, 11, ... of Lucas numbers satisfies the same recurrence as the Fibonacci sequence but with initial conditions L_{0}=2 and L_{1}=1. More generally, every Lucas sequence is constant-recursive of order 2.

Arithmetic progressions

For any a and any r\neq 0, the arithmetic progression a,a+r,a+2r,\ldots is constant-recursive of order 2, because it satisfies s_{n}=2s_{n-1}-s_{n-2}. Generalizing this, see polynomial sequences below.

Geometric progressions

For any a\neq 0 and r, the geometric progression a,ar,ar^{2},\ldots is constant-recursive of order 1, because it satisfies s_{n}=rs_{n-1}. This includes, for example, the sequence 1, 2, 4, 8, 16, ... as well as the rational number sequence {\textstyle 1,{\frac {1}{2}},{\frac {1}{4}},{\frac {1}{8}},{\frac {1}{16}},....

Eventually periodic sequences

A sequence that is eventually periodic with period length \ell is constant-recursive, since it satisfies s_{n}=s_{n-\ell } for all n\geq d, where the order d is the length of the initial segment including the first repeating block. Examples of such sequences are 1, 0, 0, 0, ... (order 1) and 1, 6, 6, 6, ... (order 2).

Polynomial sequences

A sequence defined by a polynomial s_{n}=a_{0}+a_{1}n+a_{2}n^{2}+\cdots +a_{d}n^{d} is constant-recursive. The sequence satisfies a recurrence of order d+1 (where d is the degree of the polynomial), with coefficients given by the corresponding element of the binomial transform. The first few such equations are

s_{n}=1\cdot s_{n-1} for a degree 0 (that is, constant) polynomial,
s_{n}=2\cdot s_{n-1}-1\cdot s_{n-2} for a degree 1 or less polynomial,
s_{n}=3\cdot s_{n-1}-3\cdot s_{n-2}+1\cdot s_{n-3} for a degree 2 or less polynomial, and
s_{n}=4\cdot s_{n-1}-6\cdot s_{n-2}+4\cdot s_{n-3}-1\cdot s_{n-4} for a degree 3 or less polynomial.

A sequence obeying the order-d equation also obeys all higher order equations. These identities may be proved in a number of ways, including via the theory of finite differences. Any sequence of d+1 integer, real, or complex values can be used as initial conditions for a constant-recursive sequence of order d+1. If the initial conditions lie on a polynomial of degree d-1 or less, then the constant-recursive sequence also obeys a lower order equation.

Enumeration of words in a regular language

Let L be a regular language, and let s_{n} be the number of words of length n in L. Then (s_{n})_{n=0}^{\infty } is constant-recursive. For example, s_{n}=2^{n} for the language of all binary strings, s_{n}=1 for the language of all unary strings, and s_{n}=F_{n+2} for the language of all binary strings that do not have two consecutive ones. More generally, any function accepted by a weighted automaton over the unary alphabet \Sigma =\{a\} over the semiring (\mathbb {R} ,+,\times ) (which is in fact a ring, and even a field) is constant-recursive.

Other examples

The sequences of Jacobsthal numbers, Padovan numbers, Pell numbers, and Perrin numbers are constant-recursive.

Non-examples

The factorial sequence 1,1,2,6,24,120,720,\ldots is not constant-recursive. More generally, every constant-recursive function is asymptotically bounded by an exponential function (see #Closed-form characterization) and the factorial sequence grows faster than this.

The Catalan sequence 1,1,2,5,14,42,132,\ldots is not constant-recursive. This is because the generating function of the Catalan numbers is not a rational function (see #Equivalent definitions).

03Equivalent definitions

In terms of matrices

A sequence (s_{n})_{n=0}^{\infty } is constant-recursive of order less than or equal to d if and only if it can be written as

s_{n}=uA^{n}v

where u is a 1\times d vector, A is a d\times d matrix, and v is a d\times 1 vector, where the elements come from the same domain (integers, rational numbers, algebraic numbers, real numbers, or complex numbers) as the original sequence. Specifically, v can be taken to be the first d values of the sequence, A the linear transformation that computes s_{n+1},s_{n+2},\ldots ,s_{n+d} from s_{n},s_{n+1},\ldots ,s_{n+d-1}, and u the vector [0,0,\ldots ,0,1].

In terms of non-homogeneous linear recurrences

A non-homogeneous linear recurrence is an equation of the form

s_{n}=c_{1}s_{n-1}+c_{2}s_{n-2}+\dots +c_{d}s_{n-d}+c

where c is an additional constant. Any sequence satisfying a non-homogeneous linear recurrence is constant-recursive. This is because subtracting the equation for s_{n-1} from the equation for s_{n} yields a homogeneous recurrence for s_{n}-s_{n-1}, from which we can solve for s_{n} to obtain

{\begin{aligned}s_{n}=&(c_{1}+1)s_{n-1}\\&+(c_{2}-c_{1})s_{n-2}+\dots +(c_{d}-c_{d-1})s_{n-d}\\&-c_{d}s_{n-d-1}.\end{aligned}}

In terms of generating functions

A sequence is constant-recursive precisely when its generating function

\sum _{n=0}^{\infty }s_{n}x^{n}=s_{0}+s_{1}x^{1}+s_{2}x^{2}+s_{3}x^{3}+\cdots

is a rational function p(x)\,/\,q(x), where p and q are polynomials and q(0)=1. Moreover, the order of the sequence is the minimum d such that it has such a form with {\text{deg }}q(x)\leq d and {\text{deg }}p(x)<d.

The denominator is the polynomial obtained from the auxiliary polynomial by reversing the order of the coefficients, and the numerator is determined by the initial values of the sequence:

\sum _{n=0}^{\infty }s_{n}x^{n}={\frac {b_{0}+b_{1}x^{1}+b_{2}x^{2}+\dots +b_{d-1}x^{d-1}}{1-c_{1}x^{1}-c_{2}x^{2}-\dots -c_{d}x^{d}}},

where

b_{n}=s_{n}-c_{1}s_{n-1}-c_{2}s_{n-2}-\dots -c_{d}s_{n-d}.

It follows from the above that the denominator q(x) must be a polynomial not divisible by x (and in particular nonzero).

In terms of sequence spaces

A sequence (s_{n})_{n=0}^{\infty } is constant-recursive if and only if the set of sequences

\left\{(s_{n+r})_{n=0}^{\infty }:r\geq 0\right\}

is contained in a sequence space (vector space of sequences) whose dimension is finite. That is, (s_{n})_{n=0}^{\infty } is contained in a finite-dimensional subspace of \mathbb {C} ^{\mathbb {N} } closed under the left-shift operator.

This characterization is because the order-d linear recurrence relation can be understood as a proof of linear dependence between the sequences (s_{n+r})_{n=0}^{\infty } for r=0,\ldots ,d. An extension of this argument shows that the order of the sequence is equal to the dimension of the sequence space generated by (s_{n+r})_{n=0}^{\infty } for all r.

04Closed-form characterization

Constant-recursive sequences admit the following unique closed form characterization using exponential polynomials: every constant-recursive sequence can be written in the form

s_{n}=z_{n}+k_{1}(n)r_{1}^{n}+k_{2}(n)r_{2}^{n}+\cdots +k_{e}(n)r_{e}^{n},

for all n\geq 0, where

  • The term z_{n} is a sequence which is zero for all n\geq d (where d is the order of the sequence);
  • The terms k_{1}(n),k_{2}(n),\ldots ,k_{e}(n) are complex polynomials; and
  • The terms r_{1},r_{2},\ldots ,r_{k} are distinct complex constants.

This characterization is exact: every sequence of complex numbers that can be written in the above form is constant-recursive.

For example, the Fibonacci number F_{n} is written in this form using Binet's formula:

F_{n}={\frac {1}{\sqrt {5}}}\varphi ^{n}-{\frac {1}{\sqrt {5}}}\psi ^{n},

where \varphi =(1+{\sqrt {5}})\,/\,2\approx 1.61803\ldots is the golden ratio and \psi =-1\,/\,\varphi. These are the roots of the equation x^{2}-x-1=0. In this case, e=2, z_{n}=0 for all n, k_{1}(n)=k_{2}(n)=1\,/\,{\sqrt {5}} are both constant polynomials, r_{1}=\varphi, and r_{2}=\psi.

The term z_{n} is only needed when c_{d}\neq 0; if c_{d}=0 then it corrects for the fact that some initial values may be exceptions to the general recurrence. In particular, z_{n}=0 for all n\geq d.

The complex numbers r_{1},\ldots ,r_{n} are the roots of the characteristic polynomial of the recurrence:

x^{d}-c_{1}x^{d-1}-\dots -c_{d-1}x-c_{d}

whose coefficients are the same as those of the recurrence. We call r_{1},\ldots ,r_{n} the characteristic roots of the recurrence. If the sequence consists of integers or rational numbers, the roots will be algebraic numbers. If the d roots r_{1},r_{2},\dots ,r_{d} are all distinct, then the polynomials k_{i}(n) are all constants, which can be determined from the initial values of the sequence. If the roots of the characteristic polynomial are not distinct, and r_{i} is a root of multiplicity m, then k_{i}(n) in the formula has degree m-1. For instance, if the characteristic polynomial factors as (x-r)^{3}, with the same root r occurring three times, then the nth term is of the form s_{n}=(a+bn+cn^{2})r^{n}.

05Closure properties

Examples

The sum of two constant-recursive sequences is also constant-recursive. For example, the sum of s_{n}=2^{n} and t_{n}=n is u_{n}=2^{n}+n (1,3,6,11,20,\ldots), which satisfies the recurrence u_{n}=4u_{n-1}-5u_{n-2}+2u_{n-3}. The new recurrence can be found by adding the generating functions for each sequence.

Similarly, the product of two constant-recursive sequences is constant-recursive. For example, the product of s_{n}=2^{n} and t_{n}=n is u_{n}=n\cdot 2^{n} (0,2,8,24,64,\ldots), which satisfies the recurrence u_{n}=4u_{n-1}-4u_{n-2}.

The left-shift sequence u_{n}=s_{n+1} and the right-shift sequence u_{n}=s_{n-1} (with u_{0}=0) are constant-recursive because they satisfy the same recurrence relation. For example, because s_{n}=2^{n} is constant-recursive, so is u_{n}=2^{n+1}.

List of operations

In general, constant-recursive sequences are closed under the following operations, where s=(s_{n})_{n\in \mathbb {N} },t=(t_{n})_{n\in \mathbb {N} } denote constant-recursive sequences, f(x),g(x) are their generating functions, and d,e are their orders, respectively.

Operations on constant-recursive sequences
OperationDefinitionRequirementGenerating function equivalentOrder
Term-wise sum s+t(s+t)_{n}=s_{n}+t_{n}, f(x)+g(x)\leq d+e
Term-wise product s\cdot t(s\cdot t)_{n}=s_{n}\cdot t_{n}, {\frac {1}{2\pi i}}\int _{\gamma }{\frac {f(\zeta )}{\zeta }}g\left({\frac {x}{\zeta }}\right)\;\mathrm {d} \zeta\leq d\cdot e
Cauchy product s*t(s*t)_{n}=\sum _{i=0}^{n}s_{i}t_{n-i}, f(x)g(x)\leq d+e
Left shift Ls(Ls)_{n}=s_{n+1}, {\frac {f(x)-s_{0}}{x}}\leq d
Right shift Rs(Rs)_{n}={\begin{cases}s_{n-1}&n\geq 1\\0&n=0\end{cases}}, xf(x)\leq d+1
Cauchy inverse s^{(-1)}(s^{(-1)})_{n}=\sum _{{i_{1}+\dots +i_{k}=n} \atop {i_{1},\ldots ,i_{k}\neq 0}}(-1)^{k}s_{i_{1}}s_{i_{2}}\cdots s_{i_{k}}s_{0}=1{\frac {1}{f(x)}}\leq d+1
Kleene star s^{(*)}(s^{(*)})_{n}=\sum _{{i_{1}+\dots +i_{k}=n} \atop {i_{1},\ldots ,i_{k}\neq 0}}s_{i_{1}}s_{i_{2}}\cdots s_{i_{k}}s_{0}=0{\frac {1}{1-f(x)}}\leq d+1

The closure under term-wise addition and multiplication follows from the closed-form characterization in terms of exponential polynomials. The closure under Cauchy product follows from the generating function characterization. The requirement s_{0}=1 for Cauchy inverse is necessary for the case of integer sequences, but can be replaced by s_{0}\neq 0 if the sequence is over any field (rational, algebraic, real, or complex numbers).

06Behavior

Unsolved problem in mathematics Is there an algorithm to test whether a constant-recursive sequence has a zero? More unsolved problems in mathematics

Zeros

Despite satisfying a simple local formula, a constant-recursive sequence can exhibit complicated global behavior. Define a zero of a constant-recursive sequence to be a nonnegative integer n such that s_{n}=0. The Skolem-Mahler-Lech theorem states that the zeros of the sequence are eventually repeating: there exists constants M and N such that for all n>M, s_{n}=0 if and only if s_{n+N}=0. This result holds for a constant-recursive sequence over the complex numbers, or more generally, over any field of characteristic zero.

Decision problems

The pattern of zeros in a constant-recursive sequence can also be investigated from the perspective of computability theory. To do so, the description of the sequence s_{n} must be given a finite description; this can be done if the sequence is over the integers, rational numbers, or algebraic numbers. Given such an encoding for sequences s_{n}, the following problems can be studied:

Notable decision problems
ProblemDescriptionStatus
Existence of a zero (Skolem problem) On input (s_{n})_{n=0}^{\infty }, is s_{n}=0 for some n? Open
Infinitely many zeros On input (s_{n})_{n=0}^{\infty }, is s_{n}=0 for infinitely many n? Decidable
Eventually all zero On input (s_{n})_{n=0}^{\infty }, is s_{n}=0 for all sufficiently large n? Decidable
Positivity On input (s_{n})_{n=0}^{\infty }, is s_{n}>0 for all n? Open
Eventual positivity On input (s_{n})_{n=0}^{\infty }, is s_{n}>0 for all sufficiently large n? Open

Because the square of a constant-recursive sequence s_{n}^{2} is still constant-recursive (see closure properties), the existence-of-a-zero problem in the table above reduces to positivity, and infinitely-many-zeros reduces to eventual positivity. Other problems also reduce to those in the above table: for example, whether s_{n}=c for some n reduces to existence-of-a-zero for the sequence s_{n}-c. As a second example, for sequences in the real numbers, weak positivity (is s_{n}\geq 0 for all n?) reduces to positivity of the sequence -s_{n} (because the answer must be negated, this is a Turing reduction).

The Skolem-Mahler-Lech theorem would provide answers to some of these questions, except that its proof is non-constructive. It states that for all n>M, the zeros are repeating; however, the value of M is not known to be computable, so this does not lead to a solution to the existence-of-a-zero problem. On the other hand, the exact pattern which repeats after n>M is computable. This is why the infinitely-many-zeros problem is decidable: just determine if the infinitely-repeating pattern is empty.

Decidability results are known when the order of a sequence is restricted to be small. For example, the Skolem problem is decidable for algebraic sequences of order up to 4. It is also known to be decidable for reversible integer sequences up to order 7, that is, sequences that may be continued backwards in the integers.

Decidability results are also known under the assumption of certain unproven conjectures in number theory. For example, decidability is known for rational sequences of order up to 5 subject to a conjecture known as Skolem's conjecture or the exponential local-global principle. Decidability is also known for all simple rational sequences (those with simple characteristic polynomial) subject to the Skolem conjecture and the weak p-adic Schanuel conjecture.

Degeneracy

Let r_{1},\ldots ,r_{n} be the characteristic roots of a constant recursive sequence s. We say that the sequence is degenerate if the ratio r_{i}/r_{j} is a root of unity, for any i\neq j. It is often easier to study non-degenerate sequences, and one can reduce to this using the following theorem: if s has order d and is contained in a number field K of degree k over \mathbb {Q}, then there is a constant M(k,d)\leq {\begin{cases}\exp(2d(3\log d)^{1/2})&{\text{if }}k=1,\\2^{kd+1}&{\text{if }}k\geq 2\end{cases}}

such that for some M\leq M(k,d) each subsequence s_{Mn+\ell } is either identically zero or non-degenerate.

07Generalizations

A D-finite or holonomic sequence is a natural generalization where the coefficients of the recurrence are allowed to be polynomial functions of n rather than constants.

A k-regular sequence satisfies a linear recurrences with constant coefficients, but the recurrences take a different form. Rather than s_{n} being a linear combination of s_{m} for some integers m that are close to n, each term s_{n} in a k-regular sequence is a linear combination of s_{m} for some integers m whose base-k representations are close to that of n. Constant-recursive sequences can be thought of as 1-regular sequences, where the base-1 representation of n consists of n copies of the digit 1.

Watch videos about Constant-recursive sequenceExplainers and documentaries on YouTube (opens in a new tab)

Sources and credits

This article is adapted from the Wikipedia article Constant-recursive sequence, written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.

Images, from Wikimedia Commons:

Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.