Hidato: pattern-based solution

For fans of all other kinds of logic puzzles

Hidato: pattern-based solution

Postby denis_berthier » Sun Aug 09, 2015 10:32 am

In my last book, "Pattern-Based Constraint Satisfaction and Logic Puzzles", Hidato was one of the examples I dealt with. But as I hadn't seen anyone interested in Hidato here, I didn't communicate about it.

I've just found this old thread: http://forum.enjoysudoku.com/hidato-t6404.html
Below, I'll post the solution to a few of the puzzles proposed there.

Apart from my general definitions of whips, the only thing you need to know is, I use two kinds of CSP-Variables:
- the "natural" ones of type rc, e.g. r3c4, with values the possible numbers in cell r3c4
- the "dual" ones of type n, e.g. n54, with values the possible places number 54 can occupy
With this very simple trick, most puzzles become easy.

In the following, there will appear many whips[1]. Although most of them are obvious (once the above CSP-Variables have been defined), I keep them all in the resolution paths.

(Note: in my book, much more difficult Hidato puzzles are solved.)
Last edited by denis_berthier on Sun Aug 09, 2015 1:15 pm, edited 1 time in total.
denis_berthier
2010 Supporter
 
Posts: 4215
Joined: 19 June 2007
Location: Paris

hidato-t6404-3

Postby denis_berthier » Sun Aug 09, 2015 10:38 am

http://forum.enjoysudoku.com/hidato-t6404-3.html

evert wrote:Here's another puzzle:
Code: Select all
00;22;20;00;00;00;00;80;00
00;00;00;00;00;00;73;00;00
00;00;00;69;00;00;00;00;77
35;00;66;00;64;05;00;00;00
00;00;27;00;00;00;00;00;00
00;39;00;03;00;00;00;00;58
00;40;00;02;30;00;00;00;12
00;43;00;00;00;00;00;00;00
00;00;00;00;47;00;10;00;52


solved in W1:

Hidden Text: Show
Code: Select all
***  HidatoRules 2.0.m based on CSP-Rules 2.0.m, config = W
hidden-single: r8c8 = 11
hidden-single: r6c5 = 29
hidden-single: r5c4 = 28
hidden-single: r4c4 = 65
hidden-single: r5c5 = 4
naked-single: r9c1 = 42
hidden-single: r8c1 = 41
naked-single: r7c1 = 38
hidden-single: r6c1 = 37
naked-single: r9c2 = 44
naked-single: r9c3 = 45
naked-single: r8c3 = 1
naked-single: r7c3 = 32
hidden-single: r6c3 = 33
hidden-single: r5c2 = 34
hidden-single: r4c2 = 26
hidden-single: r5c1 = 36
hidden-single: r8c4 = 31
hidden-single: r9c4 = 46
naked-single: r8c5 = 48
naked-single: r1c1 = 23
naked-single: r2c1 = 24
naked-single: r3c1 = 25
naked-single: r3c2 = 67
whip[1]: r1c4{n19 .} ==> r2c2 ≠ 19
naked-single: r2c2 = 21
whip[1]: r1c4{n18 .} ==> r3c5 ≠ 18
whip[1]: r1c4{n18 .} ==> r3c3 ≠ 18
naked-single: r3c3 = 68
whip[1]: r2c3{n19 .} ==> r1c5 ≠ 18
naked-single: r1c5 = 71
whip[1]: r2c3{n19 .} ==> r2c5 ≠ 18
whip[1]: n18{r2c4 .} ==> r3c6 ≠ 17
whip[1]: n17{r3c5 .} ==> r4c7 ≠ 16
whip[1]: n18{r2c4 .} ==> r2c6 ≠ 17
whip[1]: n17{r3c5 .} ==> r3c7 ≠ 16
whip[1]: n63{r5c6 .} ==> r5c6 ≠ 62
whip[1]: n53{r9c8 .} ==> r7c7 ≠ 54
whip[1]: n54{r9c8 .} ==> r6c6 ≠ 55
whip[1]: n49{r9c6 .} ==> r9c8 ≠ 50
whip[1]: n49{r9c6 .} ==> r7c8 ≠ 50
whip[1]: n50{r8c7 .} ==> r8c9 ≠ 51
hidden-single: r9c8 = 51
hidden-single: r8c7 = 50
hidden-single: r8c6 = 9
hidden-single: r8c9 = 53
hidden-single: r7c8 = 54
hidden-single: r6c8 = 13
naked-single: r9c6 = 49
whip[1]: n55{r7c7 .} ==> r5c9 ≠ 56
whip[1]: n57{r5c9 .} ==> r7c7 ≠ 56
whip[1]: n59{r5c9 .} ==> r7c7 ≠ 60
whip[1]: n15{r6c7 .} ==> r3c5 ≠ 16
whip[1]: n16{r5c7 .} ==> r2c4 ≠ 17
whip[1]: n17{r3c5 .} ==> r2c3 ≠ 18
naked-single: r2c3 = 19
naked-single: r1c4 = 18
hidden-single: r2c5 = 17
hidden-single: r2c4 = 70
hidden-single: r3c6 = 16
hidden-single: r4c7 = 15
whip[1]: n61{r7c7 .} ==> r3c5 ≠ 62
naked-single: r3c5 = 63
hidden-single: r2c6 = 62
hidden-single: r1c6 = 72
hidden-single: r3c7 = 61
hidden-single: r4c8 = 60
naked-single: r5c6 = 6
naked-single: r6c6 = 7
naked-single: r7c6 = 8
naked-single: r7c7 = 55
hidden-single: r6c7 = 56
hidden-single: r5c8 = 57
hidden-single: r5c7 = 14
hidden-single: r5c9 = 59
whip[1]: r4c9{n76 .} ==> r1c7 ≠ 75
whip[1]: r4c9{n76 .} ==> r1c9 ≠ 75
whip[1]: r4c9{n76 .} ==> r2c8 ≠ 75
whip[1]: n75{r4c9 .} ==> r1c7 ≠ 74
whip[1]: r4c9{n76 .} ==> r2c9 ≠ 75
whip[1]: r4c9{n76 .} ==> r2c8 ≠ 76
whip[1]: r4c9{n76 .} ==> r2c9 ≠ 76
biv-chain[2]: r1c7{n79 n81} - r1c9{n81 n79} ==> r3c8 ≠ 78
biv-chain[2]: r1c7{n79 n81} - r1c9{n81 n79} ==> r2c8 ≠ 79
biv-chain[2]: r1c7{n79 n81} - r1c9{n81 n79} ==> r2c9 ≠ 79
biv-chain[2]: n79{r1c9 r1c7} - r2c9{n78 n81} ==> r1c9 ≠ 81
naked-single: r1c9 = 79
naked-single: r1c7 = 81
naked-single: r2c9 = 78
naked-single: r2c8 = 74
hidden-single: r3c8 = 75
hidden-single: r4c9 = 76


23 22 20 18 71 72 81 80 79
24 21 19 70 17 62 73 74 78
25 67 68 69 63 16 61 75 77
35 26 66 65 64 5 15 60 76
36 34 27 28 4 6 14 57 59
37 39 33 3 29 7 56 13 58
38 40 32 2 30 8 55 54 12
41 43 1 31 48 9 50 11 53
42 44 45 46 47 49 10 51 52

Note: the only non-trivial steps are the two bivalue-chains[2]:
biv-chain[2]: r1c7{n79 n81} - r1c9{n81 n79} ==> r3c8 ≠ 78, r2c8 ≠ 79, r2c9 ≠ 79
biv-chain[2]: n79{r1c9 r1c7} - r2c9{n78 n81} ==> r1c9 ≠ 81
Last edited by denis_berthier on Sun Aug 09, 2015 1:17 pm, edited 2 times in total.
denis_berthier
2010 Supporter
 
Posts: 4215
Joined: 19 June 2007
Location: Paris

t6404-9

Postby denis_berthier » Sun Aug 09, 2015 10:42 am

http://forum.enjoysudoku.com/hidato-t6404-9.html

evert wrote:
Code: Select all
03;..;..;..;..;..;..;27;..
..;02;..;..;..;..;..;..;26
..;61;..;06;08;..;11;..;22
60;..;..;..;..;14;13;..;81
..;59;..;36;..;..;..;..;..
..;56;..;..;16;..;..;..;..
66;..;55;..;..;18;..;45;..
..;..;53;50;49;..;47;..;..
..;..;..;..;..;73;..;..;..


solved in W2

Hidden Text: Show
Code: Select all
***  HidatoRules 2.0.m based on CSP-Rules 2.0.m, config = W
hidden-single: r8c6 = 48
hidden-single: r4c8 = 21
hidden-single: r1c2 = 4
hidden-single: r2c3 = 5
naked-single: r9c1 = 68
naked-single: r8c1 = 67
naked-single: r2c1 = 1
naked-single: r1c3 = 32
hidden-single: r2c4 = 33
hidden-single: r1c4 = 31
hidden-single: r3c3 = 34
naked-single: r1c6 = 29
naked-single: r1c5 = 30
naked-single: r3c1 = 62
hidden-single: r4c2 = 63
whip[1]: r1c9{n25 .} ==> r3c8 ≠ 25
whip[1]: r1c9{n24 .} ==> r3c8 ≠ 24
whip[1]: r1c9{n24 .} ==> r2c7 ≠ 24
whip[1]: r1c9{n24 .} ==> r1c7 ≠ 24
naked-single: r1c7 = 28
whip[1]: n74{r9c7 .} ==> r9c7 ≠ 75
whip[1]: n74{r9c5 .} ==> r9c5 ≠ 75
whip[1]: n75{r9c8 .} ==> r9c4 ≠ 76
whip[1]: n72{r9c5 .} ==> r9c5 ≠ 71
whip[1]: n71{r9c4 .} ==> r9c4 ≠ 70
whip[1]: n42{r9c5 .} ==> r9c5 ≠ 41
whip[1]: n41{r9c9 .} ==> r9c4 ≠ 40
whip[1]: n52{r7c4 .} ==> r7c4 ≠ 51
whip[1]: n79{r3c8 .} ==> r3c8 ≠ 80
whip[1]: n41{r3c8 .} ==> r3c8 ≠ 40
whip[1]: n75{r9c8 .} ==> r6c9 ≠ 76
whip[1]: n74{r9c7 .} ==> r7c7 ≠ 75
whip[1]: n75{r9c8 .} ==> r6c7 ≠ 76
whip[1]: n75{r9c8 .} ==> r6c8 ≠ 76
whip[1]: n76{r9c9 .} ==> r5c9 ≠ 77
whip[1]: n76{r9c9 .} ==> r5c8 ≠ 77
whip[1]: n74{r9c7 .} ==> r7c5 ≠ 75
whip[1]: n75{r9c8 .} ==> r7c4 ≠ 76
whip[1]: n75{r9c8 .} ==> r6c6 ≠ 76
whip[1]: n76{r9c9 .} ==> r5c6 ≠ 77
whip[1]: n76{r9c9 .} ==> r5c7 ≠ 77
whip[1]: n74{r9c7 .} ==> r7c4 ≠ 75
whip[1]: n75{r9c8 .} ==> r7c5 ≠ 76
whip[1]: n75{r9c8 .} ==> r6c4 ≠ 76
whip[1]: n76{r9c9 .} ==> r7c5 ≠ 77
whip[1]: n76{r9c9 .} ==> r5c5 ≠ 77
whip[1]: n77{r8c9 .} ==> r9c5 ≠ 76
whip[1]: n76{r9c9 .} ==> r9c4 ≠ 75
whip[1]: n75{r9c8 .} ==> r9c5 ≠ 74
hidden-single: r9c7 = 74
hidden-single: r9c5 = 72
hidden-single: r9c4 = 71
hidden-single: r9c3 = 70
hidden-single: r7c5 = 51
hidden-single: r7c4 = 52
hidden-single: r6c6 = 17
hidden-single: r6c7 = 19
naked-single: r9c2 = 69
whip[1]: n39{r8c2 .} ==> r7c7 ≠ 40
whip[1]: n44{r8c9 .} ==> r5c6 ≠ 43
whip[1]: n43{r9c9 .} ==> r4c5 ≠ 42
whip[1]: n42{r9c9 .} ==> r3c6 ≠ 41
whip[1]: n41{r9c9 .} ==> r2c5 ≠ 40
whip[1]: n41{r9c9 .} ==> r2c6 ≠ 40
whip[1]: n43{r9c9 .} ==> r5c5 ≠ 42
whip[1]: n42{r9c9 .} ==> r4c4 ≠ 41
whip[1]: n41{r9c9 .} ==> r4c3 ≠ 40
whip[1]: n42{r9c9 .} ==> r6c4 ≠ 41
whip[1]: n41{r9c9 .} ==> r5c3 ≠ 40
whip[1]: n41{r9c9 .} ==> r6c3 ≠ 40
whip[1]: n40{r9c8 .} ==> r7c2 ≠ 39
whip[1]: n77{r8c9 .} ==> r5c6 ≠ 78
whip[1]: n38{r7c2 .} ==> r7c7 ≠ 39
whip[1]: n39{r8c2 .} ==> r8c8 ≠ 40
whip[1]: n40{r9c8 .} ==> r9c8 ≠ 41
whip[1]: n40{r9c8 .} ==> r8c2 ≠ 39
naked-single: r8c2 = 54
whip[1]: n78{r7c9 .} ==> r3c8 ≠ 79
whip[1]: n39{r6c4 .} ==> r9c8 ≠ 40
whip[1]: n40{r6c8 .} ==> r8c8 ≠ 41
whip[1]: n40{r6c8 .} ==> r8c9 ≠ 41
whip[1]: n41{r9c9 .} ==> r9c9 ≠ 42
whip[1]: n40{r6c8 .} ==> r9c9 ≠ 41
whip[1]: n41{r7c9 .} ==> r9c8 ≠ 42
whip[1]: n64{r5c3 .} ==> r7c2 ≠ 65
hidden-single: r6c1 = 65
hidden-single: r5c1 = 64
whip[1]: n42{r8c9 .} ==> r3c8 ≠ 41
whip[1]: n41{r7c9 .} ==> r2c7 ≠ 40
whip[1]: n41{r7c9 .} ==> r2c8 ≠ 40
biv-chain[2]: r1c9{n25 n24} - n23{r3c8 r2c8} ==> r2c8 ≠ 25
hidden-single: r1c9 = 25
hidden-single: r2c8 = 24
hidden-single: r3c8 = 23
hidden-single: r3c6 = 12
whip[1]: n10{r2c7 .} ==> r4c5 ≠ 9
whip[1]: n38{r7c2 .} ==> r2c5 ≠ 39
whip[1]: n38{r7c2 .} ==> r2c6 ≠ 39
whip[1]: n38{r7c2 .} ==> r2c7 ≠ 39
naked-single: r2c7 = 10
hidden-single: r2c6 = 9
naked-single: r2c5 = 7
biv-chain[2]: n20{r5c7 r5c8} - n80{r5c8 r5c9} ==> r5c7 ≠ 79
biv-chain[2]: n46{r7c7 r8c8} - n75{r8c8 r9c8} ==> r7c7 ≠ 76
whip[2]: r9c9{n76 n43} - r9c8{n43 .} ==> r7c9 ≠ 76
whip[1]: n76{r9c9 .} ==> r6c8 ≠ 77
whip[1]: n77{r8c9 .} ==> r5c7 ≠ 78
whip[1]: n76{r9c9 .} ==> r6c9 ≠ 77
whip[1]: n77{r8c9 .} ==> r5c8 ≠ 78
whip[1]: n77{r8c9 .} ==> r5c9 ≠ 78
whip[2]: n77{r8c9 r8c8} - n46{r8c8 .} ==> r7c7 ≠ 78
whip[2]: r6c4{n38 n40} - r4c5{n39 .} ==> r7c2 ≠ 38
naked-single: r7c2 = 57
hidden-single: r6c3 = 58
whip[1]: r5c3{n39 .} ==> r4c5 ≠ 38
whip[1]: r5c3{n39 .} ==> r5c5 ≠ 38
whip[1]: n38{r6c4 .} ==> r5c6 ≠ 39
whip[1]: n39{r6c4 .} ==> r5c7 ≠ 40
whip[1]: r5c3{n39 .} ==> r5c6 ≠ 38
whip[1]: n38{r6c4 .} ==> r5c7 ≠ 39
whip[1]: n39{r6c4 .} ==> r5c8 ≠ 40
whip[1]: n40{r6c8 .} ==> r6c8 ≠ 41
whip[1]: n41{r7c9 .} ==> r7c7 ≠ 42
whip[1]: n39{r6c4 .} ==> r6c8 ≠ 40
whip[1]: n40{r6c4 .} ==> r5c8 ≠ 41
whip[1]: n40{r6c4 .} ==> r5c9 ≠ 41
whip[1]: n40{r6c4 .} ==> r6c9 ≠ 41
whip[1]: n41{r7c9 .} ==> r5c9 ≠ 42
whip[1]: n41{r7c9 .} ==> r7c9 ≠ 42
whip[1]: n40{r6c4 .} ==> r7c9 ≠ 41
whip[1]: n41{r7c7 .} ==> r6c9 ≠ 42
whip[1]: n41{r7c7 .} ==> r8c9 ≠ 42
whip[1]: n42{r8c8 .} ==> r8c8 ≠ 43
whip[1]: n40{r6c4 .} ==> r7c7 ≠ 41
whip[1]: n41{r5c7 .} ==> r8c8 ≠ 42
whip[1]: n42{r6c8 .} ==> r8c9 ≠ 43
whip[1]: n42{r6c8 .} ==> r9c9 ≠ 43
naked-single: r9c9 = 76
whip[1]: n77{r8c9 .} ==> r6c8 ≠ 78
whip[1]: n77{r8c9 .} ==> r6c9 ≠ 78
hidden-single: r7c9 = 78
whip[1]: n42{r6c8 .} ==> r9c8 ≠ 43
naked-single: r9c8 = 75
whip[1]: n43{r7c7 .} ==> r8c9 ≠ 44
naked-single: r8c9 = 77
whip[2]: r8c8{n46 n44} - n43{r5c7 .} ==> r7c7 ≠ 46
hidden-single: r8c8 = 46
whip[1]: r7c7{n44 .} ==> r5c7 ≠ 43
whip[1]: n43{r7c7 .} ==> r5c6 ≠ 42
whip[1]: n42{r6c8 .} ==> r4c5 ≠ 41
whip[1]: n42{r6c8 .} ==> r5c5 ≠ 41
whip[1]: n41{r5c7 .} ==> r4c4 ≠ 40
whip[1]: n40{r6c4 .} ==> r4c3 ≠ 39
whip[1]: n41{r5c7 .} ==> r6c4 ≠ 40
whip[1]: r6c4{n39 .} ==> r4c4 ≠ 38
whip[1]: n38{r6c4 .} ==> r4c5 ≠ 39
whip[1]: n38{r6c4 .} ==> r4c5 ≠ 37
naked-single: r4c5 = 40
hidden-single: r5c6 = 41
hidden-single: r5c5 = 15
hidden-single: r4c4 = 39
hidden-single: r4c3 = 35
hidden-single: r5c3 = 38
hidden-single: r6c4 = 37
hidden-single: r5c7 = 42
hidden-single: r5c8 = 20
hidden-single: r6c8 = 43
hidden-single: r6c9 = 79
hidden-single: r7c7 = 44
hidden-single: r5c9 = 80


3 4 32 31 30 29 28 27 25
1 2 5 33 7 9 10 24 26
62 61 34 6 8 12 11 23 22
60 63 35 39 40 14 13 21 81
64 59 38 36 15 41 42 20 80
65 56 58 37 16 17 19 43 79
66 57 55 52 51 18 44 45 78
67 54 53 50 49 48 47 46 77
68 69 70 71 72 73 74 75 76


Note: the only non-trivial steps are the following:

biv-chain[2]: r1c9{n25 n24} - n23{r3c8 r2c8} ==> r2c8 ≠ 25
biv-chain[2]: n46{r7c7 r8c8} - n75{r8c8 r9c8} ==> r7c7 ≠ 76
whip[2]: r9c9{n76 n43} - r9c8{n43 .} ==> r7c9 ≠ 76
whip[2]: n77{r8c9 r8c8} - n46{r8c8 .} ==> r7c7 ≠ 78
whip[2]: r6c4{n38 n40} - r4c5{n39 .} ==> r7c2 ≠ 38
whip[2]: r8c8{n46 n44} - n43{r5c7 .} ==> r7c7 ≠ 46
Last edited by denis_berthier on Sun Aug 09, 2015 1:19 pm, edited 1 time in total.
denis_berthier
2010 Supporter
 
Posts: 4215
Joined: 19 June 2007
Location: Paris

t6404-16

Postby denis_berthier » Sun Aug 09, 2015 10:48 am

http://forum.enjoysudoku.com/hidato-t6404-16.html

evert wrote:Some puzzles with bottleneck:
Code: Select all
44;..;..;50;..;..;..;..;..
42;45;47;..;..;70;..;64;..
..;..;32;31;55;..;73;63;..
..;..;..;..;..;..;74;..;62
..;15;39;29;..;..;75;..;61
..;..;..;..;..;..;..;01;02
..;..;37;..;..;77;05;..;..
21;..;23;..;..;79;..;..;..
..;19;..;..;..;..;..;..;07


solved in W2

Hidden Text: Show
Code: Select all
***  HidatoRules 2.0.m based on CSP-Rules 2.0.m, config = W
hidden-single: r7c7 = 26
hidden-single: r6c8 = 27
hidden-single: r7c6 = 24
hidden-single: r7c2 = 80
hidden-single: r8c1 = 10
hidden-single: r6c1 = 8
hidden-single: r8c3 = 79
whip[1]: n29{r7c9 .} ==> r7c9 ≠ 30
whip[1]: n67{r6c7 .} ==> r6c7 ≠ 66
whip[1]: n35{r6c4 .} ==> r6c4 ≠ 34
whip[1]: n29{r5c9 .} ==> r5c9 ≠ 30
whip[1]: n47{r3c3 .} ==> r3c3 ≠ 48
whip[1]: n47{r1c3 .} ==> r1c3 ≠ 48
whip[1]: n43{r1c3 .} ==> r1c3 ≠ 42
whip[1]: n71{r9c9 .} ==> r5c9 ≠ 72
whip[1]: n70{r9c9 .} ==> r6c7 ≠ 71
whip[1]: n71{r9c9 .} ==> r6c6 ≠ 72
whip[1]: n70{r9c9 .} ==> r6c6 ≠ 71
whip[1]: n71{r9c9 .} ==> r5c5 ≠ 72
whip[1]: n71{r9c9 .} ==> r6c7 ≠ 72
whip[1]: n71{r9c9 .} ==> r5c7 ≠ 72
whip[1]: n72{r9c9 .} ==> r6c7 ≠ 73
whip[1]: n13{r9c3 .} ==> r5c2 ≠ 14
whip[1]: n14{r9c5 .} ==> r4c3 ≠ 15
whip[1]: n14{r9c5 .} ==> r5c1 ≠ 15
whip[1]: n13{r9c3 .} ==> r5c1 ≠ 14
whip[1]: n14{r9c5 .} ==> r5c2 ≠ 15
whip[1]: n14{r9c5 .} ==> r4c2 ≠ 15
whip[1]: n14{r9c5 .} ==> r4c1 ≠ 15
whip[1]: n15{r9c5 .} ==> r5c1 ≠ 16
naked-single: r5c1 = 7
whip[1]: n6{r5c2 .} ==> r4c4 ≠ 5
whip[1]: n6{r5c2 .} ==> r5c5 ≠ 5
whip[1]: n6{r5c2 .} ==> r6c4 ≠ 5
hidden-single: r4c3 = 5
whip[1]: n21{r8c5 .} ==> r5c2 ≠ 20
whip[1]: n34{r7c5 .} ==> r5c2 ≠ 35
whip[1]: n35{r6c4 .} ==> r4c4 ≠ 34
whip[1]: n34{r7c5 .} ==> r5c5 ≠ 33
whip[1]: n15{r9c5 .} ==> r5c2 ≠ 16
whip[1]: n12{r9c3 .} ==> r7c4 ≠ 13
whip[1]: n13{r9c3 .} ==> r6c4 ≠ 14
whip[1]: n14{r9c5 .} ==> r5c5 ≠ 15
whip[1]: n12{r9c3 .} ==> r6c4 ≠ 13
whip[1]: n13{r9c3 .} ==> r5c5 ≠ 14
whip[1]: n14{r9c5 .} ==> r4c4 ≠ 15
whip[1]: n14{r9c5 .} ==> r4c6 ≠ 15
whip[1]: n17{r8c4 .} ==> r9c2 ≠ 16
whip[1]: n16{r9c5 .} ==> r9c1 ≠ 15
whip[1]: n17{r8c4 .} ==> r9c1 ≠ 16
whip[1]: r9c1{n14 .} ==> r8c4 ≠ 13
whip[1]: n13{r9c3 .} ==> r7c4 ≠ 14
whip[1]: n13{r9c3 .} ==> r7c5 ≠ 14
whip[1]: n14{r9c5 .} ==> r6c4 ≠ 15
whip[1]: n14{r9c5 .} ==> r6c6 ≠ 15
whip[1]: n15{r9c5 .} ==> r5c5 ≠ 16
whip[1]: n13{r9c3 .} ==> r8c5 ≠ 14
whip[1]: n13{r9c3 .} ==> r9c5 ≠ 14
whip[1]: n14{r9c3 .} ==> r8c6 ≠ 15
whip[1]: r9c1{n14 .} ==> r9c3 ≠ 13
whip[1]: n13{r9c2 .} ==> r8c4 ≠ 14
whip[1]: n14{r9c3 .} ==> r9c5 ≠ 15
whip[1]: n14{r9c3 .} ==> r7c5 ≠ 15
whip[1]: n14{r9c3 .} ==> r7c4 ≠ 15
whip[1]: n15{r9c3 .} ==> r6c4 ≠ 16
whip[1]: n14{r9c3 .} ==> r8c5 ≠ 15
whip[1]: n30{r8c9 .} ==> r9c7 ≠ 31
whip[1]: n31{r9c8 .} ==> r8c6 ≠ 32
whip[1]: n30{r8c9 .} ==> r8c6 ≠ 31
whip[1]: n31{r9c8 .} ==> r8c5 ≠ 32
whip[1]: n31{r9c8 .} ==> r9c5 ≠ 32
whip[1]: n74{r9c8 .} ==> r7c9 ≠ 73
whip[1]: n29{r7c9 .} ==> r6c7 ≠ 30
whip[1]: n29{r7c9 .} ==> r5c7 ≠ 30
whip[1]: n30{r8c9 .} ==> r6c7 ≠ 31
whip[1]: n30{r8c9 .} ==> r6c6 ≠ 31
whip[1]: n31{r9c8 .} ==> r7c5 ≠ 32
whip[1]: n32{r9c7 .} ==> r7c4 ≠ 33
whip[1]: n32{r9c7 .} ==> r8c5 ≠ 33
whip[1]: n32{r9c7 .} ==> r8c4 ≠ 33
whip[1]: n29{r7c9 .} ==> r4c7 ≠ 30
whip[1]: n30{r8c9 .} ==> r3c6 ≠ 31
whip[1]: n30{r8c9 .} ==> r4c6 ≠ 31
whip[1]: n31{r9c8 .} ==> r3c5 ≠ 32
whip[1]: n32{r9c7 .} ==> r2c4 ≠ 33
whip[1]: n32{r9c7 .} ==> r3c4 ≠ 33
whip[1]: n31{r9c8 .} ==> r5c5 ≠ 32
whip[1]: n32{r9c7 .} ==> r4c4 ≠ 33
whip[1]: n33{r8c6 .} ==> r3c3 ≠ 34
whip[1]: n34{r7c5 .} ==> r4c2 ≠ 35
whip[1]: n32{r9c7 .} ==> r6c4 ≠ 33
whip[1]: n20{r7c4 .} ==> r4c4 ≠ 21
whip[1]: n66{r5c9 .} ==> r7c9 ≠ 67
hidden-single: r6c7 = 67
hidden-single: r5c7 = 66
naked-single: r5c9 = 29
whip[1]: r7c9{n72 .} ==> r8c6 ≠ 71
whip[1]: n71{r9c9 .} ==> r7c5 ≠ 72
whip[1]: n72{r9c9 .} ==> r6c4 ≠ 73
whip[1]: n72{r9c9 .} ==> r6c6 ≠ 73
whip[1]: n71{r9c9 .} ==> r8c5 ≠ 72
whip[1]: n72{r9c9 .} ==> r7c4 ≠ 73
whip[1]: n71{r9c9 .} ==> r9c5 ≠ 72
whip[1]: n72{r9c9 .} ==> r8c4 ≠ 73
whip[1]: r7c9{n72 .} ==> r9c7 ≠ 71
whip[1]: n71{r9c9 .} ==> r8c6 ≠ 72
whip[1]: n72{r9c9 .} ==> r7c5 ≠ 73
whip[1]: n72{r9c9 .} ==> r9c5 ≠ 73
whip[1]: n72{r9c9 .} ==> r8c5 ≠ 73
whip[1]: n73{r9c9 .} ==> r7c4 ≠ 74
whip[1]: n73{r9c9 .} ==> r8c4 ≠ 74
whip[1]: r7c9{n72 .} ==> r9c8 ≠ 71
whip[1]: n71{r9c9 .} ==> r9c7 ≠ 70
whip[1]: n71{r9c9 .} ==> r9c7 ≠ 72
whip[1]: n72{r9c9 .} ==> r8c6 ≠ 73
whip[1]: n73{r9c9 .} ==> r7c5 ≠ 74
whip[1]: n73{r9c9 .} ==> r9c5 ≠ 74
whip[1]: n73{r9c9 .} ==> r8c5 ≠ 74
whip[1]: r7c9{n72 .} ==> r9c9 ≠ 71
whip[1]: n30{r4c9 .} ==> r9c8 ≠ 31
whip[1]: n31{r4c8 .} ==> r9c7 ≠ 32
whip[1]: n32{r6c6 .} ==> r8c6 ≠ 33
whip[1]: r8c6{n75 .} ==> r9c8 ≠ 74
whip[1]: n74{r9c7 .} ==> r8c9 ≠ 73
whip[1]: n73{r9c9 .} ==> r7c9 ≠ 72
whip[1]: r7c9{n71 .} ==> r9c9 ≠ 70
whip[1]: r9c9{n73 .} ==> r9c7 ≠ 73
whip[1]: n73{r9c9 .} ==> r8c6 ≠ 74
hidden-single: r9c7 = 74
hidden-single: r8c6 = 75
hidden-single: r9c8 = 73
naked-single: r9c9 = 72
hidden-single: r8c9 = 71
hidden-single: r7c9 = 70
whip[1]: n31{r4c8 .} ==> r6c6 ≠ 32
whip[1]: n32{r4c7 .} ==> r7c5 ≠ 33
whip[1]: n33{r6c6 .} ==> r7c4 ≠ 34
whip[1]: n32{r4c7 .} ==> r6c6 ≠ 33
naked-single: r6c6 = 22
whip[1]: n33{r4c6 .} ==> r7c5 ≠ 34
whip[1]: n40{r4c2 .} ==> r1c3 ≠ 41
whip[1]: n43{r2c1 .} ==> r3c4 ≠ 42
whip[1]: n43{r2c1 .} ==> r3c3 ≠ 42
whip[1]: n42{r3c1 .} ==> r4c4 ≠ 41
whip[1]: n42{r3c1 .} ==> r2c4 ≠ 41
whip[1]: n48{r3c4 .} ==> r3c1 ≠ 47
whip[1]: n54{r2c8 .} ==> r3c5 ≠ 55
whip[1]: n48{r3c4 .} ==> r2c1 ≠ 47
whip[1]: n48{r3c4 .} ==> r1c1 ≠ 47
whip[1]: r1c1{n43 .} ==> r2c4 ≠ 42
whip[1]: n42{r3c1 .} ==> r1c3 ≠ 43
whip[1]: r1c3{n49 .} ==> r3c4 ≠ 48
hidden-single: r2c4 = 48
whip[1]: n42{r3c1 .} ==> r3c3 ≠ 41
whip[1]: n42{r3c1 .} ==> r3c4 ≠ 41
naked-single: r3c4 = 34
hidden-single: r3c5 = 33
hidden-single: r4c4 = 35
hidden-single: r5c5 = 3
hidden-single: r7c5 = 21
whip[1]: n32{r4c6 .} ==> r4c8 ≠ 31
whip[1]: n31{r4c7 .} ==> r4c9 ≠ 30
hidden-single: r4c8 = 30
whip[1]: r1c1{n43 .} ==> r3c1 ≠ 42
whip[1]: n42{r2c1 .} ==> r4c1 ≠ 41
whip[1]: n42{r2c1 .} ==> r4c2 ≠ 41
whip[1]: n41{r3c1 .} ==> r3c3 ≠ 40
biv-chain[2]: r8c5{n16 n77} - r9c5{n77 n16} ==> r9c2 ≠ 15
whip[1]: n15{r9c3 .} ==> r9c1 ≠ 14
whip[1]: r9c1{n13 .} ==> r9c3 ≠ 12
biv-chain[2]: r8c5{n16 n77} - r9c5{n77 n16} ==> r9c3 ≠ 15
hidden-single: r8c4 = 15
hidden-single: r9c3 = 14
hidden-single: r9c2 = 13
hidden-single: r9c1 = 12
whip[1]: n17{r7c4 .} ==> r9c5 ≠ 16
naked-single: r9c5 = 77
naked-single: r8c5 = 16
hidden-single: r7c4 = 17
hidden-single: r6c4 = 20
biv-chain[2]: n42{r1c1 r2c1} - n43{r2c1 r1c1} ==> r1c1 ≠ 41
biv-chain[2]: r1c1{n43 n42} - n41{r3c1 r2c1} ==> r2c1 ≠ 43
hidden-single: r1c1 = 43
hidden-single: r2c1 = 42
hidden-single: r3c1 = 41
biv-chain[2]: n6{r4c2 r5c2} - n37{r5c2 r4c2} ==> r4c2 ≠ 38
biv-chain[2]: n6{r4c2 r5c2} - n37{r5c2 r4c2} ==> r4c2 ≠ 40
hidden-single: r4c1 = 40
hidden-single: r3c3 = 38
hidden-single: r1c3 = 47
hidden-single: r1c5 = 49
hidden-single: r4c2 = 37
hidden-single: r5c2 = 6
whip[2]: n56{r1c6 r2c7} - n58{r2c7 .} ==> r1c6 ≠ 57
whip[2]: n55{r1c6 r2c7} - n57{r2c7 .} ==> r1c6 ≠ 56
whip[2]: n54{r1c6 r2c7} - n56{r2c7 .} ==> r1c6 ≠ 55
whip[2]: r1c6{n61 n54} - n55{r1c9 .} ==> r2c7 ≠ 61
whip[2]: r1c6{n54 n61} - n62{r2c8 .} ==> r2c7 ≠ 54
whip[1]: n54{r2c8 .} ==> r3c6 ≠ 55
whip[1]: n54{r2c8 .} ==> r2c8 ≠ 55
whip[2]: n31{r4c7 r3c7} - n55{r3c7 .} ==> r4c7 ≠ 56
whip[2]: n57{r3c7 r3c9} - n55{r3c9 .} ==> r4c9 ≠ 56
whip[2]: n60{r2c9 r2c7} - n62{r2c7 .} ==> r1c6 ≠ 61
naked-single: r1c6 = 54
hidden-single: r2c7 = 55
naked-single: r4c6 = 32
whip[1]: n58{r2c9 .} ==> r3c6 ≠ 57
whip[1]: n60{r2c9 .} ==> r3c6 ≠ 61
naked-single: r3c6 = 56
hidden-single: r3c7 = 57
hidden-single: r2c8 = 58
hidden-single: r4c7 = 31
hidden-single: r4c9 = 64
whip[1]: r1c9{n61 .} ==> r3c9 ≠ 61
naked-single: r3c9 = 62
hidden-single: r2c9 = 61
hidden-single: r1c9 = 60


43 44 47 50 49 54 53 59 60
42 46 45 48 51 52 55 58 61
41 39 38 34 33 56 57 63 62
40 37 5 35 2 32 31 30 64
7 6 36 4 3 1 66 65 29
8 81 19 20 23 22 67 27 28
9 80 18 17 21 24 26 68 70
10 11 79 15 16 75 25 69 71
12 13 14 78 77 76 74 73 72


Note: the only non-trivial steps are the following:
biv-chain[2]: r8c5{n16 n77} - r9c5{n77 n16} ==> r9c2 ≠ 15, r9c3 ≠ 15
biv-chain[2]: n42{r1c1 r2c1} - n43{r2c1 r1c1} ==> r1c1 ≠ 41
biv-chain[2]: r1c1{n43 n42} - n41{r3c1 r2c1} ==> r2c1 ≠ 43
biv-chain[2]: n6{r4c2 r5c2} - n37{r5c2 r4c2} ==> r4c2 ≠ 38, r4c2 ≠ 40
whip[2]: n56{r1c6 r2c7} - n58{r2c7 .} ==> r1c6 ≠ 57
whip[2]: n55{r1c6 r2c7} - n57{r2c7 .} ==> r1c6 ≠ 56
whip[2]: n54{r1c6 r2c7} - n56{r2c7 .} ==> r1c6 ≠ 55
whip[2]: r1c6{n61 n54} - n55{r1c9 .} ==> r2c7 ≠ 61
whip[2]: r1c6{n54 n61} - n62{r2c8 .} ==> r2c7 ≠ 54
whip[2]: n31{r4c7 r3c7} - n55{r3c7 .} ==> r4c7 ≠ 56
whip[2]: n57{r3c7 r3c9} - n55{r3c9 .} ==> r4c9 ≠ 56
whip[2]: n60{r2c9 r2c7} - n62{r2c7 .} ==> r1c6 ≠ 61
Last edited by denis_berthier on Sun Aug 09, 2015 1:22 pm, edited 1 time in total.
denis_berthier
2010 Supporter
 
Posts: 4215
Joined: 19 June 2007
Location: Paris

t6404-28

Postby denis_berthier » Sun Aug 09, 2015 10:57 am

http://forum.enjoysudoku.com/hidato-t6404-28.html

evert wrote:Still I did find one that requires BOTH fuzzy distance and bottleneck:
Code: Select all
00;00;59;00;00;46;00;00;00
00;00;00;00;00;00;53;00;00
00;00;41;40;00;44;00;52;00
00;00;00;33;00;00;11;14;00
30;00;00;00;08;10;00;13;00
00;00;28;00;01;00;00;00;00
00;00;00;00;05;00;00;00;00
00;71;00;00;00;00;19;20;00
00;69;74;00;00;25;00;00;21


solved in W3


Hidden Text: Show
Code: Select all
***  HidatoRules 2.0.m based on CSP-Rules 2.0.m, config = W
***  using CLIPS 6.30-r289
hidden-single: r8c5 = 26
hidden-single: r7c4 = 27
hidden-single: r5c7 = 12
hidden-single: r2c4 = 42
whip[1]: r1c9{n50 .} ==> r5c9 ≠ 50
whip[1]: r1c9{n50 .} ==> r4c9 ≠ 50
whip[1]: r1c9{n50 .} ==> r4c6 ≠ 50
whip[1]: n50{r3c9 .} ==> r4c5 ≠ 49
whip[1]: r1c9{n50 .} ==> r3c9 ≠ 50
whip[1]: n50{r3c7 .} ==> r4c9 ≠ 49
whip[1]: n50{r3c7 .} ==> r4c9 ≠ 51
whip[1]: r1c9{n50 .} ==> r3c7 ≠ 50
whip[1]: n50{r2c9 .} ==> r4c6 ≠ 49
whip[1]: r1c9{n50 .} ==> r2c6 ≠ 50
whip[1]: n50{r2c9 .} ==> r1c5 ≠ 49
whip[1]: n50{r2c9 .} ==> r2c5 ≠ 49
whip[1]: n49{r3c9 .} ==> r1c4 ≠ 48
whip[1]: n50{r2c9 .} ==> r3c5 ≠ 49
whip[1]: r1c9{n49 .} ==> r3c9 ≠ 49
whip[1]: r1c9{n49 .} ==> r3c7 ≠ 49
whip[1]: r1c9{n49 .} ==> r2c6 ≠ 49
whip[1]: n49{r2c9 .} ==> r1c5 ≠ 48
whip[1]: n49{r2c9 .} ==> r3c5 ≠ 48
whip[1]: n49{r2c9 .} ==> r2c5 ≠ 48
whip[1]: r1c9{n50 .} ==> r1c7 ≠ 50
whip[1]: r1c9{n49 .} ==> r1c7 ≠ 49
whip[1]: n49{r2c9 .} ==> r2c6 ≠ 48
whip[1]: n48{r3c7 .} ==> r1c5 ≠ 47
whip[1]: n48{r3c7 .} ==> r2c5 ≠ 47
whip[1]: n4{r8c4 .} ==> r8c4 ≠ 3
whip[1]: n68{r8c3 .} ==> r8c3 ≠ 67
whip[1]: n35{r6c6 .} ==> r6c6 ≠ 36
whip[1]: n7{r6c6 .} ==> r6c6 ≠ 6
whip[1]: n6{r6c4 .} ==> r6c4 ≠ 7
whip[1]: n4{r6c4 .} ==> r6c4 ≠ 3
whip[1]: n39{r4c3 .} ==> r4c3 ≠ 38
whip[1]: n39{r2c3 .} ==> r2c3 ≠ 38
whip[1]: n79{r9c8 .} ==> r4c9 ≠ 80
whip[1]: n80{r9c8 .} ==> r3c9 ≠ 81
whip[1]: n79{r9c8 .} ==> r3c9 ≠ 80
naked-single: r3c9 = 51
naked-single: r1c9 = 49
whip[1]: n48{r2c8 .} ==> r2c6 ≠ 47
hidden-single: r1c7 = 47
whip[1]: n55{r4c6 .} ==> r1c8 ≠ 54
naked-single: r1c8 = 48
whip[1]: n80{r9c8 .} ==> r2c9 ≠ 81
naked-single: r2c9 = 50
whip[1]: n22{r9c8 .} ==> r7c7 ≠ 23
whip[1]: n78{r9c7 .} ==> r4c6 ≠ 79
whip[1]: n79{r9c8 .} ==> r3c7 ≠ 80
whip[1]: n80{r9c8 .} ==> r2c8 ≠ 81
naked-single: r2c8 = 54
hidden-single: r3c7 = 55
whip[1]: n56{r4c6 .} ==> r2c3 ≠ 57
whip[1]: n57{r3c5 .} ==> r1c2 ≠ 58
whip[1]: n57{r3c5 .} ==> r2c2 ≠ 58
whip[1]: n56{r4c6 .} ==> r1c4 ≠ 57
whip[1]: n57{r3c5 .} ==> r2c3 ≠ 58
hidden-single: r1c4 = 58
whip[1]: n60{r2c3 .} ==> r1c5 ≠ 61
whip[1]: n60{r2c3 .} ==> r2c5 ≠ 61
whip[1]: n61{r3c5 .} ==> r3c5 ≠ 62
whip[1]: n57{r2c5 .} ==> r4c6 ≠ 56
hidden-single: r2c6 = 56
hidden-single: r2c5 = 45
hidden-single: r3c5 = 43
hidden-single: r1c5 = 57
whip[1]: n39{r4c5 .} ==> r4c5 ≠ 38
whip[1]: n38{r5c4 .} ==> r4c6 ≠ 37
whip[1]: n61{r3c2 .} ==> r4c5 ≠ 62
whip[1]: n62{r4c6 .} ==> r4c6 ≠ 63
whip[1]: n61{r3c2 .} ==> r4c6 ≠ 62
whip[1]: n62{r4c3 .} ==> r4c5 ≠ 63
whip[1]: n63{r5c4 .} ==> r4c6 ≠ 64
whip[1]: n76{r9c5 .} ==> r7c6 ≠ 77
whip[1]: n77{r9c5 .} ==> r6c6 ≠ 78
whip[1]: n76{r9c5 .} ==> r6c6 ≠ 77
whip[1]: n77{r9c5 .} ==> r6c7 ≠ 78
whip[1]: n75{r9c4 .} ==> r9c1 ≠ 76
whip[1]: n75{r9c4 .} ==> r8c1 ≠ 76
whip[1]: n76{r9c5 .} ==> r9c1 ≠ 77
whip[1]: n75{r9c4 .} ==> r7c1 ≠ 76
whip[1]: n73{r9c4 .} ==> r9c1 ≠ 72
whip[1]: n73{r9c4 .} ==> r8c1 ≠ 72
whip[1]: n24{r9c7 .} ==> r7c8 ≠ 23
whip[1]: n66{r8c4 .} ==> r7c6 ≠ 65
whip[1]: n65{r7c3 .} ==> r6c6 ≠ 64
whip[1]: n2{r7c6 .} ==> r8c3 ≠ 3
whip[1]: n73{r9c4 .} ==> r7c1 ≠ 72
whip[1]: n38{r5c4 .} ==> r6c7 ≠ 37
whip[1]: n66{r8c4 .} ==> r6c6 ≠ 65
whip[1]: n65{r7c3 .} ==> r6c7 ≠ 64
whip[1]: n38{r5c4 .} ==> r6c6 ≠ 37
whip[1]: n37{r6c4 .} ==> r6c7 ≠ 36
whip[1]: n37{r6c4 .} ==> r7c7 ≠ 36
whip[1]: n37{r6c4 .} ==> r7c6 ≠ 36
whip[1]: n36{r7c3 .} ==> r6c6 ≠ 35
whip[1]: n15{r5c9 .} ==> r6c7 ≠ 16
whip[1]: n16{r6c9 .} ==> r6c6 ≠ 17
whip[1]: n15{r5c9 .} ==> r6c6 ≠ 16
whip[1]: n16{r6c9 .} ==> r7c6 ≠ 17
whip[1]: n34{r5c4 .} ==> r2c3 ≠ 35
whip[1]: n34{r5c4 .} ==> r2c2 ≠ 35
whip[1]: n35{r6c4 .} ==> r1c1 ≠ 36
whip[1]: n35{r6c4 .} ==> r1c2 ≠ 36
biv-chain[2]: n24{r9c7 r8c6} - n23{r9c8 r9c7} ==> r9c7 ≠ 78
whip[1]: n78{r9c5 .} ==> r9c8 ≠ 79
biv-chain[2]: n24{r9c7 r8c6} - n23{r9c8 r9c7} ==> r9c7 ≠ 79
whip[1]: n79{r9c5 .} ==> r9c8 ≠ 80
biv-chain[2]: n24{r9c7 r8c6} - n23{r9c8 r9c7} ==> r9c7 ≠ 80
biv-chain[2]: n24{r9c7 r8c6} - n23{r9c8 r9c7} ==> r9c7 ≠ 81
biv-chain[2]: n22{r9c8 r8c9} - n23{r9c7 r9c8} ==> r9c8 ≠ 81
whip[2]: r4c9{n81 n15} - n16{r6c8 .} ==> r5c9 ≠ 81
whip[2]: r4c9{n15 n81} - n80{r3c1 .} ==> r5c9 ≠ 15
hidden-single: r4c9 = 15
hidden-single: r5c9 = 16
whip[1]: n17{r6c9 .} ==> r7c6 ≠ 18
whip[1]: n17{r6c9 .} ==> r8c6 ≠ 18
whip[1]: r7c9{n81 .} ==> r3c1 ≠ 80
whip[1]: r7c9{n81 .} ==> r3c2 ≠ 80
whip[1]: n80{r9c5 .} ==> r2c1 ≠ 81
whip[1]: n80{r9c5 .} ==> r2c2 ≠ 81
whip[1]: n80{r9c5 .} ==> r2c3 ≠ 81
whip[1]: r7c9{n81 .} ==> r4c1 ≠ 80
whip[1]: r7c9{n81 .} ==> r4c2 ≠ 80
whip[1]: n80{r9c5 .} ==> r3c1 ≠ 81
whip[1]: r7c9{n81 .} ==> r4c3 ≠ 80
whip[1]: n80{r9c5 .} ==> r3c2 ≠ 81
whip[1]: r7c9{n81 .} ==> r4c5 ≠ 80
whip[1]: n80{r9c5 .} ==> r4c6 ≠ 81
whip[1]: r7c9{n81 .} ==> r4c6 ≠ 80
whip[1]: r7c9{n81 .} ==> r5c2 ≠ 80
whip[1]: n80{r9c5 .} ==> r4c1 ≠ 79
whip[1]: n80{r9c5 .} ==> r4c1 ≠ 81
whip[1]: r7c9{n81 .} ==> r5c3 ≠ 80
whip[1]: n80{r9c5 .} ==> r4c2 ≠ 79
whip[1]: n80{r9c5 .} ==> r4c2 ≠ 81
whip[1]: r7c9{n81 .} ==> r5c4 ≠ 80
whip[1]: n80{r9c5 .} ==> r4c3 ≠ 79
whip[1]: n80{r9c5 .} ==> r4c5 ≠ 79
whip[1]: n80{r9c5 .} ==> r4c3 ≠ 81
whip[1]: n80{r9c5 .} ==> r4c5 ≠ 81
whip[1]: r7c9{n81 .} ==> r6c1 ≠ 80
whip[1]: r7c9{n81 .} ==> r6c2 ≠ 80
whip[1]: n80{r9c5 .} ==> r5c2 ≠ 79
whip[1]: n80{r9c5 .} ==> r5c2 ≠ 81
whip[1]: r7c9{n81 .} ==> r6c4 ≠ 80
whip[1]: n80{r9c5 .} ==> r5c3 ≠ 79
whip[1]: n80{r9c5 .} ==> r5c4 ≠ 79
whip[1]: n80{r9c5 .} ==> r5c3 ≠ 81
whip[1]: n80{r9c5 .} ==> r5c4 ≠ 81
whip[1]: r7c9{n81 .} ==> r6c6 ≠ 80
whip[1]: r7c9{n81 .} ==> r6c7 ≠ 80
whip[1]: r7c9{n81 .} ==> r7c1 ≠ 80
whip[1]: r7c9{n81 .} ==> r7c2 ≠ 80
whip[1]: n80{r9c5 .} ==> r6c1 ≠ 79
whip[1]: n80{r9c5 .} ==> r6c1 ≠ 81
whip[1]: r7c9{n81 .} ==> r7c3 ≠ 80
whip[1]: n80{r9c5 .} ==> r6c2 ≠ 79
whip[1]: n79{r9c5 .} ==> r5c2 ≠ 78
whip[1]: n80{r9c5 .} ==> r6c4 ≠ 79
whip[1]: n79{r9c5 .} ==> r5c3 ≠ 78
whip[1]: n79{r9c5 .} ==> r5c4 ≠ 78
whip[1]: n80{r9c5 .} ==> r6c2 ≠ 81
whip[1]: n80{r9c5 .} ==> r6c4 ≠ 81
whip[1]: r7c9{n81 .} ==> r7c6 ≠ 80
whip[1]: r7c9{n81 .} ==> r7c7 ≠ 80
whip[1]: n80{r9c5 .} ==> r6c6 ≠ 79
whip[1]: n80{r9c5 .} ==> r6c6 ≠ 81
whip[1]: r7c9{n81 .} ==> r8c1 ≠ 80
whip[1]: n80{r9c5 .} ==> r7c1 ≠ 79
whip[1]: n80{r9c5 .} ==> r9c1 ≠ 79
whip[1]: n80{r9c5 .} ==> r7c1 ≠ 81
whip[1]: n80{r9c5 .} ==> r9c1 ≠ 81
whip[1]: r7c9{n81 .} ==> r8c3 ≠ 80
whip[1]: n80{r9c5 .} ==> r7c2 ≠ 79
whip[1]: n79{r9c5 .} ==> r6c1 ≠ 78
whip[1]: n79{r9c5 .} ==> r8c1 ≠ 78
whip[1]: n80{r9c5 .} ==> r7c2 ≠ 81
whip[1]: r7c9{n81 .} ==> r8c4 ≠ 80
whip[1]: n80{r9c5 .} ==> r7c3 ≠ 79
whip[1]: n79{r9c5 .} ==> r6c2 ≠ 78
whip[1]: n79{r9c5 .} ==> r6c4 ≠ 78
whip[1]: n80{r9c5 .} ==> r7c3 ≠ 81
whip[1]: r7c9{n81 .} ==> r8c6 ≠ 80
whip[1]: n80{r9c5 .} ==> r7c6 ≠ 79
whip[1]: n80{r9c5 .} ==> r7c6 ≠ 81
whip[1]: r7c9{n81 .} ==> r9c1 ≠ 80
whip[1]: n80{r9c5 .} ==> r8c1 ≠ 79
whip[1]: n79{r9c5 .} ==> r7c1 ≠ 78
whip[1]: n79{r9c5 .} ==> r9c1 ≠ 78
whip[1]: n80{r9c5 .} ==> r8c1 ≠ 81
whip[1]: r7c9{n81 .} ==> r9c4 ≠ 80
whip[1]: n80{r9c5 .} ==> r8c3 ≠ 79
whip[1]: n79{r9c5 .} ==> r7c2 ≠ 78
whip[1]: n78{r9c5 .} ==> r6c1 ≠ 77
whip[1]: n78{r9c5 .} ==> r7c1 ≠ 77
whip[1]: n78{r9c5 .} ==> r8c1 ≠ 77
whip[1]: n80{r9c5 .} ==> r8c3 ≠ 81
whip[1]: n80{r9c5 .} ==> r9c5 ≠ 79
whip[1]: n80{r9c5 .} ==> r9c5 ≠ 81
whip[1]: r7c9{n81 .} ==> r9c5 ≠ 80
whip[1]: r9c5{n78 .} ==> r8c3 ≠ 77
whip[1]: r9c5{n78 .} ==> r7c3 ≠ 77
whip[1]: r9c5{n78 .} ==> r7c2 ≠ 77
whip[1]: r9c5{n78 .} ==> r6c4 ≠ 77
whip[1]: r9c5{n78 .} ==> r6c2 ≠ 77
whip[1]: n77{r9c5 .} ==> r7c2 ≠ 76
whip[1]: n80{r8c9 .} ==> r8c4 ≠ 79
whip[1]: n79{r9c4 .} ==> r7c3 ≠ 78
whip[1]: n79{r9c4 .} ==> r9c4 ≠ 78
whip[1]: n80{r8c9 .} ==> r8c4 ≠ 81
whip[1]: n80{r8c9 .} ==> r9c4 ≠ 81
whip[1]: n80{r8c9 .} ==> r9c4 ≠ 79
whip[1]: n79{r8c6 .} ==> r8c3 ≠ 78
whip[1]: n79{r8c6 .} ==> r8c4 ≠ 78
whip[1]: n80{r8c9 .} ==> r8c6 ≠ 81
whip[1]: n80{r8c9 .} ==> r8c6 ≠ 79
whip[1]: n79{r7c8 .} ==> r9c5 ≠ 78
whip[1]: r9c5{n77 .} ==> r7c3 ≠ 76
whip[1]: r9c5{n77 .} ==> r8c3 ≠ 76
whip[1]: n78{r8c6 .} ==> r8c4 ≠ 77
whip[1]: n78{r8c6 .} ==> r9c4 ≠ 77
whip[1]: r7c9{n81 .} ==> r6c7 ≠ 81
whip[1]: r7c9{n81 .} ==> r7c7 ≠ 81
whip[2]: n77{r8c6 r9c5} - n78{r7c6 .} ==> r8c6 ≠ 3
whip[2]: n77{r8c6 r9c5} - n78{r7c6 .} ==> r8c6 ≠ 4
whip[2]: n4{r8c4 r6c6} - n2{r6c6 .} ==> r7c6 ≠ 3
whip[2]: n77{r8c6 r9c5} - n78{r7c6 .} ==> r8c6 ≠ 24
hidden-single: r9c7 = 24
hidden-single: r9c8 = 23
hidden-single: r8c9 = 22
whip[2]: r8c1{n68 n70} - r9c1{n70 .} ==> r9c4 ≠ 67
whip[2]: n67{r9c1 r7c3} - n65{r7c3 .} ==> r8c4 ≠ 66
whip[2]: r8c1{n68 n70} - r9c1{n70 .} ==> r8c4 ≠ 67
whip[2]: r8c1{n68 n70} - r9c1{n70 .} ==> r7c3 ≠ 67
whip[1]: n67{r9c1 .} ==> r6c4 ≠ 66
whip[1]: n66{r8c3 .} ==> r5c4 ≠ 65
whip[1]: n65{r7c3 .} ==> r4c5 ≠ 64
whip[2]: n18{r7c8 r7c7} - n78{r7c7 .} ==> r7c8 ≠ 79
whip[2]: n79{r7c7 r6c8} - n17{r6c8 .} ==> r6c9 ≠ 80
biv-chain[2]: r6c9{n81 n17} - n18{r7c7 r7c8} ==> r7c8 ≠ 81
whip[2]: r7c9{n81 n80} - n79{r6c7 .} ==> r6c8 ≠ 81
whip[2]: n68{r9c1 r8c1} - n66{r8c1 .} ==> r9c1 ≠ 67
whip[2]: r9c1{n70 n68} - n67{r7c1 .} ==> r8c1 ≠ 70
whip[2]: n4{r6c6 r7c6} - n2{r7c6 .} ==> r6c6 ≠ 3
whip[2]: n2{r5c4 r6c4} - n4{r6c4 .} ==> r5c4 ≠ 3
whip[2]: n32{r5c3 r4c3} - n39{r4c3 .} ==> r5c3 ≠ 38
whip[1]: n38{r5c4 .} ==> r5c4 ≠ 37
whip[1]: n37{r6c4 .} ==> r4c5 ≠ 36
whip[1]: n36{r7c3 .} ==> r4c6 ≠ 35
whip[2]: n29{r6c2 r5c2} - n38{r5c2 .} ==> r6c2 ≠ 37
whip[2]: n37{r6c4 r4c5} - n39{r4c5 .} ==> r4c6 ≠ 38
whip[2]: r4c6{n9 n36} - n35{r3c2 .} ==> r4c5 ≠ 9
whip[2]: n35{r6c4 r4c5} - n37{r4c5 .} ==> r4c6 ≠ 36
naked-single: r4c6 = 9
whip[2]: n34{r4c5 r5c4} - n36{r5c4 .} ==> r4c5 ≠ 35
whip[2]: n38{r5c2 r5c4} - n36{r5c4 .} ==> r4c5 ≠ 37
whip[2]: r4c5{n34 n39} - n38{r1c2 .} ==> r5c4 ≠ 34
whip[2]: n32{r4c3 r5c3} - n34{r5c3 .} ==> r4c3 ≠ 35
whip[2]: n32{r5c3 r4c3} - n34{r4c3 .} ==> r5c3 ≠ 35
whip[2]: n29{r6c2 r5c2} - n35{r5c2 .} ==> r6c2 ≠ 36
whip[2]: r1c1{n61 n37} - r3c1{n36 .} ==> r4c3 ≠ 62
whip[1]: n62{r4c2 .} ==> r5c4 ≠ 63
whip[2]: r1c1{n61 n37} - r3c1{n36 .} ==> r2c3 ≠ 62
Entering_level_BC3_with_<Fact-45439>
biv-chain[3]: r7c8{n18 n80} - r7c9{n80 n81} - r6c9{n81 n17} ==> r7c7 ≠ 18
hidden-single: r7c8 = 18
whip[2]: n80{r6c8 r7c9} - n79{r6c7 .} ==> r6c8 ≠ 17
hidden-single: r6c9 = 17
hidden-single: r7c9 = 81
hidden-single: r6c8 = 80
whip[3]: r1c1{n37 n61} - r2c3{n61 n39} - n38{r4c2 .} ==> r6c4 ≠ 37
whip[1]: n37{r6c1 .} ==> r7c3 ≠ 36
whip[3]: n37{r6c1 r5c2} - n29{r5c2 r6c2} - n35{r6c2 .} ==> r6c1 ≠ 36
whip[3]: r1c1{n37 n61} - r2c3{n61 n39} - n38{r4c2 .} ==> r6c1 ≠ 37
whip[1]: r6c1{n66 .} ==> r7c3 ≠ 65
whip[1]: r6c1{n66 .} ==> r6c4 ≠ 65
whip[1]: r6c1{n66 .} ==> r5c3 ≠ 65
whip[1]: n65{r7c2 .} ==> r6c4 ≠ 64
whip[1]: n65{r7c2 .} ==> r5c4 ≠ 64
whip[1]: n37{r5c3 .} ==> r7c2 ≠ 36
whip[1]: n37{r5c3 .} ==> r7c1 ≠ 36
whip[1]: r7c1{n67 .} ==> r8c3 ≠ 66
whip[1]: r7c1{n67 .} ==> r7c3 ≠ 66
whip[3]: n65{r7c2 r5c2} - n29{r5c2 r6c2} - n31{r6c2 .} ==> r4c2 ≠ 64
whip[3]: n34{r4c5 r5c3} - n36{r5c3 r5c2} - n29{r5c2 .} ==> r6c2 ≠ 35
whip[3]: n35{r5c4 r6c4} - r4c5{n34 n39} - n38{r1c2 .} ==> r5c4 ≠ 36
whip[2]: n34{r4c5 r5c3} - n36{r5c3 .} ==> r6c4 ≠ 35
whip[3]: n35{r5c4 r4c2} - n31{r4c2 r6c2} - n29{r6c2 .} ==> r5c2 ≠ 36
whip[3]: r1c1{n37 n61} - r2c3{n61 n39} - n38{r4c2 .} ==> r5c3 ≠ 37
whip[1]: n37{r5c2 .} ==> r6c4 ≠ 36
whip[3]: n37{r5c2 r4c3} - r1c1{n37 n61} - r2c3{n60 .} ==> r5c4 ≠ 38
whip[1]: n38{r5c2 .} ==> r4c5 ≠ 39
naked-single: r4c5 = 34
hidden-single: r5c4 = 35
hidden-single: r6c6 = 7
hidden-single: r7c6 = 6
hidden-single: r6c4 = 2
hidden-single: r8c4 = 4
hidden-single: r7c3 = 3
naked-single: r6c7 = 79
hidden-single: r7c7 = 78
hidden-single: r8c6 = 77
hidden-single: r9c5 = 76
hidden-single: r9c4 = 75
hidden-single: r8c3 = 73
hidden-single: r9c1 = 70
hidden-single: r8c1 = 68
hidden-single: r7c2 = 72
hidden-single: r7c1 = 67
whip[1]: n36{r5c3 .} ==> r2c2 ≠ 37
whip[1]: n36{r5c3 .} ==> r1c2 ≠ 37
whip[1]: n36{r5c3 .} ==> r3c1 ≠ 37
whip[1]: n36{r5c3 .} ==> r1c1 ≠ 37
naked-single: r1c1 = 61
naked-single: r3c1 = 63
hidden-single: r4c1 = 64
hidden-single: r5c2 = 65
hidden-single: r6c2 = 29
hidden-single: r4c2 = 31
hidden-single: r6c1 = 66
whip[1]: r3c2{n38 .} ==> r1c2 ≠ 38
naked-single: r1c2 = 60
whip[1]: n36{r5c3 .} ==> r2c3 ≠ 37
naked-single: r2c3 = 39
whip[1]: n36{r5c3 .} ==> r2c1 ≠ 37
naked-single: r2c1 = 62
naked-single: r2c2 = 38
hidden-single: r3c2 = 37
hidden-single: r4c3 = 36
hidden-single: r5c3 = 32


61 60 59 58 57 46 47 48 49
62 38 39 42 45 56 53 54 50
63 37 41 40 43 44 55 52 51
64 31 36 33 34 9 11 14 15
30 65 32 35 8 10 12 13 16
66 29 28 2 1 7 79 80 17
67 72 3 27 5 6 78 18 81
68 71 73 4 26 77 19 20 22
70 69 74 75 76 25 24 23 21


Note: there are more non-trivial steps:
biv-chain[2]: n24{r9c7 r8c6} - n23{r9c8 r9c7} ==> r9c7 ≠ 78, r9c7 ≠ 79, r9c7 ≠ 80, r9c7 ≠ 81
biv-chain[2]: n22{r9c8 r8c9} - n23{r9c7 r9c8} ==> r9c8 ≠ 81
whip[2]: r4c9{n81 n15} - n16{r6c8 .} ==> r5c9 ≠ 81
whip[2]: r4c9{n15 n81} - n80{r3c1 .} ==> r5c9 ≠ 15
whip[2]: n77{r8c6 r9c5} - n78{r7c6 .} ==> r8c6 ≠ 3, r8c6 ≠ 4
whip[2]: n4{r8c4 r6c6} - n2{r6c6 .} ==> r7c6 ≠ 3
whip[2]: n77{r8c6 r9c5} - n78{r7c6 .} ==> r8c6 ≠ 24
whip[2]: r8c1{n68 n70} - r9c1{n70 .} ==> r9c4 ≠ 67
whip[2]: n67{r9c1 r7c3} - n65{r7c3 .} ==> r8c4 ≠ 66
whip[2]: r8c1{n68 n70} - r9c1{n70 .} ==> r8c4 ≠ 67, r7c3 ≠ 67
whip[2]: n18{r7c8 r7c7} - n78{r7c7 .} ==> r7c8 ≠ 79
whip[2]: n79{r7c7 r6c8} - n17{r6c8 .} ==> r6c9 ≠ 80
biv-chain[2]: r6c9{n81 n17} - n18{r7c7 r7c8} ==> r7c8 ≠ 81
whip[2]: r7c9{n81 n80} - n79{r6c7 .} ==> r6c8 ≠ 81
whip[2]: n68{r9c1 r8c1} - n66{r8c1 .} ==> r9c1 ≠ 67
whip[2]: r9c1{n70 n68} - n67{r7c1 .} ==> r8c1 ≠ 70
whip[2]: n4{r6c6 r7c6} - n2{r7c6 .} ==> r6c6 ≠ 3
whip[2]: n2{r5c4 r6c4} - n4{r6c4 .} ==> r5c4 ≠ 3
whip[2]: n32{r5c3 r4c3} - n39{r4c3 .} ==> r5c3 ≠ 38
whip[2]: n29{r6c2 r5c2} - n38{r5c2 .} ==> r6c2 ≠ 37
whip[2]: n37{r6c4 r4c5} - n39{r4c5 .} ==> r4c6 ≠ 38
whip[2]: r4c6{n9 n36} - n35{r3c2 .} ==> r4c5 ≠ 9
whip[2]: n35{r6c4 r4c5} - n37{r4c5 .} ==> r4c6 ≠ 36
whip[2]: n34{r4c5 r5c4} - n36{r5c4 .} ==> r4c5 ≠ 35
whip[2]: n38{r5c2 r5c4} - n36{r5c4 .} ==> r4c5 ≠ 37
whip[2]: r4c5{n34 n39} - n38{r1c2 .} ==> r5c4 ≠ 34
whip[2]: n32{r4c3 r5c3} - n34{r5c3 .} ==> r4c3 ≠ 35
whip[2]: n32{r5c3 r4c3} - n34{r4c3 .} ==> r5c3 ≠ 35
whip[2]: n29{r6c2 r5c2} - n35{r5c2 .} ==> r6c2 ≠ 36
whip[2]: r1c1{n61 n37} - r3c1{n36 .} ==> r4c3 ≠ 62, r2c3 ≠ 62
biv-chain[3]: r7c8{n18 n80} - r7c9{n80 n81} - r6c9{n81 n17} ==> r7c7 ≠ 18
whip[2]: n80{r6c8 r7c9} - n79{r6c7 .} ==> r6c8 ≠ 17
whip[3]: r1c1{n37 n61} - r2c3{n61 n39} - n38{r4c2 .} ==> r6c4 ≠ 37
whip[3]: n37{r6c1 r5c2} - n29{r5c2 r6c2} - n35{r6c2 .} ==> r6c1 ≠ 36
whip[3]: r1c1{n37 n61} - r2c3{n61 n39} - n38{r4c2 .} ==> r6c1 ≠ 37
whip[3]: n65{r7c2 r5c2} - n29{r5c2 r6c2} - n31{r6c2 .} ==> r4c2 ≠ 64
whip[3]: n34{r4c5 r5c3} - n36{r5c3 r5c2} - n29{r5c2 .} ==> r6c2 ≠ 35
whip[3]: n35{r5c4 r6c4} - r4c5{n34 n39} - n38{r1c2 .} ==> r5c4 ≠ 36
whip[2]: n34{r4c5 r5c3} - n36{r5c3 .} ==> r6c4 ≠ 35
whip[3]: n35{r5c4 r4c2} - n31{r4c2 r6c2} - n29{r6c2 .} ==> r5c2 ≠ 36
whip[3]: r1c1{n37 n61} - r2c3{n61 n39} - n38{r4c2 .} ==> r5c3 ≠ 37
whip[3]: n37{r5c2 r4c3} - r1c1{n37 n61} - r2c3{n60 .} ==> r5c4 ≠ 38
Last edited by denis_berthier on Sun Aug 09, 2015 1:25 pm, edited 1 time in total.
denis_berthier
2010 Supporter
 
Posts: 4215
Joined: 19 June 2007
Location: Paris

t6404-39

Postby denis_berthier » Sun Aug 09, 2015 11:03 am

Finally (for today), the hardest I found in that thread, in W4:

http://forum.enjoysudoku.com/hidato-t6404-39.html

evert wrote:This one should be nice, since it requires many tricks:)
Code: Select all
..;..;..;..;09;..;..;..;..
..;..;45;..;..;14;80;..;..
..;..;..;11;12;..;..;..;76
04;02;..;..;..;60;..;18;..
..;03;..;..;..;..;..;..;..
..;..;..;..;..;..;..;20;..
52;..;..;35;27;..;25;72;..
..;..;..;..;..;..;..;23;..
55;..;..;..;..;..;..;..;..


solved in W4


Hidden Text: Show
Code: Select all
***  HidatoRules 2.0.m based on CSP-Rules 2.0.m, config = W
hidden-single: r8c7 = 24
hidden-single: r8c2 = 56
hidden-single: r7c3 = 57
hidden-single: r6c4 = 58
hidden-single: r5c5 = 59
hidden-single: r4c9 = 75
whip[1]: n71{r6c7 .} ==> r6c7 ≠ 70
whip[1]: n36{r6c5 .} ==> r6c5 ≠ 37
whip[1]: n34{r6c5 .} ==> r6c5 ≠ 33
whip[1]: n36{r6c3 .} ==> r6c3 ≠ 37
whip[1]: n34{r6c3 .} ==> r6c3 ≠ 33
whip[1]: n48{r5c1 .} ==> r5c1 ≠ 49
whip[1]: n42{r5c1 .} ==> r5c1 ≠ 41
whip[1]: n30{r9c8 .} ==> r3c1 ≠ 31
whip[1]: n71{r8c9 .} ==> r9c7 ≠ 70
whip[1]: n38{r9c7 .} ==> r3c1 ≠ 39
whip[1]: n71{r8c9 .} ==> r9c6 ≠ 70
whip[1]: n71{r8c9 .} ==> r8c6 ≠ 70
whip[1]: n70{r9c9 .} ==> r9c6 ≠ 69
whip[1]: n70{r9c9 .} ==> r9c5 ≠ 69
whip[1]: n28{r8c6 .} ==> r6c3 ≠ 29
whip[1]: n28{r8c6 .} ==> r5c3 ≠ 29
whip[1]: n29{r9c7 .} ==> r6c2 ≠ 30
whip[1]: n30{r9c8 .} ==> r5c1 ≠ 31
whip[1]: n40{r7c6 .} ==> r8c4 ≠ 39
whip[1]: n63{r7c9 .} ==> r8c4 ≠ 64
whip[1]: n63{r7c9 .} ==> r8c3 ≠ 64
whip[1]: n64{r8c9 .} ==> r9c2 ≠ 65
whip[1]: n64{r8c9 .} ==> r9c3 ≠ 65
whip[1]: n62{r6c7 .} ==> r7c9 ≠ 63
whip[1]: n63{r7c6 .} ==> r8c9 ≠ 64
whip[1]: n64{r8c6 .} ==> r9c8 ≠ 65
whip[1]: n64{r8c6 .} ==> r9c9 ≠ 65
whip[1]: n22{r8c9 .} ==> r6c7 ≠ 21
whip[1]: n61{r5c7 .} ==> r2c4 ≠ 62
whip[1]: n62{r6c7 .} ==> r1c3 ≠ 63
whip[1]: n63{r7c6 .} ==> r1c2 ≠ 64
whip[1]: n43{r4c5 .} ==> r5c1 ≠ 42
whip[1]: n42{r5c6 .} ==> r6c1 ≠ 41
whip[1]: n6{r4c3 .} ==> r5c1 ≠ 5
whip[1]: n16{r4c7 .} ==> r5c9 ≠ 17
whip[1]: n47{r4c5 .} ==> r5c1 ≠ 48
whip[1]: n48{r5c4 .} ==> r6c1 ≠ 49
whip[1]: n44{r3c3 .} ==> r4c5 ≠ 43
whip[1]: n43{r4c4 .} ==> r5c6 ≠ 42
whip[1]: n42{r5c4 .} ==> r5c7 ≠ 41
whip[1]: n42{r5c4 .} ==> r6c6 ≠ 41
whip[1]: n42{r5c4 .} ==> r6c7 ≠ 41
whip[1]: n6{r4c3 .} ==> r1c4 ≠ 7
whip[1]: n46{r3c3 .} ==> r4c5 ≠ 47
whip[1]: n49{r6c3 .} ==> r3c1 ≠ 48
whip[1]: n48{r5c4 .} ==> r2c5 ≠ 47
whip[1]: n68{r9c9 .} ==> r2c4 ≠ 67
whip[1]: n67{r9c9 .} ==> r1c3 ≠ 66
whip[1]: n16{r4c7 .} ==> r1c6 ≠ 15
whip[1]: n67{r9c9 .} ==> r1c2 ≠ 66
biv-chain[2]: n21{r7c9 r6c9} - n22{r8c9 r7c9} ==> r7c9 ≠ 64
whip[1]: n64{r8c6 .} ==> r8c9 ≠ 65
whip[1]: n65{r9c7 .} ==> r9c9 ≠ 66
biv-chain[2]: n21{r7c9 r6c9} - n22{r8c9 r7c9} ==> r7c9 ≠ 65
whip[1]: n65{r9c7 .} ==> r8c9 ≠ 66
biv-chain[2]: n21{r7c9 r6c9} - n22{r8c9 r7c9} ==> r7c9 ≠ 66
biv-chain[2]: n21{r7c9 r6c9} - n22{r8c9 r7c9} ==> r7c9 ≠ 67
biv-chain[2]: n21{r7c9 r6c9} - n22{r8c9 r7c9} ==> r7c9 ≠ 68
biv-chain[2]: n21{r7c9 r6c9} - n22{r8c9 r7c9} ==> r7c9 ≠ 69
biv-chain[2]: n21{r7c9 r6c9} - n22{r8c9 r7c9} ==> r7c9 ≠ 70
biv-chain[2]: n21{r7c9 r6c9} - n22{r8c9 r7c9} ==> r7c9 ≠ 71
whip[1]: n71{r8c9 .} ==> r6c9 ≠ 70
whip[1]: n71{r8c9 .} ==> r8c9 ≠ 70
biv-chain[2]: n53{r8c1 r7c2} - n54{r9c2 r8c1} ==> r8c1 ≠ 31
biv-chain[2]: n53{r8c1 r7c2} - n54{r9c2 r8c1} ==> r8c1 ≠ 32
biv-chain[2]: n53{r8c1 r7c2} - n54{r9c2 r8c1} ==> r8c1 ≠ 38
biv-chain[2]: n53{r8c1 r7c2} - n54{r9c2 r8c1} ==> r8c1 ≠ 39
biv-chain[2]: n53{r8c1 r7c2} - n54{r9c2 r8c1} ==> r8c1 ≠ 51
biv-chain[2]: n53{r8c1 r7c2} - n54{r9c2 r8c1} ==> r8c1 ≠ 65
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r9c6 ≠ 68
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r9c5 ≠ 68
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r9c4 ≠ 68
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r8c6 ≠ 69
whip[2]: n69{r9c9 r7c6} - r9c9{n70 .} ==> r8c5 ≠ 68
whip[1]: n68{r9c9 .} ==> r8c4 ≠ 67
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r8c6 ≠ 68
whip[2]: n68{r9c9 r9c8} - n70{r9c8 .} ==> r9c7 ≠ 69
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r8c5 ≠ 69
whip[1]: n69{r9c9 .} ==> r8c4 ≠ 68
whip[1]: n68{r9c9 .} ==> r9c3 ≠ 67
whip[1]: n68{r9c9 .} ==> r8c3 ≠ 67
whip[1]: n67{r9c9 .} ==> r9c2 ≠ 66
whip[1]: n68{r9c9 .} ==> r9c4 ≠ 67
whip[1]: n67{r9c9 .} ==> r8c3 ≠ 66
whip[1]: n67{r9c9 .} ==> r9c3 ≠ 66
whip[1]: n68{r9c9 .} ==> r9c5 ≠ 67
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r7c6 ≠ 69
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r7c6 ≠ 68
whip[1]: n68{r9c9 .} ==> r8c5 ≠ 67
whip[1]: n67{r9c9 .} ==> r9c4 ≠ 66
whip[1]: n67{r9c9 .} ==> r8c4 ≠ 66
whip[2]: n66{r9c8 r7c2} - n64{r7c2 .} ==> r8c3 ≠ 65
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r6c9 ≠ 69
whip[2]: n69{r9c9 r5c8} - r9c9{n70 .} ==> r5c9 ≠ 68
whip[2]: n69{r9c9 r5c8} - n74{r5c8 .} ==> r5c9 ≠ 70
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r6c9 ≠ 68
whip[2]: n68{r9c9 r5c8} - n74{r5c8 .} ==> r5c9 ≠ 67
whip[2]: n68{r9c9 r5c8} - r9c9{n69 .} ==> r5c9 ≠ 69
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r6c7 ≠ 69
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r6c7 ≠ 68
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r6c6 ≠ 69
whip[2]: n69{r9c9 r5c6} - r9c9{n70 .} ==> r6c5 ≠ 68
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r6c6 ≠ 68
whip[1]: n68{r9c9 .} ==> r7c6 ≠ 67
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r6c5 ≠ 69
whip[1]: n69{r9c9 .} ==> r7c6 ≠ 70
whip[2]: n69{r9c9 r4c5} - r9c9{n70 .} ==> r5c4 ≠ 68
whip[1]: n68{r9c9 .} ==> r6c3 ≠ 67
whip[1]: n67{r9c9 .} ==> r7c2 ≠ 66
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r5c8 ≠ 69
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r5c8 ≠ 68
whip[1]: n68{r9c9 .} ==> r6c9 ≠ 67
whip[2]: n67{r9c9 r5c8} - n74{r5c8 .} ==> r5c9 ≠ 66
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r5c7 ≠ 69
whip[2]: n69{r9c9 r5c6} - r9c9{n70 .} ==> r4c7 ≠ 68
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r5c7 ≠ 68
whip[1]: n68{r9c9 .} ==> r5c8 ≠ 67
whip[1]: n67{r9c9 .} ==> r6c9 ≠ 66
whip[2]: n66{r9c8 r5c8} - n74{r5c8 .} ==> r5c9 ≠ 65
whip[2]: n68{r9c9 r4c5} - n69{r4c7 .} ==> r5c6 ≠ 67
whip[2]: n68{r9c9 r4c5} - r9c9{n69 .} ==> r5c6 ≠ 69
whip[1]: n69{r9c9 .} ==> r4c5 ≠ 68
whip[1]: n68{r9c9 .} ==> r4c4 ≠ 67
whip[1]: n69{r9c9 .} ==> r6c6 ≠ 70
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r5c6 ≠ 68
whip[1]: n68{r9c9 .} ==> r6c5 ≠ 67
whip[1]: n68{r9c9 .} ==> r5c7 ≠ 67
whip[1]: n68{r9c9 .} ==> r6c7 ≠ 67
whip[1]: n67{r9c9 .} ==> r6c6 ≠ 66
whip[1]: n68{r9c9 .} ==> r6c6 ≠ 67
whip[1]: n67{r9c9 .} ==> r6c7 ≠ 66
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r4c7 ≠ 69
whip[1]: n69{r9c9 .} ==> r3c7 ≠ 68
whip[1]: n68{r9c9 .} ==> r3c8 ≠ 67
whip[1]: n68{r9c9 .} ==> r3c6 ≠ 67
whip[1]: n67{r9c9 .} ==> r2c5 ≠ 66
whip[1]: n69{r9c9 .} ==> r3c8 ≠ 68
whip[1]: n68{r9c9 .} ==> r2c8 ≠ 67
whip[1]: n67{r9c9 .} ==> r1c7 ≠ 66
whip[1]: n66{r9c8 .} ==> r1c6 ≠ 65
whip[1]: n67{r9c9 .} ==> r2c9 ≠ 66
whip[1]: n68{r9c9 .} ==> r2c9 ≠ 67
whip[1]: n67{r9c9 .} ==> r1c8 ≠ 66
whip[1]: n67{r9c9 .} ==> r1c9 ≠ 66
whip[1]: n69{r9c9 .} ==> r5c8 ≠ 70
whip[1]: n70{r9c9 .} ==> r6c9 ≠ 71
whip[1]: n69{r9c9 .} ==> r5c7 ≠ 70
whip[2]: n71{r8c9 r6c7} - n70{r9c8 .} ==> r8c9 ≠ 69
whip[2]: n69{r9c9 r9c8} - n70{r5c6 .} ==> r9c9 ≠ 68
whip[2]: n68{r9c7 r9c8} - n66{r9c8 .} ==> r8c9 ≠ 67
whip[2]: n69{r9c8 r9c9} - n70{r5c6 .} ==> r9c8 ≠ 68
whip[1]: n68{r9c7 .} ==> r9c7 ≠ 67
whip[2]: n69{r9c9 r4c5} - r9c9{n70 .} ==> r3c6 ≠ 68
whip[1]: n68{r9c7 .} ==> r2c5 ≠ 67
whip[1]: n67{r9c9 .} ==> r1c4 ≠ 66
whip[1]: n67{r9c9 .} ==> r1c6 ≠ 66
whip[1]: n68{r9c7 .} ==> r4c7 ≠ 67
whip[1]: n67{r9c9 .} ==> r3c7 ≠ 66
whip[1]: n67{r9c9 .} ==> r5c8 ≠ 66
whip[1]: n66{r9c8 .} ==> r6c9 ≠ 65
whip[1]: n67{r9c9 .} ==> r5c7 ≠ 66
whip[1]: n68{r9c7 .} ==> r3c7 ≠ 67
whip[1]: n67{r9c9 .} ==> r4c7 ≠ 66
whip[1]: n66{r9c8 .} ==> r5c8 ≠ 65
whip[1]: n65{r9c7 .} ==> r6c9 ≠ 64
whip[1]: n65{r9c7 .} ==> r5c9 ≠ 64
whip[1]: n67{r9c9 .} ==> r2c8 ≠ 66
whip[1]: n66{r9c8 .} ==> r1c7 ≠ 65
whip[1]: n66{r9c8 .} ==> r1c9 ≠ 65
whip[1]: n66{r9c8 .} ==> r1c8 ≠ 65
whip[1]: n66{r9c8 .} ==> r3c8 ≠ 65
whip[1]: n67{r9c9 .} ==> r3c8 ≠ 66
whip[1]: n66{r9c8 .} ==> r2c8 ≠ 65
whip[1]: n65{r9c7 .} ==> r1c7 ≠ 64
whip[1]: n65{r9c7 .} ==> r2c9 ≠ 64
whip[1]: n66{r9c8 .} ==> r2c9 ≠ 65
whip[1]: n65{r9c7 .} ==> r1c8 ≠ 64
whip[1]: n65{r9c7 .} ==> r1c9 ≠ 64
whip[2]: n64{r8c6 r2c8} - n62{r2c8 .} ==> r1c8 ≠ 63
whip[2]: r1c9{n78 n63} - r2c9{n63 .} ==> r1c7 ≠ 78
whip[1]: n78{r4c7 .} ==> r1c6 ≠ 79
whip[2]: r1c9{n78 n63} - n64{r1c3 .} ==> r2c8 ≠ 78
whip[2]: r1c9{n78 n63} - r2c9{n63 .} ==> r3c7 ≠ 78
whip[2]: r1c9{n78 n63} - r2c9{n63 .} ==> r4c7 ≠ 78
whip[1]: n78{r3c8 .} ==> r3c6 ≠ 79
whip[2]: n64{r8c6 r2c8} - n62{r2c8 .} ==> r1c9 ≠ 63
naked-single: r1c9 = 78
whip[2]: n64{r8c6 r2c5} - n62{r2c5 .} ==> r1c6 ≠ 63
whip[2]: n64{r8c6 r5c8} - n62{r5c8 .} ==> r6c9 ≠ 63
whip[2]: n64{r8c6 r5c8} - n62{r5c8 .} ==> r5c9 ≠ 63
whip[2]: n68{r9c7 r4c4} - r9c9{n69 .} ==> r4c5 ≠ 69
whip[1]: n69{r9c9 .} ==> r4c4 ≠ 68
whip[1]: n68{r9c7 .} ==> r3c3 ≠ 67
whip[1]: n67{r9c9 .} ==> r2c2 ≠ 66
whip[1]: n66{r9c8 .} ==> r1c1 ≠ 65
whip[1]: r1c1{n43 .} ==> r1c3 ≠ 42
whip[1]: r1c1{n43 .} ==> r1c4 ≠ 42
whip[1]: r1c1{n43 .} ==> r1c6 ≠ 42
whip[1]: n42{r5c4 .} ==> r1c7 ≠ 41
whip[1]: r1c1{n43 .} ==> r2c4 ≠ 42
whip[1]: r1c1{n43 .} ==> r2c5 ≠ 42
whip[1]: n42{r5c4 .} ==> r1c4 ≠ 41
whip[1]: n42{r5c4 .} ==> r1c6 ≠ 41
whip[1]: n42{r5c4 .} ==> r1c4 ≠ 43
whip[1]: r1c1{n43 .} ==> r3c1 ≠ 42
whip[1]: r1c1{n43 .} ==> r3c2 ≠ 42
whip[1]: r1c1{n43 .} ==> r3c3 ≠ 42
whip[1]: n42{r5c4 .} ==> r2c4 ≠ 41
whip[1]: n42{r5c4 .} ==> r2c4 ≠ 43
whip[1]: r1c1{n43 .} ==> r3c6 ≠ 42
whip[1]: n42{r5c4 .} ==> r2c5 ≠ 41
whip[1]: n42{r5c4 .} ==> r3c7 ≠ 41
whip[1]: n41{r6c5 .} ==> r2c8 ≠ 40
whip[1]: n42{r5c4 .} ==> r2c5 ≠ 43
whip[1]: n42{r5c4 .} ==> r4c7 ≠ 41
whip[1]: n41{r6c5 .} ==> r3c8 ≠ 40
whip[1]: n41{r6c5 .} ==> r5c8 ≠ 40
whip[1]: r1c1{n43 .} ==> r4c3 ≠ 42
whip[1]: r1c1{n43 .} ==> r4c4 ≠ 42
whip[1]: r1c1{n43 .} ==> r4c5 ≠ 42
whip[1]: n42{r5c4 .} ==> r3c6 ≠ 41
whip[1]: n41{r6c5 .} ==> r2c5 ≠ 40
whip[1]: n41{r6c5 .} ==> r3c7 ≠ 40
whip[1]: n42{r5c4 .} ==> r5c6 ≠ 41
whip[1]: n41{r6c5 .} ==> r4c7 ≠ 40
whip[1]: n40{r7c6 .} ==> r3c8 ≠ 39
whip[1]: n41{r6c5 .} ==> r6c7 ≠ 40
whip[1]: n41{r6c5 .} ==> r5c7 ≠ 40
whip[1]: n40{r7c6 .} ==> r5c8 ≠ 39
whip[1]: r1c1{n43 .} ==> r5c3 ≠ 42
whip[1]: n42{r5c4 .} ==> r6c2 ≠ 41
whip[1]: n41{r6c5 .} ==> r5c1 ≠ 40
whip[1]: n41{r6c5 .} ==> r6c1 ≠ 40
whip[1]: n42{r5c4 .} ==> r5c4 ≠ 41
whip[1]: n41{r6c5 .} ==> r6c5 ≠ 40
whip[1]: r1c1{n43 .} ==> r5c4 ≠ 42
whip[1]: n42{r2c2 .} ==> r4c3 ≠ 43
whip[1]: n42{r2c2 .} ==> r4c4 ≠ 43
whip[1]: n42{r2c2 .} ==> r4c3 ≠ 41
whip[1]: n42{r2c2 .} ==> r4c4 ≠ 41
whip[1]: n41{r6c5 .} ==> r4c5 ≠ 40
whip[1]: n40{r7c6 .} ==> r3c6 ≠ 39
whip[1]: n42{r2c2 .} ==> r5c3 ≠ 41
whip[1]: n41{r6c5 .} ==> r6c3 ≠ 40
whip[1]: n42{r2c2 .} ==> r6c3 ≠ 41
whip[1]: n41{r6c5 .} ==> r5c3 ≠ 40
whip[1]: n41{r6c5 .} ==> r6c2 ≠ 40
whip[1]: n40{r7c6 .} ==> r5c1 ≠ 39
whip[1]: n40{r7c6 .} ==> r7c2 ≠ 39
whip[1]: n39{r8c6 .} ==> r8c3 ≠ 38
whip[1]: n41{r6c5 .} ==> r7c2 ≠ 40
whip[1]: n40{r7c6 .} ==> r6c1 ≠ 39
whip[1]: n40{r7c6 .} ==> r6c2 ≠ 39
whip[1]: n39{r8c6 .} ==> r5c1 ≠ 38
whip[1]: n39{r8c6 .} ==> r6c1 ≠ 38
whip[1]: n40{r7c6 .} ==> r8c3 ≠ 39
whip[1]: n39{r8c6 .} ==> r9c2 ≠ 38
whip[1]: n39{r8c6 .} ==> r9c3 ≠ 38
whip[1]: n38{r9c7 .} ==> r9c2 ≠ 37
whip[1]: n42{r2c2 .} ==> r6c5 ≠ 41
whip[1]: n41{r4c5 .} ==> r7c6 ≠ 40
whip[1]: n40{r6c6 .} ==> r8c5 ≠ 39
whip[1]: n39{r8c6 .} ==> r8c4 ≠ 38
whip[1]: n39{r8c6 .} ==> r9c4 ≠ 38
whip[1]: n38{r9c7 .} ==> r9c3 ≠ 37
whip[1]: n40{r6c6 .} ==> r8c6 ≠ 39
whip[1]: n39{r7c6 .} ==> r9c5 ≠ 38
whip[1]: n39{r7c6 .} ==> r9c6 ≠ 38
whip[1]: n39{r7c6 .} ==> r9c7 ≠ 38
whip[1]: n41{r4c5 .} ==> r6c6 ≠ 40
whip[1]: n40{r5c6 .} ==> r5c6 ≠ 39
whip[1]: n40{r5c6 .} ==> r7c6 ≠ 39
whip[1]: n39{r6c7 .} ==> r8c6 ≠ 38
whip[1]: n39{r6c7 .} ==> r8c5 ≠ 38
whip[1]: n38{r7c6 .} ==> r9c4 ≠ 37
whip[1]: n38{r7c6 .} ==> r8c4 ≠ 37
whip[1]: n38{r7c6 .} ==> r9c6 ≠ 37
whip[1]: n38{r7c6 .} ==> r9c5 ≠ 37
whip[1]: n42{r2c2 .} ==> r4c5 ≠ 41
whip[1]: n41{r3c3 .} ==> r3c6 ≠ 40
whip[1]: n40{r5c6 .} ==> r3c7 ≠ 39
whip[1]: n41{r3c3 .} ==> r5c6 ≠ 40
whip[1]: n40{r5c4 .} ==> r4c7 ≠ 39
whip[1]: n40{r5c4 .} ==> r6c6 ≠ 39
whip[1]: n40{r5c4 .} ==> r6c7 ≠ 39
whip[1]: n39{r6c5 .} ==> r5c7 ≠ 38
whip[1]: n40{r5c4 .} ==> r5c7 ≠ 39
whip[1]: n39{r6c5 .} ==> r4c7 ≠ 38
whip[1]: n39{r6c5 .} ==> r6c7 ≠ 38
whip[1]: n41{r3c3 .} ==> r5c4 ≠ 40
whip[1]: n40{r4c4 .} ==> r6c3 ≠ 39
whip[1]: n39{r6c5 .} ==> r7c2 ≠ 38
whip[1]: n38{r7c6 .} ==> r8c3 ≠ 37
whip[1]: n40{r4c4 .} ==> r6c5 ≠ 39
whip[1]: n39{r5c4 .} ==> r6c6 ≠ 38
whip[1]: n39{r5c4 .} ==> r7c6 ≠ 38
whip[1]: n38{r6c5 .} ==> r8c5 ≠ 37
whip[1]: n37{r8c6 .} ==> r8c4 ≠ 36
whip[1]: n38{r6c5 .} ==> r8c6 ≠ 37
whip[1]: n66{r9c8 .} ==> r1c2 ≠ 65
whip[1]: n67{r9c9 .} ==> r2c4 ≠ 66
whip[1]: n66{r9c8 .} ==> r1c3 ≠ 65
whip[1]: n66{r9c8 .} ==> r1c4 ≠ 65
whip[1]: n68{r9c7 .} ==> r5c3 ≠ 67
whip[1]: n67{r9c9 .} ==> r6c2 ≠ 66
whip[1]: n66{r9c8 .} ==> r5c1 ≠ 65
whip[1]: n66{r9c8 .} ==> r6c1 ≠ 65
whip[1]: n68{r9c7 .} ==> r4c3 ≠ 67
whip[1]: n67{r9c9 .} ==> r3c2 ≠ 66
whip[1]: n66{r9c8 .} ==> r2c1 ≠ 65
whip[1]: n66{r9c8 .} ==> r3c1 ≠ 65
whip[1]: n67{r9c9 .} ==> r3c3 ≠ 66
whip[1]: n66{r9c8 .} ==> r2c2 ≠ 65
whip[1]: n66{r9c8 .} ==> r2c4 ≠ 65
whip[1]: n65{r9c7 .} ==> r1c3 ≠ 64
whip[1]: n68{r9c7 .} ==> r5c4 ≠ 67
whip[1]: n67{r9c9 .} ==> r4c3 ≠ 66
whip[1]: n66{r9c8 .} ==> r3c2 ≠ 65
whip[1]: n67{r9c9 .} ==> r6c3 ≠ 66
whip[1]: n66{r9c8 .} ==> r7c2 ≠ 65
whip[1]: n67{r9c9 .} ==> r5c3 ≠ 66
whip[1]: n66{r9c8 .} ==> r6c2 ≠ 65
whip[1]: n67{r9c9 .} ==> r4c5 ≠ 66
whip[1]: n66{r9c8 .} ==> r3c6 ≠ 65
whip[1]: n65{r9c7 .} ==> r2c5 ≠ 64
whip[1]: n67{r9c9 .} ==> r6c5 ≠ 66
whip[1]: n66{r9c8 .} ==> r5c6 ≠ 65
whip[1]: n68{r9c7 .} ==> r4c5 ≠ 67
whip[1]: n67{r9c9 .} ==> r5c6 ≠ 66
whip[1]: n66{r9c8 .} ==> r5c7 ≠ 65
whip[1]: n67{r9c9 .} ==> r3c6 ≠ 66
whip[1]: n66{r9c8 .} ==> r2c5 ≠ 65
whip[1]: n65{r9c7 .} ==> r1c4 ≠ 64
whip[1]: n65{r9c7 .} ==> r1c6 ≠ 64
naked-single: r1c6 = 81
naked-single: r1c8 = 79
whip[1]: n66{r9c8 .} ==> r3c7 ≠ 65
whip[1]: n65{r9c7 .} ==> r2c8 ≠ 64
whip[1]: n64{r8c6 .} ==> r1c7 ≠ 63
naked-single: r1c7 = 15
hidden-single: r2c8 = 16
hidden-single: r2c9 = 77
whip[1]: n65{r9c7 .} ==> r4c7 ≠ 64
whip[1]: n66{r9c8 .} ==> r4c7 ≠ 65
whip[1]: n65{r9c7 .} ==> r3c7 ≠ 64
whip[1]: n64{r8c6 .} ==> r3c8 ≠ 63
whip[1]: n65{r9c7 .} ==> r3c8 ≠ 64
whip[1]: n67{r9c9 .} ==> r5c4 ≠ 66
whip[1]: n66{r9c8 .} ==> r4c4 ≠ 65
whip[1]: n66{r9c8 .} ==> r6c3 ≠ 65
whip[1]: n65{r9c7 .} ==> r7c2 ≠ 64
whip[1]: n67{r9c9 .} ==> r4c4 ≠ 66
whip[1]: n66{r9c8 .} ==> r3c3 ≠ 65
whip[1]: n65{r9c7 .} ==> r2c2 ≠ 64
whip[1]: n65{r9c7 .} ==> r2c4 ≠ 64
whip[1]: n64{r8c6 .} ==> r1c4 ≠ 63
whip[1]: n66{r9c8 .} ==> r5c4 ≠ 65
whip[1]: n65{r9c7 .} ==> r4c5 ≠ 64
whip[1]: n64{r8c6 .} ==> r3c6 ≠ 63
whip[1]: n66{r9c8 .} ==> r4c5 ≠ 65
whip[1]: n65{r9c7 .} ==> r3c6 ≠ 64
whip[1]: n64{r8c6 .} ==> r2c5 ≠ 63
whip[1]: n64{r8c6 .} ==> r3c7 ≠ 63
whip[1]: n66{r9c8 .} ==> r5c3 ≠ 65
whip[1]: n65{r9c7 .} ==> r6c2 ≠ 64
whip[1]: n65{r9c7 .} ==> r6c3 ≠ 64
whip[1]: n65{r9c7 .} ==> r4c3 ≠ 64
whip[1]: n66{r9c8 .} ==> r4c3 ≠ 65
whip[1]: n65{r9c7 .} ==> r3c2 ≠ 64
whip[1]: n65{r9c7 .} ==> r3c3 ≠ 64
whip[1]: n64{r8c6 .} ==> r2c4 ≠ 63
whip[1]: n63{r7c6 .} ==> r2c5 ≠ 62
whip[1]: n65{r9c7 .} ==> r5c3 ≠ 64
whip[1]: n65{r9c7 .} ==> r4c4 ≠ 64
whip[1]: n64{r8c6 .} ==> r3c3 ≠ 63
whip[1]: n69{r9c9 .} ==> r5c6 ≠ 70
whip[1]: n70{r9c9 .} ==> r6c7 ≠ 71
hidden-single: r8c9 = 71
hidden-single: r7c9 = 22
hidden-single: r6c9 = 21
hidden-single: r6c7 = 73
hidden-single: r5c8 = 74
hidden-single: r9c7 = 68
hidden-single: r9c8 = 69
hidden-single: r9c9 = 70
naked-single: r5c9 = 19
whip[2]: n64{r8c6 r5c4} - n62{r5c4 .} ==> r6c3 ≠ 63
whip[2]: n5{r3c1 r3c2} - n48{r3c2 .} ==> r3c1 ≠ 47
whip[2]: n5{r3c1 r3c2} - n39{r3c2 .} ==> r3c1 ≠ 40
whip[2]: n10{r2c5 r2c4} - n7{r2c4 .} ==> r2c5 ≠ 8
whip[2]: n8{r1c4 r2c4} - n47{r2c4 .} ==> r1c4 ≠ 46
whip[2]: n30{r9c6 r4c7} - n32{r4c7 .} ==> r3c8 ≠ 31
whip[2]: n30{r9c6 r4c7} - n32{r4c7 .} ==> r3c7 ≠ 31
whip[2]: r3c8{n62 n17} - r3c7{n17 .} ==> r4c5 ≠ 61
whip[1]: n61{r5c7 .} ==> r4c4 ≠ 62
whip[1]: n61{r5c7 .} ==> r5c4 ≠ 62
whip[1]: n62{r6c6 .} ==> r4c3 ≠ 63
whip[1]: n62{r6c6 .} ==> r5c3 ≠ 63
whip[2]: r3c8{n62 n17} - r3c7{n17 .} ==> r5c6 ≠ 61
whip[1]: n61{r5c7 .} ==> r6c5 ≠ 62
whip[2]: r3c8{n62 n17} - r3c7{n17 .} ==> r5c7 ≠ 61
whip[1]: n61{r4c7 .} ==> r6c6 ≠ 62
whip[1]: n62{r5c7 .} ==> r7c6 ≠ 63
whip[1]: n63{r6c6 .} ==> r8c5 ≠ 64
whip[1]: n64{r8c6 .} ==> r8c4 ≠ 65
whip[1]: n64{r8c6 .} ==> r9c4 ≠ 65
whip[1]: n63{r6c6 .} ==> r8c6 ≠ 64
whip[1]: n64{r7c6 .} ==> r9c5 ≠ 65
whip[1]: n64{r7c6 .} ==> r9c6 ≠ 65
whip[2]: r3c8{n62 n17} - r3c7{n17 .} ==> r4c5 ≠ 62
whip[1]: n62{r5c7 .} ==> r4c4 ≠ 63
whip[1]: n62{r5c7 .} ==> r5c4 ≠ 63
whip[2]: r3c8{n62 n17} - r3c7{n17 .} ==> r5c6 ≠ 62
whip[1]: n62{r5c7 .} ==> r6c5 ≠ 63
whip[2]: r3c8{n62 n17} - r3c7{n17 .} ==> r5c7 ≠ 62
whip[1]: n62{r4c7 .} ==> r6c6 ≠ 63
whip[1]: n63{r5c7 .} ==> r7c6 ≠ 64
whip[1]: n64{r6c6 .} ==> r8c6 ≠ 65
whip[1]: n64{r6c6 .} ==> r8c5 ≠ 65
whip[1]: n65{r7c6 .} ==> r9c5 ≠ 66
whip[1]: n65{r7c6 .} ==> r9c6 ≠ 66
whip[2]: n30{r9c6 r4c3} - n32{r4c3 .} ==> r3c2 ≠ 31
whip[3]: n67{r8c6 r9c6} - n66{r7c6 r8c5} - n34{r8c5 .} ==> r8c6 ≠ 33
whip[3]: n17{r3c8 r3c7} - n61{r3c7 r4c7} - n63{r4c7 .} ==> r3c8 ≠ 62
naked-single: r3c8 = 17
whip[2]: r3c7{n61 n62} - n63{r4c5 .} ==> r4c7 ≠ 61
whip[3]: n37{r7c2 r7c6} - n66{r7c6 r8c6} - n65{r6c5 .} ==> r8c5 ≠ 36
whip[2]: n38{r6c3 r6c5} - n36{r6c5 .} ==> r7c6 ≠ 37
whip[3]: n36{r8c3 r6c5} - n65{r6c5 r7c6} - n64{r5c4 .} ==> r6c6 ≠ 37
whip[1]: n37{r7c2 .} ==> r5c6 ≠ 38
whip[3]: n39{r5c3 r5c4} - n37{r5c4 r5c6} - n36{r6c3 .} ==> r6c5 ≠ 38
whip[3]: n30{r9c6 r7c2} - r9c5{n30 n33} - n32{r4c3 .} ==> r6c1 ≠ 31
whip[2]: n33{r9c6 r6c2} - n31{r6c2 .} ==> r5c1 ≠ 32
whip[3]: r5c1{n1 n50} - n49{r4c3 r6c2} - n48{r3c2 .} ==> r5c3 ≠ 1
whip[3]: n66{r8c6 r7c6} - n26{r7c6 r8c6} - n67{r8c6 .} ==> r6c6 ≠ 65
whip[1]: n65{r7c6 .} ==> r5c7 ≠ 64
whip[2]: n65{r7c6 r6c5} - n66{r8c5 .} ==> r7c6 ≠ 26
whip[2]: n65{r7c6 r6c5} - n66{r8c5 .} ==> r7c6 ≠ 28
whip[2]: n65{r7c6 r6c5} - n66{r8c5 .} ==> r7c6 ≠ 29
whip[2]: n65{r7c6 r6c5} - n66{r8c5 .} ==> r7c6 ≠ 30
whip[2]: n65{r7c6 r6c5} - n66{r8c5 .} ==> r7c6 ≠ 31
whip[2]: n65{r7c6 r6c5} - n66{r8c5 .} ==> r7c6 ≠ 32
whip[2]: n65{r7c6 r6c5} - n66{r8c5 .} ==> r7c6 ≠ 33
whip[3]: n67{r8c6 r9c6} - n66{r7c6 r8c5} - n28{r8c5 .} ==> r8c6 ≠ 29
whip[3]: n65{r6c5 r7c6} - n64{r5c4 r6c6} - n28{r6c6 .} ==> r6c5 ≠ 29
whip[1]: n29{r9c6 .} ==> r5c4 ≠ 30
whip[3]: n28{r8c6 r6c5} - n65{r6c5 r7c6} - n64{r5c4 .} ==> r6c6 ≠ 29
whip[3]: n34{r8c5 r6c5} - n65{r6c5 r7c6} - n64{r5c4 .} ==> r6c6 ≠ 33
whip[1]: n33{r9c6 .} ==> r5c6 ≠ 32
whip[3]: n32{r9c6 r5c7} - n33{r5c3 r5c6} - n30{r5c6 .} ==> r4c7 ≠ 31
whip[3]: n39{r5c4 r3c3} - n41{r3c3 r1c3} - n7{r1c3 .} ==> r2c4 ≠ 40
whip[3]: n48{r5c4 r3c3} - n46{r3c3 r1c3} - n7{r1c3 .} ==> r2c4 ≠ 47
whip[4]: n67{r8c6 r9c6} - n66{r7c6 r8c5} - n33{r8c5 r9c5} - n31{r9c5 .} ==> r8c6 ≠ 32
whip[4]: n67{r8c6 r9c6} - n66{r7c6 r8c5} - n32{r8c5 r9c5} - n30{r9c5 .} ==> r8c6 ≠ 31
whip[4]: n67{r8c6 r9c6} - n66{r7c6 r8c5} - n31{r8c5 r9c5} - n29{r9c5 .} ==> r8c6 ≠ 30
whip[4]: n61{r3c6 r3c7} - n62{r3c7 r4c7} - n32{r4c7 r4c5} - n30{r4c5 .} ==> r3c6 ≠ 31
whip[4]: n33{r9c6 r5c6} - n31{r5c6 r5c7} - n30{r4c3 r6c6} - n29{r5c4 .} ==> r4c7 ≠ 32
whip[3]: n32{r9c6 r6c6} - r9c3{n33 n29} - n30{r4c3 .} ==> r5c7 ≠ 31
whip[3]: n33{r9c6 r5c6} - n34{r6c3 r6c5} - n31{r6c5 .} ==> r6c6 ≠ 32
whip[3]: n32{r9c6 r5c4} - r9c3{n33 n29} - n30{r4c3 .} ==> r6c5 ≠ 31
whip[3]: n31{r9c6 r5c6} - r9c3{n32 n33} - n32{r4c3 .} ==> r6c6 ≠ 30
whip[3]: n31{r9c6 r5c6} - r9c3{n32 n33} - n32{r4c3 .} ==> r4c7 ≠ 30
whip[1]: r4c7{n63 .} ==> r4c5 ≠ 63
whip[1]: n63{r5c7 .} ==> r5c4 ≠ 64
whip[3]: n30{r9c6 r5c6} - n63{r5c6 r4c7} - n64{r6c5 .} ==> r5c7 ≠ 29
whip[1]: n29{r9c6 .} ==> r5c6 ≠ 30
whip[3]: n29{r9c6 r5c6} - n64{r5c6 r6c5} - n63{r4c7 .} ==> r6c6 ≠ 28
whip[3]: n30{r9c6 r4c4} - r9c3{n31 n33} - n32{r4c3 .} ==> r4c5 ≠ 31
whip[3]: n29{r9c6 r5c6} - n63{r5c6 r4c7} - n64{r6c5 .} ==> r5c7 ≠ 30
whip[2]: r5c7{n63 n32} - n33{r5c3 .} ==> r5c6 ≠ 63
whip[1]: n63{r5c7 .} ==> r6c5 ≠ 64
biv-chain[3]: r7c6{n66 n65} - n64{r5c6 r6c6} - n26{r6c6 r8c6} ==> r8c6 ≠ 66
whip[3]: n33{r9c6 r5c6} - n31{r5c6 r6c6} - n64{r6c6 .} ==> r5c7 ≠ 32
naked-single: r5c7 = 63
hidden-single: r4c7 = 62
naked-single: r3c7 = 61
naked-single: r3c6 = 13
naked-single: r2c5 = 10
whip[2]: n30{r9c6 r6c5} - n32{r6c5 .} ==> r6c6 ≠ 31
biv-chain[4]: n67{r8c6 r9c6} - r7c6{n66 n65} - n64{r5c6 r6c6} - n26{r6c6 r8c6} ==> r8c6 ≠ 28
whip[4]: n34{r8c5 r8c4} - n28{r8c4 r6c5} - n65{r6c5 r7c6} - n66{r7c6 .} ==> r8c5 ≠ 33
whip[4]: n65{r6c5 r7c6} - n66{r7c6 r8c5} - n28{r8c5 r8c4} - n29{r5c4 .} ==> r6c5 ≠ 30
whip[3]: n30{r9c6 r4c5} - r9c3{n31 n33} - n32{r4c3 .} ==> r5c6 ≠ 31
whip[3]: n31{r9c6 r5c4} - r9c3{n32 n29} - n30{r4c3 .} ==> r6c5 ≠ 32
whip[4]: n51{r7c2 r6c2} - r6c1{n51 n32} - n31{r9c6 r7c2} - n33{r7c2 .} ==> r5c3 ≠ 50
whip[1]: n50{r7c2 .} ==> r4c3 ≠ 49
whip[1]: n49{r6c3 .} ==> r3c2 ≠ 48
whip[1]: n48{r5c4 .} ==> r2c1 ≠ 47
whip[1]: n50{r7c2 .} ==> r4c4 ≠ 49
whip[1]: n49{r6c3 .} ==> r3c3 ≠ 48
whip[1]: n48{r5c4 .} ==> r2c2 ≠ 47
whip[1]: n47{r4c4 .} ==> r1c2 ≠ 46
whip[1]: n47{r4c4 .} ==> r1c3 ≠ 46
whip[2]: r1c1{n43 n41} - r1c2{n41 .} ==> r3c1 ≠ 43
whip[2]: r1c1{n43 n41} - r1c2{n41 .} ==> r3c2 ≠ 43
whip[2]: r1c1{n43 n41} - r1c2{n41 .} ==> r3c3 ≠ 43
whip[2]: r1c1{n42 n43} - r2c1{n43 .} ==> r1c3 ≠ 41
whip[2]: r1c1{n42 n43} - r2c1{n43 .} ==> r3c3 ≠ 41
whip[1]: n41{r3c2 .} ==> r4c4 ≠ 40
whip[1]: n40{r4c3 .} ==> r4c5 ≠ 39
whip[3]: n8{r2c4 r1c4} - n7{r3c3 r1c3} - n43{r1c3 .} ==> r2c4 ≠ 44
whip[3]: n43{r2c1 r2c2} - r1c3{n43 n7} - n6{r3c2 .} ==> r3c3 ≠ 44
whip[4]: n6{r4c3 r3c3} - n5{r3c1 r3c2} - n46{r3c2 r2c2} - n47{r4c3 .} ==> r2c4 ≠ 7
whip[1]: n7{r3c3 .} ==> r3c3 ≠ 6
biv-chain[2]: r1c4{n44 n8} - n7{r3c3 r1c3} ==> r1c3 ≠ 44
whip[2]: r1c3{n43 n7} - n6{r3c2 .} ==> r2c2 ≠ 43
whip[3]: r1c3{n43 n7} - n6{r3c2 r2c2} - n44{r2c2 .} ==> r1c2 ≠ 43
whip[3]: r1c4{n44 n8} - n7{r3c3 r1c3} - n6{r3c2 .} ==> r2c2 ≠ 44
whip[4]: r1c3{n7 n43} - r1c1{n42 n41} - r2c1{n41 n40} - n39{r3c3 .} ==> r3c2 ≠ 6
whip[3]: n6{r2c2 r4c3} - r1c3{n7 n43} - r1c1{n42 .} ==> r2c2 ≠ 41
whip[4]: n6{r2c2 r4c3} - n7{r1c3 r3c3} - n47{r3c3 r3c2} - n48{r4c4 .} ==> r2c2 ≠ 46
whip[3]: n41{r3c1 r3c2} - n46{r3c2 r2c4} - n47{r3c2 .} ==> r3c3 ≠ 40
whip[4]: n40{r3c2 r4c3} - n41{r1c1 r3c2} - n47{r3c2 r3c3} - n48{r4c5 .} ==> r4c4 ≠ 39
whip[4]: n6{r2c2 r4c3} - n5{r3c1 r3c2} - n40{r3c2 r2c1} - n39{r3c3 .} ==> r2c2 ≠ 42
whip[4]: r1c3{n7 n43} - r1c1{n42 n41} - r2c1{n41 n40} - r2c2{n40 .} ==> r4c3 ≠ 6
hidden-single: r2c2 = 6
whip[3]: n43{r1c3 r2c1} - n41{r2c1 r1c2} - n40{r4c3 .} ==> r1c1 ≠ 42
whip[2]: n40{r4c3 r2c1} - n42{r2c1 .} ==> r1c2 ≠ 41
whip[2]: r1c1{n43 n41} - n40{r3c2 .} ==> r2c1 ≠ 43
whip[1]: n43{r1c3 .} ==> r3c2 ≠ 44
biv-chain[3]: n42{r2c1 r1c2} - n44{r1c2 r1c4} - r1c1{n43 n41} ==> r2c1 ≠ 41
whip[2]: n5{r3c2 r3c1} - n41{r3c1 .} ==> r3c2 ≠ 40
whip[1]: n40{r4c3 .} ==> r4c3 ≠ 39
biv-chain[2]: n40{r4c3 r2c1} - n42{r2c1 r1c2} ==> r3c1 ≠ 41
whip[2]: n37{r5c4 r5c3} - n39{r5c3 .} ==> r5c4 ≠ 38
whip[3]: n40{r4c3 r2c1} - n39{r3c3 r3c2} - n38{r4c4 .} ==> r4c3 ≠ 48
whip[1]: n48{r5c4 .} ==> r3c2 ≠ 47
whip[3]: n40{r2c1 r4c3} - n38{r4c3 r4c4} - n47{r4c4 .} ==> r3c3 ≠ 39
whip[3]: n40{r4c3 r2c1} - n39{r5c3 r3c2} - n38{r4c4 .} ==> r4c3 ≠ 47
whip[2]: n47{r4c4 r3c3} - n48{r4c5 .} ==> r4c4 ≠ 30
whip[2]: n47{r4c4 r3c3} - n48{r4c5 .} ==> r4c4 ≠ 31
whip[2]: n47{r4c4 r3c3} - n48{r4c5 .} ==> r4c4 ≠ 32
whip[2]: n30{r9c6 r4c3} - n32{r4c3 .} ==> r3c3 ≠ 31
whip[2]: n47{r4c4 r3c3} - n48{r4c5 .} ==> r4c4 ≠ 38
whip[2]: n47{r3c3 r4c4} - n46{r2c4 .} ==> r3c3 ≠ 1
whip[2]: n47{r3c3 r4c4} - n46{r2c4 .} ==> r3c3 ≠ 7
hidden-single: r1c3 = 7
hidden-single: r1c1 = 43
hidden-single: r3c2 = 41
hidden-single: r2c1 = 42
hidden-single: r4c3 = 40
hidden-single: r3c1 = 5
hidden-single: r5c1 = 1
hidden-single: r1c2 = 44
naked-single: r1c4 = 8
naked-single: r2c4 = 46
hidden-single: r3c3 = 47
hidden-single: r4c4 = 48
whip[1]: n49{r5c4 .} ==> r6c1 ≠ 50
whip[1]: n49{r5c4 .} ==> r7c2 ≠ 50
biv-chain[2]: n39{r5c4 r5c3} - n49{r5c3 r5c4} ==> r5c4 ≠ 29
whip[1]: n29{r9c6 .} ==> r6c3 ≠ 30
whip[1]: n30{r9c6 .} ==> r5c3 ≠ 31
whip[1]: n29{r9c6 .} ==> r5c3 ≠ 30
biv-chain[2]: n39{r5c4 r5c3} - n49{r5c3 r5c4} ==> r5c4 ≠ 31
whip[1]: n31{r9c6 .} ==> r4c5 ≠ 32
whip[1]: n32{r9c6 .} ==> r5c6 ≠ 33
whip[1]: n31{r9c6 .} ==> r4c5 ≠ 30
naked-single: r4c5 = 38
hidden-single: r5c4 = 39
hidden-single: r5c6 = 37
hidden-single: r6c6 = 64
hidden-single: r8c6 = 26
hidden-single: r9c6 = 67
hidden-single: r8c5 = 66
hidden-single: r7c6 = 65
hidden-single: r6c5 = 36
hidden-single: r8c4 = 28
hidden-single: r5c3 = 49
whip[1]: n34{r8c3 .} ==> r8c3 ≠ 33
whip[1]: n34{r8c3 .} ==> r9c5 ≠ 33
biv-chain[2]: n34{r8c3 r6c3} - n50{r6c3 r6c2} ==> r6c2 ≠ 33
whip[1]: n33{r9c4 .} ==> r7c2 ≠ 32
biv-chain[2]: n50{r6c2 r6c3} - r6c1{n51 n32} ==> r6c2 ≠ 32
whip[1]: n32{r9c5 .} ==> r6c3 ≠ 31
whip[2]: r6c3{n34 n50} - r6c1{n51 .} ==> r9c2 ≠ 33
whip[2]: r6c3{n34 n50} - r6c1{n51 .} ==> r9c3 ≠ 33
whip[1]: n33{r9c4 .} ==> r9c2 ≠ 32
whip[1]: n33{r9c4 .} ==> r9c4 ≠ 32
whip[1]: n32{r9c5 .} ==> r9c5 ≠ 31
biv-chain[2]: r6c1{n51 n32} - n33{r9c4 r7c2} ==> r7c2 ≠ 51
biv-chain[2]: n51{r6c2 r6c1} - n50{r6c3 r6c2} ==> r6c2 ≠ 31
whip[2]: n31{r9c4 r7c2} - n33{r7c2 .} ==> r6c1 ≠ 32
naked-single: r6c1 = 51
hidden-single: r6c2 = 50
whip[1]: r6c3{n34 .} ==> r9c4 ≠ 33
hidden-single: r7c2 = 33
hidden-single: r8c1 = 53
hidden-single: r9c2 = 54
whip[1]: n31{r9c4 .} ==> r6c3 ≠ 32
hidden-single: r8c3 = 32
hidden-single: r6c3 = 34
whip[1]: r9c3{n31 .} ==> r9c5 ≠ 30
naked-single: r9c5 = 29
hidden-single: r9c4 = 30
hidden-single: r9c3 = 31


43 44 7 8 9 81 15 79 78
42 6 45 46 10 14 80 16 77
5 41 47 11 12 13 61 17 76
4 2 40 48 38 60 62 18 75
1 3 49 39 59 37 63 74 19
51 50 34 58 36 64 73 20 21
52 33 57 35 27 65 25 72 22
53 56 32 28 66 26 24 23 71
55 54 31 30 29 67 68 69 70


Note: reduced path without the trivial steps:
biv-chain[2]: n21{r7c9 r6c9} - n22{r8c9 r7c9} ==> r7c9 ≠ 64 ... 71
biv-chain[2]: n53{r8c1 r7c2} - n54{r9c2 r8c1} ==> r8c1 ≠ 31, 32, 38, 39, 51, 65
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r9c6 ≠ 68, r9c5 ≠ 68, r9c4 ≠ 68
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r8c6 ≠ 69
whip[2]: n69{r9c9 r7c6} - r9c9{n70 .} ==> r8c5 ≠ 68
whip[1]: n68{r9c9 .} ==> r8c4 ≠ 67
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r8c6 ≠ 68
whip[2]: n68{r9c9 r9c8} - n70{r9c8 .} ==> r9c7 ≠ 69
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r8c5 ≠ 69
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r7c6 ≠ 69
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r7c6 ≠ 68
whip[2]: n66{r9c8 r7c2} - n64{r7c2 .} ==> r8c3 ≠ 65
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r6c9 ≠ 69
whip[2]: n69{r9c9 r5c8} - r9c9{n70 .} ==> r5c9 ≠ 68
whip[2]: n69{r9c9 r5c8} - n74{r5c8 .} ==> r5c9 ≠ 70
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r6c9 ≠ 68
whip[2]: n68{r9c9 r5c8} - n74{r5c8 .} ==> r5c9 ≠ 67
whip[2]: n68{r9c9 r5c8} - r9c9{n69 .} ==> r5c9 ≠ 69
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r6c7 ≠ 69
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r6c7 ≠ 68
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r6c6 ≠ 69
whip[2]: n69{r9c9 r5c6} - r9c9{n70 .} ==> r6c5 ≠ 68
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r6c6 ≠ 68
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r6c5 ≠ 69
whip[2]: n69{r9c9 r4c5} - r9c9{n70 .} ==> r5c4 ≠ 68
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r5c8 ≠ 69
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r5c8 ≠ 68
whip[2]: n67{r9c9 r5c8} - n74{r5c8 .} ==> r5c9 ≠ 66
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r5c7 ≠ 69
whip[2]: n69{r9c9 r5c6} - r9c9{n70 .} ==> r4c7 ≠ 68
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r5c7 ≠ 68
whip[2]: n66{r9c8 r5c8} - n74{r5c8 .} ==> r5c9 ≠ 65
whip[2]: n68{r9c9 r4c5} - n69{r4c7 .} ==> r5c6 ≠ 67
whip[2]: n68{r9c9 r4c5} - r9c9{n69 .} ==> r5c6 ≠ 69
whip[2]: r9c9{n68 n70} - n69{r4c5 .} ==> r5c6 ≠ 68
whip[2]: r9c9{n69 n67} - n68{r3c6 .} ==> r4c7 ≠ 69
whip[2]: n71{r8c9 r6c7} - n70{r9c8 .} ==> r8c9 ≠ 69
whip[2]: n69{r9c9 r9c8} - n70{r5c6 .} ==> r9c9 ≠ 68
whip[2]: n68{r9c7 r9c8} - n66{r9c8 .} ==> r8c9 ≠ 67
whip[2]: n69{r9c8 r9c9} - n70{r5c6 .} ==> r9c8 ≠ 68
whip[2]: n69{r9c9 r4c5} - r9c9{n70 .} ==> r3c6 ≠ 68
whip[2]: n64{r8c6 r2c8} - n62{r2c8 .} ==> r1c8 ≠ 63
whip[2]: r1c9{n78 n63} - r2c9{n63 .} ==> r1c7 ≠ 78
whip[2]: r1c9{n78 n63} - n64{r1c3 .} ==> r2c8 ≠ 78
whip[2]: r1c9{n78 n63} - r2c9{n63 .} ==> r3c7 ≠ 78
whip[2]: r1c9{n78 n63} - r2c9{n63 .} ==> r4c7 ≠ 78
whip[2]: n64{r8c6 r2c8} - n62{r2c8 .} ==> r1c9 ≠ 63
whip[2]: n64{r8c6 r2c5} - n62{r2c5 .} ==> r1c6 ≠ 63
whip[2]: n64{r8c6 r5c8} - n62{r5c8 .} ==> r6c9 ≠ 63
whip[2]: n64{r8c6 r5c8} - n62{r5c8 .} ==> r5c9 ≠ 63
whip[2]: n68{r9c7 r4c4} - r9c9{n69 .} ==> r4c5 ≠ 69
whip[2]: n64{r8c6 r5c4} - n62{r5c4 .} ==> r6c3 ≠ 63
whip[2]: n5{r3c1 r3c2} - n48{r3c2 .} ==> r3c1 ≠ 47
whip[2]: n5{r3c1 r3c2} - n39{r3c2 .} ==> r3c1 ≠ 40
whip[2]: n10{r2c5 r2c4} - n7{r2c4 .} ==> r2c5 ≠ 8
whip[2]: n8{r1c4 r2c4} - n47{r2c4 .} ==> r1c4 ≠ 46
whip[2]: n30{r9c6 r4c7} - n32{r4c7 .} ==> r3c8 ≠ 31
whip[2]: n30{r9c6 r4c7} - n32{r4c7 .} ==> r3c7 ≠ 31
whip[2]: r3c8{n62 n17} - r3c7{n17 .} ==> r4c5 ≠ 61
whip[2]: r3c8{n62 n17} - r3c7{n17 .} ==> r5c6 ≠ 61
whip[2]: r3c8{n62 n17} - r3c7{n17 .} ==> r5c7 ≠ 61
whip[2]: r3c8{n62 n17} - r3c7{n17 .} ==> r4c5 ≠ 62
whip[2]: r3c8{n62 n17} - r3c7{n17 .} ==> r5c6 ≠ 62
whip[2]: r3c8{n62 n17} - r3c7{n17 .} ==> r5c7 ≠ 62
whip[2]: n30{r9c6 r4c3} - n32{r4c3 .} ==> r3c2 ≠ 31
whip[3]: n67{r8c6 r9c6} - n66{r7c6 r8c5} - n34{r8c5 .} ==> r8c6 ≠ 33
whip[3]: n17{r3c8 r3c7} - n61{r3c7 r4c7} - n63{r4c7 .} ==> r3c8 ≠ 62
whip[2]: r3c7{n61 n62} - n63{r4c5 .} ==> r4c7 ≠ 61
whip[3]: n37{r7c2 r7c6} - n66{r7c6 r8c6} - n65{r6c5 .} ==> r8c5 ≠ 36
whip[2]: n38{r6c3 r6c5} - n36{r6c5 .} ==> r7c6 ≠ 37
whip[3]: n36{r8c3 r6c5} - n65{r6c5 r7c6} - n64{r5c4 .} ==> r6c6 ≠ 37
whip[3]: n39{r5c3 r5c4} - n37{r5c4 r5c6} - n36{r6c3 .} ==> r6c5 ≠ 38
whip[3]: n30{r9c6 r7c2} - r9c5{n30 n33} - n32{r4c3 .} ==> r6c1 ≠ 31
whip[2]: n33{r9c6 r6c2} - n31{r6c2 .} ==> r5c1 ≠ 32
whip[3]: r5c1{n1 n50} - n49{r4c3 r6c2} - n48{r3c2 .} ==> r5c3 ≠ 1
whip[3]: n66{r8c6 r7c6} - n26{r7c6 r8c6} - n67{r8c6 .} ==> r6c6 ≠ 65
whip[2]: n65{r7c6 r6c5} - n66{r8c5 .} ==> r7c6 ≠ 26
whip[2]: n65{r7c6 r6c5} - n66{r8c5 .} ==> r7c6 ≠ 28
whip[2]: n65{r7c6 r6c5} - n66{r8c5 .} ==> r7c6 ≠ 29
whip[2]: n65{r7c6 r6c5} - n66{r8c5 .} ==> r7c6 ≠ 30
whip[2]: n65{r7c6 r6c5} - n66{r8c5 .} ==> r7c6 ≠ 31
whip[2]: n65{r7c6 r6c5} - n66{r8c5 .} ==> r7c6 ≠ 32
whip[2]: n65{r7c6 r6c5} - n66{r8c5 .} ==> r7c6 ≠ 33
whip[3]: n67{r8c6 r9c6} - n66{r7c6 r8c5} - n28{r8c5 .} ==> r8c6 ≠ 29
whip[3]: n65{r6c5 r7c6} - n64{r5c4 r6c6} - n28{r6c6 .} ==> r6c5 ≠ 29
whip[3]: n28{r8c6 r6c5} - n65{r6c5 r7c6} - n64{r5c4 .} ==> r6c6 ≠ 29
whip[3]: n34{r8c5 r6c5} - n65{r6c5 r7c6} - n64{r5c4 .} ==> r6c6 ≠ 33
whip[3]: n32{r9c6 r5c7} - n33{r5c3 r5c6} - n30{r5c6 .} ==> r4c7 ≠ 31
whip[3]: n39{r5c4 r3c3} - n41{r3c3 r1c3} - n7{r1c3 .} ==> r2c4 ≠ 40
whip[3]: n48{r5c4 r3c3} - n46{r3c3 r1c3} - n7{r1c3 .} ==> r2c4 ≠ 47
whip[4]: n67{r8c6 r9c6} - n66{r7c6 r8c5} - n33{r8c5 r9c5} - n31{r9c5 .} ==> r8c6 ≠ 32
whip[4]: n67{r8c6 r9c6} - n66{r7c6 r8c5} - n32{r8c5 r9c5} - n30{r9c5 .} ==> r8c6 ≠ 31
whip[4]: n67{r8c6 r9c6} - n66{r7c6 r8c5} - n31{r8c5 r9c5} - n29{r9c5 .} ==> r8c6 ≠ 30
whip[4]: n61{r3c6 r3c7} - n62{r3c7 r4c7} - n32{r4c7 r4c5} - n30{r4c5 .} ==> r3c6 ≠ 31
whip[4]: n33{r9c6 r5c6} - n31{r5c6 r5c7} - n30{r4c3 r6c6} - n29{r5c4 .} ==> r4c7 ≠ 32
whip[3]: n32{r9c6 r6c6} - r9c3{n33 n29} - n30{r4c3 .} ==> r5c7 ≠ 31
whip[3]: n33{r9c6 r5c6} - n34{r6c3 r6c5} - n31{r6c5 .} ==> r6c6 ≠ 32
whip[3]: n32{r9c6 r5c4} - r9c3{n33 n29} - n30{r4c3 .} ==> r6c5 ≠ 31
whip[3]: n31{r9c6 r5c6} - r9c3{n32 n33} - n32{r4c3 .} ==> r6c6 ≠ 30
whip[3]: n31{r9c6 r5c6} - r9c3{n32 n33} - n32{r4c3 .} ==> r4c7 ≠ 30
whip[3]: n30{r9c6 r5c6} - n63{r5c6 r4c7} - n64{r6c5 .} ==> r5c7 ≠ 29
whip[3]: n29{r9c6 r5c6} - n64{r5c6 r6c5} - n63{r4c7 .} ==> r6c6 ≠ 28
whip[3]: n30{r9c6 r4c4} - r9c3{n31 n33} - n32{r4c3 .} ==> r4c5 ≠ 31
whip[3]: n29{r9c6 r5c6} - n63{r5c6 r4c7} - n64{r6c5 .} ==> r5c7 ≠ 30
whip[2]: r5c7{n63 n32} - n33{r5c3 .} ==> r5c6 ≠ 63
biv-chain[3]: r7c6{n66 n65} - n64{r5c6 r6c6} - n26{r6c6 r8c6} ==> r8c6 ≠ 66
whip[3]: n33{r9c6 r5c6} - n31{r5c6 r6c6} - n64{r6c6 .} ==> r5c7 ≠ 32
whip[2]: n30{r9c6 r6c5} - n32{r6c5 .} ==> r6c6 ≠ 31
biv-chain[4]: n67{r8c6 r9c6} - r7c6{n66 n65} - n64{r5c6 r6c6} - n26{r6c6 r8c6} ==> r8c6 ≠ 28
whip[4]: n34{r8c5 r8c4} - n28{r8c4 r6c5} - n65{r6c5 r7c6} - n66{r7c6 .} ==> r8c5 ≠ 33
whip[4]: n65{r6c5 r7c6} - n66{r7c6 r8c5} - n28{r8c5 r8c4} - n29{r5c4 .} ==> r6c5 ≠ 30
whip[3]: n30{r9c6 r4c5} - r9c3{n31 n33} - n32{r4c3 .} ==> r5c6 ≠ 31
whip[3]: n31{r9c6 r5c4} - r9c3{n32 n29} - n30{r4c3 .} ==> r6c5 ≠ 32
whip[4]: n51{r7c2 r6c2} - r6c1{n51 n32} - n31{r9c6 r7c2} - n33{r7c2 .} ==> r5c3 ≠ 50
whip[2]: r1c1{n43 n41} - r1c2{n41 .} ==> r3c1 ≠ 43
whip[2]: r1c1{n43 n41} - r1c2{n41 .} ==> r3c2 ≠ 43
whip[2]: r1c1{n43 n41} - r1c2{n41 .} ==> r3c3 ≠ 43
whip[2]: r1c1{n42 n43} - r2c1{n43 .} ==> r1c3 ≠ 41
whip[2]: r1c1{n42 n43} - r2c1{n43 .} ==> r3c3 ≠ 41
whip[3]: n8{r2c4 r1c4} - n7{r3c3 r1c3} - n43{r1c3 .} ==> r2c4 ≠ 44
whip[3]: n43{r2c1 r2c2} - r1c3{n43 n7} - n6{r3c2 .} ==> r3c3 ≠ 44
whip[4]: n6{r4c3 r3c3} - n5{r3c1 r3c2} - n46{r3c2 r2c2} - n47{r4c3 .} ==> r2c4 ≠ 7
biv-chain[2]: r1c4{n44 n8} - n7{r3c3 r1c3} ==> r1c3 ≠ 44
whip[2]: r1c3{n43 n7} - n6{r3c2 .} ==> r2c2 ≠ 43
whip[3]: r1c3{n43 n7} - n6{r3c2 r2c2} - n44{r2c2 .} ==> r1c2 ≠ 43
whip[3]: r1c4{n44 n8} - n7{r3c3 r1c3} - n6{r3c2 .} ==> r2c2 ≠ 44
whip[4]: r1c3{n7 n43} - r1c1{n42 n41} - r2c1{n41 n40} - n39{r3c3 .} ==> r3c2 ≠ 6
whip[3]: n6{r2c2 r4c3} - r1c3{n7 n43} - r1c1{n42 .} ==> r2c2 ≠ 41
whip[4]: n6{r2c2 r4c3} - n7{r1c3 r3c3} - n47{r3c3 r3c2} - n48{r4c4 .} ==> r2c2 ≠ 46
whip[3]: n41{r3c1 r3c2} - n46{r3c2 r2c4} - n47{r3c2 .} ==> r3c3 ≠ 40
whip[4]: n40{r3c2 r4c3} - n41{r1c1 r3c2} - n47{r3c2 r3c3} - n48{r4c5 .} ==> r4c4 ≠ 39
whip[4]: n6{r2c2 r4c3} - n5{r3c1 r3c2} - n40{r3c2 r2c1} - n39{r3c3 .} ==> r2c2 ≠ 42
whip[4]: r1c3{n7 n43} - r1c1{n42 n41} - r2c1{n41 n40} - r2c2{n40 .} ==> r4c3 ≠ 6
whip[3]: n43{r1c3 r2c1} - n41{r2c1 r1c2} - n40{r4c3 .} ==> r1c1 ≠ 42
whip[2]: n40{r4c3 r2c1} - n42{r2c1 .} ==> r1c2 ≠ 41
whip[2]: r1c1{n43 n41} - n40{r3c2 .} ==> r2c1 ≠ 43
biv-chain[3]: n42{r2c1 r1c2} - n44{r1c2 r1c4} - r1c1{n43 n41} ==> r2c1 ≠ 41
whip[2]: n5{r3c2 r3c1} - n41{r3c1 .} ==> r3c2 ≠ 40
biv-chain[2]: n40{r4c3 r2c1} - n42{r2c1 r1c2} ==> r3c1 ≠ 41
whip[2]: n37{r5c4 r5c3} - n39{r5c3 .} ==> r5c4 ≠ 38
whip[3]: n40{r4c3 r2c1} - n39{r3c3 r3c2} - n38{r4c4 .} ==> r4c3 ≠ 48
whip[3]: n40{r2c1 r4c3} - n38{r4c3 r4c4} - n47{r4c4 .} ==> r3c3 ≠ 39
whip[3]: n40{r4c3 r2c1} - n39{r5c3 r3c2} - n38{r4c4 .} ==> r4c3 ≠ 47
whip[2]: n47{r4c4 r3c3} - n48{r4c5 .} ==> r4c4 ≠ 30
whip[2]: n47{r4c4 r3c3} - n48{r4c5 .} ==> r4c4 ≠ 31
whip[2]: n47{r4c4 r3c3} - n48{r4c5 .} ==> r4c4 ≠ 32
whip[2]: n30{r9c6 r4c3} - n32{r4c3 .} ==> r3c3 ≠ 31
whip[2]: n47{r4c4 r3c3} - n48{r4c5 .} ==> r4c4 ≠ 38
whip[2]: n47{r3c3 r4c4} - n46{r2c4 .} ==> r3c3 ≠ 1
whip[2]: n47{r3c3 r4c4} - n46{r2c4 .} ==> r3c3 ≠ 7
biv-chain[2]: n39{r5c4 r5c3} - n49{r5c3 r5c4} ==> r5c4 ≠ 29
biv-chain[2]: n39{r5c4 r5c3} - n49{r5c3 r5c4} ==> r5c4 ≠ 31
biv-chain[2]: n34{r8c3 r6c3} - n50{r6c3 r6c2} ==> r6c2 ≠ 33
biv-chain[2]: n50{r6c2 r6c3} - r6c1{n51 n32} ==> r6c2 ≠ 32
whip[2]: r6c3{n34 n50} - r6c1{n51 .} ==> r9c2 ≠ 33
whip[2]: r6c3{n34 n50} - r6c1{n51 .} ==> r9c3 ≠ 33
biv-chain[2]: r6c1{n51 n32} - n33{r9c4 r7c2} ==> r7c2 ≠ 51
biv-chain[2]: n51{r6c2 r6c1} - n50{r6c3 r6c2} ==> r6c2 ≠ 31
whip[2]: n31{r9c4 r7c2} - n33{r7c2 .} ==> r6c1 ≠ 32
Last edited by denis_berthier on Sun Aug 09, 2015 1:33 pm, edited 1 time in total.
denis_berthier
2010 Supporter
 
Posts: 4215
Joined: 19 June 2007
Location: Paris

Remarks

Postby denis_berthier » Sun Aug 09, 2015 11:06 am

My purpose with the above resolution paths was to show that a single resolution technique solves all the puzzles proposed in the old thread.
It is likely that many steps in the above paths could be skipped. But this was not the purpose. A cleaning post-processing could be added for a better appearance of the result.

Edit: I've finally added the non-trivial parts of the paths, without the singles and whips[1] to give a better idea of the solution
denis_berthier
2010 Supporter
 
Posts: 4215
Joined: 19 June 2007
Location: Paris


Return to Other logic puzzles