
23:2 On Rational Recursive Sequences
1 Introduction
The topic of this paper are recursively defined sequences of rational numbers
NÑQ
. There
are two natural ways to define such sequences. In a simple recursion of depth
k
one fixes
k
initial values and defines the next value as a function of the previous
k
values. This is how
the Fibonacci sequence is usually defined (with
k“
2):
f0“
0,
f1“
1, and
fn`2“fn`1`fn
.
In a mutual recursion of width
k
one defines a system of
k
sequences such that every sequence
has its initial value and the update function can access the immediately previous value of all
k
sequences, but no older value. For example, we can define
an“n2
with an extra sequence
bn“n
as follows:
a0“b0“
0and
an`1“an`
2
bn`
1,
bn`1“bn`
1. Both styles allow to
define various classes of sequences depending on what operations are allowed in the equations,
and in general mutual recursion of width
k
can simulate simple recursion of depth
k
(by
adding sufficiently many auxiliary sequences).
One of the most well-known classes of sequences is the class of linear recursive sequences,
which is obtained by allowing the update function to use addition and multiplication with
constants. These are usually defined with a simple recursion, like in the Fibonacci example,
but in fact, as a consequence of the Cayley-Hamilton theorem, one obtains the same class
when using mutual recursion [
19
, Lemma 1.1]. In particular, all the example sequences
fn
,
anand bnare linear recursive.
Another natural class of sequences are the polynomial recursive sequences (polyrec),
which are defined with mutual recursion and updates from the ring of polynomial functions
Qrx1, . . . , xks
. An example sequence from this class is
cn“n
!, where one can use the already
defined sequence
bn
and define
c0“
1and
cn`1“cn¨ pbn`
1
q
. To see the polynomials
behind this definition, let
x
and
y
be variables corresponding to
bn
and
cn
, respectively.
The polynomial to define
bn`1
is
Pbpx, yq “ x`
1, and the polynomial to define
cn`1
is
Pcpx, yq “ ypx`
1
q
. The class of simple polynomial recursive sequences is obtained by using
polynomial updates and a simple recursion (instead of mutual recursion) and it is known to
be strictly included in the class of all polyrec sequences. In particular, the sequence
cn
is
polyrec but not simple polyrec [12, Theorem 3.1].
The definition via mutual recursion appears in the area of control theory (under the name
implicit representation of the space of states), and, in computer science, in the context of
weighted automata over
Q
. Such automata output a rational number for every word over a
finite alphabet Σ, and they are defined by linear updates [
16
]. Linear recursive sequences
are thus equivalent to weighted automata with a 1-letter alphabet Σ
“ tau
[
3
]. Similarly,
polyrec sequences are equivalent to polynomial automata [
4
] (also known as cost-register
automata [1]) with a 1-letter alphabet [12].
We are interested in two classical decision problems for such automata. Equivalence:
Given two automata
A
and
B
do they output the same number for every word, and zeroness:
Does the input automaton
A
output 0for every word. These problems are well-known to
be efficiently equivalent to each other: Zeroness is clearly a special case of equivalence (just
take
B
to output zero for every word), and equivalence of
A,B
reduces to zeroness of the
difference automaton
A´B
with the expected semantics. Therefore, we will consider only
the zeroness problem. From the seminal work of Schützenberger on minimisation of weighted
automata it follows that the zeroness problem for weighted automata is in PTIME [
30
] (in
fact even in
NC2
[
34
]). For polynomial automata over a binary alphabet, zeroness is known
to be Ackermann-complete [
4
]. Using the connection between sequences and automata one
immediately obtains
NC2
and Ackermann upper bounds for the zeroness problem of linear
recursive sequences, resp., polyrec sequences.