
Envoyé par
dinobogan
L'explication de dourouc05 est pourtant claire....
En reprenant ses hypothèses (car tu ne donnes quasiment aucune info, heureusement qu'on possède tous une boule de cristal en bois...) : des matrices 10x10 contenant des mots sur 4 bits.
Lors du premier passage, la taille va diminuer d'environ 2.25%. Pour les passages suivants, la compression sera tellement infime qu'on pourra la considérer comme inexistante.
Un index représentant une matrice est écrit sur 391 bits. Donc après le premier passage de compression, le fichier est une suite de 391 bits. On reprend le fichier et on considère que c'est une suite de matrices de 400 bits.
Le point bloquant va venir du contenu du dictionnaire : il ne contient pas toutes les combinaisons possibles puisque les valeurs contenus dans la matrice sont comprises entre 0 et 14 (manque 15). Donc la première compression a généré des sous-suites impossibles à compresser une nouvelle fois. Ces sous-suites sont "contaminées" et ne bougeront plus.
Intéressons-nous aux sous-séquences compressibles. Leurs nombre, leurs longueurs ? Statistiquement, on pourrais imaginer 14/16ème du fichier dans le meilleur des cas. On applique une nouvelle compression qui diminue ce 14/16ème de 2.25%. La contamination s'étend encore plus dans les sous-séquences puisque l'entropie augmente.
A partir de la troisième compression, la taille du fichier compressé ne changera plus.
Partager