Je lisais sur les algorithmes de compression des données et la limite théorique pour la compression des données. Récemment, j'ai rencontré une méthode de compression appelée "Combinatorial Entropy Encoding", l'idée principale de cette méthode est de coder le fichier comme les caractères présentés dans le fichier, leurs fréquences et l'indice de permutation de ces caractères représentés par le fichier.
Ces documents peuvent aider à expliquer cette méthode:
https://arxiv.org/pdf/1703.08127
http://www-video.eecs.berkeley.edu/papers/vdai/dcc2003.pdf
https://www.thinkmind.org/download.php?articleid=ctrq_2014_2_10_70019
Cependant, dans le premier document, j'ai lu qu'en utilisant cette méthode, ils pouvaient compresser du texte à moins que la limite de Shannon (Ils n'ont pas considéré l'espace nécessaire pour enregistrer la fréquence des caractères et l'espace nécessaire pour enregistrer la méta données du fichier). J'y ai pensé et j'ai trouvé que cette méthode ne serait pas très efficace pour les très petits fichiers mais d'un autre côté elle pourrait bien fonctionner avec des fichiers volumineux. En fait, je ne comprends pas très bien cet algorithme ou la limite de Shannon, je sais juste que c'est la somme de la probabilité de chaque caractère multipliée par de l'inverse de la probabilité.
J'ai donc quelques questions:
Cette méthode de compression comprime-t-elle vraiment les fichiers à une taille inférieure à la limite de Shannon?
Existe-t-il un algorithme de compression qui comprime les fichiers à moins que la limite de Shannon (la réponse à cette question pour autant que je sache est non)?
Une méthode de compression qui compresse des fichiers à une taille inférieure à la limite de Shannon peut-elle exister?
Si le codage combinatoire comprime vraiment les fichiers au-delà de la limite de Shannon, n'est-il pas possible de compresser le fichier encore et encore jusqu'à ce que nous atteignions la taille de fichier souhaitée?