k-regular sequence
In mathematics and theoretical computer science, a k-regular sequence is a sequence satisfying linear recurrence equations that reflect the base-k representations of the integers. The class of k-regular sequences generalizes the class of k-automatic sequences to alphabets of infinite size.
Definition
[edit ]There exist several characterizations of k-regular sequences, all of which are equivalent. Some common characterizations are as follows. For each, we take R′ to be a commutative Noetherian ring and we take R to be a ring containing R′.
k-kernel
[edit ]Let k ≥ 2. The k-kernel of the sequence {\displaystyle s(n)_{n\geq 0}} is the set of subsequences
- {\displaystyle K_{k}(s)=\{s(k^{e}n+r)_{n\geq 0}:e\geq 0{\text{ and }}0\leq r\leq k^{e}-1\}.}
The sequence {\displaystyle s(n)_{n\geq 0}} is (R′, k)-regular (often shortened to just "k-regular") if the {\displaystyle R'}-module generated by Kk(s) is a finitely-generated R′-module.[1]
In the special case when {\displaystyle R'=R=\mathbb {Q} }, the sequence {\displaystyle s(n)_{n\geq 0}} is {\displaystyle k}-regular if {\displaystyle K_{k}(s)} is contained in a finite-dimensional vector space over {\displaystyle \mathbb {Q} }.
Linear combinations
[edit ]A sequence s(n) is k-regular if there exists an integer E such that, for all ej > E and 0 ≤ rj ≤ kej − 1, every subsequence of s of the form s(kejn + rj) is expressible as an R′-linear combination {\displaystyle \sum _{i}c_{ij}s(k^{f_{ij}}n+b_{ij})}, where cij is an integer, fij ≤ E, and 0 ≤ bij ≤ kfij − 1.[2]
Alternatively, a sequence s(n) is k-regular if there exist an integer r and subsequences s1(n), ..., sr(n) such that, for all 1 ≤ i ≤ r and 0 ≤ a ≤ k − 1, every sequence si(kn + a) in the k-kernel Kk(s) is an R′-linear combination of the subsequences si(n).[2]
Formal series
[edit ]Let x0, ..., xk − 1 be a set of k non-commuting variables and let τ be a map sending some natural number n to the string xa0 ... xae − 1, where the base-k representation of x is the string ae − 1...a0. Then a sequence s(n) is k-regular if and only if the formal series {\displaystyle \sum _{n\geq 0}s(n)\tau (n)} is {\displaystyle \mathbb {Z} }-rational.[3]
Automata-theoretic
[edit ]The formal series definition of a k-regular sequence leads to an automaton characterization similar to Schützenberger's matrix machine.[4] [5]
History
[edit ]The notion of k-regular sequences was first investigated in a pair of papers by Allouche and Shallit.[6] Prior to this, Berstel and Reutenauer studied the theory of rational series, which is closely related to k-regular sequences.[7]
Examples
[edit ]Ruler sequence
[edit ]Let {\displaystyle s(n)=\nu _{2}(n+1)} be the {\displaystyle 2}-adic valuation of {\displaystyle n+1}. The ruler sequence {\displaystyle s(n)_{n\geq 0}=0,1,0,2,0,1,0,3,\dots } (OEIS: A007814 ) is {\displaystyle 2}-regular, and the {\displaystyle 2}-kernel
- {\displaystyle \{s(2^{e}n+r)_{n\geq 0}:e\geq 0{\text{ and }}0\leq r\leq 2^{e}-1\}}
is contained in the two-dimensional vector space generated by {\displaystyle s(n)_{n\geq 0}} and the constant sequence {\displaystyle 1,1,1,\dots }. These basis elements lead to the recurrence relations
- {\displaystyle {\begin{aligned}s(2n)&=0,\\s(4n+1)&=s(2n+1)-s(n),\\s(4n+3)&=2s(2n+1)-s(n),\end{aligned}}}
which, along with the initial conditions {\displaystyle s(0)=0} and {\displaystyle s(1)=1}, uniquely determine the sequence.[8]
Thue–Morse sequence
[edit ]The Thue–Morse sequence t(n) (OEIS: A010060 ) is the fixed point of the morphism 0 → 01, 1 → 10. It is known that the Thue–Morse sequence is 2-automatic. Thus, it is also 2-regular, and its 2-kernel
- {\displaystyle \{t(2^{e}n+r)_{n\geq 0}:e\geq 0{\text{ and }}0\leq r\leq 2^{e}-1\}}
consists of the subsequences {\displaystyle t(n)_{n\geq 0}} and {\displaystyle t(2n+1)_{n\geq 0}}.
Cantor numbers
[edit ]The sequence of Cantor numbers c(n) (OEIS: A005823 ) consists of numbers whose ternary expansions contain no 1s. It is straightforward to show that
- {\displaystyle {\begin{aligned}c(2n)&=3c(n),\\c(2n+1)&=3c(n)+2,\end{aligned}}}
and therefore the sequence of Cantor numbers is 2-regular. Similarly the Stanley sequence
of numbers whose ternary expansions contain no 2s is also 2-regular.[9]
Sorting numbers
[edit ]A somewhat interesting application of the notion of k-regularity to the broader study of algorithms is found in the analysis of the merge sort algorithm. Given a list of n values, the number of comparisons made by the merge sort algorithm are the sorting numbers, governed by the recurrence relation
- {\displaystyle {\begin{aligned}T(1)&=0,\\T(n)&=T(\lfloor n/2\rfloor )+T(\lceil n/2\rceil )+n-1,\ n\geq 2.\end{aligned}}}
As a result, the sequence defined by the recurrence relation for merge sort, T(n), constitutes a 2-regular sequence.[10]
Other sequences
[edit ]If {\displaystyle f(x)} is an integer-valued polynomial, then {\displaystyle f(n)_{n\geq 0}} is k-regular for every {\displaystyle k\geq 2}.
The Glaisher–Gould sequence is 2-regular. The Stern–Brocot sequence is 2-regular.
Allouche and Shallit give a number of additional examples of k-regular sequences in their papers.[6]
Properties
[edit ]k-regular sequences exhibit a number of interesting properties.
- Every k-automatic sequence is k-regular.[11]
- Every k-synchronized sequence is k-regular.
- A k-regular sequence takes on finitely many values if and only if it is k-automatic.[12] This is an immediate consequence of the class of k-regular sequences being a generalization of the class of k-automatic sequences.
- The class of k-regular sequences is closed under termwise addition, termwise multiplication, and convolution. The class of k-regular sequences is also closed under scaling each term of the sequence by an integer λ.[12] [13] [14] [15] In particular, the set of k-regular power series forms a ring.[16]
- If {\displaystyle s(n)_{n\geq 0}} is k-regular, then for all integers {\displaystyle m\geq 1}, {\displaystyle (s(n){\bmod {m}})_{n\geq 0}} is k-automatic. However, the converse does not hold.[17]
- For multiplicatively independent k, l ≥ 2, if a sequence is both k-regular and l-regular, then the sequence satisfies a linear recurrence.[18] This is a generalization of a result due to Cobham regarding sequences that are both k-automatic and l-automatic.[19]
- The nth term of a k-regular sequence of integers grows at most polynomially in n.[20]
- If {\displaystyle F} is a field and {\displaystyle x\in F}, then the sequence of powers {\displaystyle (x^{n})_{n\geq 0}} is k-regular if and only if {\displaystyle x=0} or {\displaystyle x} is a root of unity.[21]
Proving and disproving k-regularity
[edit ]Given a candidate sequence {\displaystyle s=s(n)_{n\geq 0}} that is not known to be k-regular, k-regularity can typically be proved directly from the definition by calculating elements of the kernel of {\displaystyle s} and proving that all elements of the form {\displaystyle (s(k^{r}n+e))_{n\geq 0}} with {\displaystyle r} sufficiently large and {\displaystyle 0\leq e<2^{r}} can be written as linear combinations of kernel elements with smaller exponents in the place of {\displaystyle r}. This is usually computationally straightforward.
On the other hand, disproving k-regularity of the candidate sequence {\displaystyle s} usually requires one to produce a {\displaystyle \mathbb {Z} }-linearly independent subset in the kernel of {\displaystyle s}, which is typically trickier. Here is one example of such a proof.
Let {\displaystyle e_{0}(n)} denote the number of {\displaystyle 0}'s in the binary expansion of {\displaystyle n}. Let {\displaystyle e_{1}(n)} denote the number of {\displaystyle 1}'s in the binary expansion of {\displaystyle n}. The sequence {\displaystyle f(n):=e_{0}(n)-e_{1}(n)} can be shown to be 2-regular. The sequence {\displaystyle g=g(n):=|f(n)|} is, however, not 2-regular, by the following argument. Suppose {\displaystyle (g(n))_{n\geq 0}} is 2-regular. We claim that the elements {\displaystyle g(2^{k}n)} for {\displaystyle n\geq 1} and {\displaystyle k\geq 0} of the 2-kernel of {\displaystyle g} are linearly independent over {\displaystyle \mathbb {Z} }. The function {\displaystyle n\mapsto e_{0}(n)-e_{1}(n)} is surjective onto the integers, so let {\displaystyle x_{m}} be the least integer such that {\displaystyle e_{0}(x_{m})-e_{1}(x_{m})=m}. By 2-regularity of {\displaystyle (g(n))_{n\geq 0}}, there exist {\displaystyle b\geq 0} and constants {\displaystyle c_{i}} such that for each {\displaystyle n\geq 0},
- {\displaystyle \sum _{0\leq i\leq b}c_{i}g(2^{i}n)=0.}
Let {\displaystyle a} be the least value for which {\displaystyle c_{a}\neq 0}. Then for every {\displaystyle n\geq 0},
- {\displaystyle g(2^{a}n)=\sum _{a+1\leq i\leq b}-(c_{i}/c_{a})g(2^{i}n).}
Evaluating this expression at {\displaystyle n=x_{m}}, where {\displaystyle m=0,-1,1,2,-2} and so on in succession, we obtain, on the left-hand side
- {\displaystyle g(2^{a}x_{m})=|e_{0}(x_{m})-e_{1}(x_{m})+a|=|m+a|,}
and on the right-hand side,
- {\displaystyle \sum _{a+1\leq i\leq b}-(c_{i}/c_{a})|m+i|.}
It follows that for every integer {\displaystyle m},
- {\displaystyle |m+a|=\sum _{a+1\leq i\leq b}-(c_{i}/c_{a})|m+i|.}
But for {\displaystyle m\geq -a-1}, the right-hand side of the equation is monotone because it is of the form {\displaystyle Am+B} for some constants {\displaystyle A,B}, whereas the left-hand side is not, as can be checked by successively plugging in {\displaystyle m=-a-1}, {\displaystyle m=-a}, and {\displaystyle m=-a+1}. Therefore, {\displaystyle (g(n))_{n\geq 0}} is not 2-regular.[22]
Notes
[edit ]- ^ Allouche and Shallit (1992), Definition 2.1.
- ^ a b Allouche & Shallit (1992), Theorem 2.2.
- ^ Allouche & Shallit (1992), Theorem 4.3.
- ^ Allouche & Shallit (1992), Theorem 4.4.
- ^ Schützenberger, M.-P. (1961), "On the definition of a family of automata", Information and Control, 4 (2–3): 245–270, doi:10.1016/S0019-9958(61)80020-X .
- ^ a b Allouche & Shallit (1992, 2003).
- ^ Berstel, Jean; Reutenauer, Christophe (1988). Rational Series and Their Languages. EATCS Monographs on Theoretical Computer Science. Vol. 12. Springer-Verlag. ISBN 978-3-642-73237-9.
- ^ Allouche & Shallit (1992), Example 8.
- ^ Allouche & Shallit (1992), Examples 3 and 26.
- ^ Allouche & Shallit (1992), Example 28.
- ^ Allouche & Shallit (1992), Theorem 2.3.
- ^ a b Allouche & Shallit (2003) p. 441.
- ^ Allouche & Shallit (1992), Theorem 2.5.
- ^ Allouche & Shallit (1992), Theorem 3.1.
- ^ Allouche & Shallit (2003) p. 445.
- ^ Allouche and Shallit (2003) p. 446.
- ^ Allouche and Shallit (2003) p. 441.
- ^ Bell, J. (2006). "A generalization of Cobham's theorem for regular sequences". Séminaire Lotharingien de Combinatoire. 54A.
- ^ Cobham, A. (1969). "On the base-dependence of sets of numbers recognizable by finite automata". Math. Systems Theory. 3 (2): 186–192. doi:10.1007/BF01746527. S2CID 19792434.
- ^ Allouche & Shallit (1992) Theorem 2.10.
- ^ Allouche and Shallit (2003) p. 444.
- ^ Allouche and Shallit (1993) p. 168–169.
References
[edit ]- Allouche, Jean-Paul; Shallit, Jeffrey (1992), "The ring of k-regular sequences", Theoret. Comput. Sci., 98 (2): 163–197, doi:10.1016/0304-3975(92)90001-v .
- Allouche, Jean-Paul; Shallit, Jeffrey (2003), "The ring of k-regular sequences, II", Theoret. Comput. Sci., 307: 3–29, doi:10.1016/s0304-3975(03)00090-2 .
- Allouche, Jean-Paul; Shallit, Jeffrey (2003). Automatic Sequences: Theory, Applications, Generalizations. Cambridge University Press. ISBN 978-0-521-82332-6. Zbl 1086.11015.