Incompressible string
An incompressible string is a string with Kolmogorov complexity equal to its length, so that it has no shorter encodings.[1] The pigeonhole principle can be used to be prove that for any lossless compression algorithm, there must exist many incompressible strings. ExampleSuppose we have the string @0@1@0@1@0 This string is much shorter, although storing the dictionary itself will cost some space. However, the more repeats there are in the string, the better the compression will be. Our algorithm can do better though, if it can view the string in chunks larger than 4 characters. Then it can put 12349999 and 1234 into the dictionary, giving us: @0@0@1 This string is even shorter. Now consider another string: 1234999988884321 This string is incompressible by our algorithm. The only repeats that occur are 88 and 99. If we were to store 88 and 99 in our dictionary, we would produce: 1234@1@1@0@04321 This is just as long as the original string, because our placeholders for items in the dictionary are 2 characters long, and the items they replace are the same length. Hence, this string is incompressible by our algorithm. References
|
Portal di Ensiklopedia Dunia