g-whips and g-braids

Advanced methods and approaches for solving Sudoku puzzles

Re: g-whips and g-braids

Postby denis_berthier » Thu Aug 04, 2022 3:53 am

Hi Mauricio
Nice to see you back and thanks for uploading your solver again.
I've tested it on your website and it's as fast as I remembered.
Can you confirm my (maybe erroneous) souvenir that it is based on dancing links?

Mauricio wrote: I believe it is bugged somewhere, but now I do not have the time or knowledge to correct it; be aware that I never got to prove that the implementation of whips works, since I did not understand why it works, but it seems to work, it was only a modification of the implementation of braids.
The implementation of braids may be bugged, since for some puzzles, its g-braid rating is bigger that its braid rating, and that is something I believe should not be possible.

Sure, the gB rating can't be higher than the B rating.
denis_berthier
2010 Supporter
 
Posts: 3676
Joined: 19 June 2007
Location: Paris

Re: g-whips and g-braids

Postby denis_berthier » Thu Aug 04, 2022 4:10 am

yzfwsf wrote:Hi denis_berthier:
Can you test this puzzle?My need to use large memory mode.Can you test this puzzle? My solver needs to use large memory mode. Means the total nodes are more than 20000.
Code: Select all
.6.7..3.......5..98...3..1..3.8..4....4..1..79..5...2..4...72..2..9.......8.5..6.

Not sure what you want me to test. Here are the whip and g-whip solutions (no other rules activated), starting form the resolution state after Singles and whips[1]:
Code: Select all
   +-------------------+-------------------+-------------------+
   ! 145   6     1259  ! 7     12489 2489  ! 3     458   2458  !
   ! 1347  127   1237  ! 1246  12468 5     ! 678   478   9     !
   ! 8     2579  2579  ! 246   3     2469  ! 567   1     2456  !
   +-------------------+-------------------+-------------------+
   ! 1567  3     12567 ! 8     2679  269   ! 4     59    156   !
   ! 56    258   4     ! 236   269   1     ! 5689  3589  7     !
   ! 9     178   167   ! 5     467   346   ! 168   2     1368  !
   +-------------------+-------------------+-------------------+
   ! 1356  4     13569 ! 136   168   7     ! 2     3589  1358  !
   ! 2     157   13567 ! 9     1468  3468  ! 1578  34578 13458 !
   ! 137   179   8     ! 1234  5     234   ! 179   6     134   !
   +-------------------+-------------------+-------------------+
202 candidates.

Part common to the two resolution paths:
Code: Select all
whip[8]: r3n4{c6 c9} - c4n4{r3 r9} - r9n2{c4 c6} - c6n4{r9 r6} - r6n3{c6 c9} - c9n6{r6 r4} - r4c6{n6 n9} - b2n9{r1c6 .} ==> r1c5≠4
whip[9]: c1n4{r1 r2} - c8n4{r2 r8} - r9n4{c9 c4} - c5n4{r8 r6} - c5n7{r6 r4} - c1n7{r4 r9} - c1n3{r9 r7} - c8n3{r7 r5} - c4n3{r5 .} ==> r1c6≠4
whip[10]: r3n4{c6 c9} - c8n4{r2 r8} - c8n7{r8 r2} - r2n8{c8 c7} - r1c8{n8 n5} - r4c8{n5 n9} - c7n9{r5 r9} - c2n9{r9 r3} - r3n7{c2 c3} - r3n5{c3 .} ==> r2c5≠4
whip[10]: c1n4{r1 r2} - c8n4{r2 r8} - c5n4{r8 r6} - c5n7{r6 r4} - c1n7{r4 r9} - c1n3{r9 r7} - c8n3{r7 r5} - c4n3{r5 r9} - r9n4{c4 c6} - r9n2{c6 .} ==> r1c9≠4
whip[11]: c8n4{r2 r8} - c5n4{r8 r6} - c6n4{r6 r9} - r9n2{c6 c4} - r3c4{n2 n6} - r5c4{n6 n3} - b8n3{r7c4 r8c6} - c6n8{r8 r1} - r1c8{n8 n5} - r3c7{n5 n7} - b9n7{r8c7 .} ==> r3c9≠4
whip[1]: c9n4{r9 .} ==> r8c8≠4
whip[1]: r3n4{c6 .} ==> r2c4≠4
whip[11]: r4c8{n5 n9} - c7n9{r5 r9} - r7n9{c8 c3} - r7n5{c3 c1} - b7n6{r7c1 r8c3} - b7n3{r8c3 r9c1} - r9n7{c1 c2} - r8n7{c3 c7} - r3n7{c7 c3} - r6c3{n7 n1} - c7n1{r6 .} ==> r8c8≠5
whip[12]: c1n3{r9 r2} - r2n4{c1 c8} - c8n7{r2 r8} - c8n3{r8 r5} - b5n3{r5c4 r6c6} - r8n3{c6 c9} - c9n4{r8 r9} - c4n4{r9 r3} - c6n4{r3 r8} - c6n8{r8 r1} - c8n8{r1 r7} - r7n9{c8 .} ==> r7c3≠3


1) Whip only solution:
Code: Select all
whip[15]: c8n7{r8 r2} - c1n7{r2 r4} - r6n7{c3 c5} - r6n4{c5 c6} - b2n4{r3c6 r3c4} - b8n4{r9c4 r8c5} - r8n6{c5 c6} - c6n3{r8 r9} - b7n3{r9c1 r7c1} - c1n6{r7 r5} - c3n6{r4 r7} - r7n9{c3 c8} - r4c8{n9 n5} - r5n5{c8 c2} - b7n5{r8c2 .} ==> r8c3≠7
whip[15]: r6n3{c9 c6} - r8n3{c6 c3} - c1n3{r9 r2} - r2n4{c1 c8} - c8n7{r2 r8} - c8n3{r8 r5} - c4n3{r5 r9} - r9n2{c4 c6} - r9n4{c6 c9} - c4n4{r9 r3} - c6n4{r3 r8} - c6n8{r8 r1} - c8n8{r1 r7} - r8n8{c9 c5} - r8n6{c5 .} ==> r7c9≠3
whip[16]: b9n9{r9c7 r7c8} - b7n9{r7c3 r9c2} - b7n7{r9c2 r8c2} - r3n7{c2 c3} - r6n7{c3 c5} - r6n4{c5 c6} - b5n3{r6c6 r5c4} - r7n3{c4 c1} - r9c1{n3 n1} - r2c1{n1 n4} - r1c1{n4 n5} - r3c2{n5 n2} - r5n2{c2 c5} - r2n2{c5 c4} - r9c4{n2 n4} - r3n4{c4 .} ==> r9c7≠7
whip[1]: r9n7{c2 .} ==> r8c2≠7
whip[14]: r1n9{c6 c3} - r7n9{c3 c8} - r4n9{c8 c5} - r5n9{c5 c7} - r9n9{c7 c2} - b7n7{r9c2 r9c1} - r4n7{c1 c3} - b4n2{r4c3 r5c2} - r5n8{c2 c8} - c8n3{r5 r8} - r8n7{c8 c7} - c7n5{r8 r3} - c2n5{r3 r8} - c3n5{r7 .} ==> r3c6≠9
whip[1]: r3n9{c3 .} ==> r1c3≠9
whip[6]: r1n1{c3 c5} - r1n9{c5 c6} - c6n8{r1 r8} - r7c5{n8 n6} - b7n6{r7c1 r8c3} - c3n3{r8 .} ==> r2c3≠1
whip[10]: c2n9{r3 r9} - c7n9{r9 r5} - c8n9{r5 r7} - c3n9{r7 r3} - r3n7{c3 c7} - r8n7{c7 c8} - c8n3{r8 r5} - r5n8{c8 c2} - c2n5{r5 r8} - c7n5{r8 .} ==> r3c2≠2
whip[11]: r1n1{c3 c5} - r1n9{c5 c6} - c6n8{r1 r8} - r7c5{n8 n6} - b7n6{r7c1 r8c3} - r8c5{n6 n4} - r6n4{c5 c6} - r6n3{c6 c9} - r8n3{c9 c8} - c8n7{r8 r2} - r2n4{c8 .} ==> r2c1≠1
whip[11]: c2n2{r2 r5} - c5n2{r5 r4} - c5n7{r4 r6} - r6n4{c5 c6} - r3c6{n4 n6} - r4c6{n6 n9} - r5c5{n9 n6} - b8n6{r7c5 r7c4} - c1n6{r7 r4} - c9n6{r4 r6} - r6n3{c9 .} ==> r2c4≠2
whip[5]: r9n2{c4 c6} - r9n4{c6 c9} - c4n4{r9 r3} - r3c6{n4 n6} - r2c4{n6 .} ==> r9c4≠1
whip[7]: r1n1{c3 c5} - r1n9{c5 c6} - b2n8{r1c6 r2c5} - r7c5{n8 n6} - b7n6{r7c1 r8c3} - c3n3{r8 r2} - r2n2{c3 .} ==> r2c2≠1
whip[1]: r2n1{c5 .} ==> r1c5≠1
whip[7]: b8n1{r7c5 r8c5} - r8c2{n1 n5} - b9n5{r8c7 r7c8} - r7n8{c8 c5} - b2n8{r1c5 r1c6} - c6n9{r1 r4} - r4c8{n9 .} ==> r7c9≠1
whip[7]: c4n4{r9 r3} - c4n2{r3 r5} - c2n2{r5 r2} - c5n2{r2 r1} - r3c6{n2 n6} - r4c6{n6 n9} - r1n9{c6 .} ==> r9c4≠3
whip[4]: b9n4{r8c9 r9c9} - r9c4{n4 n2} - r9c6{n2 n3} - r6n3{c6 .} ==> r8c9≠3
whip[7]: c6n8{r8 r1} - c9n8{r1 r6} - r6n3{c9 c6} - r8n3{c6 c3} - r2n3{c3 c1} - r2n4{c1 c8} - c8n7{r2 .} ==> r8c8≠8
whip[8]: c6n8{r8 r1} - c9n8{r1 r6} - r6n3{c9 c6} - r5n3{c4 c8} - c8n8{r5 r2} - r2n4{c8 c1} - r2n3{c1 c3} - r8n3{c3 .} ==> r8c7≠8
whip[6]: b8n1{r7c5 r8c5} - r8c2{n1 n5} - r8c7{n5 n7} - r8c8{n7 n3} - r5n3{c8 c4} - r7n3{c4 .} ==> r7c1≠1
whip[8]: r2c2{n2 n7} - r2c3{n7 n3} - r2n2{c3 c5} - r4n2{c5 c6} - c6n9{r4 r1} - c6n8{r1 r8} - r8n3{c6 c8} - c8n7{r8 .} ==> r3c3≠2
whip[5]: b4n2{r4c3 r5c2} - r2c2{n2 n7} - r3c3{n7 n9} - r7n9{c3 c8} - r4c8{n9 .} ==> r4c3≠5
whip[8]: r2c2{n2 n7} - r2c3{n7 n3} - b1n2{r2c3 r1c3} - r4n2{c3 c6} - c6n9{r4 r1} - c6n8{r1 r8} - r8n3{c6 c8} - c8n7{r8 .} ==> r2c5≠2
whip[1]: r2n2{c3 .} ==> r1c3≠2
whip[4]: r1n1{c3 c1} - c1n4{r1 r2} - r2n3{c1 c3} - c3n2{r2 .} ==> r4c3≠1
whip[7]: r4n1{c9 c1} - r1n1{c1 c3} - b7n1{r7c3 r9c2} - r8c2{n1 n5} - c3n5{r7 r3} - c7n5{r3 r5} - c1n5{r5 .} ==> r8c9≠1
whip[8]: r4n5{c9 c1} - r5c1{n5 n6} - r7c1{n6 n3} - r2n3{c1 c3} - c3n2{r2 r4} - r5c2{n2 n8} - r5c7{n8 n9} - r4c8{n9 .} ==> r5c8≠5
whip[8]: r7n9{c3 c8} - r9c7{n9 n1} - c2n1{r9 r6} - c2n8{r6 r5} - r5c8{n8 n3} - r8c8{n3 n7} - r8c7{n7 n5} - r8c2{n5 .} ==> r7c3≠1
whip[1]: r7n1{c5 .} ==> r8c5≠1
whip[9]: c2n1{r9 r6} - c7n1{r6 r9} - b9n9{r9c7 r7c8} - b7n9{r7c3 r9c2} - r9n7{c2 c1} - b7n3{r9c1 r7c1} - c4n3{r7 r5} - r5c8{n3 n8} - c2n8{r5 .} ==> r8c3≠1
whip[8]: r5c1{n6 n5} - r7c1{n5 n3} - c4n3{r7 r5} - c8n3{r5 r8} - r8n7{c8 c7} - c7n5{r8 r3} - c2n5{r3 r8} - r8n1{c2 .} ==> r4c1≠6
whip[8]: c5n4{r6 r8} - b9n4{r8c9 r9c9} - c9n3{r9 r6} - c9n1{r6 r4} - r6c7{n1 n8} - c2n8{r6 r5} - b4n2{r5c2 r4c3} - r4n6{c3 .} ==> r6c5≠6
whip[9]: r5c1{n5 n6} - r7c1{n6 n3} - c4n3{r7 r5} - c8n3{r5 r8} - r8n7{c8 c7} - r8n1{c7 c2} - c1n1{r9 r1} - r1c3{n1 n5} - b7n5{r7c3 .} ==> r4c1≠5
whip[1]: r4n5{c9 .} ==> r5c7≠5
whip[4]: r8c2{n1 n5} - c7n5{r8 r3} - c3n5{r3 r1} - r1n1{c3 .} ==> r9c1≠1
whip[1]: b7n1{r9c2 .} ==> r6c2≠1
whip[4]: c9n3{r6 r9} - r9c1{n3 n7} - r4c1{n7 n1} - c9n1{r4 .} ==> r6c9≠8
whip[4]: c9n3{r6 r9} - r9c1{n3 n7} - r4c1{n7 n1} - c9n1{r4 .} ==> r6c9≠6
whip[4]: b7n7{r9c1 r9c2} - r9n9{c2 c7} - r9n1{c7 c9} - r4n1{c9 .} ==> r4c1≠7
singles ==> r4c1=1, r1c3=1
whip[2]: c9n1{r9 r6} - c9n3{r6 .} ==> r9c9≠4
singles ==> r8c9=4, r6c5=4, r4c5=7
whip[1]: r8n8{c6 .} ==> r7c5≠8
whip[2]: b8n4{r9c6 r9c4} - r9n2{c4 .} ==> r9c6≠3
whip[2]: b8n3{r8c6 r7c4} - r5n3{c4 .} ==> r8c8≠3
naked-single ==> r8c8=7
whip[2]: c8n3{r7 r5} - c4n3{r5 .} ==> r7c1≠3
whip[2]: c1n3{r2 r9} - c1n7{r9 .} ==> r2c1≠4
singles ==> r1c1=4, r2c8=4
whip[1]: r1n5{c9 .} ==> r3c7≠5, r3c9≠5
singles ==> r8c7=5, r7c9=8, r8c2=1
whip[2]: r3n5{c2 c3} - r3n9{c3 .} ==> r3c2≠7
whip[2]: r3n5{c3 c2} - r3n9{c2 .} ==> r3c3≠7
hidden-single-in-a-row ==> r3c7=7
whip[2]: c3n5{r7 r3} - c3n9{r3 .} ==> r7c3≠6
whip[2]: c5n9{r1 r5} - c5n2{r5 .} ==> r1c5≠8
whip[2]: c5n9{r5 r1} - c5n2{r1 .} ==> r5c5≠6
whip[3]: r4c8{n5 n9} - c6n9{r4 r1} - r1n8{c6 .} ==> r1c8≠5
stte


2) Solution with only whips and g-whips:
Code: Select all
g-whip[12]: r6n3{c9 c6} - c4n3{r5 r9} - c1n3{r9 r2} - r2n4{c1 c8} - c8n7{r2 r8} - r8n3{c8 c3} - b7n6{r8c3 r7c123} - r7c4{n6 n1} - r7c5{n1 n8} - c6n8{r8 r1} - c8n8{r1 r5} - r5n3{c8 .} ==> r7c9≠3
whip[15]: c8n7{r8 r2} - c1n7{r2 r4} - r6n7{c3 c5} - r6n4{c5 c6} - b2n4{r3c6 r3c4} - b8n4{r9c4 r8c5} - r8n6{c5 c6} - c6n3{r8 r9} - b7n3{r9c1 r7c1} - c1n6{r7 r5} - c3n6{r4 r7} - r7n9{c3 c8} - r4c8{n9 n5} - r5n5{c8 c2} - b7n5{r8c2 .} ==> r8c3≠7
whip[16]: b9n9{r9c7 r7c8} - b7n9{r7c3 r9c2} - b7n7{r9c2 r8c2} - r3n7{c2 c3} - r6n7{c3 c5} - r6n4{c5 c6} - b5n3{r6c6 r5c4} - r7n3{c4 c1} - r9c1{n3 n1} - r2c1{n1 n4} - r1c1{n4 n5} - r3c2{n5 n2} - r5n2{c2 c5} - r2n2{c5 c4} - r9c4{n2 n4} - r3n4{c4 .} ==> r9c7≠7
whip[1]: r9n7{c2 .} ==> r8c2≠7
whip[14]: r1n9{c6 c3} - r7n9{c3 c8} - r4n9{c8 c5} - r5n9{c5 c7} - r9n9{c7 c2} - b7n7{r9c2 r9c1} - r4n7{c1 c3} - b4n2{r4c3 r5c2} - r5n8{c2 c8} - c8n3{r5 r8} - r8n7{c8 c7} - c7n5{r8 r3} - c2n5{r3 r8} - c3n5{r7 .} ==> r3c6≠9
whip[1]: r3n9{c3 .} ==> r1c3≠9
whip[6]: r1n1{c3 c5} - r1n9{c5 c6} - c6n8{r1 r8} - r7c5{n8 n6} - b7n6{r7c1 r8c3} - c3n3{r8 .} ==> r2c3≠1
whip[10]: c2n9{r3 r9} - c7n9{r9 r5} - c8n9{r5 r7} - c3n9{r7 r3} - r3n7{c3 c7} - r8n7{c7 c8} - c8n3{r8 r5} - r5n8{c8 c2} - c2n5{r5 r8} - c7n5{r8 .} ==> r3c2≠2
g-whip[10]: r9n2{c4 c6} - b8n4{r9c6 r8c456} - c4n4{r9 r3} - r3c6{n4 n6} - r4c6{n6 n9} - r1n9{c6 c5} - b2n2{r1c5 r2c456} - c2n2{r2 r5} - r5c4{n2 n6} - r5c5{n6 .} ==> r9c4≠3
whip[10]: c8n3{r8 r5} - r6n3{c9 c6} - r6n4{c6 c5} - r8n4{c5 c6} - r9c6{n4 n2} - r3c6{n2 n6} - r4c6{n6 n9} - b6n9{r4c8 r5c7} - r9c7{n9 n1} - r9c4{n1 .} ==> r8c9≠3
whip[7]: c6n8{r8 r1} - c9n8{r1 r6} - r6n3{c9 c6} - r8n3{c6 c3} - r2n3{c3 c1} - r2n4{c1 c8} - c8n7{r2 .} ==> r8c8≠8
whip[8]: c6n8{r8 r1} - c9n8{r1 r6} - r6n3{c9 c6} - r5n3{c4 c8} - c8n8{r5 r2} - r2n4{c8 c1} - r2n3{c1 c3} - r8n3{c3 .} ==> r8c7≠8
whip[8]: r1n1{c3 c5} - r1n9{c5 c6} - c6n8{r1 r8} - r7c5{n8 n6} - b7n6{r7c1 r8c3} - r8n3{c3 c8} - c8n7{r8 r2} - r2n4{c8 .} ==> r2c1≠1
whip[9]: r8c2{n1 n5} - r8c7{n5 n7} - c7n1{r8 r6} - r9c7{n1 n9} - c2n9{r9 r3} - r3n7{c2 c3} - r6c3{n7 n6} - r8c3{n6 n3} - r8c8{n3 .} ==> r8c9≠1
whip[7]: r1n9{c5 c6} - c6n8{r1 r8} - r7c5{n8 n6} - r8c5{n6 n4} - r8c9{n4 n5} - r8c2{n5 n1} - r2n1{c2 .} ==> r1c5≠1
whip[1]: b2n1{r2c5 .} ==> r2c2≠1
whip[8]: c2n2{r2 r5} - c5n2{r5 r4} - c5n7{r4 r6} - c5n4{r6 r8} - r9c4{n4 n1} - r9c7{n1 n9} - r9c2{n9 n7} - r2c2{n7 .} ==> r2c4≠2
whip[5]: r9n2{c4 c6} - r9n4{c6 c9} - c4n4{r9 r3} - r3c6{n4 n6} - r2c4{n6 .} ==> r9c4≠1
whip[6]: b8n1{r7c5 r8c5} - r8c2{n1 n5} - r8c7{n5 n7} - r8c8{n7 n3} - r5n3{c8 c4} - r7n3{c4 .} ==> r7c1≠1
whip[7]: b8n1{r7c5 r8c5} - r8c2{n1 n5} - b9n5{r8c7 r7c8} - r7n8{c8 c5} - b2n8{r1c5 r1c6} - c6n9{r1 r4} - r4c8{n9 .} ==> r7c9≠1
whip[8]: r2c2{n2 n7} - r2c3{n7 n3} - r2n2{c3 c5} - r4n2{c5 c6} - c6n9{r4 r1} - c6n8{r1 r8} - r8n3{c6 c8} - c8n7{r8 .} ==> r3c3≠2
whip[5]: b4n2{r4c3 r5c2} - r2c2{n2 n7} - r3c3{n7 n9} - r7n9{c3 c8} - r4c8{n9 .} ==> r4c3≠5
whip[8]: r2c2{n2 n7} - r2c3{n7 n3} - b1n2{r2c3 r1c3} - r4n2{c3 c6} - c6n9{r4 r1} - c6n8{r1 r8} - r8n3{c6 c8} - c8n7{r8 .} ==> r2c5≠2
whip[1]: r2n2{c3 .} ==> r1c3≠2
whip[4]: b1n1{r1c3 r1c1} - c1n4{r1 r2} - r2n3{c1 c3} - c3n2{r2 .} ==> r4c3≠1
whip[8]: r4n5{c9 c1} - r5c1{n5 n6} - r7c1{n6 n3} - r2n3{c1 c3} - c3n2{r2 r4} - r5c2{n2 n8} - r5c7{n8 n9} - r4c8{n9 .} ==> r5c8≠5
whip[8]: r7n9{c3 c8} - r9c7{n9 n1} - c2n1{r9 r6} - c2n8{r6 r5} - r5c8{n8 n3} - r8c8{n3 n7} - r8c7{n7 n5} - r8c2{n5 .} ==> r7c3≠1
whip[1]: r7n1{c5 .} ==> r8c5≠1
g-whip[8]: c2n1{r9 r6} - c7n1{r6 r9} - b9n9{r9c7 r7c8} - b9n8{r7c8 r789c9} - r6n8{c9 c7} - r5c8{n8 n3} - c4n3{r5 r7} - r8n3{c6 .} ==> r8c3≠1
whip[8]: r5c1{n6 n5} - r7c1{n5 n3} - c4n3{r7 r5} - c8n3{r5 r8} - r8n7{c8 c7} - c7n5{r8 r3} - c2n5{r3 r8} - r8n1{c2 .} ==> r4c1≠6
whip[8]: c5n4{r6 r8} - b9n4{r8c9 r9c9} - c9n3{r9 r6} - c9n1{r6 r4} - r6c7{n1 n8} - c2n8{r6 r5} - b4n2{r5c2 r4c3} - r4n6{c3 .} ==> r6c5≠6
whip[9]: r5c1{n5 n6} - r7c1{n6 n3} - c4n3{r7 r5} - c8n3{r5 r8} - r8n7{c8 c7} - r8n1{c7 c2} - c1n1{r9 r1} - r1c3{n1 n5} - b7n5{r7c3 .} ==> r4c1≠5
whip[1]: r4n5{c9 .} ==> r5c7≠5
whip[4]: r8c2{n1 n5} - c7n5{r8 r3} - c3n5{r3 r1} - r1n1{c3 .} ==> r9c1≠1
whip[1]: b7n1{r9c2 .} ==> r6c2≠1
whip[4]: c9n3{r6 r9} - r9c1{n3 n7} - r4c1{n7 n1} - c9n1{r4 .} ==> r6c9≠8
whip[4]: c9n3{r6 r9} - r9c1{n3 n7} - r4c1{n7 n1} - c9n1{r4 .} ==> r6c9≠6
whip[4]: b7n7{r9c1 r9c2} - r9n9{c2 c7} - r9n1{c7 c9} - r4n1{c9 .} ==> r4c1≠7
singles ==> r4c1=1, r1c3=1
whip[2]: c9n1{r9 r6} - c9n3{r6 .} ==> r9c9≠4
singles ==> r8c9=4, r6c5=4, r4c5=7
whip[1]: r8n8{c6 .} ==> r7c5≠8
whip[2]: b8n4{r9c6 r9c4} - r9n2{c4 .} ==> r9c6≠3
whip[2]: b8n3{r8c6 r7c4} - r5n3{c4 .} ==> r8c8≠3
naked-single ==> r8c8=7
whip[2]: c8n3{r7 r5} - c4n3{r5 .} ==> r7c1≠3
whip[2]: c1n3{r2 r9} - c1n7{r9 .} ==> r2c1≠4
singles ==> r1c1=4, r2c8=4
whip[1]: r1n5{c9 .} ==> r3c7≠5, r3c9≠5
singles ==> r8c7=5, r7c9=8, r8c2=1
whip[2]: r3n5{c2 c3} - r3n9{c3 .} ==> r3c2≠7
whip[2]: r3n5{c3 c2} - r3n9{c2 .} ==> r3c3≠7
hidden-single-in-a-row ==> r3c7=7
whip[2]: c3n5{r7 r3} - c3n9{r3 .} ==> r7c3≠6
whip[2]: c5n9{r1 r5} - c5n2{r5 .} ==> r1c5≠8
whip[2]: c5n9{r5 r1} - c5n2{r1 .} ==> r5c5≠6
whip[3]: r4c8{n5 n9} - c6n9{r4 r1} - r1n8{c6 .} ==> r1c8≠5
stte


As you can see, 3 g-whips are found, but they do not modify the rating: gW = W.

As for the resolution times and memory (using the simplest-first strategy), the solution with g-whips is 15 times slower and it takes 6.7 times more memory than with whips only.
I can't say anything about your nodes count, as CSP-Rules is not based on nodes.
denis_berthier
2010 Supporter
 
Posts: 3676
Joined: 19 June 2007
Location: Paris

Re: g-whips and g-braids

Postby yzfwsf » Thu Aug 04, 2022 4:22 am

MY solver output:
Techniques is given priority, while the shortest chain within the techniques is given priority.
Code: Select all
Whip[8]: Supposing 4r1c5 would causes 9 to disappear in Box 2 => r1c5<>4
4r1c5 - 4r3(c6=c9) - 4c4(r3=r9) - 2r9(c4=c6) - 4c6(r9=r6) - 3r6(c6=c9) - 6c9(r6=r4) - r4c6(6=9) - 9b2(p9=.)
Whip[9]: Supposing 4r1c6 would causes 4 to disappear in Column 8 => r1c6<>4
4r1c6 - 4c1(r1=r2) - 4c4(r2=r9) - 4c5(r8=r6) - 7c5(r6=r4) - 7c1(r4=r9) - 3c1(r9=r7) - 3c4(r7=r5) - 3c8(r5=r8) - 4c8(r8=.)
Whip[10]: Supposing 4r1c9 would causes 4 to disappear in Box 8 => r1c9<>4
4r1c9 - 4c1(r1=r2) - 4c8(r2=r8) - 4c5(r8=r6) - 7c5(r6=r4) - 7c1(r4=r9) - 3c1(r9=r7) - 3c8(r7=r5) - 3c4(r5=r9) - 2r9(c4=c6) - 4b8(p9=.)
Whip[10]: Supposing 4r2c5 will result in all candidates in cell r1c6 being impossible => r2c5<>4
4r2c5 - 4r3(c6=c9) - 4c4(r3=r9) - 2r9(c4=c6) - 4c6(r9=r6) - 3r6(c6=c9) - 6c9(r6=r4) - r4c6(6=9) - r4c8(9=5) - r1c8(5=8) - r1c6(8=.)
Whip[11]: Supposing 4r2c4 would causes 8 to disappear in Column 6 => r2c4<>4
4r2c4 - 4r3(c6=c9) - 4r9(c9=c6) - 2r9(c6=c4) - r3c4(2=6) - r5c4(6=3) - 3c6(r6=r8) - 4r8(c6=c8) - 7c8(r8=r2) - r3c7(7=5) - r1c8(5=8) - 8c6(r1=.)
Locked Candidates 1 (Pointing): 4 in b2 => r3c9<>4
Locked Candidates 1 (Pointing): 4 in b3 => r8c8<>4
Whip[11]: Supposing 5r8c8 would causes 1 to disappear in Column 7 => r8c8<>5
5r8c8 - r4c8(5=9) - 9r7(c8=c3) - 9c2(r9=r3) - 5c2(r3=r5) - r5c1(5=6) - r5c7(6=8) - 9c7(r5=r9) - 7b9(p7=p4) - 7r3(c7=c3) - r6c3(7=1) - 1c7(r6=.)
Whip[12]: Supposing 3r7c3 would causes 9 to disappear in Row 7 => r7c3<>3
3r7c3 - 3r2(c3=c1) - 4r2(c1=c8) - 7c8(r2=r8) - 3c8(r8=r5) - 3r6(c9=c6) - 3r8(c6=c9) - 4c9(r8=r9) - 4c4(r9=r3) - 4c6(r3=r8) - 8c6(r8=r1) - 8c8(r1=r7) - 9r7(c8=.)
Whip[15]: Supposing 3r7c9 would causes 8 to disappear in Column 8 => r7c9<>3
3r7c9 - 3r6(c9=c6) - 3r8(c6=c3) - 3r2(c3=c1) - 4r2(c1=c8) - 7c8(r2=r8) - 3c8(r8=r5) - 3c4(r5=r9) - 2r9(c4=c6) - 4r9(c6=c9) - 4c4(r9=r3) - 4c6(r3=r8) - 6r8(c6=c5) - 8b8(p5=p2) - 8r2(c5=c7) - 8c8(r1=.)
Whip[15]: Supposing 7r8c3 will result in all candidates in cell r4c8 being impossible => r8c3<>7
7r8c3 - 7c8(r8=r2) - 7c1(r2=r4) - 7r9(c1=c7) - 9b9(p7=p2) - 9b7(p3=p8) - 7c2(r9=r3) - 7r6(c2=c5) - 4r6(c5=c6) - 3b5(p9=p4) - 3r7(c4=c1) - 6c1(r7=r5) - 6c3(r6=r7) - 5b7(p3=p5) - 5b4(p5=p3) - r4c8(5=.)
Whip[16]: Supposing 7r9c7 would causes 4 to disappear in Box 2 => r9c7<>7
7r9c7 - 9b9(p7=p2) - 9b7(p3=p8) - 7b7(p8=p5) - 7r3(c2=c3) - 7r6(c3=c5) - 4r6(c5=c6) - 3b5(p9=p4) - 3r7(c4=c1) - r9c1(3=1) - r2c1(1=4) - r1c1(4=5) - r3c2(5=2) - 2r5(c2=c5) - 2r2(c5=c4) - r9c4(2=4) - 4b2(p7=.)
Locked Candidates 1 (Pointing): 7 in b9 => r8c2<>7
Whip[14]: Supposing 9r1c3 would causes 5 to disappear in Box 1 => r1c3<>9
9r1c3 - 9r7(c3=c8) - 9c7(r9=r5) - 9c5(r5=r4) - 9c6(r4=r3) - 9c2(r3=r9) - 7r9(c2=c1) - 7r4(c1=c3) - 2b4(p3=p5) - 8r5(c2=c8) - 3c8(r5=r8) - 7r8(c8=c7) - 5c7(r8=r3) - 5r5(c7=c1) - 5b1(p1=.)
Locked Candidates 2 (Claiming): 9 in r1 => r3c6<>9
Whip[6]: Supposing 1r2c3 would causes 3 to disappear in Column 3 => r2c3<>1
1r2c3 - 1r1(c1=c5) - 9r1(c5=c6) - 8c6(r1=r8) - r7c5(8=6) - 6r8(c5=c3) - 3c3(r8=.)
Whip[10]: Supposing 2r3c2 would causes 5 to disappear in Column 7 => r3c2<>2
2r3c2 - 9c2(r3=r9) - 9c7(r9=r5) - 9c8(r4=r7) - 9c3(r7=r3) - 7r3(c3=c7) - 7r8(c7=c8) - 3c8(r8=r5) - 8r5(c8=c2) - 5c2(r5=r8) - 5c7(r8=.)
Whip[11]: Supposing 2r2c4 would causes 3 to disappear in Row 6 => r2c4<>2
2r2c4 - 2c2(r2=r5) - 2c5(r5=r4) - 7c5(r4=r6) - 4r6(c5=c6) - r3c6(4=6) - r4c6(6=9) - r5c5(9=6) - 6r8(c5=c3) - 6c1(r7=r4) - 6c9(r4=r6) - 3r6(c9=.)
Whip[5]: Supposing 1r9c4 will result in all candidates in cell r2c4 being impossible => r9c4<>1
1r9c4 - 2r9(c4=c6) - 4r9(c6=c9) - 4c4(r9=r3) - r3c6(4=6) - r2c4(6=.)
Whip[7]: Supposing 1r2c2 would causes 2 to disappear in Row 2 => r2c2<>1
1r2c2 - 1r1(c3=c5) - 9r1(c5=c6) - 8b2(p3=p5) - r7c5(8=6) - 6r8(c6=c3) - 3c3(r8=r2) - 2r2(c3=.)
Whip[7]: Supposing 1r7c9 would causes 8 to disappear in Box 9 => r7c9<>1
1r7c9 - 1b8(p2=p5) - r8c2(1=5) - 5r7(c3=c8) - r4c8(5=9) - 9c6(r4=r1) - 8c6(r1=r8) - 8b9(p6=.)
Whip[7]: Supposing 3r9c4 would causes 9 to disappear in Box 2 => r9c4<>3
3r9c4 - 4c4(r9=r3) - 2c4(r3=r5) - 2c2(r5=r2) - 2c5(r2=r1) - r3c6(2=6) - r4c6(6=9) - 9b2(p3=.)
Whip[4]: Supposing 3r8c9 would causes 3 to disappear in Row 6 => r8c9<>3
3r8c9 - 4c9(r8=r9) - r9c4(4=2) - r9c6(2=3) - 3r6(c6=.)
Whip[7]: Supposing 8r8c8 would causes 7 to disappear in Column 8 => r8c8<>8
8r8c8 - 8c6(r8=r1) - 8c9(r1=r6) - 3r6(c9=c6) - 3r8(c6=c3) - 3r2(c3=c1) - 4r2(c1=c8) - 7c8(r2=.)
Whip[8]: Supposing 2r1c3 would causes 7 to disappear in Column 8 => r1c3<>2
2r1c3 - r2c2(2=7) - r2c3(7=3) - 2r2(c3=c5) - 2r4(c5=c6) - 9c6(r4=r1) - 8c6(r1=r8) - 3r8(c6=c8) - 7c8(r8=.)
Whip[8]: Supposing 1r1c5 would causes 1 to disappear in Box 1 => r1c5<>1
1r1c5 - 9r1(c5=c6) - 8c6(r1=r8) - r7c5(8=6) - 6r8(c5=c3) - 3r8(c3=c8) - 7c8(r8=r2) - 4r2(c8=c1) - 1b1(p4=.)
Locked Candidates 2 (Claiming): 1 in r1 => r2c1<>1
Whip[8]: Supposing 2r2c5 would causes 7 to disappear in Column 8 => r2c5<>2
2r2c5 - r2c2(2=7) - r2c3(7=3) - 2b1(p6=p9) - 2r4(c3=c6) - 9c6(r4=r1) - 8c6(r1=r8) - 3r8(c6=c8) - 7c8(r8=.)
Locked Candidates 2 (Claiming): 2 in r2 => r3c3<>2
Whip[4]: Supposing 1r4c3 would causes 2 to disappear in Column 3 => r4c3<>1
1r4c3 - 1r1(c3=c1) - 4c1(r1=r2) - 3r2(c1=c3) - 2c3(r2=.)
Whip[5]: Supposing 5r4c3 would causes 2 to disappear in Column 3 => r4c3<>5
5r4c3 - r4c8(5=9) - 9r7(c8=c3) - r3c3(9=7) - r2c2(7=2) - 2c3(r2=.)
Whip[7]: Supposing 1r8c9 would causes 5 to disappear in Box 4 => r8c9<>1
1r8c9 - 1r4(c9=c1) - 1r1(c1=c3) - 1b7(p3=p8) - r8c2(1=5) - 5c3(r7=r3) - 5c7(r3=r5) - 5b4(p4=.)
Whip[8]: Supposing 1r7c1 would causes 1 to disappear in Box 6 => r7c1<>1
1r7c1 - 1r1(c1=c3) - 1b4(p9=p8) - r8c2(1=5) - 5c3(r7=r3) - 9r3(c3=c2) - 9r9(c2=c7) - 1r9(c7=c9) - 1b6(p3=.)
Whip[8]: Supposing 5r5c8 will result in all candidates in cell r4c8 being impossible => r5c8<>5
5r5c8 - 5r4(c9=c1) - r5c1(5=6) - r7c1(6=3) - 3r2(c1=c3) - 2r2(c3=c2) - r5c2(2=8) - r5c7(8=9) - r4c8(9=.)
Whip[8]: Supposing 8r8c7 would causes 4 to disappear in Row 2 => r8c7<>8
8r8c7 - 8r7(c9=c5) - 8r2(c5=c8) - 8c9(r1=r6) - 3r6(c9=c6) - 3r5(c4=c8) - 3r8(c8=c3) - 3r2(c3=c1) - 4r2(c1=.)
Whip[8]: Supposing 1r7c3 would causes 8 to disappear in Box 4 => r7c3<>1
1r7c3 - 9r7(c3=c8) - r9c7(9=1) - 1c2(r9=r6) - r8c2(1=5) - r8c7(5=7) - r8c8(7=3) - r5c8(3=8) - 8b4(p5=.)
Locked Candidates 2 (Claiming): 1 in r7 => r8c5<>1
Whip[9]: Supposing 5r4c1 would causes 3 to disappear in Column 4 => r4c1<>5
5r4c1 - r5c1(5=6) - r7c1(6=3) - 3r2(c1=c3) - 2r2(c3=c2) - r5c2(2=8) - 5r5(c2=c7) - r4c8(5=9) - r5c8(9=3) - 3c4(r5=.)
Locked Candidates 2 (Claiming): 5 in r4 => r5c7<>5
Whip[4]: Supposing 1r9c1 would causes 1 to disappear in Box 1 => r9c1<>1
1r9c1 - r8c2(1=5) - 5c7(r8=r3) - 5c3(r3=r1) - 1b1(p3=.)
Whip[4]: Supposing 7r4c1 would causes 1 to disappear in Row 4 => r4c1<>7
7r4c1 - 7r9(c1=c2) - 9r9(c2=c7) - 1r9(c7=c9) - 1r4(c9=.)
Whip[5]: Supposing 8r6c9 would causes 3 to disappear in Box 6 => r6c9<>8
8r6c9 - 8b9(p6=p2) - r7c9(8=5) - 5r4(c9=c8) - 9c8(r4=r5) - 3b6(p5=.)
Whip[6]: Supposing 8r2c8 would causes 7 to disappear in Column 8 => r2c8<>8
8r2c8 - 4r2(c8=c1) - 7c1(r2=r9) - 3c1(r9=r7) - 3c4(r7=r5) - 3c8(r5=r8) - 7c8(r8=.)
Whip[3]: Supposing 7r2c7 would causes 6 to disappear in Row 2 => r2c7<>7
7r2c7 - 8r2(c7=c5) - 1r2(c5=c4) - 6r2(c4=.)
Whip[2]: Supposing 6r3c7 would causes 7 to disappear in Column 7 => r3c7<>6
6r3c7 - 5c7(r3=r8) - 7c7(r8=.)
Whip[2]: Supposing 1r8c7 would causes 7 to disappear in Column 7 => r8c7<>1
1r8c7 - 5c7(r8=r3) - 7c7(r3=.)
Locked Candidates 2 (Claiming): 1 in r8 => r9c2<>1
Whip[3]: Supposing 7r3c3 would causes 7 to disappear in Column 1 => r3c3<>7
7r3c3 - 9r3(c3=c2) - r9c2(9=7) - 7c1(r9=.)
Whip[3]: Supposing 5r3c9 will result in all candidates in cell r3c7 being impossible => r3c9<>5
5r3c9 - r3c3(5=9) - r3c2(9=7) - r3c7(7=.)
Whip[3]: Supposing 5r7c8 would causes 5 to disappear in Column 7 => r7c8<>5
5r7c8 - 9r7(c8=c3) - r3c3(9=5) - 5c7(r3=.)
Whip[4]: Supposing 8r7c8 would causes 9 to disappear in Row 7 => r7c8<>8
8r7c8 - r7c9(8=5) - 5c7(r8=r3) - r3c3(5=9) - 9r7(c3=.)
Locked Candidates 1 (Pointing): 8 in b9 => r1c9<>8
Whip[4]: Supposing 1r6c2 would causes 1 to disappear in Column 1 => r6c2<>1
1r6c2 - 8r6(c2=c7) - 8c8(r5=r1) - 4r1(c8=c1) - 1c1(r1=.)
Hidden Single: 1 in c2 => r8c2=1
Whip[4]: Supposing 1r1c1 will result in all candidates in cell r4c1 being impossible => r1c1<>1
1r1c1 - r1c3(1=5) - 5c2(r3=r5) - r5c1(5=6) - r4c1(6=.)
Hidden Single: 1 in r1 => r1c3=1
Hidden Single: 1 in c1 => r4c1=1
Whip[2]: Supposing 6r6c9 would causes 3 to disappear in Column 9 => r6c9<>6
6r6c9 - 1c9(r6=r9) - 3c9(r9=.)
Whip[2]: Supposing 4r9c9 would causes 3 to disappear in Column 9 => r9c9<>4
4r9c9 - 1c9(r9=r6) - 3c9(r6=.)
Hidden Single: 4 in c9 => r8c9=4
Hidden Single: 4 in c5 => r6c5=4
Hidden Single: 7 in c5 => r4c5=7
Hidden Single: 8 in c9 => r7c9=8
Hidden Single: 5 in b9 => r8c7=5
Hidden Single: 7 in r8 => r8c8=7
Hidden Single: 7 in c7 => r3c7=7
Naked Single: r2c8=4
Hidden Single: 4 in r1 => r1c1=4
Whip[2]: Supposing 8r1c5 would causes 9 to disappear in Column 5 => r1c5<>8
8r1c5 - 2c5(r1=r5) - 9c5(r5=.)
Whip[2]: Supposing 6r5c5 would causes 9 to disappear in Column 5 => r5c5<>6
6r5c5 - 2c5(r5=r1) - 9c5(r1=.)
Whip[2]: Supposing 3r7c1 will result in all candidates in cell r9c1 being impossible => r7c1<>3
3r7c1 - r2c1(3=7) - r9c1(7=.)
Whip[2]: Supposing 6r7c3 would causes 9 to disappear in Column 3 => r7c3<>6
6r7c3 - 5c3(r7=r3) - 9c3(r3=.)
Whip[2]: Supposing 3r9c6 would causes 4 to disappear in Box 8 => r9c6<>3
3r9c6 - 2r9(c6=c4) - 4b8(p7=.)
Whip[3]: Supposing 8r1c6 would causes 9 to disappear in Column 6 => r1c6<>8
stte
118 Steps!
Time elapsed: 1763.8 ms

Shortest chain first.
Code: Select all
Whip[8]: Supposing 4r1c5 would causes 9 to disappear in Box 2 => r1c5<>4
4r1c5 - 4r3(c6=c9) - 4c4(r3=r9) - 2r9(c4=c6) - 4c6(r9=r6) - 3r6(c6=c9) - 6c9(r6=r4) - r4c6(6=9) - 9b2(p9=.)
Whip[9]: Supposing 4r1c6 would causes 4 to disappear in Column 8 => r1c6<>4
4r1c6 - 4c1(r1=r2) - 4c4(r2=r9) - 4c5(r8=r6) - 7c5(r6=r4) - 7c1(r4=r9) - 3c1(r9=r7) - 3c4(r7=r5) - 3c8(r5=r8) - 4c8(r8=.)
Whip[10]: Supposing 4r1c9 would causes 4 to disappear in Box 8 => r1c9<>4
4r1c9 - 4c1(r1=r2) - 4c8(r2=r8) - 4c5(r8=r6) - 7c5(r6=r4) - 7c1(r4=r9) - 3c1(r9=r7) - 3c8(r7=r5) - 3c4(r5=r9) - 2r9(c4=c6) - 4b8(p9=.)
Whip[10]: Supposing 4r2c5 will result in all candidates in cell r1c6 being impossible => r2c5<>4
4r2c5 - 4r3(c6=c9) - 4c4(r3=r9) - 2r9(c4=c6) - 4c6(r9=r6) - 3r6(c6=c9) - 6c9(r6=r4) - r4c6(6=9) - r4c8(9=5) - r1c8(5=8) - r1c6(8=.)
Whip[11]: Supposing 4r2c4 would causes 8 to disappear in Column 6 => r2c4<>4
4r2c4 - 4r3(c6=c9) - 4r9(c9=c6) - 2r9(c6=c4) - r3c4(2=6) - r5c4(6=3) - 3c6(r6=r8) - 4r8(c6=c8) - 7c8(r8=r2) - r3c7(7=5) - r1c8(5=8) - 8c6(r1=.)
Locked Candidates 1 (Pointing): 4 in b2 => r3c9<>4
Locked Candidates 1 (Pointing): 4 in b3 => r8c8<>4
Whip[11]: Supposing 5r8c8 would causes 1 to disappear in Column 7 => r8c8<>5
5r8c8 - r4c8(5=9) - 9r7(c8=c3) - 9c2(r9=r3) - 5c2(r3=r5) - r5c1(5=6) - r5c7(6=8) - 9c7(r5=r9) - 7b9(p7=p4) - 7r3(c7=c3) - r6c3(7=1) - 1c7(r6=.)
Whip[12]: Supposing 3r7c3 would causes 9 to disappear in Row 7 => r7c3<>3
3r7c3 - 3r2(c3=c1) - 4r2(c1=c8) - 7c8(r2=r8) - 3c8(r8=r5) - 3r6(c9=c6) - 3r8(c6=c9) - 4c9(r8=r9) - 4c4(r9=r3) - 4c6(r3=r8) - 8c6(r8=r1) - 8c8(r1=r7) - 9r7(c8=.)
g-Whip[12]: Supposing 3r7c9 would causes 3 to disappear in Box 6 => r7c9<>3
3r7c9 - 3r6(c9=c6) - 3c4(r5=r9) - 3c1(r9=r2) - 4r2(c1=c8) - 7c8(r2=r8) - 3r8(c8=c3) - 6r8(c3=c56) - r7c4(6=1) - r7c5(1=8) - 8r2(c5=c7) - 8c8(r1=r5) - 3b6(p5=.)
Whip[15]: Supposing 7r8c3 will result in all candidates in cell r4c8 being impossible => r8c3<>7
7r8c3 - 7c8(r8=r2) - 7c1(r2=r4) - 7r9(c1=c7) - 9b9(p7=p2) - 9b7(p3=p8) - 7c2(r9=r3) - 7r6(c2=c5) - 4r6(c5=c6) - 3b5(p9=p4) - 3r7(c4=c1) - 6c1(r7=r5) - 6c3(r6=r7) - 5b7(p3=p5) - 5b4(p5=p3) - r4c8(5=.)
Whip[16]: Supposing 7r9c7 would causes 4 to disappear in Box 2 => r9c7<>7
7r9c7 - 9b9(p7=p2) - 9b7(p3=p8) - 7b7(p8=p5) - 7r3(c2=c3) - 7r6(c3=c5) - 4r6(c5=c6) - 3b5(p9=p4) - 3r7(c4=c1) - r9c1(3=1) - r2c1(1=4) - r1c1(4=5) - r3c2(5=2) - 2r5(c2=c5) - 2r2(c5=c4) - r9c4(2=4) - 4b2(p7=.)
Locked Candidates 1 (Pointing): 7 in b9 => r8c2<>7
Whip[14]: Supposing 9r1c3 would causes 5 to disappear in Box 1 => r1c3<>9
9r1c3 - 9r7(c3=c8) - 9c7(r9=r5) - 9c5(r5=r4) - 9c6(r4=r3) - 9c2(r3=r9) - 7r9(c2=c1) - 7r4(c1=c3) - 2b4(p3=p5) - 8r5(c2=c8) - 3c8(r5=r8) - 7r8(c8=c7) - 5c7(r8=r3) - 5r5(c7=c1) - 5b1(p1=.)
Locked Candidates 2 (Claiming): 9 in r1 => r3c6<>9
Whip[6]: Supposing 1r2c3 would causes 3 to disappear in Column 3 => r2c3<>1
1r2c3 - 1r1(c1=c5) - 9r1(c5=c6) - 8c6(r1=r8) - r7c5(8=6) - 6r8(c5=c3) - 3c3(r8=.)
Whip[10]: Supposing 2r3c2 would causes 5 to disappear in Column 7 => r3c2<>2
2r3c2 - 9c2(r3=r9) - 9c7(r9=r5) - 9c8(r4=r7) - 9c3(r7=r3) - 7r3(c3=c7) - 7r8(c7=c8) - 3c8(r8=r5) - 8r5(c8=c2) - 5c2(r5=r8) - 5c7(r8=.)
g-Whip[10]: Supposing 3r9c4 will result in all candidates in cell r5c5 being impossible => r9c4<>3
3r9c4 - 2r9(c4=c6) - 4r9(c6=c9) - 4c4(r9=r3) - r3c6(4=6) - r4c6(6=9) - 9r1(c6=c5) - 2b2(p2=p45) - 2c2(r2=r5) - r5c4(2=6) - r5c5(6=.)
Whip[10]: Supposing 3r8c9 will result in all candidates in cell r3c6 being impossible => r8c9<>3
3r8c9 - 3c8(r7=r5) - 3r6(c9=c6) - 4r6(c6=c5) - 4r8(c5=c6) - r9c6(4=2) - r9c4(2=1) - r9c7(1=9) - 9r5(c7=c5) - r4c6(9=6) - r3c6(6=.)
Whip[7]: Supposing 8r8c8 would causes 7 to disappear in Column 8 => r8c8<>8
8r8c8 - 8c6(r8=r1) - 8c9(r1=r6) - 3r6(c9=c6) - 3r8(c6=c3) - 3r2(c3=c1) - 4r2(c1=c8) - 7c8(r2=.)
Whip[8]: Supposing 1r2c1 would causes 4 to disappear in Row 2 => r2c1<>1
1r2c1 - 1r1(c3=c5) - 9r1(c5=c6) - 8c6(r1=r8) - r7c5(8=6) - 6r8(c5=c3) - 3r8(c3=c8) - 7c8(r8=r2) - 4r2(c8=.)
Whip[8]: Supposing 8r8c7 would causes 4 to disappear in Row 2 => r8c7<>8
8r8c7 - 8r7(c9=c5) - 8r2(c5=c8) - 8c9(r1=r6) - 3r6(c9=c6) - 3r5(c4=c8) - 3r8(c8=c3) - 3r2(c3=c1) - 4r2(c1=.)
Whip[9]: Supposing 1r8c9 will result in all candidates in cell r8c8 being impossible => r8c9<>1
1r8c9 - r8c2(1=5) - r8c7(5=7) - 1c7(r8=r6) - r9c7(1=9) - 9c2(r9=r3) - 7r3(c2=c3) - r6c3(7=6) - r8c3(6=3) - r8c8(3=.)
Whip[7]: Supposing 1r1c5 would causes 1 to disappear in Box 1 => r1c5<>1
1r1c5 - 9r1(c5=c6) - 8c6(r1=r8) - r7c5(8=6) - r8c5(6=4) - r8c9(4=5) - r8c2(5=1) - 1b1(p5=.)
Locked Candidates 2 (Claiming): 1 in r1 => r2c2<>1
Whip[8]: Supposing 2r2c4 will result in all candidates in cell r2c2 being impossible => r2c4<>2
2r2c4 - 2c2(r2=r5) - 2c5(r5=r4) - 7c5(r4=r6) - 4c5(r6=r8) - r9c4(4=1) - r9c7(1=9) - r9c2(9=7) - r2c2(7=.)
Whip[5]: Supposing 1r9c4 will result in all candidates in cell r2c4 being impossible => r9c4<>1
1r9c4 - 2r9(c4=c6) - 4r9(c6=c9) - 4c4(r9=r3) - r3c6(4=6) - r2c4(6=.)
Whip[6]: Supposing 1r7c1 would causes 3 to disappear in Row 7 => r7c1<>1
1r7c1 - 1b8(p2=p5) - r8c2(1=5) - r8c7(5=7) - r8c8(7=3) - 3r5(c8=c4) - 3r7(c4=.)
Whip[7]: Supposing 1r7c9 would causes 8 to disappear in Box 9 => r7c9<>1
1r7c9 - 1b8(p2=p5) - r8c2(1=5) - 5r7(c3=c8) - r4c8(5=9) - 9c6(r4=r1) - 8c6(r1=r8) - 8b9(p6=.)
Whip[8]: Supposing 2r1c3 would causes 7 to disappear in Column 8 => r1c3<>2
2r1c3 - r2c2(2=7) - r2c3(7=3) - 2r2(c3=c5) - 2r4(c5=c6) - 9c6(r4=r1) - 8c6(r1=r8) - 3r8(c6=c8) - 7c8(r8=.)
Whip[8]: Supposing 2r2c5 would causes 7 to disappear in Column 8 => r2c5<>2
2r2c5 - r2c2(2=7) - r2c3(7=3) - 2b1(p6=p9) - 2r4(c3=c6) - 9c6(r4=r1) - 8c6(r1=r8) - 3r8(c6=c8) - 7c8(r8=.)
Locked Candidates 2 (Claiming): 2 in r2 => r3c3<>2
Whip[4]: Supposing 1r4c3 would causes 2 to disappear in Column 3 => r4c3<>1
1r4c3 - 1r1(c3=c1) - 4c1(r1=r2) - 3r2(c1=c3) - 2c3(r2=.)
Whip[5]: Supposing 5r4c3 would causes 2 to disappear in Column 3 => r4c3<>5
5r4c3 - r4c8(5=9) - 9r7(c8=c3) - r3c3(9=7) - r2c2(7=2) - 2c3(r2=.)
Whip[8]: Supposing 5r5c8 will result in all candidates in cell r4c8 being impossible => r5c8<>5
5r5c8 - 5r4(c9=c1) - r5c1(5=6) - r7c1(6=3) - 3r2(c1=c3) - 2r2(c3=c2) - r5c2(2=8) - r5c7(8=9) - r4c8(9=.)
Whip[8]: Supposing 1r7c3 would causes 8 to disappear in Box 4 => r7c3<>1
1r7c3 - 9r7(c3=c8) - r9c7(9=1) - 1c2(r9=r6) - r8c2(1=5) - r8c7(5=7) - r8c8(7=3) - r5c8(3=8) - 8b4(p5=.)
Locked Candidates 2 (Claiming): 1 in r7 => r8c5<>1
g-Whip[8]: Supposing 1r8c3 would causes 3 to disappear in Row 8 => r8c3<>1
1r8c3 - 1c2(r9=r6) - 1c7(r6=r9) - 9b9(p7=p2) - 8b9(p2=p36) - 8r6(c9=c7) - r5c8(8=3) - 3r6(c9=c6) - 3r8(c6=.)
Whip[8]: Supposing 6r4c1 would causes 5 to disappear in Column 7 => r4c1<>6
6r4c1 - r5c1(6=5) - r7c1(5=3) - 3c4(r7=r5) - 3c8(r5=r8) - 7r8(c8=c7) - 1r8(c7=c2) - 5c2(r8=r3) - 5c7(r3=.)
Whip[8]: Supposing 6r6c5 would causes 6 to disappear in Row 4 => r6c5<>6
6r6c5 - 4c5(r6=r8) - 4r9(c6=c9) - 3c9(r9=r6) - 1c9(r6=r4) - r6c7(1=8) - 8r5(c8=c2) - 2b4(p5=p3) - 6r4(c3=.)
Whip[9]: Supposing 5r4c1 would causes 3 to disappear in Column 4 => r4c1<>5
5r4c1 - r5c1(5=6) - r7c1(6=3) - 3r2(c1=c3) - 2r2(c3=c2) - r5c2(2=8) - 5r5(c2=c7) - r4c8(5=9) - r5c8(9=3) - 3c4(r5=.)
Locked Candidates 2 (Claiming): 5 in r4 => r5c7<>5
Whip[4]: Supposing 1r6c2 would causes 1 to disappear in Column 3 => r6c2<>1
1r6c2 - r8c2(1=5) - 5c7(r8=r3) - 5c3(r3=r1) - 1c3(r1=.)
Locked Candidates 2 (Claiming): 1 in c2 => r9c1<>1
Whip[4]: Supposing 7r4c1 would causes 1 to disappear in Row 4 => r4c1<>7
7r4c1 - 7r9(c1=c2) - 9r9(c2=c7) - 1r9(c7=c9) - 1r4(c9=.)
Naked Single: r4c1=1
Hidden Single: 1 in r1 => r1c3=1
Whip[2]: Supposing 6r6c9 would causes 3 to disappear in Column 9 => r6c9<>6
6r6c9 - 1c9(r6=r9) - 3c9(r9=.)
Whip[2]: Supposing 8r6c9 would causes 3 to disappear in Column 9 => r6c9<>8
8r6c9 - 1c9(r6=r9) - 3c9(r9=.)
Whip[2]: Supposing 5r8c2 would causes 5 to disappear in Column 3 => r8c2<>5
5r8c2 - 5c7(r8=r3) - 5c3(r3=.)
Naked Single: r8c2=1
Whip[2]: Supposing 4r9c9 would causes 3 to disappear in Column 9 => r9c9<>4
4r9c9 - 1c9(r9=r6) - 3c9(r6=.)
Hidden Single: 4 in c9 => r8c9=4
Hidden Single: 4 in c5 => r6c5=4
Hidden Single: 7 in c5 => r4c5=7
Locked Candidates 1 (Pointing): 8 in b9 => r7c5<>8
Whip[2]: Supposing 8r1c5 would causes 9 to disappear in Column 5 => r1c5<>8
8r1c5 - 2c5(r1=r5) - 9c5(r5=.)
Whip[2]: Supposing 6r5c5 would causes 9 to disappear in Column 5 => r5c5<>6
6r5c5 - 2c5(r5=r1) - 9c5(r1=.)
Whip[2]: Supposing 3r9c6 would causes 4 to disappear in Box 8 => r9c6<>3
3r9c6 - 2r9(c6=c4) - 4b8(p7=.)
Whip[2]: Supposing 3r8c8 would causes 3 to disappear in Box 8 => r8c8<>3
3r8c8 - 3r5(c8=c4) - 3b8(p1=.)
Naked Single: r8c8=7
Naked Single: r8c7=5
Naked Single: r7c9=8
Whip[2]: Supposing 7r3c3 would causes 9 to disappear in Column 3 => r3c3<>7
7r3c3 - 5c3(r3=r7) - 9c3(r7=.)
Whip[2]: Supposing 3r7c1 would causes 3 to disappear in Column 8 => r7c1<>3
3r7c1 - 3c4(r7=r5) - 3c8(r5=.)
Whip[2]: Supposing 5r1c1 will result in all candidates in cell r7c1 being impossible => r1c1<>5
5r1c1 - r5c1(5=6) - r7c1(6=.)
Naked Single: r1c1=4
Hidden Single: 4 in r2 => r2c8=4
Locked Candidates 2 (Claiming): 5 in r1 => r3c9<>5
Whip[2]: Supposing 7r3c2 would causes 9 to disappear in Box 1 => r3c2<>7
7r3c2 - 5r3(c2=c3) - 9b1(p9=.)
Hidden Single: 7 in r3 => r3c7=7
Whip[2]: Supposing 6r7c3 would causes 9 to disappear in Column 3 => r7c3<>6
6r7c3 - 5c3(r7=r3) - 9c3(r3=.)
Whip[3]: Supposing 8r1c6 would causes 9 to disappear in Column 6 => r1c6<>8
8r1c6 - r1c8(8=5) - r4c8(5=9) - 9c6(r4=.)
stte
117 Steps!
Time elapsed: 6667.2 ms
yzfwsf
 
Posts: 671
Joined: 16 April 2019

Previous

Return to Advanced solving techniques