Encore du Huffman ? Et encore pas content ! ;-)
Bravo d'abord pour l'idée, vraiment astucieuse, et pour une construction dont le décodage final est remarquablement contraint. J'avais même le bon indice sous les yeux dès le début... et je suis parti chercher une chanson. C'est dire. ;-)
Mon problème est ailleurs, et je vais tâcher de rester factuel.
1. La réduction de taille annoncée ne se vérifie pas sur le procédé complet.
L'énoncé annonce une étape supplémentaire "pour diminuer encore la taille du message à transmettre". J'ai fait les comptes : le clair, réduit à ses lettres et codé directement par Huffman à partir de ta liste de fréquences, représente 2 156 bits. Le cryptogramme, si on cherche à le recompresser lui-même par Huffman à partir de la distribution de ses six chiffres, en représente 5 033. Soit plus du double. On compare ici les seuls flux binaires : les coûts de description des dictionnaires ne sont comptés dans aucun des deux cas.
Une étape peut bien sûr réduire un intermédiaire sans que la chaîne complète compresse le message initial. Mais c'est justement cette distinction qui manque : l'énoncé présente le résultat comme une réduction de la taille du message à transmettre.
2. Fausse piste, ou indication technique trompeuse ?
Cacher une étape, empiler les couches, tendre une fausse piste : c'est le jeu, et je n'ai rien contre. Mais il y a une différence entre une hypothèse trompeuse que le solveur doit remettre en question et une propriété technique présentée comme un fait. Ici, rien ne signale que l'affirmation sur la taille puisse être suspecte. Le cryptanalyste qui prend l'énoncé au sérieux a donc de bonnes raisons d'écarter une piste qui mène pourtant au résultat. Si c'était volontaire, il manquait un petit signal. Sinon, une phrase en moins aurait suffi.
3. La confirmation arrive très tard.
L'énoncé et l'indication mènent à une première étape. Mais celle-ci, prise seule, ne produit jamais une ligne lisible. On peut donc tenir une partie de la solution sans obtenir de confirmation suffisamment nette, et finir par remettre la piste en cause. C'est exactement ce qui m'est arrivé.
Je ne reproche pas à une énigme de niveau Maître de cacher une étape. Mais quand cette étape est déjà difficile à envisager et que l'énoncé semble précisément déconseiller la bonne direction, la difficulté devient moins analytique que je ne le souhaiterais.
Le plus frustrant, c'est qu'une petite retouche aurait suffi : retirer la promesse de compression, ou préciser à quoi elle s'applique. L'idée aurait gardé tout son intérêt, sans rendre la bonne piste moins plausible que l'impasse.
Voilà. C'est justement parce que l'idée de départ est astucieuse que je trouve dommage que la formulation détourne autant la recherche. J'ai peut-être manqué une nuance ; si c'est le cas, je lirai volontiers les explications. Merci pour ce défi ! ;-)
P.S. : visiblement, je ne suis pas le seul à avoir fait une indigestion de Huffman. Comme le disait déjà un habitué du Club : "Bon c'est fini maintenant Huffman hein !?" :-/