Links between computability and definability: algorithmic randomness and reverse mathematics

  1. Links between computability and definability
    1. Computability
    2. Definability
    3. Links between those
    4. The case of infinite computations
  2. Two applications :
    1. Algorithmic randomness
    2. Reverse Mathematics, and Hindman's Theorem

Paul-Elliot Anglès d'Auriac, ICJ

Links between computability and definability
Computability
A computation is the mechanical execution of a set of basic operations.
Infinite memory
Finite set of states
Rules to change state
For instance, computers perform computations, as well as us when we sum integers.
  • A function is computable if the image of an element can be known by a computation.
  • A set of integers is computable if the belonging of an element to the set can be known by a computation.
  • A set of integers is computably enumerable if it can be enumerated by a computation.
\(f\) computable
\(A\) computable
\(A\) c.e.
\(n\)
\(f(n)\)
\(n\in A\)
Some sets are uncomputable:
  • There are countably many programs, but uncountably many sets.
  • Fix a reasonable enumeration \((\Phi_e)_{e\in\mathbb N}\).
  • The set \[\emptyset' = \{e: \Phi_e(e)\text{ halts}\}\] is not computable. This set is called the halting problem.
A computation relativized to \(C\) is the mechanical execution of a set of basic operations, with an oracle answering questions of the form "is \(n\in C\)?".
Infinite memory
Finite set of states
Rules to change state
Has access to \(C\) for free
If a set \(A\) is computable relative to a set \(B\), we write \[A\leq_TB\]
We have \[\emptyset' = \{e\in\mathbb N: \Phi_e(e)\text{ halts}\} \quad {\color{red}\leq_T} \quad\{e\in\mathbb N: \Phi_e\text{ is total}\}\]
Proof: Consider the following (relativized) algorithm:
  • Input: \(e\)
  • Find \(e'\) such that \(\Phi_{e'}(n) := \Phi_e(e)\) for every \(n\),
  • Answer if \(\Phi_e(e)\) halts according to whether \(\Phi_{e'}\) is total.
Fix a set \(A\). Some sets are uncomputable in \(A\):
  • There are countably many programs, but uncountably many sets.
  • Fix a reasonable enumeration \((\Phi_e^A)_{e\in\mathbb N}\).
  • The set \[A' = \{e: \Phi^A_e(e)\text{ halts}\}\] is not computable relative to \(A\). This set is called the jump of \(A\).
Fix a set \(A\). The jump of \(A\), written \(A'\), is the set of code of algorithm relativized to \(A\) which halts. In other words, \[A' = \{e: \Phi^A_e(e)\text{ halts}\}\]
Definability We will mainly work in the language of second order arithmetics.
  • The first order part: \((0,1,+,\times, \lt)\) and quantifiers \(\forall n\) and \(\exists n\).
  • The second order part: the predicate \(n\in X\) and quantifiers \(\forall X\) and \(\exists X\).
In slip language, we are able to define a notion of complexity of formulas.
  • A formula is \(\Delta_0^0=\Pi^0_0=\Sigma^0_0\) if it only has bounded quantifiers,
  • A formula is \(\Sigma^0_{n+1}\) if it is of the form \(\exists n, \phi(n)\) where \(\phi\) is \(\Pi^0_n\)
  • A formula is \(\Pi^0_{n+1}\) if it is of the form \(\forall n, \phi(n)\) where \(\phi\) is \(\Sigma^0_n\)
  • A formula is \(\Delta^0_n\) if it is equivalent to both a \(\Sigma^0_n\) and a \(\Pi^0_n\) formula
A set is \(\Gamma\)-definable if it is definable by comprehension by a \(\Gamma\) formula.
In Logic, complexity of formulas translates to complexity of sets through definability by comprehension.
  • The set of prime numbers is \(\Delta^0_0\) via the formula: \[\forall n\lt p, \lnot(\exists m\lt p, n\cdot m = p)\]
  • The set \(\emptyset'\) is \(\Sigma^0_1\) via the formula \[\exists t, \phi_e(e)\text{ halts in time }t\]
  • The set \(\{e:\phi_e\) is a total function\(\}\) is \(\Pi^0_2\) via the formula \[\forall n, \exists t, \phi_e(n)\text{ halts in time }t\]

Definition with parameters

When a formula has a set parameter \(A\), the same definition yields the notation \(\Sigma^0_n(A)\), \(\Pi^0_n(A)\), \(\Delta^0_n(A)\).
  • The set \(A'\) is \(\Sigma^0_1(A)\) via the formula \[\exists t, \phi_e^A(e)\text{ halts in time }t\]
  • The set \(\{e:\phi^A_e\) is a total function\(\}\) is \(\Pi^0_2(A)\) via the formula \[\forall n, \exists t, \phi^A_e(n)\text{ halts in time }t\]

Second order definitions

The definition of \(\Sigma^{\color{red}1}_n\), \(\Pi^{\color{red}1}_n\), \(\Delta^{\color{red}1}_n\) are defined the same way, but with:
  • Unbounded quantifications are now quantifications over \(\mathcal P(\mathbb N)\)
  • Bounded quantifications are quantifications over integers.
A well-order is a total order on some \(X\) such that: \[\forall A\subseteq X, \exists n\in A, \forall m\in A, n\leq m\] Being a well-order is therefore a \(\Pi^1_1\) property.
\[\quad M\quad\xrightarrow{\text{An algorithm yields a def.}}\quad\{n\in\mathbb N:M(n)=1\}\] \[?\quad\xleftarrow{\text{A def. yields an algorithm?}}\quad\{n\in\mathbb N:\phi(n)\}\]

Links between definability and computability

For every set \(A\subseteq\mathbb N\), we have : \[A\text{ is computable}\Longleftrightarrow A\text{ is \(\Delta^0_1\)-definable.}\] \[A\text{ is computably enumerable}\Longleftrightarrow A\text{ is \(\Sigma^0_1\)-definable.}\]
\[A\text{ is computable in }C\Longleftrightarrow A\text{ is \(\Delta^0_1(C)\)-definable.}\] \[A\text{ is computably enumerable in }C\Longleftrightarrow A\text{ is \(\Sigma^0_1(C)\)-definable.}\]
The set \(\emptyset'\) is \(\Sigma^0_1\), and for every set \(A\subseteq\mathbb N\), we have : \[A\text{ is computable in }\emptyset'\Longleftrightarrow A\text{ is \(\Delta_2^0\)-definable.}\] Indeed, "\(\Delta^0_1(\Sigma^0_1) = \Delta^0_2\)". Similarly,
\[A\text{ is computable in }C'\Longleftrightarrow A\text{ is \(\Delta_2^0(C)\)-definable.}\]
For every set \(A\subseteq\mathbb N\), we have :
\[A\text{ is \(\Delta^0_{n+1}\) definable}\Longleftrightarrow A\text{ is computable with oracle \(\emptyset^{(n)}\)}\]
\[A\text{ is \(\Sigma^0_{n+1}\) definable}\Longleftrightarrow A\text{ is c.e. with oracle \(\emptyset^{(n)}\)}\]

What about infinite time computation?

Infinite time computation

Infinite time computation

Usually, a computation halts in a finite number of steps. An algorithm consists of the set of rules to go from one step to the next one.

We now want that the number of steps can be infinite. We shall however keep the notion of next one.

\(\omega^{\omega}\)

Three types of infinite time computations

\(\alpha\)-computability
  • A starting state \(C_0\) defining a machine configuration.
  • Rules to go from \(C_i\) to \(C_{i+1}\) .
From finite time to infinite time:
  • First stage: index machine configurations by an ordinal \(\alpha\).
  • Second stage: replace rules by definability.
Let us define \((L_\alpha)_{\alpha\in\mathrm{Ord}}\) the following way:
  • \(L_0 = \emptyset\)
  • \(L_{\alpha+1} = \{ A\subseteq L_\alpha : \) \(A\) is definable in \(L_\alpha\}\)
  • \(L_\lambda = \bigcup_{\alpha<\lambda}L_\alpha\)
We say that \(A\subseteq\mathbb N\) is
  • \(\alpha\)-computable if \(A\) is \(\Delta_1\)-definable in \(L_\alpha\),
  • \(\alpha\)-c.e. if \(A\) is \(\Sigma_1\)-definable in \(L_\alpha\),
  • \(\alpha\)-co-c.e. if \(A\) is \(\Pi_1\)-definable in \(L_\alpha\).
(\(\omega\)-computability corresponds to classical computability)
Not all ordinals are good to bound a computation time:

We say that \(\alpha\) is admissible if for all \(\alpha\)-computable function \(f:\beta<\alpha\to\alpha\), we have \(\lim_{\gamma<\beta} f(\gamma)<\alpha\).

In other words, given \(\beta<\alpha\) tasks to do, each task taking less than \(\alpha\) steps to do, we can do all tasks without running short in time.

Higher Computability
  • A set \(A\subseteq\mathbb N\) is \(\Sigma^1_1\) if it is definable by a formula of the form $$\exists X\in \mathcal P(\mathbb N),\ \psi(X,x)$$ where \(\psi(X,x)\) is arithmetic.
  • A set \(A\subseteq\mathbb N\) is \(\Pi^1_1\) if its complementary is \(\Sigma^1_1\).
  • A set \(A\subseteq\mathbb N\) is \(\Delta^1_1\) if it is both \(\Sigma^1_1\) and \(\Pi^1_1\).
A set \(A\subseteq\mathbb N\) is
  • higher computable if it is \(\Delta^1_1\).
  • higher computably enumerable if it is \(\Pi^1_1\).
  • higher co-computably enumerable if it is \(\Sigma^1_1\).

Links with infinite time computations

A computable ordinal :
The ordinal \(\omega_1^{\mathrm{CK}}\) is the smallest ordinal that is not computable.
A set \(A\subseteq\mathbb N\) is
  • higher computable if and only if it is \(\omega_1^{\mathrm{CK}}\)-computable,
  • higher c.e. if and only if it is \(\omega_1^{\mathrm{CK}}\)-c.e.,
  • higher co-c.e. if and only if it is \(\omega_1^{\mathrm{CK}}\)-co-c.e.
Infinite Time Turing Machine
An Infinite Time Turing Machine (ITTM) is a Turing Machine with three tapes (input, work and output) with a special state (called limit state). An infinite time computation is a sequence of configurations, indexed by an ordinal, such that:
  • At successor steps, the rules are the same as for a regular Turing machine,
  • At limit steps :
    • The state is the limit state
    • The head of the tapes is at the leftmost position
    • Each cell of the memory tape is the \(\limsup\) of its previous values: $$T_\lambda(n)=\limsup_{\alpha<\lambda}T_\alpha(n)$$
A real \(x\) is:
  • Writable if at some step, the machine has \(x\) written on its output tape and halts,
  • Eventually writable if at some step, the machine has \(x\) written on its output tape and never modifies it afterward,
  • Accidentally writable if at some step, the machine has \(x\) written on its output tape.
Let \(\lambda\), \(\zeta\) and \(\Sigma\) the lexicographically least triplet of ordinals such that: $$ L_{\color{red}\lambda}\prec_1 L_{\color{blue}\zeta} \prec_2 L_{\color{green}\Sigma}$$ Then:
  • \(\lambda\) is the supremum of the halting times and of the writable ordinals by an ITTM,
  • \(\zeta\) is the supremum of the stabilisation times and of the eventually writable ordinals by an ITTM,
  • \(\Sigma\) is the supremum of the loopless times, and of the accidentally writable ordinals by an ITTM.
  • \(\lambda\)-computability and writability coincide,
  • \(\zeta\)-computability and eventual writability coincide,
  • \(\Sigma\)-computability and accidental writability coincide.
For the subsets of reals \(A\subseteq\mathbb R\):
  • ITTM-decidable : \(\forall x\in\mathbb R\), we have \(x\in A\Longleftrightarrow M(x)\downarrow=1\) for some total ITTM \(M\).
  • ITTM-semi-decidable : \(\forall x\in\mathbb R\), we have \(x\in A\Longleftrightarrow M(x)\downarrow\).
  • We defined several notions of infinite computations:
    • Of length \(\omega_1^{\mathrm{CK}}<\lambda<\zeta<\Sigma\) or any \(\alpha\) admissible,
    • they relativizes, except for \(\alpha\) admissible.
  • These notions yields new complexity notions on sets, much higher the usual one, but with a similar behaviour!

Two One applications of these links

These links allow to use computability theory in other domains of logic:
  • Descriptive set theory, studying the properties of the definable subsets of the reals.
  • Proof Theory, studying provability from the mathematical point of view.
Descriptive Set Theory: Algorithmic randomness
Study the properties of random reals.

Consider the two following sequences, and their probabilities:

\(\mathbb P(\)
\()=1\)
\()=0.5\)
\()=0.25\)
\()=0.125\)
\() ={2^{-4}}\)
\() ={2^{-5}}\)
\() ={2^{-6}}\)
\() ={2^{-7}}\)
\() ={2^{-8}}\)
\() ={2^{-9}}\)
\() ={2^{-10}}\)
\() ={2^{-11}}\)
\() ={2^{-12}}\)
\() ={2^{-13}}\)
\() ={2^{-14}}\)
\(\mathbb P(\)
\()=1\)
\()=0.5\)
\()=0.25\)
\()=0.125\)
\() ={2^{-4}}\)
\() ={2^{-5}}\)
\() ={2^{-6}}\)
\() ={2^{-7}}\)
\() ={2^{-8}}\)
\() ={2^{-9}}\)
\() ={2^{-10}}\)
\() ={2^{-11}}\)
\() ={2^{-12}}\)
\() ={2^{-13}}\)
\() ={2^{-14}}\)
We remark:
  • Both have the same probabilities.
  • The probability tends toward 0.
  • However, the former seems more random than the latter...
Measure Theory doesn't answer this paradox. Algorithmic randomness does!
An object is random if it doesn't have any discriminatory and simple property.

Random finite sequences

A sequence of letters is random if there is no way to describe it in few words.
The Kolmorogov complexity of a binary string \(\color{green}\sigma\) is the size of the smallest binary string \({\color{red}\tau=0^e1\tau'}\) such that: \[\phi_{\color{red}e}({\color{red}\tau'})={\color{green}\sigma}\]
In other words, \[C({\color{green}\sigma})=\min_{{\color{red}\tau}\in2^{<\omega}}(\{|{\color{red}\tau}|:D_U({\color{red}\tau})={\color{green}\sigma}\})\] where \(D_U\) is a "universal decoder".

It is not difficult to see that we have the following inequality: \[C(|\sigma|)\leq C(\sigma)\leq |\sigma|\]

The bigger the Kolmogorov complexity of a sequence, the more random it appears.

Random infinite sequences

A real is random if it has no logically simple property of measure 0.

We defined a hierarchy of logical complexity using the number of alternation of quantifier. We can use this hierarchy.

A real \(x\in {2^{\mathbb N}}\) is \(\Pi^0_n\)-random if it has no \(\Pi^0_n\) property of measure 0.

By definition of the \(\Pi^0_2\) sets, they are all of the form \(\bigcap_n U_n\) where \(U_n\) is an open set. There is another important notion of randomness:

A ML-test is a \(\Pi^0_2\) set \(A\), such that \(A\) is of the form $$\bigcap_{n\in\mathbb N} U_n$$ where \(\forall n,\ \mu(U_n)\leq {2^{-n}}\). A real \(x\in{2^{\mathbb N}}\) is ML-random if it avoids all ML-tests.

Relation between randomness notions

If an infinite sequence is random, its prefixes should look random.

Let \(x\) be a sequence. The following are equivalent:
  • \(x\) is ML-random,
  • \(x\) has prefixes of maximal Kolmogorov complexity. In other words, there exists \(a\) such that \[\forall n,\quad K(x\upharpoonright n)\geq n -a \]

The more random a sequence is, the less computationally strong it is.

For any sequence \(x\), the following are equivalent:
  • \(x\) is \(\Pi^0_2\)-random
  • \(x\) is ML-random and \(x\) does not compute any non computable c.e set

Conclusion on algorithmic randomness:

  • Each complexity layer induces a randomness notion. We do not define what random real is, but a hierarchy on the reals corresponding to what extent they are random.
  • Each level has its weaknesses :
    • Some reals are "strangely" ML-random.
    • For all \(n\), there exists an arithmetic \(\Pi^0_n\)-random real.
    • This suggests the study of strong randomness notions.

Higher Order Randomness

Higher order randomness is already developed. It adapts classical randomness notions, using the analogy between \(\Pi^1_1\) and computably enumerable:
A real \(x\) is \(\Pi^1_1\)-ML-random if it belongs to no set \(A\) of the form $$A=\bigcap_n{[W_n]^\prec}$$ where the sets \(W_n\) are uniformly \(\Pi^1_1\) and \(\mu([W_n])\leq{2^{-n}}\).
It also introduces new notions :
A real \(x\) is \(\Delta^1_1\)-random if it avoids all \(\Delta^1_1\) measure 0 properties.
A real \(x\) is \(\Pi^1_1\)-random if it avoids all \(\Pi^1_1\) measure 0 properties.
A real is \(\Pi^1_1\)-random if and only if it is \(\Delta^1_1\)-random and \(\omega_1^{\mathrm{CK}}=\omega_1^{\mathrm{CK(x)}}\).
We have the following strict inclusion: $$\Delta^1_1\text{-randomness}\subsetneq\Pi^1_1\text{-ML-randomness}\subsetneq\Pi^1_1\text{-randomness}$$

Randomness for \(\alpha\)-computability and Infinite Time Turing Machine

The extension of the definitions from higher order randomness is straightforward:
A real \(x\) is random over \(L_\alpha\) if it avoids every set \(A\subseteq\mathbb R\), with Borel code in \(L_\alpha\) and of measure 0.
A real \(x\) is ITTM-random if it avoids every set \(A\subseteq\mathbb R\) ITTM-semi-decidable and of measure 0.
A real \(x\) is \(\alpha\)-ML-random if it avoids every set \(A\) of the form $$A=\bigcap_n{[W_n]^\prec}$$ where the sets \(W_n\) are uniformly \(\alpha\)-computably enumerable and \(\mu([W_n])\leq{2^{-n}}\). It is ITTM-ML-random if it is \(\Sigma\)-ML-random.
A real \(x\) is ITTM-random if and only if it is random over \(L_\Sigma\) and \(\Sigma^x=\Sigma\).
For which \(\alpha\) do we have : $$\text{randomness over }L_\alpha\subsetneq\alpha\text{-ML-randomness}\text{ ?}$$
Do we have $$\text{randomness over }L_\Sigma\subsetneq\text{ITTM-ML-randomness}\subsetneq\text{ITTM-randomness}\text{ ?}$$
Let \(\alpha\) be such that \(L_\alpha\models\text{"everything is countable"}\). Then the following statements are equivalent:
  • \(\alpha\)-ML-randomness is strictly stronger than randomness over \(L_\alpha\).
  • \(\alpha\) is projectible in \(\omega\).
  • There exists a universal \(\alpha\)-ML-test.
$$\text{Randomness over }L_\lambda\subsetneq\lambda\text{-ML-randomness}$$ $$\text{Randomness over }L_\zeta=\zeta\text{-ML-randomness}$$ $$\text{Randomness over }L_\Sigma\subsetneq\Sigma\text{-ML-randomness}$$
$$\text{Randomness over }L_\Sigma\subseteq\text{ITTM-randomness}\subsetneq\text{ITTM-ML-randomness}$$
$$\text{Randomness over }L_\Sigma\neq\text{ITTM-randomness ?}$$ Does \(x\) random over \(L_\Sigma\) implies $$L_\zeta[x]\not\prec_2L_\Sigma[x]\text{ ?}$$
If \(x\) is generic over \(L_\Sigma\) then $$L_\zeta[x]\prec_2L_\Sigma[x]$$ We therefore have: $$\text{Genericity over }L_\Sigma = \text{ITTM-genericity}$$
Proof Theory: Reverse Mathematics
The goal of reverse mathematics is to find the necessary axioms to prove theorems from ordinary mathematics.
Prove the axioms, supposing the theorem.
Two theorems \(T_0\) and \(T_1\) are said equivalent over \(B\) if:
  • Taking \(T_0\) and \(B\) as axioms, we can prove \(T_1\)
  • Taking \(T_1\) and \(B\) as axioms, we can prove \(T_0\)
  • First discovery: The vast majority of natural theorems are equivalent to one out of five axiomatic systems.
    • \(\mathrm{RCA}_0\), constructive mathematics,
      Robinson Arithmetics
      \(\Delta^0_1\)-comprehension
      \(\Sigma^0_1\)-induction
    • \(\mathrm{WKL}_0\), compactness,
      \(\mathrm{RCA}_0\)
      Every infinite binary tree has an infinite path.
    • \(\mathrm{ACA}_0\), arithmetical comprehension,
      \(\mathrm{RCA}_0\)
      \(\Sigma^0_n\)-comprehension, for all \(n\)
    • \(\mathrm{ATR}_0\), arithmetical transfinite induction,
      \(\mathrm{RCA}_0\)
      Every set defined by induction along a well order exists.
    • \(\Pi^1_1\operatorname{-}\mathrm{CA}_0\), analytic comprehension.
      \(\mathrm{RCA}_0\)
      \(\Pi^1_1\)-comprehension,
  • Second discovery: lots of theorems from Ramsey Theory avoid this structure.

Using computability in reverse mathematics

Why is computability theory useful in reverse mathematics?

Recursive Comprehension Axiom

Recall the links between definability and computability. For instance, \[B\leq_TA\Leftrightarrow B\text{ is }\Delta^0_1(A)\] Therefore:
\(\Delta^0_1\)-comprehension
\(\Longleftrightarrow\)
For every \(A\), if \(B\leq_T A\), then \(B\) exists.
The axiomatic system \(\mathrm{RCA}_0\) is equivalent to the axiomatic system containing Robinson arithmetic, \(\Sigma^0_1\) induction and the existence of all the (relatively) computable sets.

Arithmetical Comprehension Axiom

Similarly, \[B\leq_TA^{(n)}\Leftrightarrow B\text{ is }\Delta^0_{n+1}(A)\] Therefore:
Arithmetical comprehension
\(\Longleftrightarrow\)
For all \( A,n\), \(A^{(n)}\) exists.
\(\Longleftrightarrow\)
For all \(A\), \(A'\) exists.
The axiomatic system \(\mathrm{ACA}_0\) is equivalent over \(\mathrm{RCA}_0\) to the axiomatic system containing \(\mathrm{RCA}_0\) and the existence of the jump of any set.
The theorem of Bolzano-Weierstrass implies \(\mathrm{ACA}_0\) over \(\mathrm{RCA}_0\)
Proof: Let \(\emptyset'_s=\{e:\Phi_e(e)\) halts in time \(s\}\). Let \(x_s = \sum_{e\in\emptyset'_s}2^{-e}\). By Bolzano-Weierstrass, let \(x\) be a limit for \((x_s)_{s\in\mathbb N}\). Then, \(\emptyset'=\{e:x\) has a 1 at position \(e\}\) exists.

Weak König's Lemma

A PA degree is a Turing degree that computes, equivalently:
  • A completion of Peano Arithmetics
  • A path in every computable infinite binary tree
PA degrees are a well studied and understood complexity notion of computability.
The axiomatic system \(\mathrm{WKL}_0\) is equivalent over \(\mathrm{RCA}_0\) to the axiomatic system containing \(\mathrm{RCA}_0\) and the existence of a PA degree over any set.

Separating axioms in reverse mathematics

\(\emptyset'\) is uncomputable
\(\mathrm{RCA}_0\) does not imply \(\mathrm{ACA_0}\)
Proof: The set consisting of all the computable sets of integers is a model of \(\mathrm{RCA}_0\) but not of \(\mathrm{ACA}_0\).
There exists a PA degree \(A\) such that \(A'=\emptyset'\). Moreover a PA degree cannot be computable.
\(\mathrm{WKL}_0\) is strictly in between \(\mathrm{RCA_0}\) and \(\mathrm{ACA_0}\).

Conclusion on reverse mathematics

The natural axioms occuring in mathematics correspond to the existence of objects of a given computable complexity.
There are two understandings of the reverse mathematical study of a theorem:
  • What are the used axioms, are they really necessary?
  • What is the computable complexity of the objects in the proof, can we lower it?
In particular, for theorems of the form \(\forall X,\exists Y: \Psi(X,Y)\), we are interested in the following:
  • Lower bound: Does there exist a computable \(X_0\), such that any \(Y\) with \(\Psi(X_0,Y)\) is "complex"?
  • Upper bound: Does there exist a complexity, such that for any computable \(X\), there exists \(Y_0\) with \(\Psi(X,Y_0)\) with the given complexity?
Hindman's Theorem
Let \(A\subseteq\mathbb N\). Then, we define the set of sums of finitely many elements from \(A\). \[\operatorname{FS}(A) = \left\{\sum_{i=0}^na_i\quad:\quad n\in\mathbb N,\ \ a_i\in A,\ \ \text{ the \(a_i\) are all different}\right\}\]
Note that \(FS(A)\) is not closed under finite sums. For instance, \[\operatorname{FS}(\{1\}\cup3\mathbb N)=3\mathbb N\cup3\mathbb N+1\]
For all colorings of the integers in a finite number of colors \(\mathbb N=C_0\cup\cdots\cup C_n\), there exists a color \(i\) and an infinite set \(H\) such that \[\operatorname{FS}(H)\subseteq C_i\]
  • The coloring of even and odd integers,
  • The \(\mathrm{mod}\ 3\) coloring,
  • The coloring given by the parity of the length of the binary expansion
    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...
An IP set is a set \(A\subseteq\mathbb N\) such that there exists \(S\) such that \(\operatorname{FS}(S)\subseteq A\)
This notion is a notion of largeness.
For any IP set \(A=A_0\cup\cdots\cup A_n\), for some \(i\) we have that \(A_i\) is an IP set.

State of the art of the Reverse Mathematics of Hindman's theorem.

  • Hindman's theorem is provable in \(\mathrm{ACA}_0^+\).
  • Every finite coloring \(c\) admits a homogeneous set \(H\) computable in the \((\omega+2)\)-th Turing jump of \(c\).
  • Hindman's theorem proves \(\mathrm{ACA}_0\).
  • There exists a computable finite coloring such that all homogeneous set \(H\) compute \(\emptyset'\).
  • Is Hindman's theorem equivalent to \(\mathrm{ACA}_0\)? To \(\mathrm{ACA}_0^+\)? Or strictly in between?
  • Given a computable finite coloring, does there always exist an arithmetical solution? Or does there exist a finite computable coloring such that all homogeneous set compute \(\emptyset^{(\omega)}\) ?

Idea of the proof

Define a largeness notion such that we can prove: $$\text{There exists a large color}\tag{1}$$ $$A\text{ is large }\Longrightarrow \exists n\in A, A\cap A+n\text{ is large. }\tag{2}$$
What are the possible candidate for this notion of largeness?
  • (2) does not hold for "large" being "infinite"
  • (1) is equivalent to Hindman's Theorem when "large" is "being an IP set"
An idempotent ultrafilter is an ultrafilter \(\mathcal U\) such that \(\mathcal U + \mathcal U\), where \[A\in\mathcal U + \mathcal U \Longleftrightarrow \{n:A-n\in\mathcal U\}\in\mathcal U\]
  • (1) and (2) hold for "large" being "member of a fixed idempotent ultrafilter" (Galvin and Glazer)
  • (1) and (2) hold when "\(A\) is large in \(I\)" means "no IP subset \(I'\) of \(I\) is such that\(I'\cap A=\emptyset\)" (Baumgartner).

Effectivizing the proof

$$A\text{ is large }\Longrightarrow \exists n\in A, A\cap A+n\text{ is large. }\tag{2}$$
The problem is that the \(n\) found in (2) is chosen in a very non uniform way. For instance, in the ultrafilter proof, it is an element of \(A\cap\{n:A-n\in\mathcal U\}\).
From Baumgartner's proof, the highly non-effective part is only the choice of which set is large out of finitely many.
We postpone this choice to the end of the construction.
$$A\text{ is large }\Longrightarrow \exists {\color{maroon}n_0,\cdots, n_N}\in A, \bigcup_{i\lt N}A\cap A+{\color{maroon}n_i}\text{ is large. }$$
A full-match for a coloring \(c\) is a couple \((F,S)\) where \(F\) is a finite set, and for every \(x\in\operatorname{FS}(S)\), there exists \(a\in F\) such that \[c(a)=c(x)=c(a+x)\]
The complexity of a full-match is essential to understand the complexity of a solution to Hindman's theorem!

Complexity of full/right/left-matches

A full-match for a coloring \(c\) is a couple \((F,S)\) where \(F\) is a finite set, and for every \(x\in\operatorname{FS}(S)\), there exists \(a\in F\) such that \[c(a)=c(x)=c(a+x)\]
Does there always exists a computable full-match given a computable coloring?
  • An affirmative answer would prove Hindman's theorem equivalent to \(\mathrm{ACA}_0\)
  • A negative answer to the question was published, but there was an error in the proof.
The proof of the existence of a full-match is similar to Hindman's Theorem, given the existence of right-matches. The proof yields an arithmetical solution.
A right-match for a coloring \(c\) is a couple \((F,S)\) where \(F\) is a finite set, and for every \(x\in\operatorname{FS}(S)\), there exists \(a\in F\) such that \[c(x)=c(a+x)\]
Every computable coloring admits a computable right-match, uniformly in the double jump of the coloring.
A left-match for a coloring \(c\) is a couple \((F,S)\) where \(F\) is a finite set, and for every \(x\in\operatorname{FS}(S)\), there exists \(a\in F\) such that \[c(a)=c(a+x)\]
Every computable coloring in two colors admits a computable left-match.
However, the following hold:
  • The existence of computable full-match for 2 colors implies the existence of computable full-matches for \(n\) colors, but
  • The existence of computable left-match for 2 colors does not imply the existence of computable left-matches for \(n\) colors.
Does there always exist a computable full-match given a computable 2-coloring?
Does there always exist a computable left-match, given a computable 3-coloring, ?
Consider the following property: $$\exists F\subseteq C_i, \forall x\in\operatorname{FS}(S),\ \exists a\in F,\ c(a+x) = j\tag{\(\mathrm{MM}_{i,j}\)}$$
Every coloring in two colors satisfying one of the following properties:
  • \(\lnot(\mathrm{MM}_{0,1})\) or \(\lnot(\mathrm{MM}_{1,0})\)
  • \((\mathrm{MM}_{0,0})\) and \((\mathrm{MM}_{1,1})\)
  • \(\lnot(\mathrm{MM}_{0,0})\) and \(\lnot(\mathrm{MM}_{1,1})\)
admits a computable full-match.
Hindman's Theorem
Let \(A\subseteq\mathbb N\). Then, we define the set of sums of finitely many elements from \(A\). \[\operatorname{FS}(A) = \left\{\sum_{i=0}^na_i\quad:\quad n\in\mathbb N,\ \ a_i\in A,\ \ \text{ the \(a_i\) are all different}\right\}\]
Note that \(FS(A)\) is not closed under finite sums. For instance, \[\operatorname{FS}(\{1\}\cup3\mathbb N)=3\mathbb N\cup3\mathbb N+1\]
For all colorings of the integers in a finite number of colors \(\mathbb N=C_0\cup\cdots\cup C_n\), there exists a color \(i\) and an infinite set \(H\) such that \[\operatorname{FS}(H)\subseteq C_i\]
  • The coloring of even and odd integers,
  • The \(\mathrm{mod}\ 3\) coloring,
  • The coloring given by the parity of the length of the binary expansion
    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...
An IP set is a set \(A\subseteq\mathbb N\) such that there exists \(S\) such that \(\operatorname{FS}(S)\subseteq A\)
This notion is a notion of largeness.
For any IP set \(A=A_0\cup\cdots\cup A_n\), for some \(i\) we have that \(A_i\) is an IP set.

State of the art of the Reverse Mathematics of Hindman's theorem.

  • Hindman's theorem is provable in \(\mathrm{ACA}_0^+\).
  • Every finite coloring \(c\) admits a homogeneous set \(H\) computable in the \((\omega+2)\)-th Turing jump of \(c\).
  • Hindman's theorem proves \(\mathrm{ACA}_0\).
  • There exists a computable finite coloring such that all homogeneous set \(H\) compute \(\emptyset'\).
  • Is Hindman's theorem equivalent to \(\mathrm{ACA}_0\)? To \(\mathrm{ACA}_0^+\)? Or strictly in between?
  • Given a computable finite coloring, does there always exist an arithmetical solution? Or does there exist a finite computable coloring such that all homogeneous set compute \(\emptyset^{(\omega)}\) ?

Idea of the proof

Define a largeness notion such that we can prove: $$\text{There exists a large color}\tag{1}$$ $$A\text{ is large }\Longrightarrow \exists n\in A, A\cap A+n\text{ is large. }\tag{2}$$
What are the possible candidate for this notion of largeness?
  • (2) does not hold for "large" being "infinite"
  • (1) is equivalent to Hindman's Theorem when "large" is "being an IP set"
An idempotent ultrafilter is an ultrafilter \(\mathcal U\) such that \(\mathcal U + \mathcal U\), where \[A\in\mathcal U + \mathcal U \Longleftrightarrow \{n:A-n\in\mathcal U\}\in\mathcal U\]
  • (1) and (2) hold for "large" being "member of a fixed idempotent ultrafilter" (Galvin and Glazer)
  • (1) and (2) hold when "\(A\) is large in \(I\)" means "no IP subset \(I'\) of \(I\) is such that\(I'\cap A=\emptyset\)" (Baumgartner).

Effectivizing the proof

$$A\text{ is large }\Longrightarrow \exists n\in A, A\cap A+n\text{ is large. }\tag{2}$$
The problem is that the \(n\) found in (2) is chosen in a very non uniform way. For instance, in the ultrafilter proof, it is an element of \(A\cap\{n:A-n\in\mathcal U\}\).
From Baumgartner's proof, the highly non-effective part is only the choice of which set is large out of finitely many.
We postpone this choice to the end of the construction.
$$A\text{ is large }\Longrightarrow \exists {\color{maroon}n_0,\cdots, n_N}\in A, \bigcup_{i\lt N}A\cap A+{\color{maroon}n_i}\text{ is large. }$$
A full-match for a coloring \(c\) is a couple \((F,S)\) where \(F\) is a finite set, and for every \(x\in\operatorname{FS}(S)\), there exists \(a\in F\) such that \[c(a)=c(x)=c(a+x)\]
The complexity of a full-match is essential to understand the complexity of a solution to Hindman's theorem!

Complexity of full/right/left-matches

A full-match for a coloring \(c\) is a couple \((F,S)\) where \(F\) is a finite set, and for every \(x\in\operatorname{FS}(S)\), there exists \(a\in F\) such that \[c(a)=c(x)=c(a+x)\]
Does there always exists a computable full-match given a computable coloring?
  • An affirmative answer would prove Hindman's theorem equivalent to \(\mathrm{ACA}_0\)
  • A negative answer to the question was published, but there was an error in the proof.
The proof of the existence of a full-match is similar to Hindman's Theorem, given the existence of right-matches. The proof yields an arithmetical solution.
A right-match for a coloring \(c\) is a couple \((F,S)\) where \(F\) is a finite set, and for every \(x\in\operatorname{FS}(S)\), there exists \(a\in F\) such that \[c(x)=c(a+x)\]
Every computable coloring admits a computable right-match, uniformly in the double jump of the coloring.
A left-match for a coloring \(c\) is a couple \((F,S)\) where \(F\) is a finite set, and for every \(x\in\operatorname{FS}(S)\), there exists \(a\in F\) such that \[c(a)=c(a+x)\]
Every computable coloring in two colors admits a computable left-match.
However, the following hold:
  • The existence of computable full-match for 2 colors implies the existence of computable full-matches for \(n\) colors, but
  • The existence of computable left-match for 2 colors does not imply the existence of computable left-matches for \(n\) colors.
Does there always exist a computable full-match given a computable 2-coloring?
Does there always exist a computable left-match, given a computable 3-coloring, ?
Consider the following property: $$\exists F\subseteq C_i, \forall x\in\operatorname{FS}(S),\ \exists a\in F,\ c(a+x) = j\tag{\(\mathrm{MM}_{i,j}\)}$$
Every coloring in two colors satisfying one of the following properties:
  • \(\lnot(\mathrm{MM}_{0,1})\) or \(\lnot(\mathrm{MM}_{1,0})\)
  • \((\mathrm{MM}_{0,0})\) and \((\mathrm{MM}_{1,1})\)
  • \(\lnot(\mathrm{MM}_{0,0})\) and \(\lnot(\mathrm{MM}_{1,1})\)
admits a computable full-match.
  • There are links between definability and computability, even for models of infinite computations
  • These links allows to apply computability techniques to other fields:
    • Descriptive set theory, where we used infinite time computation to define strong notion of randomness, and compared their behaviour of with the classical notions,
    • Proof theory, and especially Reverse Mathematics, where we used a computable analysis to have upper and lower bound on the axioms needed to prove a theorem.
Thank you for your attention!