Separating big sticks from little sticks, and applications

Start with a stick. Randomly break it into two pieces and throw away one half. Then randomly break what’s left into two pieces and throw away half, and so on forever. At the end of this process (until we get bored or run out of stick or whatever), collect up all the pieces of stick we threw aside and examine them. Here is a theorem.

Theorem 1 Almost surely you can divide the stick pieces into two piles, the big sticks and the little sticks, in such a way that the little sticks, even put back together end-to-end, are much smaller than the littlest big stick.

To formalize the process, suppose the original stick has length {1}, and we break it into {u_1} and {1-u_1}, and then we break {u_1} into {u_1u_2} and {u_1(1-u_2)}, and so on. In the end we have a stick of length

\displaystyle L_n = u_1 \cdots u_{n-1} (1-u_n)

for each {n\geq 1}, where {u_1, \dots, u_n} are independent and {U[0,1]}.

Warning: {L_n} is almost surely not monotonic! The biggest stick piece is not necessarily the first piece we broke off, although it is with positive probability. The distribution of {L_1 = 1-u_1} is {U[0,1]}, but the distribution of {L_\text{max} = \max_{n\geq 1} L_n} is rather more complicated (more on this later).

Consider the record process {R_n = \min_{i \leq n} (1-u_i)}. At step {n}, there is a probability {R_{n-1}} that {1-u_n} is a new record, and in this circumstance we have {R_n = 1-u_n \sim U[0, R_{n-1}]}. Therefore there will be infinitely many {n} such that {R_n < \epsilon R_{n-1}}. But {u_n} and {1-u_n} have the same distribution, so there will also be infinitely many {n} such that {u_n < \epsilon R_n}. For any such {n},

\displaystyle u_1 \cdots u_n < \epsilon u_1 \cdots u_{n-1} \min_{i \leq n} (1-u_i) \leq \epsilon \min_{i \leq n} u_1 \cdots u_{i-1} (1-u_i) = \epsilon \min_{i \leq n} L_i.


\displaystyle u_1 \cdots u_n = \sum_{i > n} L_i.

Therefore after step {n} the total of what is left is small compared to our smallest stick so far, and this proves the theorem.

As it turns out, sticks have applications!

Corollary 2 Let {\pi \in S_n} be a random permutation. With high probability (as {n\to\infty}), we can divide the cycles of {\pi} into two sets, the big cycles {\sigma_1, \dots, \sigma_k} and the little cycles {\sigma_{k+1}, \dots, \sigma_m}, in such a way that

\displaystyle \sum_{i = k+1}^m |\sigma_i| < \epsilon \min_{1 \leq i \leq k} |\sigma_i|.

Corollary 3 Let {n \in [1, X]} be a random integer. With high probability (as {X \to \infty}), we can factorize {n} as {n_1 n_2} in such a way that

\displaystyle n_2 < (\min_{p \mid n_1} p)^\epsilon.

Corollary 4 Let {f \in \mathbf{F}_q[X]} be a random polynomial of degree {d}. With high probability (as {d \to \infty}), we can factorize {f} as {f = f_1 f_2} in such a way that

\displaystyle \deg f_2 < \epsilon \min_{1 \neq \phi \mid f_1} \deg \phi.

What about {L_\text{max}}? By the same connections, {L_\text{max}} models the longest cycle in a random permutation, the log of the largest prime factor of a random integer, and the degree of the largest irreducible factor of a random polynomial. The event that {L_\text{max} < x} is the intersection of two events: {1-u_1 < x} and {\max_{n\geq 2} L_n < x}. But it is easy to see that {\max_{n \geq 2} L_n} has the same distribution as {u_1 L'_\text{max}}, where {L'_\text{max}} is an independent copy of {L_\text{max}}. (The largest stick other than the first is like the largest stick if we had started from a stick of length {u_1} instead of {1}.) Therefore

\displaystyle \mathbf{P}(L_\text{max} < x) = \mathbf{P}(1-u < x, u L_{\max} < x) = \int_{1-x}^1 \mathbf{P}(L_\text{max} < x/u) \, du.

Let {\phi(t) = \mathbf{P}(L_\text{max} < 1/t)}. Then {\phi(t) = 1} for {0  1} we have

\displaystyle \phi(t) = \int_{1-1/t}^1 \phi(tu) \, du = \frac1t \int_{t-1}^t \phi(s) \, ds,

or the delay differential equation

\displaystyle t \phi'(t) + \phi(t-1) = 0.

There is not a much more explicit expression for this function: this is the Dickman–de Bruijn function.

Bonus: What is the probabiliy that {L_\text{max} = L_1}? Answer:

\displaystyle \mathbf{P}(u_1 L'_\text{max} < 1-u_1) = \int_0^1 \phi(u/(1-u)) \, du = \int_0^\infty \frac{\phi(t)}{(t+1)^2}\, dt \approx 0.62

(this is the Golomb–Dickman constant).

This is some sort of universality phenomenon: we have several natural objects (permutations, integers, polynomials) that break up into irreducible pieces randomly, so it is plausible that some universal fundamental process should underlie each of them. On the other hand, the connections seem to run deeper than just the stick-breaking process. For example, if you look at the proportion of permutations having no cycles smaller than some bound, or the proportion of integers having no prime factors below an equivalent bound, in both cases you run into the Buchstab function, which is similar but different. This connection is not modelled by the stick-breaking process.

Some references:

  1. Tao on the stick-breaking process, or the Poisson–Dirichlet process (which is essentially the same);
  2. the distribution of large prime factors of a random integer was found by Billingsley (1972); the clean stick-breaking formulation is due to Donnelly and Grimmett (1993);
  3. the same result for permutations was established by Kingman (1977) and Vershik and Shmidt (1977); see also Arratia, Barbour, and Tavarè (2006) (and references therein) for convergence rate estimates;
  4. best of all, see the comic book by Andrew and Jennifer Granville (2019).

Invariable generation of classical groups

Elements {g_1, \dots, g_k} in a group {G} invariably generate if they still generate after an adversary replaces them by conjugates. This is a function of conjugacy classes: we could say that conjugacy classes {\mathcal{C}_1, \dots, \mathcal{C}_k} in a group {G} invariably generate if {\langle g_1, \dots, g_k\rangle = G} whenever {g_i \in \mathcal{C}_i} for each {i}. This concept was invented by Dixon to quantify expected running time of the most standard algorithm for computing Galois groups: reduce modulo various primes {p}, get your Frobenius element {g_p}, and then try to infer what your Galois group is from the information that it contains {g_p} (which is defined only up to conjugacy) for each {p}. If {\textup{Gal}(f)} is secretly {G}, and you somehow know a priori that {\textup{Gal}(f) \leq G}, then the number of primes you need on average to prove that {\textup{Gal}(f) = G} is the expected number of elements it takes to invariably generate {G}.

For example, if {G = S_n}, then we know that four random elements invariably generate with positive probability, while three random elements almost surely (as {n\to\infty}) do not invariably generate. Therefore if {\textup{Gal}(f) = S_n} then it typically takes four primes to prove it.

A few days ago Eilidh McKemmie posted a paper on the arxiv which extends this result to finite classical groups: e.g., if {G} is {\textup{SL}_n(q)} then, for large enough constant {q} and {n\to\infty}, four random elements invariably generate with positive probability, but three do not. (The bounded-rank case is rather different in character, and I think two elements suffice.) The proof is pretty cool: invariable generation in {G} is related to invariable generation in the Weyl group, which is either {S_n} or {C_2 \wr S_n}, and we already understand invariable generation for these groups (using a small trick for the latter).

I believe the restriction to large enough constant {q} is a technical rather than essential problem. Assuming it can be overcome, we will be able to deduce the following rather clean statement: If {G} is a finite simple group then four random elements invariably generate {G} with probability bounded away from zero. Moreover, if the rank of {G} is unbounded then three random elements do not.