Camille prépare une feuille fictive pour trois catégories de service, nommées a, b et c. Les mots qui les réunissent sont seulement des suites de lettres de cet exercice, sans référence à un produit réellement commandé. Elle veut retrouver certaines suites dans une feuille plus longue, puis modifier une lettre en gardant un moyen de refaire ses calculs. Nora propose d'associer un petit nombre à chaque suite. Camille doit décider ce que ce nombre permet de sélectionner et quelle vérification doit encore porter sur les lettres elles-mêmes. Aucun outil informatique ni temps d'exécution observé n'est présenté comme une réalisation de ce cas.
Blum nomme des systèmes de charnières sur sa page.
Hettich présente une catégorie de charnières dans sa navigation.
Sugatsune présente également une catégorie de charnières.
Ces pages nomment les charnières. Aucun ordre de lettres, valeur de code ou calcul ne vient de leurs textes. Les images n'ont pas été examinées. Les règles suivantes sont celles de la feuille créée pour Camille.
La place de la lettre intervient dans le nombre
La convention attribue un à a, deux à b et trois à c. Pour une suite de longueur n, sa première lettre reçoit le poids quatre à la puissance n moins un, la suivante le poids quatre à la puissance n moins deux, et la dernière le poids un. Camille additionne les chiffres multipliés par ces poids, puis conserve le reste de la division par dix-sept. Les chiffres sont tous inférieurs à quatre. La longueur accompagne le reste sur la fiche ; elle ne disparaît pas dans un champ qui prétendrait déjà porter le texte entier.
Pour abc, les trois contributions valent seize, huit et trois : le nombre avant réduction vaut vingt-sept, et le reste dix. Pour bca, les contributions deviennent trente-deux, douze et un, soit quarante-cinq et un reste onze. Camille n'a pas seulement déplacé trois valeurs dans une somme ordinaire. Le même ensemble de lettres change de nombre quand leur ordre change, parce que leurs poids dépendent de leur place. Elle inscrit les deux suites et leurs trois contributions sous leurs fiches. Nora voit alors pourquoi demander « les mêmes lettres » ne suffit pas à retrouver le nombre attaché à une suite ordonnée.
Camille remplit ensuite les préfixes de abcab, en partant du préfixe vide de reste zéro. Chaque ajout multiplie le reste précédent par quatre et ajoute le chiffre nouveau, avant de reprendre le reste modulo dix-sept. Après a, elle obtient un ; après ab, six ; après abc, dix ; après abca, sept ; après abcab, treize. Cette liste conserve six bornes, y compris la borne vide, et cinq lettres. Camille refuse de numéroter les bornes comme s'il s'agissait de cinq cases de texte : une extraction commence à une borne et s'arrête avant une autre, tandis que les lettres occupent les espaces entre les deux.
Nora demande précisément les trois lettres de bca, aux positions un à trois de abcab lorsque la première position vaut zéro. Camille prend le préfixe se terminant à la borne quatre, de reste sept. Mais le a qui le précède a été multiplié par quatre trois fois avant cette borne. Sa contribution ne vaut donc plus un : le poids soixante-quatre laisse le reste treize. La soustraction sept moins treize, ramenée modulo dix-sept, donne onze. Elle retrouve le nombre de bca calculé directement. Soustraire simplement le premier préfixe donnerait six, une autre réponse, qui ne retire pas le a avec le poids qu'il a réellement reçu dans le préfixe long.
Elle écrit cette extraction pour toutes les bornes l et r de la feuille : prendre le reste du préfixe r, puis retirer celui du préfixe l multiplié par quatre à la puissance r moins l. Le facteur tient compte du nombre de lettres situées après la coupure, et non de la position l prise seule. Le développement des deux sommes montre que chaque ancienne contribution avant l apparaît avec le même poids dans les deux termes ; elle s'annule. Il reste exactement les contributions des lettres de l à r moins un, rangées avec leurs nouveaux poids. La vérification ne repose donc pas sur le seul résultat onze de l'exemple : elle explique la coupure pour n'importe quel intervalle de cette feuille.
Nora avait déjà une liste de sommes de valeurs où retirer deux préfixes suffisait. Camille la garde dans un autre dossier : ici, les valeurs antérieures sont décalées par l'allongement du mot. Elle refuse de reprendre la soustraction sans le facteur de longueur. Dans sa remise pour bca, elle joint le préfixe sept, le préfixe un, la longueur trois et la contribution treize retirée. Si Nora change uniquement la longueur de la demande, cette dernière contribution doit être recalculée. La frontière choisie ne détermine pas à elle seule le nombre que l'on doit enlever.
Réunir deux morceaux et déplacer une fenêtre demandent des poids différents
Pour composer ab suivi de ca, Camille conserve les deux restes six et treize, ainsi que la longueur deux du second morceau. Elle ne peut pas additionner les deux restes : cela donnerait deux après réduction. Les lettres de ab doivent être placées avant deux nouvelles lettres, donc leur nombre est multiplié par seize. Le calcul six fois seize plus treize vaut cent neuf et laisse sept. C'est bien le reste de abca dans la liste des préfixes. Camille remet ce résultat avec la longueur quatre et les deux limites de morceaux, plutôt que présenter sept comme une valeur obtenue par n'importe quelle réunion de fiches.
Cette règle peut accompagner une composition en trois morceaux sans lire de nouveau toutes les lettres. Si les fiches portent leurs longueurs, joindre U à V puis à W donne le nombre de U multiplié par quatre à la puissance de la longueur de V plus celle de W, puis celui de V multiplié par quatre à la puissance de la longueur de W, puis celui de W. Joindre d'abord V à W fournit exactement les mêmes trois contributions. Camille développe les deux calculs avant d'utiliser cette liberté de parenthèses. Elle conserve l'ordre U, V, W : l'égalité des deux regroupements ne permet pas d'échanger les morceaux. L'information de longueur rend la réunion cohérente, sans rendre les lettres interchangeables.
Une autre demande déplace la fenêtre abc d'une lettre vers la droite dans abcab. La nouvelle fenêtre est bca. Camille retire d'abord le premier a avec son poids seize du reste dix ; elle multiplie ce qui reste par quatre, puis ajoute le nouveau a de chiffre un. Le reste de ce calcul vaut onze, comme dans l'extraction précédente. Nora voulait retirer seulement un avant de multiplier. Camille refuse : ce un désigne le chiffre du a, pas sa contribution à la fenêtre de trois lettres. Elle conserve sur sa ligne le chiffre, le poids et le produit retiré comme trois données séparées.
Camille justifie l'ordre de ces opérations sur la fenêtre remplie. Les contributions de b et c portent d'abord les poids quatre et un. Quand a est ajouté à droite, elles doivent recevoir seize et quatre. La multiplication par quatre réalise précisément ce décalage, mais elle ne doit plus inclure l'ancien a, sorti à gauche. Retirer celui-ci après la multiplication resterait possible seulement avec un poids supplémentaire, ce qui ne serait plus le calcul proposé par Nora. La feuille active emploie donc un retrait au poids actuel, un décalage des lettres conservées et un ajout au poids un. Elle n'appelle pas ce déplacement une modification de la lettre a : la fenêtre a changé de bornes.
Pour comparer l'extraction et le déplacement, Camille garde les deux résultats onze sous la même suite bca. La première voie utilisait deux préfixes fixes ; la seconde avait besoin de la fenêtre précédente et de la lettre sortante. Elles fournissent une même valeur mais ne reçoivent pas les mêmes données. Si Nora lui donne seulement le reste dix de abc sans identifier la lettre qui sort, le calcul de déplacement ne peut pas choisir son retrait. Camille demande donc cette lettre ou revient aux préfixes de la feuille complète. Elle ne complète pas silencieusement un reste court par une mémoire du mot qu'il n'est pas censé contenir.
Une égalité des petits nombres conserve des candidates fausses
Nora souhaite retrouver aaa dans babaaa. Camille calcule pour aaa le nombre brut vingt-et-un, qui laisse quatre modulo dix-sept. Or bab donne trente-deux plus quatre plus deux, soit trente-huit, qui laisse également quatre. Les deux suites ont trois lettres mais des lettres différentes. Camille a ainsi une collision remplie dans le domaine exact de la convention, sans changer sa base ni sa longueur après le calcul. Elle refuse la phrase « reste quatre, donc aaa ». Le petit nombre a perdu une différence de dix-sept entre les deux valeurs brutes, et cette perte existe avant toute recherche dans la feuille longue.
Les quatre fenêtres de longueur trois de babaaa sont bab, aba, baa et aaa. Leurs restes sont respectivement quatre, huit, trois et quatre. Camille marque donc deux positions candidates, zéro et trois, sous la demande de reste quatre. Elle relit leurs trois lettres : bab est refusé, aaa est retenu. La sortie finale ne contient que la position trois, même si la première étape en avait proposé deux. Sur la fiche rejetée, Camille inscrit la première lettre différente : b au lieu de a. Elle peut justifier ce refus par les lettres effectivement présentes, sans transformer le reste quatre du rejet en un calcul erroné.
Le même mécanisme peut éviter certaines comparaisons de lettres, mais Camille ne lui attribue aucun gain mesuré dans ce cas. Une fenêtre de reste huit ou trois ne peut être aaa sous la convention fixée, puisque la suite cherchée a le reste quatre. L'inégalité des restes fournit donc un refus sûr. L'égalité conserve seulement une candidate. La feuille distingue ces deux sens du contrôle : aucune occurrence véritable ne peut être retirée pour un reste différent si les calculs sont exacts, tandis qu'une occurrence proposée peut encore être fausse. Nora garde ces deux colonnes, « retirée par le nombre » et « confirmée par les lettres », au lieu de leur donner un seul verdict interchangeable.
Nora ajoute un second reste, cette fois modulo dix-neuf, et propose de supprimer la relecture. Camille vérifie deux suites de cinq lettres : aaaab vaut trois cent quarante-deux, bbaba vaut six cent soixante-cinq. Leur différence vaut trois cent vingt-trois, soit dix-sept fois dix-neuf. Chacune donne donc le couple de restes deux et zéro. Les suites restent différentes. Le second nombre ne les sépare pas et ne certifie pas leur égalité. Camille conserve ce contre-exemple auprès des deux fiches de même longueur ; elle refuse de présenter deux contrôles déterministes comme une garantie dont aucune paire fausse ne pourrait passer.
Dans la nouvelle remise, Nora reçoit ainsi les couples de restes avec la consigne de vérifier les lettres des candidates communes. Le contre-exemple ne dit pas que tout second module serait inutile, ni qu'il reproduirait toutes les collisions du premier. Il suffit à retirer la permission demandée ici, celle de conclure à une égalité certaine par ces deux seuls restes. Camille garde les modules dix-sept et dix-neuf exactement tels qu'ils ont été proposés. Elle n'en remplace pas un par une autre valeur après avoir vu les suites fausses pour annoncer ensuite que l'ancienne permission aurait été justifiée.
La longueur ne se déduit pas non plus du reste. La lettre c, seule, donne trois. La suite baa, de longueur trois, donne trente-sept et le même reste trois. Nora demande cette fois exactement une lettre c ; Camille refuse la fiche de baa dès son champ de longueur, avant même de comparer ses caractères. La première lettre de baa serait encore fausse si elle la relisait, mais la longueur a déjà rendu cette candidate inadmissible. Elle conserve donc le couple longueur et reste pour la sélection. Ce champ supplémentaire ne résout pas la collision aaa contre bab, où les longueurs étaient égales : les deux contrôles ont des portées différentes, et Camille garde ensuite la lecture pour ce dernier cas.
Choisir la base au hasard porte sur un couple déjà fixé
Une branche séparée conserve le module dix-sept mais fait choisir la base uniformément parmi les seize restes non nuls. Les deux suites aaa et bab sont fixées avant ce choix. Leurs nombres polynomiaux diffèrent de la base au carré plus un, à un signe près. Camille essaie les seize bases et trouve une égalité seulement pour quatre et treize : leurs carrés valent seize modulo dix-sept. Pour ce couple précis et ce choix effectivement uniforme, deux bases sur seize donnent une collision, soit une chance de un huitième. La valeur n'est pas un dix-septième simplement parce que le module vaut dix-sept.
Camille garde le couple aaa et bab dans l'intitulé de cette chance. Si Nora choisit une autre paire après avoir appris la base, ce n'est plus le protocole qui vient d'être compté. Les seize essais avaient comparé deux polynômes fixes ; ils n'avaient pas recensé un adversaire pouvant fabriquer ses lettres pour chaque résultat du tirage. La feuille refuse donc d'étendre un huitième à cette autre demande. Les restes des bases quatre et treize restent vrais, mais leur compte ne remplace pas une étude du choix des textes. Camille ne présente pas cette petite expérience finie comme une sécurité pour des étiquettes réelles ou comme une garantie sur toutes les recherches possibles.
Camille peut expliquer l'origine de ce comptage sans réintroduire une chance automatique pour chaque valeur de reste. Les collisions du couple fixé correspondent aux bases qui annulent sa différence polynomiale. Ici, la différence a degré deux, et les deux bases trouvées en fournissent toutes les racines dans le domaine essayé. La somme des seize essais donne donc directement le résultat ; elle n'a pas supposé que les dix-sept valeurs du code étaient également probables. La remise distingue le choix uniforme de la base, réellement stipulé, et une prétendue uniformité des restes, que Nora n'avait ni posée ni vérifiée. Cette distinction change la fraction annoncée et sa portée.
Changer une lettre ne conserve pas tous les anciens préfixes
Pour la dernière feuille, Nora remplace le c de abcab, à la position deux, par a. Le mot devient abaab et garde sa longueur cinq. Dans son nombre brut, cette lettre avait le poids seize ; son chiffre baisse de trois à un, soit une différence moins deux. Camille applique donc au reste final treize la correction moins trente-deux. Le résultat modulo dix-sept est quinze. Le calcul direct de abaab donne quatre cent six, également de reste quinze. Elle joint les deux contrôles à la lettre remplacée : le nouveau nombre vient de la différence de chiffre au poids de sa position, pas de la simple soustraction de deux au reste total.
Les premiers préfixes, vide, a et ab, ne contiennent pas la lettre changée ; leurs restes restent zéro, un et six. Les trois suivants changent avec des poids différents. Dans le préfixe de longueur trois, la lettre est dernière et la correction vaut moins deux ; le reste dix devient huit. Dans celui de longueur quatre, son poids vaut quatre et la correction moins huit ; le reste sept devient seize. Dans le préfixe final, son poids vaut seize et la correction moins trente-deux donne quinze. Camille inscrit ainsi la nouvelle liste zéro, un, six, huit, seize, quinze. Une seule lettre changée n'autorise pas une correction identique sur toutes les bornes.
Nora demande de garder la fiche ancienne de bca et d'y changer seulement la lettre c. L'ancienne fiche concernait les positions un à trois, qui donnent maintenant baa. Camille extrait donc le nouveau préfixe de borne quatre, seize, puis retire le préfixe de borne un multiplié par soixante-quatre, de reste treize. Elle obtient trois. Le calcul direct de baa vaut trente-deux plus quatre plus un, soit trente-sept et un reste trois. La fiche onze de bca est retirée de cette remise, mais conservée avec l'ancienne version du mot. La frontière de l'intervalle n'a pas bougé ; c'est la lettre intérieure qui a effectivement changé sa valeur et les préfixes employés.
La dernière page garde les lettres de abaab, ses bornes, les restes recalculés et les candidats confirmés par leur texte. Camille conserve les collisions bab contre aaa et aaaab contre bbaba avec les conventions auxquelles elles appartiennent. Les pages de charnières restent des références de catégories ; aucune méthode de calcul n'y est attribuée. Le service fictif reçoit une règle de sélection et ses contrôles remplis, sans convertir un petit reste en preuve de texte identique ni une probabilité limitée en permission générale de supprimer la lecture.
