Looking for a Specific Example of a Chain

Everything about Sudoku that doesn't fit in one of the other sections

Looking for a Specific Example of a Chain

Postby daj95376 » Thu May 29, 2008 3:29 am

Mike Barker wrote:
Code: Select all
7-element Nice Loop: r8c9 =1= r8c4 =5= r4c4 -5- r5c5 -9- r5c8 =9= r6c8 =8= r6c1 =2= r4c1 -2- r4c9 ~3~ r8c9 => r8c9<>3
+-------------------+-------------------+----------------+
|    1     2     4  |   79   379   379  |    6   5    8  |
|    9     3     7  |    8     6     5  |    2   1    4  |
|    6     5     8  |   14     2    14  |   37  37    9  |
+-------------------+-------------------+----------------+
| 2457*   79   359  |  579*    1     8  |  345   6   23* |
|   48   189  1359  |    6    59*    2  | 1345  89*   7  |
| 2578*    6   159  |    3     4    79  |   15  89*  12  |
+-------------------+-------------------+----------------+
|  578  1789   159  |    2  3579  1379  |   17   4    6  |
|   57     4     2  |  157*    8     6  |    9  37  1-3* |
|    3   179     6  | 1479    79  1479  |    8   2    5  |
+-------------------+-------------------+----------------+


After checking my chain routine for more time than I'm going to admit, I finally realized that the reason it wasn't generating Mike's elimination was because it generated an assignment.

Code: Select all
r8c9 =1= r6c9 =2= r6c1 =8= r6c8 =9= r5c8 -9- r5c5 -5- r7c5 =5= r8c4 =1= r8c9 => r8c9=1
 +--------------------------------------------------------------+
 |  1     2     4     |  79    379   379   |  6     5     8     |
 |  9     3     7     |  8     6     5     |  2     1     4     |
 |  6     5     8     |  14    2     14    |  37    37    9     |
 |--------------------+--------------------+--------------------|
 |  2457  79    359   |  579   1     8     |  345   6     23    |
 |  48    189   1359  |  6    *59    2     |  1345 *89    7     |
 | *2578  6     159   |  3     4     79    |  15   *89   *12    |
 |--------------------+--------------------+--------------------|
 |  578   1789  159   |  2    *3579  1379  |  17    4     6     |
 |  57    4     2     | *157   8     6     |  9     37   *13    |
 |  3     179   6     |  1479  79    1479  |  8     2     5     |
 +--------------------------------------------------------------+

Does anyone have an example of a chain with the following structure?

Code: Select all
[cell]=n= ... -m-[cell]  =>  [cell]<>m
daj95376
2014 Supporter
 
Posts: 2624
Joined: 15 May 2006

Postby Draco » Thu May 29, 2008 6:38 am

daj95376 wrote:Does anyone have an example of a chain with the following structure?
Code: Select all
[cell]=n= ... -m-[cell]  =>  [cell]<>m



I'm not sure if you're looking for a forcing chain or a nice loop or...? If you are looking for a forcing chain of then do you mean something like:

r5c8=9 r5c5=5 r8c4=5 r8c9=1 +
r5c8=8 r6c1=8 r6c9=2 r4c9=3 => r8c9<>3

...?

- drac
Draco
 
Posts: 143
Joined: 14 March 2008

Postby daj95376 » Thu May 29, 2008 4:21 pm

Draco wrote:I'm not sure if you're looking for a forcing chain or a nice loop or...?

I'm looking for a chain that starts off assuming that one value isn't true in a cell, and then loops back to show that a different value isn't true in that cell.

In reality, this represents a forcing chain, but is normally presented as the second chain alone -- as done by Mike Barker in my original quote.

Code: Select all
[cell]= n  =>  [cell]<>m   (assumed)
[cell]<>n ...  [cell]<>m   q.e.d.
daj95376
2014 Supporter
 
Posts: 2624
Joined: 15 May 2006

Re: Looking for a Specific Example of a Chain

Postby ronk » Thu May 29, 2008 5:33 pm

daj95376 wrote:Does anyone have an example of a chain with the following structure?

Code: Select all
[cell]=n= ... -m-[cell]  =>  [cell]<>m

Code: Select all
..784.1...68...34......2..7......4...31.9....2...8...9.92.........3..7.8...4.6.2.

After SSTS:
 359   2     7     | 8     4     35    | 1     569   56
 159   6     8     | 1579  157   157   | 3     4     2
 1459  145  *3459  | 1569 *36    2     | 8     59    7
-------------------+-------------------+------------------
 56789 578   59-6  | 2    *36    157   | 4     178   13
 45678 3     1     | 567   9     457   | 2     78    56
 2     457   456   | 1567  8     13457 | 56    137   9
-------------------+-------------------+------------------
 13567 9     2     | 157   157   8     | 56    1356  4
 1456  145   456   | 3     2     9     | 7     156   8
 1578  1578  35    | 4     157   6     | 9     2     13

r4c3 =9= r3c3 =3= r3c5 -3- r4c5 -6- r4c3
[edit2: r4c5 was typo r4c6]

These are a dime a dozen ... until you want to buy one.:)

[edit1: without looking at them very closely, added the following possibilities]

Code: Select all
..1..........3.94.7..8....1..6598...9.....2.......3....4.....3.2.....86587..2..9.
2......5...4...7.1......32..2.9...4.63..8..........26......7...5..1.....89142.5.7
..8..4..5....1....26....3.9.....5.....569..4..9.......3...6.7.......76.48......3.
6............347.5.1.7.2...8.....5.7.9.4.1....3..8.9...8.51.6...6......4..7...8.9
.7.5.....46.93.....3...6..8.28...3.7.543...6.......2...........5..8...1...367..4.
..2....397.591.4.......4.1....8...4..192.6.7.6....35..29........5..........4...23
...4....5.3...6..9158..9......9......1...732.8..21....7......424....1.9...5...1..
...........5.1..37..4..761.......3...467.....7...82..4..7........12.4..82....89..
Last edited by ronk on Thu May 29, 2008 4:02 pm, edited 2 times in total.
ronk
2012 Supporter
 
Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

Postby Draco » Thu May 29, 2008 5:52 pm

I know you and I have exchanged mail on some networks that do this, but I don't have any chains that do the job. I have a really simple network that you or someone else may be able to convert to a chain. Starting from
Code: Select all
24  1  3    | 5 26  7   | 468 89 4689
47  5  467  | 8 3   9   | 1   2  46 
289 68 2689 | 4 26  1   | 5   7  3   
------------+-----------+------------
6   9  1    | 7 48  248 | 3   5  28 
5   3  28   | 9 1   6   | 28  4  7   
278 4  278  | 3 5   28  | 9   6  1   
------------+-----------+------------
489 7  5    | 1 489 3   | 26  89 26 
1   68 689  | 2 7   5   | 48  3  489
3   2  489  | 6 489 48  | 7   1  5   

Apply

r9c6=4 [r7c5<>4] r2c3=4 r7c1=4 r3c1=9 [r7c1<>8 + r3c1<>8] = r6c1=8 r6c6=2 r5c7=8
r2c3=4 r2c9=6 r7c9=2 r4c9=8 => r9c6<>4

I wonder if a loop or chain could be created startingt from r7c1=4 or r3c3=4 instead, for instance:

r7c1=4 r2c3=4 r2c9=6 r7c9=2 r3c9=8 r5c7=2 r5c3=8 r6c1<>8 r3c1=8

This leaves us without a 9 in c1, showing r7c1<>4. Don't know if this qualifies as a "proper" chain since it relies on non-b/b interaction for its contradiction. Certainly doable with paper & pencil on a grid by humans though:) .

Cheers...

- drac

[edit - didn't see Ronk's post until after mine was submitted]
Draco
 
Posts: 143
Joined: 14 March 2008

Re: Looking for a Specific Example of a Chain

Postby daj95376 » Thu May 29, 2008 6:55 pm

ronk wrote:
Code: Select all
..784.1...68...34......2..7......4...31.9....2...8...9.92.........3..7.8...4.6.2.

After SSTS:
 359   2     7     | 8     4     35    | 1     569   56
 159   6     8     | 1579  157   157   | 3     4     2
 1459  145  *3459  | 1569 *36    2     | 8     59    7
-------------------+-------------------+------------------
 56789 578   59-6  | 2    *36    157   | 4     178   13
 45678 3     1     | 567   9     457   | 2     78    56
 2     457   456   | 1567  8     13457 | 56    137   9
-------------------+-------------------+------------------
 13567 9     2     | 157   157   8     | 56    1356  4
 1456  145   456   | 3     2     9     | 7     156   8
 1578  1578  35    | 4     157   6     | 9     2     13

r4c3 =9= r3c3 =3= r3c5 -3- r4c6 -6- r4c3

These are a dime a dozen ... until you want to buy one.:)

Thanks ronk! It appears that my hierarchy is why alternate chains are being found. I search based on initial assignments before initial eliminations. I also discard duplicate results. In the case of your first example, I found ...

Code: Select all
r4c3 -6- r4c5 -3- r3c5 =3= r3c3 =9= r4c3  =>  [r4c3]<>6

... and then discarded the chain you listed.

Code: Select all
r4c3 =9= r3c3 =3= r3c5 -3- r4c5 -6- r4c3  =>  [r4c3]<>6

[edit: altered r4c6 to r4c5 in ronk's chain.]
Last edited by daj95376 on Thu May 29, 2008 3:32 pm, edited 1 time in total.
daj95376
2014 Supporter
 
Posts: 2624
Joined: 15 May 2006

Postby daj95376 » Thu May 29, 2008 7:26 pm

Draco wrote:
Code: Select all
24  1  3    | 5 26  7   | 468 89 4689
47  5  467  | 8 3   9   | 1   2  46 
289 68 2689 | 4 26  1   | 5   7  3   
------------+-----------+------------
6   9  1    | 7 48  248 | 3   5  28 
5   3  28   | 9 1   6   | 28  4  7   
278 4  278  | 3 5   28  | 9   6  1   
------------+-----------+------------
489 7  5    | 1 489 3   | 26  89 26 
1   68 689  | 2 7   5   | 48  3  489
3   2  489  | 6 489 48  | 7   1  5   


There are two chains that, combined, reduce your PM to Singles.

Code: Select all
r6c1 -2- r6c6 =2= r4c6 =4= r4c5 -4- r7c5 =4= r7c1 -4- r1c1 -2- r6c1  =>  [r6c1]<>2
r6c3 -2- r6c6 =2= r4c6 =4= r9c6 -4- r9c3 =4= r2c3 =7= r6c3           =>  [r6c3]<>2

[edit: thanks to ronk, I corrected a typo and discovered that reading the second chain in the reverse direction is the chain I seek!)
daj95376
2014 Supporter
 
Posts: 2624
Joined: 15 May 2006


Return to General