Cobham's theorem

Last updated

Cobham's theorem is a theorem in combinatorics on words that has important connections with number theory, notably transcendental numbers, and automata theory. Informally, the theorem gives the condition for the members of a set S of natural numbers written in bases b1 and base b2 to be recognised by finite automata. Specifically, consider bases b1 and b2 such that they are not powers of the same integer. Cobham's theorem states that S written in bases b1 and b2 is recognised by finite automata if and only if S differs by a finite set from a finite union of arithmetic progressions. The theorem was proved by Alan Cobham in 1969 [1] and has since given rise to many extensions and generalisations. [2] [3]

Contents

Definitions

Let be an integer. The representation of a natural number in base is the sequence of digits such that

where and . The word is often denoted , or more simply, .

A set of natural numbers S is recognisable in base or more simply -recognisable or -automatic if the set of the representations of its elements in base is a language recognisable by a finite automaton on the alphabet .

Two positive integers and are multiplicatively independent if there are no non-negative integers and such that . For example, 2 and 3 are multiplicatively independent, but 8 and 16 are not since . Two integers are multiplicatively dependent if and only if they are powers of a same third integer.

Problem statements

Original problem statement

More equivalent statements of the theorem have been given. The original version by Cobham is the following: [1]

Theorem (Cobham 1969)  Let be a set of non-negative integers and let and be multiplicatively independent positive integers. Then is recognizable by finite automata in both -ary and -ary notation if and only if it is ultimately periodic.

Another way to state the theorem is by using automatic sequences. Cobham himself calls them "uniform tag sequences.". [4] The following form is found in Allouche and Shallit's book: [5]

Theorem  Let and be two multiplicatively independent integers. A sequence is both -automatic and -automatic only if it is -automatic [6]

We can show that the characteristic sequence of a set of natural numbers S recognisable by finite automata in base k is a k-automatic sequence and that conversely, for all k-automatic sequences and all integers , the set of natural numbers such that is recognisable in base .

Formulation in logic

Cobham's theorem can be formulated in first-order logic using a theorem proven by Büchi in 1960. [7] This formulation in logic allows for extensions and generalisations. The logical expression uses the theory [8]

of natural integers equipped with addition and the function defined by and for any positive integer , if is the largest power of that divides . For example, , and .

A set of integers is definable in first-order logic in if it can be described by a first-order formula with equality, addition, and .

Examples:

Cobham's theorem reformulated  Let S be a set of natural numbers, and let and be two multiplicatively independent positive integers. Then S is first-order definable in and in if and only if S is ultimately periodic.

We can push the analogy with logic further by noting that S is first-order definable in Presburger arithmetic if and only if it is ultimately periodic. So, a set S is definable in the logics and if and only if it is definable in Presburger arithmetic.

Generalisations

Approach by morphisms

An automatic sequence is a particular morphic word, whose morphism is uniform, meaning that the length of the images generated by the morphism for each letter of its input alphabet is the same. A set of integers is hence k-recognisable if and only if its characteristic sequence is generated by a uniform morphism followed by a coding, where a coding is a morphism that maps each letter of the input alphabet to a letter of the output alphabet. For example, the characteristic sequence of the powers of 2 is produced by the 2-uniform morphism (meaning each letter is mapped to a word of length 2) over the alphabet defined by

which generates the infinite word

,

followed by the coding (that is, letter to letter) that maps to and leaves and unchanged, giving

.

The notion has been extended as follows: [9] a morphic word is -substitutive for a certain number if when written in the form

where the morphism , prolongable in , has the following properties:

A set S of natural numbers is -recognisable if its characteristic sequence is -substitutive.

A last definition: a Perron number is an algebraic number such that all its conjugates belong to the disc . These are exactly the dominant eigenvalues of the primitive matrices of positive integers.

We then have the following statement: [9]

Cobham's theorem for substitutions  Let α et β be two multiplicatively independent Perron numbers. Then a sequence x with elements belonging to a finite set is both α-substitutive and β-substitutive if and only if x is ultimately periodic.

Logic approach

The logic equivalent permits to consider more general situations: the automatic sequences over the natural numbers or recognisable sets have been extended to the integers , to the Cartesian products , to the real numbers and to the Cartesian products . [8]

Extension to

We code the base integers by prepending to the representation of a positive integer the digit , and by representing negative integers by followed by the number's -complement. For example, in base 2, the integer is represented as . The powers of 2 are written as , and their negatives (since is the representation of ).

Extension to

A subset of is recognisable in base if the elements of , written as vectors with components, are recognisable over the resulting alphabet.

For example, in base 2, we have and ; the vector is written as .

Semenov's theorem (1977) [10]   Let and be two multiplicatively independent positive integers. A subset of is -recognisable and -recognisable if and only if is describable in Presburger arithmetic.

An elegant proof of this theorem is given by Muchnik in 1991 by induction on . [11]

Other extensions have been given to the real numbers and vectors of real numbers. [8]

Proofs

Samuel Eilenberg announced the theorem without proof in his book; [12] he says "The proof is correct, long, and hard. It is a challenge to find a more reasonable proof of this fine theorem." Georges Hansel proposed a more simple proof, published in the not-easily accessible proceedings of a conference. [13] The proof of Dominique Perrin [14] and that of Allouche and Shallit's book [15] contains the same error in one of the lemmas, mentioned in the list of errata of the book. [16] This error was uncovered in a note by Tomi Kärki, [17] and corrected by Michel Rigo and Laurent Waxweiler. [18] This part of the proof has been recently written. [19]

In January 2018, Thijmen J. P. Krebs announced, on Arxiv, a simplified proof of the original theorem, based on Dirichlet's approximation criterion instead of that of Kronecker; the article appeared in 2021. [20] The employed method has been refined and used by Mol, Rampersad, Shallit and Stipulanti. [21]

Notes and references

  1. 1 2 Cobham, Alan (1969). "On the base-dependence of sets of numbers recognizable by finite automata". Mathematical Systems Theory. 3 (2): 186–192. doi: 10.1007/BF01746527 . MR   0250789.
  2. Durand, Fabien; Rigo, Michel (2010) [Chapter originally written 2010]. "On Cobham's Theorem" (PDF). In Pin, J.-É. (ed.). Automata: from Mathematics to Applications. European Mathematical Society.
  3. Adamczewski, Boris; Bell, Jason (2010) [Chapter originally written 2010]. "Automata in number theory" (PDF). In Pin, J.-É. (ed.). Automata: from Mathematics to Applications. European Mathematical Society.
  4. Cobham, Alan (1972). "Uniform tag sequences". Mathematical Systems Theory. 6 (1–2): 164–192. doi: 10.1007/BF01706087 . MR   0457011.
  5. Allouche, Jean-Paul [in French]; Shallit, Jeffrey (2003). Automatic Sequences: theory, applications, generalizations. Cambridge: Cambridge University Press. p. 350. ISBN   0-521-82332-3.
  6. A "1-automatic" sequence is a sequence that is ultimately periodic
  7. Büchi, J. R. (1990). "Weak Second-Order Arithmetic and Finite Automata". The Collected Works of J. Richard Büchi. Z. Math. Logik Grundlagen Math. Vol. 6. p. 87. doi:10.1007/978-1-4613-8928-6_22. ISBN   978-1-4613-8930-9.
  8. 1 2 3 Bruyère, Véronique (2010). "Around Cobham's theorem and some of its extensions". Dynamical Aspects of Automata and Semigroup Theories. Satellite Workshop of Highlights of AutoMathA. Retrieved 19 January 2017.
  9. 1 2 Durand, Fabien (2011). "Cobham's theorem for substitutions". Journal of the European Mathematical Society . 13 (6): 1797–1812. arXiv: 1010.4009 . doi: 10.4171/JEMS/294 .
  10. Semenov, Alexei Lvovich (1977). "Predicates regular in two number systems are Presburger". Sib. Mat. Zh. (in Russian). 18: 403–418. doi:10.1007/BF00967164. MR   0450050. S2CID   119658350. Zbl   0369.02023.
  11. Muchnik (2003). "The definable criterion for definability in Presburger arithmetic and its applications" (PDF). Theoretical Computer Science. 290 (3): 1433–1444. doi: 10.1016/S0304-3975(02)00047-6 .
  12. Eilenberg, Samuel (1974). Automata, Languages and Machines, Vol. A. Pure and Applied Mathematics. New York: Academic Press. pp. xvi+451. ISBN   978-0-12-234001-7..
  13. Hansel, Georges (1982). "À propos d'un théorème de Cobham". In Perrin, D. (ed.). Actes de la Fête des mots (in French). Rouen: Greco de programmation, CNRS. pp. 55–59.
  14. Perrin, Dominique (1990). "Finite Automata". In van Leeuwen, Jan (ed.). Handbook of Theoretical Computer Science. Vol. B: Formal Models and Semantics. Elsevier. pp. 1–57. ISBN   978-0444880741.
  15. Allouche, Jean-Paul [in French]; Shallit, Jeffrey (2003). Automatic Sequences: theory, applications, generalizations. Cambridge: Cambridge University Press. ISBN   0-521-82332-3.
  16. Shallit, Jeffrey; Allouche, Jean-Paul (31 March 2020). "Errata for Automatic Sequences: Theory, Applications, Generalizations" (PDF). Retrieved 25 June 2021.
  17. Tomi Kärki (2005). "A Note on the Proof of Cobham's Theorem" (PDF). Rapport Technique n° 713. University of Turku. Retrieved 23 January 2017.
  18. Michel Rigo; Laurent Waxweiler (2006). "A Note on Syndeticity, Recognizable Sets and Cobham's Theorem" (PDF). Bulletin of the EATCS. 88: 169–173. arXiv: 0907.0624 . MR   2222340. Zbl   1169.68490 . Retrieved 23 January 2017.
  19. Paul Fermé, Willy Quach and Yassine Hamoudi (2015). "Le théorème de Cobham" [Cobham's Theorem](PDF) (in French). Archived from the original (PDF) on 2017-02-02. Retrieved 24 January 2017.
  20. Krebs, Thijmen J. P. (2021). "A More Reasonable Proof of Cobham's Theorem". International Journal of Foundations of Computer Science. 32 (2): 203207. arXiv: 1801.06704 . doi:10.1142/S0129054121500118. ISSN   0129-0541. S2CID   39850911.
  21. Mol, Lucas; Rampersad, Narad; Shallit, Jeffrey; Stipulanti, Manon (2019). "Cobham's Theorem and Automaticity". International Journal of Foundations of Computer Science. 30 (8): 1363–1379. arXiv: 1809.00679 . doi:10.1142/S0129054119500308. ISSN   0129-0541. S2CID   52156852.

Bibliography

Related Research Articles

In mathematics, more specifically in functional analysis, a Banach space is a complete normed vector space. Thus, a Banach space is a vector space with a metric that allows the computation of vector length and distance between vectors and is complete in the sense that a Cauchy sequence of vectors always converges to a well-defined limit that is within the space.

<span class="mw-page-title-main">Euclidean algorithm</span> Algorithm for computing greatest common divisors

In mathematics, the Euclidean algorithm, or Euclid's algorithm, is an efficient method for computing the greatest common divisor (GCD) of two integers (numbers), the largest number that divides them both without a remainder. It is named after the ancient Greek mathematician Euclid, who first described it in his Elements . It is an example of an algorithm, a step-by-step procedure for performing a calculation according to well-defined rules, and is one of the oldest algorithms in common use. It can be used to reduce fractions to their simplest form, and is a part of many other number-theoretic and cryptographic calculations.

<span class="mw-page-title-main">Inner product space</span> Generalization of the dot product; used to define Hilbert spaces

In mathematics, an inner product space is a real vector space or a complex vector space with an operation called an inner product. The inner product of two vectors in the space is a scalar, often denoted with angle brackets such as in . Inner products allow formal definitions of intuitive geometric notions, such as lengths, angles, and orthogonality of vectors. Inner product spaces generalize Euclidean vector spaces, in which the inner product is the dot product or scalar product of Cartesian coordinates. Inner product spaces of infinite dimension are widely used in functional analysis. Inner product spaces over the field of complex numbers are sometimes referred to as unitary spaces. The first usage of the concept of a vector space with an inner product is due to Giuseppe Peano, in 1898.

In mathematics, and more specifically in linear algebra, a linear map is a mapping between two vector spaces that preserves the operations of vector addition and scalar multiplication. The same names and the same definition are also used for the more general case of modules over a ring; see Module homomorphism.

Presburger arithmetic is the first-order theory of the natural numbers with addition, named in honor of Mojżesz Presburger, who introduced it in 1929. The signature of Presburger arithmetic contains only the addition operation and equality, omitting the multiplication operation entirely. The theory is computably axiomatizable; the axioms include a schema of induction.

In mathematics, the branch of real analysis studies the behavior of real numbers, sequences and series of real numbers, and real functions. Some particular properties of real-valued sequences and functions that real analysis studies include convergence, limits, continuity, smoothness, differentiability and integrability.

<span class="mw-page-title-main">Sequence</span> Finite or infinite ordered list of elements

In mathematics, a sequence is an enumerated collection of objects in which repetitions are allowed and order matters. Like a set, it contains members. The number of elements is called the length of the sequence. Unlike a set, the same elements can appear multiple times at different positions in a sequence, and unlike a set, the order does matter. Formally, a sequence can be defined as a function from natural numbers to the elements at each position. The notion of a sequence can be generalized to an indexed family, defined as a function from an arbitrary index set.

In mathematics, rings are algebraic structures that generalize fields: multiplication need not be commutative and multiplicative inverses need not exist. Informally, a ring is a set equipped with two binary operations satisfying properties analogous to those of addition and multiplication of integers. Ring elements may be numbers such as integers or complex numbers, but they may also be non-numerical objects such as polynomials, square matrices, functions, and power series.

<i>p</i>-adic number Number system extending the rational numbers

In number theory, given a prime number p, the p-adic numbers form an extension of the rational numbers which is distinct from the real numbers, though with some similar properties; p-adic numbers can be written in a form similar to decimals, but with digits based on a prime number p rather than ten, and extending to the left rather than to the right.

In algebraic number theory, an algebraic integer is a complex number that is integral over the integers. That is, an algebraic integer is a complex root of some monic polynomial whose coefficients are integers. The set of all algebraic integers A is closed under addition, subtraction and multiplication and therefore is a commutative subring of the complex numbers.

In mathematics, a free abelian group is an abelian group with a basis. Being an abelian group means that it is a set with an addition operation that is associative, commutative, and invertible. A basis, also called an integral basis, is a subset such that every element of the group can be uniquely expressed as an integer combination of finitely many basis elements. For instance the two-dimensional integer lattice forms a free abelian group, with coordinatewise addition as its operation, and with the two points (1,0) and (0,1) as its basis. Free abelian groups have properties which make them similar to vector spaces, and may equivalently be called free-modules, the free modules over the integers. Lattice theory studies free abelian subgroups of real vector spaces. In algebraic topology, free abelian groups are used to define chain groups, and in algebraic geometry they are used to define divisors.

In mathematics, a function between two complex vector spaces is said to be antilinear or conjugate-linear if

<span class="mw-page-title-main">Poincaré half-plane model</span> Upper-half plane model of hyperbolic non-Euclidean geometry

In non-Euclidean geometry, the Poincaré half-plane model is the upper half-plane, denoted below as H, together with a metric, the Poincaré metric, that makes it a model of two-dimensional hyperbolic geometry.

In abstract algebra, a matrix ring is a set of matrices with entries in a ring R that form a ring under matrix addition and matrix multiplication. The set of all n × n matrices with entries in R is a matrix ring denoted Mn(R) (alternative notations: Matn(R) and Rn×n). Some sets of infinite matrices form infinite matrix rings. A subring of a matrix ring is again a matrix ring. Over a rng, one can form matrix rngs.

In abstract algebra, the free monoid on a set is the monoid whose elements are all the finite sequences of zero or more elements from that set, with string concatenation as the monoid operation and with the unique sequence of zero elements, often called the empty string and denoted by ε or λ, as the identity element. The free monoid on a set A is usually denoted A. The free semigroup on A is the subsemigroup of A containing all elements except the empty string. It is usually denoted A+.

In mathematics and theoretical computer science, an automatic sequence (also called a k-automatic sequence or a k-recognizable sequence when one wants to indicate that the base of the numerals used is k) is an infinite sequence of terms characterized by a finite automaton. The n-th term of an automatic sequence a(n) is a mapping of the final state reached in a finite automaton accepting the digits of the number n in some fixed base k.

In mathematics the Baum–Sweet sequence is an infinite automatic sequence of 0s and 1s defined by the rule:

<span class="mw-page-title-main">Real number</span> Number representing a continuous quantity

In mathematics, a real number is a number that can be used to measure a continuous one-dimensional quantity such as a distance, duration or temperature. Here, continuous means that pairs of values can have arbitrarily small differences. Every real number can be almost uniquely represented by an infinite decimal expansion.

In computer science, the complexity function of a word or string is the function that counts the number of distinct factors of that string. More generally, the complexity function of a formal language counts the number of distinct words of given length.

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.