3
$\begingroup$

First, my apologies if this has already been asked and answered. I did search this community for five to ten minutes looking for similar questions and found none.

My lay understanding of Ramsey theory is that “in any large enough piece of disorder you can find a small piece of order”. See Inevitable patterns in mathematics: Some topics in Ramsey theory (pdf). In other words, "complete randomness is impossible". See Excursions for Students (pdf).

If I understand such claims correctly, then in any sufficiently long random sequence, eg a random string of zeros and ones, r, there must be a substring s of length n that manifests some kind of pattern. If so, then it must be possible to compress s based on the pattern it manifests. If we can compress s, then we can compress r by some small degree, since s is a substring of r. (I realize that a sufficiently long r may be quite long indeed to generate a patterned substring s of length n, where n is say 100 or more.)

This question seems related to the incompressibility method, but I couldn't find any discussion of this particular issue.

$\endgroup$
4
  • $\begingroup$ No, it does not. Basically, even if I know that "some small part of $\sigma$ follows a simple pattern," in order to use this information to compress $\sigma$ I need to also know where/how that part occurs in $\sigma$, and this could itself require a lot of data. And you can tell that we can never have a "universal compression ability" by thinking about the pigeonhole principle: there is no injective map from finite binary strings to finite binary strings which sends every string (or even all-but-finitely-many strings) to a strictly shorter string. $\endgroup$ Sep 17, 2018 at 20:31
  • $\begingroup$ The problem is that the decompressor does not know the pattern, and the compressor must convey the pattern description along with the compressed string. A gut feeling is that the total length of the message would not be shorter than original. $\endgroup$
    – user58697
    Sep 17, 2018 at 20:37
  • $\begingroup$ @NoahSchweber, I'll amend my question to clarify that I am not seeking a practical implementation of a compressor, my question is only theoretical. Accordingly, one assumes that the patterned substring s can be found, it's pattern understood, and subsequently compressed. As to the issue of an injective map from FBS to FBS, my question concerns only the mapping from a completely random FBS to an FBS containing a compressed subsequence, not any to any. Therefore there is no possibility of infinite regress. After one compression, it's not possible to further compress the compressed string. $\endgroup$
    – Nick Gall
    Sep 19, 2018 at 14:32
  • $\begingroup$ @user58697 I have somewhat the same gut feeling about the combined length of the compressed substring and any 'metadata' to highlight it and provide context for its decompression. But if the length of the uncompressed substring s is sufficiently large, say megabits in size, then my gut says it should be possible to compress it enough to fit the additional metadata and still be shorter than the original uncompressed s. $\endgroup$
    – Nick Gall
    Sep 19, 2018 at 15:28

1 Answer 1

3
$\begingroup$

You can try to compress a string in this way, but the overhead from the compression will always exceed the gain from compression.

In fact, the argument that this will always happen is very similar to the "probabilistic method" lower bounds for many Ramsey-type problems.

For instance, consider Ramsey's theorem: the claim that for any $k$, if $n$ is sufficiently large, any red-blue coloring of the edges of the complete graph $K_n$ will contain a clique $K_k$ whose edges all have one color.

First, a brief aside to prove a lower bound on $n$ for this to happen. The probabilistic construction for the lower bound says that a sufficiently large $n$ must satisfy $\binom nk \ge 2^{\binom{k}{2}-1}$ (which is a bound roughly like $n \ge 2^{k/2}$). To prove this, suppose that $\binom nk < 2^{\binom{k}{2}-1}$, and take a random red-blue coloring of $K_n$. The number of cliques of size $k$ is $\binom nk$, and each is entirely red with probability $2^{-\binom k2}$ and entirely blue with probability $2^{-\binom k2}$. So the average number of monochromatic cliques is $\binom nk 2^{1-\binom k2}$, which is less than $1$ by assumption; therefore it's possible that the random coloring will not have a monochromatic clique.

Now let's go back to the compression idea. If we use Ramsey's theorem to try to compress a coloring of $K_n$, we should specify a particular clique of size $k$ which happens to be monochromatic, and then save space by just specifying the color of that clique - instead of specifying the colors of all $\binom k2$ edges in the clique individually. This saves $\binom k2 - 1$ bits of storage. However, we need $\log_2 \binom nk$ bits of storage to specify which clique we're using. The overall benefit is $$ \binom k2 - 1 - \log_2 \binom nk = \log_2 \left(2^{\binom k2 - 1} / \binom nk\right) $$ and by the probabilistic lower bound, the term inside the log is at most $1$, which means that the log is nonpositive. That is, we can never benefit from this compression scheme.

This is not a coincidence: in general, the threshold at which the probabilistic lower bound for the Ramsey-type problem works is exactly the same as the threshold at which we stop being able to compress efficiently, because the calculation for both is the same.

Below that threshold, we can win by spotting the ordered substructure we are looking for - if it exists, which it might not. Above that threshold, the ordered substructure typically exists - but we no longer benefit from using it, because the cost outweighs the gain.

(In cases such as Ramsey's theorem, where there is a gap between the expected-value lower bound and the best known upper bound, there is an interval which is the worst of both worlds. We don't save anything by exploiting the ordered substructure, and we also don't know if one exists.)

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .