Looking for a LOGICAL next step

Advanced methods and approaches for solving Sudoku puzzles

Postby tso » Mon Aug 15, 2005 7:59 am

Ok, I went ahead and followed my own advice. This is HOW I found the forcing chains that will solve this puzzle. I did this in my head, but I'll sometimes draw these lines on paper in more difficult puzzles.

1) I focused ONLY on the cells with 2 candidates, ignoring everything else.

2) I looked for all the pairs, triples, quads, etc. and see how they connect. I think of these as "binary groups" as they can be in only one of two states. For instance, a [12][12] pair can only be 1-2 or 2-1. A quad of [12][23] [34][14] can only be 1-2-3-4 or 2-3-4-1. The cells within these groups are connected by BLUE lines here.

Image

3) Now I try to form a closed loops by connecting all other cells that share candidates with with RED lines.

Image

4) In order to form a pair of forcing chains, I MUST form a complete loop. So, I can simplify be removing all lines that dead end.

Image

5) All cells within a binary group are internally consistent. If each cell in the chain formed is in the same binary group with then next cell, A PROOF CANNOT BE FORMED! Instead, you will have a single chain that can be in two states. For example:

Look at the triplets in rows 2 and 8. Each has candidate 5s in columns 1 and 5. Therefore, these two triplets can exist in exactly two states:

Code: Select all
59--6
9---5--8

or

96--5
5---8--9


Therefore, they form a single 6-cell binary group, so I'll change the RED line connecting two of their cells to BLUE. #6.

Image


6) Because binary groups are internally consistent, you can move around blue paths all you want without and never find a contradiction or make a proof. You can see this for yourself here. Our proof MUST contain at least one red line -- in this case, there are only two closed paths including the red lines. BOTH OF THEM SOLVE THE PUZZLE! Start at EITHER cell
at the intersection of a RED and BLUE line, form two chains connected to the OTHER. One chain MUST use the RED
line, the other, either of the BLUE paths available.

Here are ALL possible results:

r2c2=6 => r3c3=7 => r3c5=8 => r8c5=5
r2c2=9 => r2c1=5 => r8c1=9 => r8c5=5
Therefore, r8c5=5

r8c5=5 => r2c5=6 => r2c2=9
r8c5=8 => r3c5=7 => r3c3=6 => r2c2=9
Therefore, r2c2=9


These are EXACTLY the chains Jeff posted above. I believe this shows not only that these forcing chains solve the puzzle, but that they are the only 'xy-chains' that do AND, that they can be found by a method that does NOT use any look-ahead, but step-by-step logic.

Loops that contain only blue lines cannot form a proof.
Loops that contain red lines, may or may not form a proof, but they may be converted to blue, thereby reducing your 'path candidates', if they can be isolated in a loop. (The line connecting r28c5 was in a loop in which it was the only red line -- that loop was shown to be internally consistant, it was converted to blue.)

I rarely draw lines like this -- I've done this here for illustration of thought process. But even if you do, and go so far as to convert red lines to blue and erase dead end chains as I've done here -- this is really only different by degree from writing in dozens and dozens of little pencil marks only to erase them later. If one is fair, both are fair. If one is logic, the other is logic.

This is the basic way that I use to find forcing chains, but can vary quite a bit depending on the particulars, and I have no compunction to try to keep the chains 'pure' -- if I see something else that helps form the chain, I'll use it.
tso
 
Posts: 798
Joined: 22 June 2005

Postby angusj » Mon Aug 15, 2005 11:57 am

tso wrote:Ok, I went ahead and followed my own advice. This is HOW I found the forcing chains that will solve this puzzle. I did this in my head, but I'll sometimes draw these lines on paper in more difficult puzzles.

Thanks, very well presented. I now have a much better idea of how to find forcing chains.
Last edited by angusj on Tue Aug 16, 2005 11:19 pm, edited 1 time in total.
angusj
 
Posts: 306
Joined: 12 June 2005

Postby Jeff » Mon Aug 15, 2005 2:26 pm

tso wrote:Here are ALL possible results:

r2c2=6 => r3c3=7 => r3c5=8 => r8c5=5
r2c2=9 => r2c1=5 => r8c1=9 => r8c5=5
Therefore, r8c5=5

r8c5=5 => r2c5=6 => r2c2=9
r8c5=8 => r3c5=7 => r3c3=6 => r2c2=9
Therefore, r2c2=9


These are EXACTLY the chains Jeff posted above. I believe this shows not only that these forcing chains solve the puzzle, but that they are the only 'xy-chains' that do AND, that they can be found by a method that does NOT use any look-ahead, but step-by-step logic.


Tso

Just to clarify that your first chain is different from the one I posted. In fact, it is not an xy-chain. I spot the xy-chain by first fixing 3 cells, the ends of the chain and the cell from which an elimination can be made, eg. 56-69-67 or 95-59-58 where a 6 and a 5 can be eliminated respectively. Then I look for other cells to complete the chain in a loop.

I have identified at least 3 xy-chains in the puzzle as follows:

Image

Image

Image

Your method has missed out the first two. You may like to review your method.
Jeff
 
Posts: 708
Joined: 01 August 2005

Postby stuartn » Mon Aug 15, 2005 6:22 pm

tso wrote:

I looked for all the pairs, triples, quads, etc.....


Can you post an example with triples, quads etc please?

stuartn

http://www.brightonandhove.org/Sudolinks.htm
Last edited by stuartn on Tue Aug 16, 2005 5:23 am, edited 3 times in total.
stuartn
 
Posts: 211
Joined: 18 June 2005

Postby tso » Mon Aug 15, 2005 8:26 pm

Jeff wrote:Just to clarify that your first chain is different from the one I posted. In fact, it is not an xy-chain.


r2c2=6 => r3c3=7 => r3c5=8 => r8c5=5
r2c2=9 => r2c1=5 => r8c1=9 => r8c5=5
Therefore, r8c5=5

I should have avoided using the term 'xy-chain' -- I'm not sure of the usage. It is a forcing chain. To be clearer, I should have made the second chain like this:

r2c2=9 => r2c1=5 => r8c1=9 => r8c8c=8 => r8c5=5

... but again, I was illustrating my thought process. r8c158 is a triple. Once I know one cell, I know all three. Still, I should have included r8c8 for clarity.


Jeff wrote:I spot the xy-chain by first fixing 3 cells, the ends of the chain and the cell from which an elimination can be made, eg. 56-69-67 or 95-59-58 where a 6 and a 5 can be eliminated respectively. Then I look for other cells to complete the chain in a loop.

I have identified at least 3 xy-chains in the puzzle as follows:


I'm very confused at what it is you are getting at. Are you saying you look for three cells in sequence each share a candidate with the next (an xy-chain?) and then try to close the loop? I don't see how you are deciding that there are just three -- I see a dozen or more. I don't understand your terms well enough to decide which are and which are not xy-chains. From my point of view, there are only two chains or loops. Each uses the RED line and ONE of the two BLUE paths to complete it. (There's a third loop that is all blue, but it cannot prove a cell's contents.)

I don't understand your images. They appear to be identical except for one highlighted cell. Could be because I'm colorblind. I believe that two of your three xy-chains will create identical loops though they may have different starting points. They may be distinct in xy-chain terms, but I do not consider them distinct forcing chains. Once any one of the cells within a binary group is proven, ALL of them are.

Jeff wrote:Your method has missed out the first two. You may like to review your method.


I'm not missing any forcing chains, nor that any others are possible, though the two I've listed can be written up a many ways, both as forcing chains or proofs by contradition.

My method identifies the LOOPS. There are a many ways to write up the chain for each loop, starting various cells and ending in various cells, for example:

Starting from r2c1:
1) r2c1=9 => r8c1=5 ... r2c1=9
2) r2c1=5 => r2c1=9
therefore, r2c1=9

Starting from r8c1:
1) r8c1=9 => r2c1=5 ... r2c1=9
2) r8c1=5 => r8c5=8 ... r2c1=9
therefore, r2c1=9

Starting from r8c5:
1) r8c5=8 => r3c5=7 ... r2c1=9
2) r8c5=5 => r8c1=9 ... r2c1=9
therefore, r2c1=9

Also starting from r8c5 but ending in r8c2:
1) r8c5=8 => r3c5=7 ... r8c1=9
2) r8c5=5 => r8c1=9
therefore, r8c1=9

... and on and on. ALL possibilities will use EACH of the three RED connecting paths and one of two sets of BLUE connecting paths.

I think we're definitely having a terminolgy confusion more than a logical confusion.
tso
 
Posts: 798
Joined: 22 June 2005

Postby tso » Mon Aug 15, 2005 8:29 pm

stuartn wrote:tso wrote:

I looked for all the pairs, triples, quads, etc.....


Can you post an example with triples, quads etc please?

stuartn

http://www.brightonandhove.org/sudolinks/solver5c.xls


This one had two triples (r2c125 and r8c158). I'll make a shorter post with the next interesting one I come across that includes at least a quad.
tso
 
Posts: 798
Joined: 22 June 2005

Postby Jeff » Tue Aug 16, 2005 2:30 am

Tso

Miscommunication occurred when you were talking about forcing chains while I was talking about xy-chains, a subset of the forcing chains. I thought we were trying to follow up on you previous point that two xy-chains solutions were listed without any clarification on how these xy-chains were identified in the first place. Cool.
Jeff
 
Posts: 708
Joined: 01 August 2005

Postby Addlan » Tue Aug 16, 2005 10:42 am

Jeff wrote:Tso

Miscommunication occurred when you were talking about forcing chains while I was talking about xy-chains, a subset of the forcing chains. I thought we were trying to follow up on you previous point that two xy-chains solutions were listed without any clarification on how these xy-chains were identified in the first place. Cool.


Agree, Tso's method is more systematic to identify a forcing chain for pairs. Then how about finding forcing chain for a particular digit? Or combine the pairs with a particular digit? Then X-wing can be generalized.
Addlan
 
Posts: 62
Joined: 15 July 2005

Postby stuartn » Tue Aug 16, 2005 12:14 pm

tso wrote:

This one had two triples (r2c125 and r8c158).


Ahhh I see what you're getting at. I presumed you were talking about the cell CANDIDATES - not the number cells in a unit that had a candidate in common.

stuartn
stuartn
 
Posts: 211
Joined: 18 June 2005

Postby Jeff » Wed Aug 17, 2005 2:05 am

Tso

I got this far with this one. Can you help?

Image
Last edited by Jeff on Wed Aug 17, 2005 3:58 am, edited 1 time in total.
Jeff
 
Posts: 708
Joined: 01 August 2005

Postby Dusty Chalk » Wed Aug 17, 2005 5:32 am

Nice network!

(Sorry, not helpful.)
Dusty Chalk
 
Posts: 21
Joined: 15 August 2005

Postby Scott H » Wed Aug 17, 2005 7:01 am

Jeff wrote:Tso

I got this far with this one. Can you help?

Image


Jeff, I'll take a shot. (Tso, nice posting and method!)

To get a useful deduction from these loops you need to find a "nice" loop. Nice loops come in two flavors, and it helps to label the edges to understand nice loops.

Label each edge above with the common value(s) of the two nodes it connects. Thus edge 93-97 is labelled 6, and edge 83-93 is labelled 69.

A nice loop is a closed path where either all adjacent labels are different, or one pair of adjacent labels is the same and all other adjacent pairs are different. If an edge with 2 labels appears in the loop, pick one of the labels to use in the loop.

The first flavor of nice loop (all adjacent pairs different) is a consistent loop where all nodes in the loop can have one of two values. You can change all red edges in such loops to blue edges. Also, for each unit (row/column/block) containing such a red edge, you can exclude the label of the of the edge from all other cells in the unit (this deduction deserves to be more widely known).

The second flavor of nice loop -- one pair of adjacent labels the same and all other adjacent pairs different -- lets you conclude that the value of the cell shared by the adjacent same-labelled edges cannot be that label. This is a case of a standard xy-chain where the node with an excluded value is a doubleton node. xy-chains can also exclude a value from a node with 3+ candidates. Adding edges from the ends of the xy-chain to the excluded node also form a loop -- this case is slightly more general than tso's procedure.

Your example, Jeff, has several loops, but we can't choose edge labels that make any of the loops "nice", so we can't make any of the nice deductions that follow from them. Tso's first example had two nice loops of the second flavor, and one of those loops could use either edge label on a naked pair edge, giving 3 doubleton nodes with a value that could be excluded by a xy-chain.

I got the edge labelling notion from a paper by David Eppstein here (referenced here).

A general xy-chain is a path connecting nodes with candidates au, uv, ..., yz, zb where adjacent nodes share a common unit. Given a general xy-chain, you can conclude (first node = a) or (last node = b) or both. The standard xy-chain is a general xy-chain with a=b.

Your example includes many general xy-chains, so we can draw conclusions like (r1c5=9 or r1c9=4) and (r9c7=4 or r7c7=7), but no nice conclusions from nice loops are available.

By the way, you need to erase edge 83-96 since cells 83 and 96 don't share a common unit.
Last edited by Scott H on Wed Aug 17, 2005 4:37 am, edited 1 time in total.
Scott H
 
Posts: 73
Joined: 28 July 2005

Postby Jeff » Wed Aug 17, 2005 7:56 am

Scott, this is extremely helpful.

Thanks
Jeff
 
Posts: 708
Joined: 01 August 2005

Postby Jeff » Wed Aug 17, 2005 10:49 am

Scott H wrote:Your example includes many general xy-chains, so we can draw conclusions like (r1c5=9 or r1c9=4) and (r9c7=4 or r7c7=7)

Scott, can you list some xy-chains in this puzzles or suggest other techniques to solve it.

Tso, can you formulate any forcing chains for this puzzle.

Any help from others will be appreciated.
Jeff
 
Posts: 708
Joined: 01 August 2005

Postby tso » Wed Aug 17, 2005 4:00 pm

I've posted another forcing chains example here..

This is exactly the level of puzzle that I'm interested in now, as it is just beyond the capabilities of my normal routines and forces me to experiment.

Jeff -- I'll take a look at the one you posted now.
Last edited by tso on Wed Aug 17, 2005 6:27 pm, edited 1 time in total.
tso
 
Posts: 798
Joined: 22 June 2005

PreviousNext

Return to Advanced solving techniques