r.e.s. wrote:That's not correct -- the forcing chain method I posted does not require T&E.masb wrote:According to my solver program (http://www.axcis.com.au/bb/viewtopic.php?t=25) you have to resort to trial and error to find that R7C5 is 4. From there it is solvable.
But your forcing chain found only the 8 at r6c7, which doesn't crack the puzzle. T&E does. Here's my solve analysis done by hand, using the same techniques my solver would use. Perhaps my solver would find better choices for T&E or do better eliminations using advanced coloring, but here's what I get. First, starting with an advanced coloring analysis, we prove r6c7<>8:
- Code: Select all
+-------------------+-------------------+-------------------+
| 7 156 456 | 2 458 146 | 3 458 9 |
| ab c | d A e | D |
| 19 3 459 | 14589 7 149 | 2 458 6 |
| Aa C | D | d |
| 269 269 8 | 3 45 69 | 14 7 15 |
| f F | gG Ee | gG Gg |
+-------------------+-------------------+-------------------+
| 3 2678 267 | 1478 9 1247 | 5 1246 128 |
| | | h |
| 2689 4 25679 | 1578 258 127 | 1689 3 128 |
| b | i D | H |
| 289 2589 1 | 458 6 3 | 489 249 7 |
| B | b | g |
+-------------------+-------------------+-------------------+
| 12689 12689 269 | 469 24 5 | 7 1269 3 |
| a j J | I Ii | |
| 4 2679 3 | 679 1 279 | 689 2569 258 |
| | i | k g GK |
| 5 12679 2679 | 679 3 8 | 169 1269 4 |
| | | |
+-------------------+-------------------+-------------------+
Colors a and A are conjugates, b and B are conjugates, and so on. If two colors appear in the same constraint they exclude each other (if one is true the other must be false), e.g. a!b means a excludes b and vice-versa. You can extend exclusions using the rule that if a!b and B!c, then a!c. Then you look for intersections of two colors in which one of the colors must be true.
a!b, a!j, A!e, D!i, g!i, G!K
G!K, so g or k or both must be true. g and k intersect at r6c7=8, so r6c7<>8.
No further insights are found by advanced coloring yet, so the next available technique (to my solver anyway) is bifurcating chains, a form of T&E. You start out with either a capital A, trying to prove that placement is true, or a lowercase a, trying to prove it's false. All capital letters support the thesis if true, all lowercase letters support it if false. Anywhere you have a false value you can propagate it to the rest of the constraint as true values (a???? -> aBBBB), and anywhere you have a constraint with just one unfilled value you can fill in with a false one (BCD? -> BCDd). If two false values share the same constraint or a constraint is filled with all true values, you have a proof.
Normally it's hard to find a good place to test for this, but I took aim at a simple target: c2r6<>4. If I could prove that it would open up some conjugate pairs (strong links, as they're also called), and it would also cause a naked pair to appear.
- Code: Select all
+-------------------+-------------------+-------------------+
| 7 156 456 | 2 458 146 | 3 458 9 |
| fEF bCC | BCc FBe | CdD |
| 19 3 459 | 14589 7 149 | 2 458 6 |
| Ff BeF | eBCDE BaB | BEd |
| 269 269 8 | 3 45 69 | 14 7 15 |
| E E | Bb Ed | Cb cC |
+-------------------+-------------------+-------------------+
| 3 2678 267 | 1478 9 1247 | 5 1246 128 |
| E g E | FfGG DB | EF DdE |
| 2689 4 25679 | 1578 258 127 | 1689 3 128 |
| DgEG DF | FfGE cCD D | ED DDd |
| 289 2589 1 | 458 6 3 | 49 249 7 |
| fGD FeFD | FFf | Cc EeD |
+-------------------+-------------------+-------------------+
| 12689 12689 269 | 469 24 5 | 7 1269 3 |
| fGGGG G | C Cb | G |
| 4 2679 3 | 679 1 279 | 689 2569 258 |
| | cDD | EdD D DcD |
| 5 12679 2679 | 679 3 8 | 169 1269 4 |
| G | | D |
+-------------------+-------------------+-------------------+
All choices for 8 in column 1 prove r2c6<>4.
A new naked pair 19 is found in row 2.
A new pointing pair is found for digit 9 in column 6.
A new pointing pair is found for digit 1 in column 6.
A new naked pair 27 is found in column 6.
Naked single 4 at r4c6.
A new pointing pair is found for digit 2 in box 5, row 5.
Now we've reached a point where advanced coloring can show us a lot more clues.
- Code: Select all
+-------------------+-------------------+-------------------+
| 7 156 456 | 2 458 16 | 3 458 9 |
| ab c | d Aa | D |
| 19 3 45 | 458 7 19 | 2 458 6 |
| Aa Cc | i D aA | d |
| 269 269 8 | 3 45 69 | 14 7 15 |
| f F | gG Aa | gG Gg |
+-------------------+-------------------+-------------------+
| 3 2678 267 | 178 9 4 | 5 126 128 |
| | n | h l |
| 689 4 5679 | 1578 258 27 | 1689 3 18 |
| b | N i D Ii | HK mM |
| 289 2589 1 | 58 6 3 | 49 249 7 |
| B | bB | gG G |
+-------------------+-------------------+-------------------+
| 12689 12689 269 | 469 24 5 | 7 1269 3 |
| a j J | I Ii | |
| 4 2679 3 | 679 1 27 | 689 2569 258 |
| | iI | k g LGK |
| 5 12679 2679 | 679 3 8 | 169 1269 4 |
| | | |
+-------------------+-------------------+-------------------+
a!b, a!j, b!c, B!D, C!i, D!i, D!K, D!M, g!i, G!K, G!L, G!m, H!K, K!L, K!M, m!N
B!D, so b or d or both must be true. b and d intersect at r1c5=5, so r1c5<>5.
- Code: Select all
+-------------------+-------------------+-------------------+
| 7 156 456 | 2 48 16 | 3 458 9 |
| ab c | Dd Aa | D |
| 19 3 45 | 458 7 19 | 2 458 6 |
| Aa Cc | igD aA | d |
| 269 269 8 | 3 45 69 | 14 7 15 |
| f F | gG Aa | gG Gg |
+-------------------+-------------------+-------------------+
| 3 2678 267 | 178 9 4 | 5 126 128 |
| | n | h l |
| 689 4 5679 | 1578 258 27 | 1689 3 18 |
| b | N igD Ii | HK mM |
| 289 2589 1 | 58 6 3 | 49 249 7 |
| B | bB | gG G |
+-------------------+-------------------+-------------------+
| 12689 12689 269 | 469 24 5 | 7 1269 3 |
| a j J | I Ii | |
| 4 2679 3 | 679 1 27 | 689 2569 258 |
| | iI | k g LGK |
| 5 12679 2679 | 679 3 8 | 169 1269 4 |
| | | |
+-------------------+-------------------+-------------------+
a!b, a!j, b!c, B!D, C!i, D!g, D!i, D!K, D!M, g!i, G!K, G!L, G!m, H!K, K!L, K!M, m!N
D!D <= D!g <- G!m <- M!D
Since the color D has just excluded itself, we can place any d's.
- Code: Select all
+-------------------+-------------------+-------------------+
| 7 156 456 | 2 8 16 | 3 45 9 |
| ab c | Aa | Cc |
| 19 3 45 | 45 7 19 | 2 8 6 |
| Aa Cc | cC aA | |
| 269 269 8 | 3 45 69 | 14 7 15 |
| f F | Cc Aa | Cc cC |
+-------------------+-------------------+-------------------+
| 3 2678 267 | 178 9 4 | 5 126 128 |
| | n | h l |
| 689 4 5679 | 1578 25 27 | 1689 3 18 |
| b | N cC Cc | HK mM |
| 289 2589 1 | 58 6 3 | 49 249 7 |
| B | bB | Cc c |
+-------------------+-------------------+-------------------+
| 12689 12689 269 | 469 24 5 | 7 1269 3 |
| a j J | C Cc | |
| 4 2679 3 | 679 1 27 | 689 2569 258 |
| | cC | k C LcK |
| 5 12679 2679 | 679 3 8 | 169 1269 4 |
| | | |
+-------------------+-------------------+-------------------+
a!b, a!j, b!c, b!C, c!K, c!L, c!m, H!K, K!L, K!M, m!N
b!b <= b!c <- C!b
Since b excludes itself, B must be true. Another way to look at this is that b is excluded by both c and C, of which we know exactly one is true because they're conjugates.
A new naked pair 16 is found in row 1.
- Code: Select all
+-------------------+-------------------+-------------------+
| 7 16 45 | 2 8 16 | 3 45 9 |
| aA cC | Aa | Cc |
| 19 3 45 | 45 7 19 | 2 8 6 |
| Aa Cc | cC aA | |
| 269 269 8 | 3 45 69 | 14 7 15 |
| f F | Cc Aa | Cc cC |
+-------------------+-------------------+-------------------+
| 3 2678 267 | 17 9 4 | 5 126 128 |
| j | nN | h lJ |
| 689 4 679 | 157 25 27 | 1689 3 18 |
| J | Nc cC Cc | HK mM |
| 29 5 1 | 8 6 3 | 49 249 7 |
| oO | | Cc Oc |
+-------------------+-------------------+-------------------+
| 12689 12689 269 | 469 24 5 | 7 1269 3 |
| a j J | C Cc | |
| 4 2679 3 | 679 1 27 | 689 2569 258 |
| | cC | k C LcK |
| 5 12679 2679 | 679 3 8 | 169 1269 4 |
| | | |
+-------------------+-------------------+-------------------+
a!j, a!O, c!K, c!L, c!m, c!N, c!O, f!o, H!K, J!K, J!l, J!M, K!L, K!M, l!O, m!N
f!l <= f!o <- O!l
F or L or both must be true. F and L intersect at r8c2=2, so r8c2<>2.
- Code: Select all
+-------------------+-------------------+-------------------+
| 7 16 45 | 2 8 16 | 3 45 9 |
| aA cC | Aa | Cc |
| 19 3 45 | 45 7 19 | 2 8 6 |
| Aa Cc | cC aA | |
| 269 269 8 | 3 45 69 | 14 7 15 |
| f F | Cc Aa | Cc cC |
+-------------------+-------------------+-------------------+
| 3 2678 267 | 17 9 4 | 5 126 128 |
| j | nN | h lJ |
| 689 4 679 | 157 25 27 | 1689 3 18 |
| J | Nc cC Cc | HK mM |
| 29 5 1 | 8 6 3 | 49 249 7 |
| oO | | Cc Oc |
+-------------------+-------------------+-------------------+
| 12689 12689 269 | 469 24 5 | 7 1269 3 |
| a j J | C Cc | |
| 4 679 3 | 679 1 27 | 689 2569 258 |
| | cC | k C LcK |
| 5 12679 2679 | 679 3 8 | 169 1269 4 |
| | | |
+-------------------+-------------------+-------------------+
c!f <= c!O <- o!f
C or F or both must be true. C and F intersect at r7c2=2, so r7c2<>2.
- Code: Select all
+-------------------+-------------------+-------------------+
| 7 16 45 | 2 8 16 | 3 45 9 |
| aA cC | Aa | Cc |
| 19 3 45 | 45 7 19 | 2 8 6 |
| Aa Cc | cC aA | |
| 269 269 8 | 3 45 69 | 14 7 15 |
| f F | Cc Aa | Cc cC |
+-------------------+-------------------+-------------------+
| 3 2678 267 | 17 9 4 | 5 126 128 |
| j | nN | h lJ |
| 689 4 679 | 157 25 27 | 1689 3 18 |
| J | Nc cC Cc | HK mM |
| 29 5 1 | 8 6 3 | 49 249 7 |
| oO | | Cc Oc |
+-------------------+-------------------+-------------------+
| 12689 1689 269 | 469 24 5 | 7 1269 3 |
| a j J | C Cc | |
| 4 679 3 | 679 1 27 | 689 2569 258 |
| | cC | k C LcK |
| 5 12679 2679 | 679 3 8 | 169 1269 4 |
| | | |
+-------------------+-------------------+-------------------+
a!j, a!O, c!K, c!L, c!m, c!N, c!O, f!o, H!K, J!K, J!l, J!M, K!L, K!M, l!O, m!N
a!j, so A or J or both are true. A and J intersect at r7c2=6, so r7c2<>6.
- Code: Select all
+-------------------+-------------------+-------------------+
| 7 16 45 | 2 8 16 | 3 45 9 |
| aA cC | Aa | Cc |
| 19 3 45 | 45 7 19 | 2 8 6 |
| Aa Cc | cC aA | |
| 269 269 8 | 3 45 69 | 14 7 15 |
| f F | Cc Aa | Cc cC |
+-------------------+-------------------+-------------------+
| 3 2678 267 | 17 9 4 | 5 126 128 |
| j | nN | h lJ |
| 689 4 679 | 157 25 27 | 1689 3 18 |
| J | Nc cC Cc | HK mM |
| 29 5 1 | 8 6 3 | 49 249 7 |
| oO | | Cc Oc |
+-------------------+-------------------+-------------------+
| 12689 189 269 | 469 24 5 | 7 1269 3 |
| a j J | C Cc | |
| 4 679 3 | 679 1 27 | 689 2569 258 |
| | cC | k C LcK |
| 5 12679 2679 | 679 3 8 | 169 1269 4 |
| | | |
+-------------------+-------------------+-------------------+
a!j, c!K, c!L, c!m, c!N, c!O, f!o, H!K, J!K, J!l, J!M, K!L, K!M, l!O, m!N
c!O, so C or o or both are true. C and o intersect at r7c1=2, so r7c1<>2.
At last we've again reached a point where advanced coloring can no longer help, so we turn back to bifurcating chains. A likely target appears in row 6 where the cells have candidates 29, 49, and 249 respectively. A common pattern is for that third cell to be 24, so I decided to test r6c8<>9.
- Code: Select all
+-------------------+-------------------+-------------------+
| 7 16 45 | 2 8 16 | 3 45 9 |
| jJ Cc | Kj | bC |
| 19 3 45 | 45 7 19 | 2 8 6 |
| K cD | Dd | |
| 269 269 8 | 3 45 69 | 14 7 15 |
| C cDD | cD K | cC Dc |
+-------------------+-------------------+-------------------+
| 3 2678 267 | 17 9 4 | 5 126 128 |
| CJGj C | | GfG FK |
| 689 4 679 | 157 25 27 | 1689 3 18 |
| H H K | E Ed eF | DgGB |
| 29 5 1 | 8 6 3 | 49 249 7 |
| bB | | bB BBa |
+-------------------+-------------------+-------------------+
| 1689 189 269 | 469 24 5 | 7 1269 3 |
| J K KKK EJj | dEE dD | JEiB |
| 4 679 3 | 679 1 27 | 689 2569 258 |
| iFI | IFh Ee | GfG DcDB eDF |
| 5 12679 2679 | 679 3 8 | 169 1269 4 |
| GDGfG eFFF | hFH | DHg iFIB |
+-------------------+-------------------+-------------------+
All choices for r7c2 prove that r6c8<>9.
A new pointing pair is found for digit 9 in box 6, column 7.
Now we can go back to advanced coloring for the rest.
- Code: Select all
+-------------------+-------------------+-------------------+
| 7 16 45 | 2 8 16 | 3 45 9 |
| aA cC | Aa | Cc |
| 19 3 45 | 45 7 19 | 2 8 6 |
| Aa Cc | cC aA | |
| 269 269 8 | 3 45 69 | 14 7 15 |
| C c | Cc Aa | Cc cC |
+-------------------+-------------------+-------------------+
| 3 2678 267 | 17 9 4 | 5 126 128 |
| j | nN | h lJ |
| 689 4 679 | 157 25 27 | 1689 3 18 |
| J | Nc cC Cc | HKC mM |
| 29 5 1 | 8 6 3 | 49 24 7 |
| cC | | Cc Cc |
+-------------------+-------------------+-------------------+
| 1689 189 269 | 469 24 5 | 7 1269 3 |
| a j J | C Cc | |
| 4 679 3 | 679 1 27 | 68 2569 258 |
| | cC | Kk C LcK |
| 5 12679 2679 | 679 3 8 | 16 1269 4 |
| | | pP |
+-------------------+-------------------+-------------------+
a!C, a!j, c!K, c!L, c!m, c!N, C!H, C!K, C!l, C!p, H!K, J!K, J!l, J!M, K!L, K!M, K!P, m!N
K!K <= K!c <- C!K
- Code: Select all
+-------------------+-------------------+-------------------+
| 7 16 45 | 2 8 16 | 3 45 9 |
| aA cC | Aa | Cc |
| 19 3 45 | 45 7 19 | 2 8 6 |
| Aa Cc | cC aA | |
| 269 269 8 | 3 45 69 | 14 7 15 |
| C c | Cc Aa | Cc cC |
+-------------------+-------------------+-------------------+
| 3 2678 267 | 17 9 4 | 5 126 128 |
| j | nN | h cJ |
| 689 4 679 | 157 25 27 | 169 3 18 |
| J | Nc cC Cc | HC Jj |
| 29 5 1 | 8 6 3 | 49 24 7 |
| cC | | Cc Cc |
+-------------------+-------------------+-------------------+
| 1689 189 269 | 469 24 5 | 7 1269 3 |
| a j J | C Cc | |
| 4 679 3 | 679 1 27 | 8 2569 25 |
| | cC | C Cc |
| 5 12679 2679 | 679 3 8 | 16 1269 4 |
| | | Hh |
+-------------------+-------------------+-------------------+
a!C, a!j, c!J, c!N, C!H, J!N
c and C intersect at r4c8=2, so r4c8<>2.
c and C intersect at r8c8=2, so r8c8<>2.
a!a <= a!C <- c!J <- j!a
A new naked pair 29 is found in column 1.
- Code: Select all
+-------------------+-------------------+-------------------+
| 7 6 45 | 2 8 1 | 3 45 9 |
| cC | | Cc |
| 1 3 45 | 45 7 9 | 2 8 6 |
| Cc | cC | |
| 29 29 8 | 3 45 6 | 14 7 15 |
| Cc cC | Cc | Cc cC |
+-------------------+-------------------+-------------------+
| 3 2678 267 | 17 9 4 | 5 16 128 |
| j | nN | Hh cJ |
| 68 4 679 | 157 25 27 | 169 3 18 |
| jJ c | Nc cC Cc | HC Jj |
| 29 5 1 | 8 6 3 | 49 24 7 |
| cC | | Cc Cc |
+-------------------+-------------------+-------------------+
| 68 189 269 | 469 24 5 | 7 1269 3 |
| Jj J | C Cc | |
| 4 79 3 | 679 1 27 | 8 569 25 |
| qQ | cC | C Cc |
| 5 1279 2679 | 679 3 8 | 16 1269 4 |
| | | Hh |
+-------------------+-------------------+-------------------+
c!J, c!N, C!H, C!q, C!Q, H!n, J!N
C!C <= C!q <= Q!C
c!J,N
n!H
Once you prove C excludes itself and so c is true, since you know c!J and c!N, j and n must also be true. And since n!H, h is true. Once you've placed all the c's, h's, j's, and n's, you have very simple eliminations from there out.