Six techniques de déduction, par ordre de difficulté croissante. La méthode A (la plus directe) se décompose en deux passes A1 et A2. Le bouton « 💡 Indice » de la page de jeu les applique automatiquement et t'indique laquelle il a utilisée. Avant de plonger ici, assure-toi d'avoir lu la page règles.
1. Principes
Chaque case blanche de Yokutai possède un domaine : l'ensemble des valeurs encore plausibles compte tenu de ce qui est déjà placé. Au début de la grille, ce domaine est large (typiquement 0 à 5 pour une case du bord de grille) ; au fur et à mesure des déductions, il rétrécit jusqu'à devenir un singleton — on a trouvé la valeur.
Les techniques ci-dessous correspondent à des manières de plus en plus coûteuses de réduire les domaines. On les essaie dans l'ordre. La méthode A (la moins coûteuse) se subdivise en deux passes : A1 regarde la case cible isolément, A2 tente d'éliminer des candidats en regardant ce que ses voisines blanches peuvent contenir. Si A1 et A2 suffisent à résoudre la grille entière, le puzzle est Facile ; s'il faut descendre jusqu'à E (raisonnement par contradiction), c'est qu'il est Expert. F désigne le cas où aucune technique formelle ne suffit : le solveur bloque, il faut une intuition humaine.
2. Les techniques de déduction
Passe directe sur la case
La technique la plus simple. Pour la case examinée, on dresse la liste des valeurs compatibles avec ce que l'on sait déjà : voisines fixées (règle 1), chiffres déjà présents dans son segment (règle 2), cases noires comptées comme grade max. Si une seule valeur survit, c'est elle.
Quand la chercher : sur les coins et les bords, ou après avoir placé plusieurs chiffres dans un segment ou autour de la case.
Score = 1 par case résolue (constant, c'est la passe la moins chère).
Passe via les voisines
A1 a laissé plusieurs candidats {v₁, …, vₙ} pour la case C. On essaie chacun : pour le candidat v, peut-on fixer cohéremment les voisines encore blanches de C pour que la règle 3 (C compte exactement v voisines ≤ v) ET la règle 2 (segment sans doublon) soient vérifiées ? Si aucun arrangement ne fonctionne, on élimine v. Il reste un seul candidat → c'est lui.
Quand la chercher : A1 vient de laisser 2, 3 ou 4 candidats. A2 est la première chose à essayer avant d'aller chercher plus loin.
Score = |V| (nombre de candidats avant A2). Donc 2 si on avait 2 candidats, 3 si on en avait 3, etc.
🎯 Trois exemples commentés
Trois situations typiques, du plus simple au plus subtil. Dans chaque cas, C est la case à résoudre, et on vérifie la règle 3 : « la valeur de C = nombre de voisines blanches dont la valeur est ≤ celle de C ». Cases noires et grises ne comptent jamais.
Exemple 1 — A1 résout directement (poids 1)
C est en bord gauche de la grille. Ses 5 voisines blanches sont toutes déjà fixées (segment au-dessus et au-dessous résolu).
Voisines blanches de C : {1, 2, 3, 0, 1} — 5 voisines fixées.
On teste chaque valeur de C et on compte combien de voisines sont ≤ à elle :
| C = v | voisines ≤ v | compte | règle 3 (v = compte) ? |
|---|---|---|---|
| 0 | {0} | 1 | ✗ 1 ≠ 0 |
| 1 | {1, 0, 1} | 3 | ✗ 3 ≠ 1 |
| 2 | {1, 2, 0, 1} | 4 | ✗ 4 ≠ 2 |
| 3 | {1, 2, 3, 0, 1} | 5 | ✗ 5 ≠ 3 |
| 4 | les 5 | 5 | ✗ 5 ≠ 4 |
| 5 | les 5 | 5 | ✓ 5 = 5 |
| 6+ | les 5 | 5 | ✗ 5 ≠ 6+ |
Exemple 2 — A1 laisse 2 candidats, A2 tranche (poids 2)
Même configuration, mais cette fois la case à droite de C — appelons-la W — n'est pas encore fixée. C et W appartiennent au même segment horizontal [C, W, F=3].
Voisines blanches de C : {1, 2, W, 3, 0, 1} — 4 fixées + W non fixée.
Segment partagé : [C, W, 3], donc C ≠ W et C ≠ 3.
Passe A1 — comme W est inconnue, on accepte un candidat v si v = compte(fixées ≤ v) ou si v = compte(fixées ≤ v) + 1 (selon que W ≤ v ou pas) :
| v | fixées ≤ v | compte fixé | compte si W≤v | candidat ? |
|---|---|---|---|---|
| 0 | {0} | 1 | 2 | ✗ |
| 1 | {1, 0, 1} | 3 | 4 | ✗ |
| 2 | {1, 2, 0, 1} | 4 | 5 | ✗ |
| 3 | {1, 2, 3, 0, 1} | 5 | 5 | ✗ |
| 4 | les 4 fixées + W | 4 | 5 | ✓ si W>4 |
| 5 | idem | 4 | 5 | ✓ si W≤5 |
| 6+ | idem | 4 | 5 | ✗ |
Passe A2 — pour chaque candidat, on cherche une valeur de W qui respecte la règle 3 sur W elle-même. Les voisines blanches de W sont {1, 2, C, 3, 0, 1} (6 voisines).
• W = 5 → 6 voisines ≤ 5. Attendu 5. KO.
• W = 6 → 6 voisines ≤ 6. Attendu 6. ✓
• W = 7 ou 8 → toujours 6 voisines ≤ W. KO.
⇒ v = 4 admet W = 6. Valide.
• W = 0 → 1 voisine ≤ 0 (le 0). Attendu 0. KO.
• W = 1 → 3 voisines ≤ 1 (1, 0, 1). Attendu 1. KO.
• W = 2 → 4 voisines ≤ 2. Attendu 2. KO.
• W = 4 → 5 voisines ≤ 4 (1, 2, 3, 0, 1). Attendu 4. KO.
⇒ Aucune W ne marche. v = 5 éliminé.
Exemple 3 — A1 laisse 3 candidats, A2 tranche (poids 3)
Variante avec moins d'indices autour de C : seulement la voisine au-dessus est fixée à 1, et la voisine de droite est blanche (W). C est dans un segment plus long [C, W, X, F=3].
Voisines blanches de C : {1, W} — 1 fixée + 1 non fixée.
Segment partagé : [C, W, X, 3] de longueur 4. Donc C ∉ {W, X, 3}.
Passe A1 — fixées = {1}, n_fixées(v ≤ v) = 1 si v ≥ 1, sinon 0 :
| v | compte si W>v | compte si W≤v | candidat ? |
|---|---|---|---|
| 0 | 0 ✓ (=v) | 1 | ✓ si W>0 |
| 1 | 1 ✓ (=v) | 2 | ✓ si W>1 |
| 2 | 1 | 2 ✓ (=v) | ✓ si W≤2 |
| 3+ | 1 | 2 | ✗ |
Passe A2 — pour chaque v, est-ce qu'on peut trouver une combinaison (W, X) compatible avec le segment {0..8} \ {v, 3} et avec règle 3 sur W et règle 3 sur C ?
• W = 2 → voisines ≤ 2 = {1, C=1, X?}. Si X > 2 → 2 voisines ≤ 2. W = 2 ✓.
• X = ? voisines blanches = {W=2, 3}. X = nb ≤ X. Pour X=2, voisines ≤ 2 dans {2, 3} = 1. KO. X=3 interdit (segment). X=4 → voisines ≤ 4 = {2, 3} = 2. Attendu 4. KO. Aucun X ne tient. v=1 éliminé.
• W = 0 : voisines blanches de W = {1, C=2, X}. Compte ≤ 0 = 0. W=0 ✓.
Pour X : voisines = {W=0, 3}. X = 1 → ≤ 1 = {0} = 1. ✓ Solution : C=2, W=0, X=1.
Remarque : ces exemples sont volontairement isolés. Dans une vraie grille, A1 et A2 s'enchaînent sur chaque case résolue, ce qui propage de nouvelles contraintes — c'est l'essence du jeu.
Propagation par voisinage
Quand toutes les voisines ne sont pas encore fixées, on peut quand même en déduire des contraintes en examinant leurs valeurs possibles. Pour une voisine donnée : si toutes ses valeurs possibles sont supérieures à x, on sait qu'elle ne sera jamais ≤ x. À l'inverse, si toutes ses valeurs possibles sont ≤ x, elle le sera forcément. Ces deux observations permettent de borner par le bas et par le haut le grade d'une case et donc d'éliminer des candidats.
Quand la chercher : quand A bloque mais que tu as déjà réduit les possibilités de plusieurs voisines.
Paire dans un segment
Si deux cases d'un même segment n'ont chacune que les deux mêmes valeurs possibles {x, y} (sans qu'on sache laquelle est où), alors les autres cases du segment ne pourront jamais être ni x ni y : ces deux valeurs sont obligatoirement « réservées » dans cette paire. On peut donc retirer x et y des candidats des autres cases du segment.
Quand la chercher : segments mi-longs (3 à 5 cases) avec deux candidats identiques dans deux cases.
Valeur forcée par couverture du segment
C'est la technique la plus subtile des cinq, parce qu'elle n'a pas d'équivalent exact dans le sudoku classique. Pour bien la comprendre, il faut d'abord voir pourquoi la version naïve « cette valeur n'a qu'une seule case possible donc on l'y met » échoue à Yokutai.
Pourquoi le singleton caché naïf ne marche pas
Dans un sudoku, une ligne contient les 9 chiffres {1, …, 9} exactement une fois. Donc si le 5 ne peut entrer que dans une seule case de la ligne, c'est cette case qui le prend — le 5 doit apparaître quelque part.
À Yokutai, ce n'est pas le cas : un segment de 4 cases blanches peut contenir {0, 2, 5, 7}, ou {1, 4, 6, 8}… il ne contient pas forcément les valeurs 0 à 3 ni un ensemble fixe. Donc dire « le 3 n'a qu'une case possible » n'est pas suffisant : peut-être que le 3 n'apparaîtra tout simplement pas dans le segment.
La condition de couverture
Pour rendre le raisonnement valide, on impose une condition supplémentaire : l'union des domaines de toutes les cases vides du segment doit contenir exactement autant de valeurs distinctes que le nombre de cases vides. Si N cases vides ont une union de N valeurs candidates, alors par la règle 2 (chiffres distincts dans un segment), chacune de ces N valeurs doit apparaître exactement une fois dans le segment. À ce moment-là seulement, « cette valeur n'a qu'une case possible → c'est elle » devient légitime.
Exemple chiffré pas à pas
Considère un segment de 3 cases vides, dont les domaines après réduction par les autres techniques sont :
| Case | Domaine |
|---|---|
| C₁ | {2, 4, 5} |
| C₂ | {2, 4} |
| C₃ | {2, 4} |
• la valeur 4 → C₁, C₂ ou C₃ (3 emplacements)
• la valeur 5 → seulement C₁ (1 emplacement)
Remarque importante : C₁ avait trois candidats {2, 4, 5}. Aucune des autres techniques ne pouvait conclure — pas de singleton (technique A), pas de paire identique entre deux cases (technique C). C'est précisément cette situation qui rend D indispensable.
Contre-exemple — quand D ne s'applique pas
Toujours sur 3 cases vides, mais avec d'autres domaines :
| Case | Domaine |
|---|---|
| C₁ | {2, 4, 5} |
| C₂ | {2, 5, 7} |
| C₃ | {2, 4} |
Union = {2, 4, 5, 7} → 4 valeurs pour 3 cases. Condition non satisfaite. Même si le 7 ne peut aller que dans C₂, on ne peut pas conclure C₂ = 7 — peut-être que dans la solution réelle, aucun 7 n'apparaîtra dans ce segment et les trois cases recevront {2, 4, 5}. D reste bloquée tant que l'union n'a pas été ramenée à exactement 3 éléments.
Quand la chercher : dans un segment où plusieurs cases ont 2 ou 3 candidats chacune, et où l'union des domaines est petite. Vérifier d'abord la condition de couverture, puis chercher une valeur captive d'une seule case.
Raisonnement par contradiction
Quand toutes les autres techniques échouent : pour chaque case vide et chaque valeur candidate, on suppose que cette case prend cette valeur, puis on propage les conséquences (en réappliquant A, B, C, D). Si l'on aboutit à une impasse — par exemple une autre case dont tous les candidats sont éliminés — c'est que la valeur de départ était fausse, on peut donc l'enlever du domaine.
Réservée aux grilles Expert. Coûteuse mentalement : équivaut à un raisonnement par l'absurde sur deux ou trois étapes en avant.
Le solveur bloque
Quand même E ne suffit pas — c'est-à-dire que ni A1, A2, B, C, D, ni le look-ahead par contradiction (E) ne permettent de réduire un domaine — la grille demande de l'essai-erreur ou une intuition humaine. Concrètement, le solveur automatique retourne « bloqué » : il faudrait aller plus profond (look-ahead à profondeur 2, ou pure devinette puis vérification a posteriori).
Exclusivement sur des grilles Expert dégénérées. C'est rare et volontairement très pénalisé : F domine toutes les autres méthodes dans le calcul du score.
3. Calcul du score d'une grille
Le score de difficulté d'une grille est la somme des coûts case par case : pour chaque case, on retient la méthode qui a permis de la résoudre, et on lui associe un coût.
où |V| est le nombre de candidats restant juste avant la résolution de cette case, et n est le rang de la méthode (A1 = 0, A2 = 1, B = 1, C = 2, D = 3, E = 4, F = 5). Le terme (|V|−1) pénalise les cas ambigus : plus on hésitait, plus la résolution est jugée coûteuse.
| Méthode | Base | Formule | Exemple |V|=2 |
|---|---|---|---|
| A1 | 1 | 1 (constant) | 1 |
| A2 | 1 | 1 + 1×(|V|−1) = |V| | 2 |
| B | 5 | 5 + (|V|−1) | 6 |
| C | 10 | 10 + 2(|V|−1) | 12 |
| D | 20 | 20 + 3(|V|−1) | 23 |
| E | 50 | 50 + 4(|V|−1) | 54 |
| F | 75 | 75 + 5(|V|−1) | 80 |
Score grille = Σ score case, sur toutes les cases blanches. Une grille résolue uniquement par A1/A2 est facile et son score reste bas (chaque case vaut 1 à quelques unités). Une seule case en E suffit à faire grimper le score d'au moins 50 points.
Interprétation. Deux puzzles peuvent avoir la même « méthode maximale » mais des scores très différents : un puzzle qui résout 30 cases en A1 (score 30) est long mais facile. Un puzzle qui résout 10 cases dont une en E avec 3 candidats (score ≈ 9 + 58 = 67) est court mais difficile : le saut conceptuel pèse plus que la longueur.
4. Niveaux de difficulté
Yokutai propose trois niveaux, définis par la méthode la plus avancée nécessaire pour résoudre la grille :
| Niveau | Méthodes admises | Description |
|---|---|---|
| Facile | A1, A2 | Résolution purement locale : on raisonne case par case, sans propagation. |
| Intermédiaire | A, B, C, D | Propagation des contraintes dans les segments + paires nues + valeurs forcées par couverture. |
| Expert | A, B, C, D, E (voire F) | Look-ahead par contradiction obligatoire au moins une fois ; rarement, essai-erreur (F). |
Comment les grilles sont calibrées. Pour chaque template, on génère la solution complète puis on retire les indices un par un, du plus facile à retrouver au plus dur. On prend un snapshot à trois instants :
- Facile : juste avant de retirer une case qui ne se résoudrait plus que par B, C, D ou E.
- Intermédiaire : juste avant de retirer une case qui obligerait à faire du look-ahead (E).
- Expert : la grille minimale, celle où retirer n'importe quelle case rendrait le puzzle insoluble.
La même solution donne ainsi trois versions du même puzzle, du plus indicé (Facile) au moins indicé (Expert).
← Retour aux règles du jeu