Sharks - a Truth Balancing Method

Advanced methods and approaches for solving Sudoku puzzles

Re: Sharks - a Truth Balancing Method

Postby David P Bird » Wed Apr 04, 2012 10:38 am

ronk wrote:Do you have an example where a basic follow-on move to the sk-loop doesn't cause a match of the exclusions

I can't produce one at the moment. I think I found one in my early trials but didn't keep it, so I'm far from sure.

SK loops are so powerful when they are found that it's always worth looking for them before the other exotic patterns IMO, particularly as they are easier to locate. There are very good chances that they'll create locked sets that lead onto other simple eliminations that might be found in isolation by a Multi-fish approach as you imply.

From now on I intend to carry on researching other pattern subsets that apply only after any SK loop eliminations have been made.
ronk wrote:
David P Bird wrote:I also looked at your Almost SK Loop but as you used so many box constraints, my simple row and column methods can't penetrate it.
Not sure to which box constraints you refer...

Everywhere in your diagram that shows an angled link in a box is what I consider to be the use of a box constraint.

I'm not a regular user of truth and link sets and always struggle somewhat when I have to try to translate the diagrams and notation into my mental model. It seems to me that usually when they combine a cocktail of different constraint types they become nets rather than a combination of recognisable patterns. With the aim of keeping things simple, Sharks are confined to counting truths by rows and columns, and so they can't easily be extended to cover box constraints as well.
David P Bird
2010 Supporter
 
Posts: 957
Joined: 16 September 2008
Location: Middle England

Re: Sharks - a Truth Balancing Method

Postby David P Bird » Sat Apr 07, 2012 12:15 pm

Up to now I've only considered making adjustments to the Shark counts of the cells in each set that must and can hold truths in the rows and columns, but it's equally valid to extend the checks to boxes too and I've edited the opening post accordingly.

This then seems to cover some of champagnes 2 row, 2 column multi-fish eliminations too. However it still seems inappropriate to add adjustments to account for digits locked in sets with non-member digits.

Using the same puzzle as champagne uses as an example:
.....67...5.1...3...9.2...42..........8.4...29.46..........7.6....3..1..8.......5;11.30;1.20;1.20;elev;318;G3
Code: Select all
             v                 v               v         v       v 
  *-------------------------*-------------------------*-------------------------*
 >| 134     12348   123     | 4589x   3589    6    #  | 7    #  12589   189     |<
 >| 467     5x      267     | 1     # 789     489x    | 2689    3    #  689     |<
  | 1367  # 13678   9x      | 578     2x      358     | 568     158     4x      |
  *-------------------------*-------------------------*-------------------------*
  | 2x      1367 #  13567   | 5789    135789  13589   | 345689  145789  136789  |
  | 13567   1367 #  8x      | 579     4x      1359    | 3569    1579    2x      |
  | 9x      137  #  4x      | 6     # 13578   2x      | 358     1578    1378    |
  *-------------------------*-------------------------*-------------------------*
 >| 1345    12349   1235    | 24589x  1589    7    #  | 23489   6    #  389     |<
 >| 4567    24679   2567    | 3     # 5689    4589x   | 1    #  24789   789     |<
  | 8x      1234679 12367   | 249x    169     149     | 2349    2479    5x      |
  *-------------------------*-------------------------*-------------------------*
             ^                 ^               ^         ^       ^
Hidden Text: Show
Code: Select all
Truth tables by quadrant T = true, f = false, ? = Unknown
    v     v   v   v v            v     v   v   v v            v     v   v   v v
*-------*-------*-------*    *-------*-------*-------*    *-------*-------*-------*
| . ? . | f . T | T ? . |<   | . . . | . . . | . . . |<   | ? . ? | . ? . | . . ? |
| . f . | T . f | ? T . |<   | . . . | . . . | . . . |<   | ? . ? | . ? . | . . ? |
| . . . | . . . | . . . |    | T . f | . f . | . . f |    | . ? . | ? . ? | ? ? . |
*-------*-------*-------*    *-------*-------*-------*    *-------*-------*-------*
| . . . | . . . | . . . |    | f . ? | . ? . | . . ? |    | . T . | ? . ? | ? ? . |
| . . . | . . . | . . . |    | ? . x | . f . | . . f |    | . T . | ? . ? | ? ? . |
| . . . | . . . | . . . |    | f . f | . ? . | . . ? |    | . T . | T . f | ? ? . |
*-------*-------*-------*    *-------*-------*-------*    *-------*-------*-------*
| . ? . | f . T | ? T . |<   | . . . | . . . | . . . |<   | ? . ? | . ? . | . . ? |
| . ? . | T . f | T ? . |<   | . . . | . . . | . . . |<   | ? . ? | . ? . | . . ? |
| . . . | . . . | . . . |    | f . ? | . ? . | . . f |    | . ? . | f . ? | ? ? . |
*-------*-------*-------*    *-------*-------*-------*    *-------*-------*-------*
4x5 (20) Cells Covered 2x    5x4 (20) Cells Covered 0x    4x4 + 5x5 (41) Covered 1x   
Truths Min 8 Max 13          Truths Min 1 Max 9           Note Box 4 has 3 Truths
                             Adjust for box 4 Max = 8

The uncovered quadrant can't hold 9 truths as box 4 would then have to hold 5 truths.

16 truths in rows 1278 must be satisfied by the covered quadrant + the 4x4 quadrant.
16 truths in columns 1359 must be satisfied by the uncovered quadrant + the 4x4 quadrant.
Subtracting the 4x4 truths shows the covered and uncovered quadrants must have the same number of truths.
This must be >= 8 for the covered quadrant and <=8 for the uncovered quadrant so must be 8.
As it is uncertain which of the ? cells in b4 will be true, no eliminations can be made in that house.
Elsewhere the ? cells in the covered quadrant are false and those in the uncovered quadrant are true.

(1367)Shark:r1278c24678
Simple balance: Cells Covered twice Min(Truths)=8, Cells Not Covered Max(Available Cells) = 9
Adjusted count in b4: Cells Covered twice Min(Truths)=8, Cells Not Covered Max(Available Cells) = 8
Cells covered twice: r1c28,r2c7,r7c27,r8c28 <> 1367
Cells not covered: r4c59,r6c59,r9c35 <> 24589

Only once we've compared any differences between the eliminations made in more puzzles can we decide if Sharks are just another way of identifying the same openings as Multi-fish or not. We can then decide if they should share the same name.

My perception is that up to now it has needed Alan Barker's program or some equivalent to explore these openings and confirm the eliminations, whereas Sharks provide a slightly simpler option. Mind you, they're still hardly junior league.

[Edit Hidden explanation added, typo corrected]
Last edited by David P Bird on Sun Apr 08, 2012 9:36 am, edited 1 time in total.
David P Bird
2010 Supporter
 
Posts: 957
Joined: 16 September 2008
Location: Middle England

Re: Sharks - a Truth Balancing Method

Postby ronk » Sat Apr 07, 2012 2:17 pm

David P Bird wrote:In this puzzle from champagne's "nothing special found" set the digit set is [2489]
The red set (covered twice) contains 8 givens and the blue set (uncovered) has 9 available cells, so there is no immediate truth balance.
However, in row 2 there are only three cells that can hold a truth that aren’t covered twice which requires r2c35 to hold at least one truth.

I still haven't been able to follow your example in the opening post of this thread. Would you please add there a suitably colored illustration?
ronk
2012 Supporter
 
Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

Re: Sharks - a Truth Balancing Method

Postby David P Bird » Sun Apr 08, 2012 9:51 am

ronk wrote:I still haven't been able to follow your example in the opening post of this thread. Would you please add there a suitably colored illustration

I should say that I have similar problems in switching mind sets and trying to interpret truth and link set diagrams whenever a candidate is covered more than twice!

I have spent a lot of time playing with coloured representations that would be easy to absorb but you have to live with them for a while before they become second nature to interpret. Instead I've spawned off sub-grids of truth tables for the different sets, and have added them as hidden text to my previous post. (My opening post used a bad example as you were able to show.)
David P Bird
2010 Supporter
 
Posts: 957
Joined: 16 September 2008
Location: Middle England

Re: Sharks - a Truth Balancing Method

Postby David P Bird » Wed Apr 18, 2012 8:51 pm

Here's a puzzle without an SK loop where champagne found eliminations from a two row / two column multi fish.

The source puzzle is
....5..8...67..1.......3..426.9.............19.7...2...3..4..1......8..5..21..6..;92;elev;41;;;2BN A5B5;;G13
morphed to
5.....8...7...6.1...3.....4.9.26............1...9.7.2.4...3.1...1...2.6...8.....5

Code: Select all
 *----------------------*----------------------*----------------------*
 | 5      246    12469  | 1347   12479  1349   | 8      379    23679  |
 | 289    7      249    | 3458   24589  6      | 2359   1      239    |
 | 12689  268    3      | 1578   125789 1589   | 25679  579    4      |
 *----------------------*----------------------*----------------------*
 | 1378   9      1457   | 2      6      13458  | 3457   34578  378    |
 | 23678  234568 24567  | 3458   458    3458   | 345679 345789 1      |
 | 1368   34568  1456   | 9      1458   7      | 3456   2      368    |
 *----------------------*----------------------*----------------------*
 | 4      256    25679  | 5678   3      589    | 1      789    2789   |
 | 379    1      579    | 4578   45789  2      | 3479   6      3789   |
 | 23679  236    8      | 1467   1479   149    | 23479  3479   5      |
 *----------------------*----------------------*----------------------*

Note that in boxes 1379 there would be an SK loop if the given in r7c7 was (3) rather than (1).
In this case the same digit set and row and column pattern can be used as if the SK loop existed – as shown in the diagram below for tiers 13 and stacks 13. This leaves one line still to be covered to make a total of 9, and either r5 or c5 will produce a balance as both contain just one false cell.

In the diagram the selected rows and columns are marked. Pencil marks are shown only for the uncovered cells and those covered twice. However wherever external cells are known to be true or false they are indicated to help check any adjustments needed to balance the truths.

Code: Select all
    v               v                                   v               v         
 *-------------------------*-------------------------*-------------------------*   Covered 0x, 2x
>| 5#      .       1269-4  | .       .       .       | 8#      .       2679-3  |<  #  = True
 | .       0       .       | 3458#   24589   0       | .       0       .       |   0  = False
>| 1269-8  .       3#      | .       .       .       | 2679-5  .       4#      |<
 *-------------------------*-------------------------*-------------------------*   Covered 1x
 | .       0       .       | 0       0       3458-1  | .       3458-7  .       |   .  = Any 
>| 267-38  .       267-45  | (T)     (T)     (T)     | 679-345 .       0       |< (T) = True
 | .       3458-6  .       | 0       1458    0       | .       0       .       |  (F) = False
 *-------------------------*-------------------------*-------------------------*
>| 4#      .       2679-5  | .       (T)     .       | 0       .       279-8   |<
 | .       0       .       | 458-7   45789   0       | .       0       .       |
>| 2679-3  .       8#      | .       .       .       | 279-34  .       5#      |<
 *-------------------------*-------------------------*-------------------------*
    ^               ^                                   ^               ^

(3458)Shark:r12578,c1569
Simple balance: Cells Covered twice Min(Truths)=7, Cells Not Covered Max(Available Cells) = 8
Adjusted count in c5: Cells Covered twice Min(Truths)=7, Cells Not Covered Max(Available Cells) = 7
Cells covered twice: r1c39,r3c17,r5c137,r7c39,r9c1 <> 3458
Cells not covered: r4c17,r6c2,r8c4 <> 12679 (No eliminations possible in c5)

When the r5 is unselected and c5 is selected, further eliminations from the doubly covered cells are revealed: r19c5 <> 4, r3c5 <> 58. There are no new eliminations in the uncovered cells however because now it's r5 rather than c5 where the balancing adjustments have to be made.

It turns out that several other variations of the cover scheme will reach a balance after making adjustments, but they all result in the same set of eliminations.

If r7c7 had held (3) the SK loop would have made direct eliminations in 15 cells. Of these 11 are still found to be valid by the two Sharks. The Sharks also find eliminations in a further 7 cells, which would normally be found in follow-on steps to an SK loop.

I've tried looking for a way to notate this form of an Almost SK loop as an AIC, but with no luck so far. Has anyone else explored this area?
David P Bird
2010 Supporter
 
Posts: 957
Joined: 16 September 2008
Location: Middle England

Re: Multi-fish and Sharks

Postby David P Bird » Mon Apr 23, 2012 8:22 am

champagne, comparing the eliminations produced by Multi-fish and Sharks, it's clear that Sharks are more restrictive. (This repeats the scenario between Exocets and Junior Exocets.)

The principle difference is that Sharks are restricted to only considering the possibilities for a defined set of digits, but for Multi-fish it's possible to introduce additional digits in places to broaden its scope.

When Multi-fish operates exclusively on the base set of digits it's no surprise both methods produce identical results even though the processes they follow are different. The same results may also occur sometimes when MF uses extra digits where other deductive routes are possible.

As I hoped, Sharks allow players to catch some Multi-fish eliminations without needing to resort to a truth and link set approach. I would therefore rate it as being at an intermediate difficulty level for someone trying to acquire a black belt in Sudoku.

I'm happy to admit that the Shark method is 'Son of Multi-fish' or 'Junior Multi-Fish' but feel that as it processes the information so differently, its temporary name should be made permanent. This would then overcome our difficulties about the differences between 'patterns' and 'methods' etc.

My next tasks will be to tidy up the definition and presentation of the method from its prototype form, and to consider Almost Sharks.
David P Bird
2010 Supporter
 
Posts: 957
Joined: 16 September 2008
Location: Middle England

Re: Sharks - a Truth Balancing Method

Postby ronk » Mon Apr 23, 2012 1:47 pm

David P Bird wrote:
Code: Select all
    v               v                                   v               v         
 *-------------------------*-------------------------*-------------------------*   Covered 0x, 2x
>| 5#      .       1269-4  | .       .       .       | 8#      .       2679-3  |<  #  = True
 | .       0       .       | 3458#   24589   0       | .       0       .       |   0  = False
>| 1269-8  .       3#      | .       .       .       | 2679-5  .       4#      |<
 *-------------------------*-------------------------*-------------------------*   Covered 1x
 | .       0       .       | 0       0       3458-1  | .       3458-7  .       |   .  = Any 
>| 267-38  .       267-45  | (T)     (T)     (T)     | 679-345 .       0       |< (T) = True
 | .       3458-6  .       | 0       1458    0       | .       0       .       |  (F) = False
 *-------------------------*-------------------------*-------------------------*
>| 4#      .       2679-5  | .       (T)     .       | 0       .       279-8   |<
 | .       0       .       | 458-7   45789   0       | .       0       .       |
>| 2679-3  .       8#      | .       .       .       | 279-34  .       5#      |<
 *-------------------------*-------------------------*-------------------------*
    ^               ^                                   ^               ^

(3458)Shark:r12578,c1569
Simple balance: Cells Covered twice Min(Truths)=7, Cells Not Covered Max(Available Cells) = 8
Adjusted count in c5: Cells Covered twice Min(Truths)=7, Cells Not Covered Max(Available Cells) = 7
Cells covered twice: r1c39,r3c17,r5c137,r7c39,r9c1 <> 3458
Cells not covered: r4c17,r6c2,r8c4 <> 12679 (No eliminations possible in c5)

When the r5 is unselected and c5 is selected, further eliminations from the doubly covered cells are revealed: r19c5 <> 4, r3c5 <> 58. There are no new eliminations in the uncovered cells however because now it's r5 rather than c5 where the balancing adjustments have to be made.

I finally figured out an XSUDO logic set that's a reasonable equivalent to what you're doing. It uses the complementary cells in b1379 and the complementary digits (candidate values) in r5 and c5. The AHS in r5 is necessary, but the HS in c5 is merely frosting on the cake.

____Image
Code: Select all
500000800070006010003000004090260000000000001000907020400030100010002060008000005 # 92;elev;41 morphed

     24 Truths = {2679R5 1279C5 28N1 1379N2 28N3 28N7 1379N8 28N9}
     24 Links = {2r2 7r8 9r28 26c2 79c8 5n1 5n3 1369n5 5n7 3b379 4b19 5b37 8b19}
     33 Eliminations, 1 Assignment --> r139c5<>1, r169c5<>4, r5c7<>345, r3c57<>5, r3c15<>8, r8c45<>7, r9c17<>3,
     r15c3<>4, r57c3<>5, r28c5<>9, r5c1<>38, r6c5<>58, r1c9<>3, r2c5<>2,
     r4c8<>7, r6c2<>6, r7c9<>8, r9c7<>4,
     r6c5=1
ronk
2012 Supporter
 
Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

Re: Sharks - a Truth Balancing Method

Postby David P Bird » Mon Apr 23, 2012 3:39 pm

ronk, thank you very much for your Xsudo diagram which is fantastically productive and surely deserves a mention in your '0-rank logic set' thread.

With my complete lack of experience with Xsudo I thought the best way to represent Sharks, rather than using the complementary digit set in one direction, would be to invert the line selections in one direction and use weak and strong inferences in opposite directions. (That's from memory though.) Perhaps then the box inferences could be avoided. How feasible would that be?

Two other questions:
1) How well would your solution work as a pattern template for plugging into other puzzles with similar Almost SK Loops?
2) Do you know the rating for that puzzle?

I find it fascinating that champagne's SLG based approach first got recycled into fish based arithmetic by me, and then back into SLG by you with such a dramatic effect.
David P Bird
2010 Supporter
 
Posts: 957
Joined: 16 September 2008
Location: Middle England

Re: Sharks - a Truth Balancing Method

Postby ronk » Tue Apr 24, 2012 1:25 pm

David P Bird wrote:Two other questions:
1) How well would your solution work as a pattern template for plugging into other puzzles with similar Almost SK Loops?
2) Do you know the rating for that puzzle?

Firstly 2): The diamond rating is ED=11.6/11.6/9.9, with the 11.6 reduced to 9.4 after an almost sk-loop. Unfortunately, it appears impossible to paste pencilmarks into Sudoku Explainer, so eliminations must be done manually, making errors likely.

Then 1): If by "how well" you mean "would a large number be found", I don't know. Although not likely IMO, their complements might already be included in champagne's "G3" category. champagne, would you please post the "multi-fish" your software finds for this G3?

Code: Select all
....5..8...67..1.......3..426.9.............19.7...2...3..4..1......8..5..21..6.. ;92;elev;41;;;2BN A5B5;;G13

In any case, I would define the "template" using the almost sk-loop comparison as you did, allow for limited exception(s) to the perfect sk-loop, and look for strong inference help in the form of cell sets in the one box not intersected by the rows & columns of the loop, as in r5c456 of your morph.

David P Bird wrote:thank you very much for your Xsudo diagram which is fantastically productive and surely deserves a mention in your '0-rank logic set' thread.
...
I find it fascinating that champagne's SLG based approach first got recycled into fish based arithmetic by me, and then back into SLG by you with such a dramatic effect.

Thanks. It is a combination of complementary ALS/AHS I've not seen posted before, so perhaps it should be there.

David P Bird wrote:With my complete lack of experience with Xsudo I thought the best way to represent Sharks, rather than using the complementary digit set in one direction, would be to invert the line selections in one direction and use weak and strong inferences in opposite directions. (That's from memory though.) Perhaps then the box inferences could be avoided. How feasible would that be?

Sorry, don't understand, so have no answer.
ronk
2012 Supporter
 
Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

Re: Sharks - a Truth Balancing Method

Postby David P Bird » Tue Apr 24, 2012 4:16 pm

ronk I think these sets of truths and links might be closer to the Shark concept as the only the member digits are used. I used highlighting colours on a word processor to derive them but I'm not sure that I've got them right.

Truths 3458R2468
Links 38c1, 45c3, 458c5, 345c7, 38c9, 2n4, 4n6, 4n8, 7n4
David P Bird
2010 Supporter
 
Posts: 957
Joined: 16 September 2008
Location: Middle England

Re: Sharks - a Truth Balancing Method

Postby ronk » Tue Apr 24, 2012 5:06 pm

David P Bird wrote:I think these sets of truths and links might be closer to the Shark concept as the only the member digits are used. I used highlighting colours on a word processor to derive them but I'm not sure that I've got them right.

Truths 3458R2468
Links 38c1, 45c3, 458c5, 345c7, 38c9, 2n4, 4n6, 4n8, 7n4

Depends upon whether one emphasizes the digits used or the units used. You chose the former, I the latter.

One problem with your links, 6n2 is missing. But then you'd have 16 truths and 17 links, so you need to find another truth, one that doesn't require yet another link.
ronk
2012 Supporter
 
Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

Re: Sharks - a Truth Balancing Method

Postby David P Bird » Tue Apr 24, 2012 8:43 pm

ronk wrote:One problem with your links, 6n2 is missing. But then you'd have 16 truths and 17 links, so you need to find another truth, one that doesn't require yet another link.

Thanks. Yes I see that, and I can see I missed adding that cell to the list of links. However that sparks another chain of thought ...

The simple Shark balance is one out in a similar way, but there it's possible to say where the uncertainty lies and proceed with the eliminations that must be good. So the question is would such an approach be feasible using truth and link sets?
David P Bird
2010 Supporter
 
Posts: 957
Joined: 16 September 2008
Location: Middle England

Re: Sharks - a Truth Balancing Method

Postby ronk » Wed Apr 25, 2012 4:12 pm

David P Bird wrote:The simple Shark balance is one out in a similar way, but there it's possible to say where the uncertainty lies and proceed with the eliminations that must be good. So the question is would such an approach be feasible using truth and link sets?

Try either 5N5 or 1B5 as the 17th truth.
ronk
2012 Supporter
 
Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

Re: Sharks - a Truth Balancing Method

Postby David P Bird » Wed Apr 25, 2012 7:04 pm

ronk wrote:Try either 5N5 or 1B5 as the 17th truth.

Thanks for the tip.

That was my first attempt ever to use SLG logic (apart from single digit mutant fish), as my impression has been that the solutions they provide often need nets to explain. I would have to spend some time becoming familiar with it before I could possibly have anything intelligent to contribute.

As it is I'm currently preparing an improved presentation of the Shark approach for finding Multi-fish eliminations, and have to tidy up the spread sheet I patched together to research the subject.
David P Bird
2010 Supporter
 
Posts: 957
Joined: 16 September 2008
Location: Middle England

Re: Sharks - Redefined

Postby David P Bird » Fri Apr 27, 2012 2:51 pm

Introduction

Sharks extend the use of fish arithmetic to consider sets of digits occupying sets of rows and columns (Multi-fish).

History: Show
The term multi-fish was coined by champagne. Using a truth and link set approach he then used the idea to identify truth sets that would be central to particular investigations using nets.

Sharks are a simplification of that approach which restricts the logic to only considering the digits in the original set. This allows players to explore the potential eliminations without needing a truth and link set application. Sharks won't find all the same eliminations, but often follow-on steps will achieve the same results.

The method is not really suitable for purely manual solvers and is best used in conjunction with a Sudoku Helper application

At the start a promising set of usually four digits is selected. Generally digits are chosen that occur together as givens in a number of rows and columns. Cells in the grid (including the givens) are now categorised as being true if they must contain a member digit and false if they can't, and are coloured or flagged accordingly. The balance of the cells where a member digit may or may not be true are considered to be floating.

The next step is to select 9 rows and columns to cover as many true cells as possible in both directions. The intersections of these lines then form the 'home' region rich in truths, and the intersections of the unselected lines form the 'away' region sparse in truths. Simple maths shows that the number of truths in each region will be the same. The number of the truths in the home region determines the minimum value, and the total number of true and floating cells in the away region determines the maximum value.

The Simple Maths: Show
If N rows are selected there will be (9-N) selected columns which will cover N * (9-N) home cells. This will match the number of away cells where these dimensions are reversed.

There will now be N * N other cells in the same rows as the home region and in the same columns as the away region. For a member of the focus digit set, if it is true in one of these cells, it can't be true in the same row in the home cells or the same column as the away cells and vice versa. The home and away sets must therefore contain the same number of truths for each member digit.

When these minimum and maximum values coincide, a balance has been reached and the number of truths is established. Consequently no more home cells can be true and no more away ones can be false. This allows eliminations to be made in the floating cells in both regions to exclude member digits the home cells and non-members in the away ones.

When the counts shows a simple balance has not quite been achieved, checks can be made in each house to see:
1) if any home floating cells must be true because there aren't enough external floating cells available
2) if any away floating cells must be false because they outnumber the number of digits still to be accommodated.
These checks may show the simple maximum and minimum counts can be adjusted to produce a balance. If so the eliminations can be made but only in houses where no adjustments were applied. That's because in adjusted houses there will be uncertainty about which cells should be reduced. Clearly care must be taken to avoid double counting the adjustments to be made, which can happen when intersecting houses are involved.

Simple Balance Example: Show
98.7.....6..89......5..4...7...3.9....6...7....2....41.6..8.3.......1..5.......2.;25;GP;H2;G1
Code: Select all
                  v                      v               v      v 
  *----------------------*----------------------*----------------------*
  | 9      8      134    | 7      1256   2356   | 12456  1356   346    |
  | 6      12347  1347   | 8      9      235    | 1245   1357   347    |
 >| 123    1237   5 #    | 1236   126    4 #    | 1268   136789 36789  | <
  *----------------------*----------------------*----------------------*
  | 7      145    148    | 12456  3      2568   | 9      568    268    |
  | 1458   1459   6      | 12459  1245   2589   | 7      358    238    |
 >| 358    359    2 #    | 569    567    56789  | 568    4 #    1 #    | <
  *----------------------*----------------------*----------------------*
  | 1245   6      1479   | 2459   8      2579   | 3      179    479    |
 >| 2348   2347   34789  | 23469  2467   1 #    | 468    6789   5 #    | <
 >| 13458  13457  134789 | 34569  4567   35679  | 1468   2 #    46789  | <
  *----------------------*----------------------*----------------------*
                  ^                      ^               ^      ^
Givens for [1245] can all be covered by the 8 rows and columns indicated.

                   v                      v               v       v  H   A
  *-----------------------*---------------------*-----------------------* Min Max
  | x      x      .       | x      125-6 .      | 1245-6 .       .      |      2
  | x      124-37 .       | x      x     .      | 1245 # .       .      |      2
 >| .      .      5 #     | .      .     4 #    | .      36789-1 x      |< 2
  *-----------------------*---------------------*-----------------------*
  | x      145 #  .       | 1245-6 x     .      | x      .       .      |      2
 >| .      .      x       | .      .     89-25  | .      38-5    38-2   |< -
 >| .      .      2 #     | .      .     6789-5 | .      4 #     1 #    |< 3
  *-----------------------*---------------------*-----------------------*
  | 1245 # x      .       | 254-9  x     .      | x      .       .      |      2
 >| .      .      3789-4  | .      .     1 #    | .      x       5 #    |< 2
 >| .      .      3789-14 | .      .     3679-5 | .      2 #     6789-4 |< 1 
  *-----------------------*---------------------*-----------------------*  -   -
                   ^                      ^               ^       ^        8   8
                     # = true     x = false

(1245)Shark:r35689c3689
Truths: Home Min & Away Max = 8
Home r5c689,r6c6,r8c3,r9c369 <> 1245, Away r1c57,r2c2,r4c4,r7c4 <> 36789

Here for simplicity only the home cells (covered twice) and the away (uncovered) ones are shown.
Note that as 9 rows and columns must be selected, row 5 has been added (found by testing the alternatives).

The figures on the right show the minimum number of truths for each row of the home cells and the maximum possible number of truths for each row of the away cells.
As these balance, both regions must hold exactly 8 truths and so:
1) no more home cells can be true allowing member digits to be eliminated from the floating cells
2) no more away cells can be false allowing non-member digits to be eliminated from the floating cells.

Adjusted Balance Example: Show
....56.8...71.....6.....4.......85...3......29...4..6..1.7.......2.....38...9..5.;55;elev;30;G1
Code: Select all
           v     v       v                               v 
  *-------------------*-------------------*-------------------*
  | 1234  249   1349  | 2349  5     6     | 12379 8     179   |
 >| 2345  24589 7 #   | 1 #   238   2349  | 2369  239   569   |<
  | 6     2589  13589 | 2389  2378  2379  | 4     1239  159   |
  *-------------------*-------------------*-------------------*
  | 1247  2467  146   | 2369  12367 8     | 5     13479 1479  |
 >| 1457  3 #   14568 | 569   167   1579  | 1789  1479  2 #   |<
  | 9     2578  158   | 235   4     12357 | 1378  6     178   |
  *-------------------*-------------------*-------------------*
 >| 345   1 #   34569 | 7 #   2368  2345  | 2689  249   4689  |<
 >| 457   45679 2 #   | 4568  168   145   | 16789 1479  3 #   |<
  | 8     467   346   | 2346  9     1234  | 1267  5     1467  |
  *-------------------*-------------------*-------------------*
           ^     ^       ^                               ^ 
Givens for [1237] can all be covered by the 8 rows and columns indicated.

          v      v        v                                  v      H   A
  *---------------------*--------------------*-------------------* Min Max
  | 123-4 .      .      | .    x      x      | 1237-9 x      .   |      2
 >| .     4589-2 7 #    | 1#   .      .      | .      .      x   |< 2
 >| (F)   2589   13589  | 2389 .      .      | (F)    .      159 |< -
  *---------------------*--------------------*-------------------*
  | 127-4 .      .      | .    1237-6 x      | x      137-49 .   |      3
 >| .     3 #    4568-1 | x    .      .      | .      .      2 # |< 2
  | x     .      .      | .    x      1237-5 | 137-8  x      .   |      2
  *---------------------*--------------------*-------------------*
 >| .     1 #    4569-3 | 7#   .      .      | .      .      x   |< 2
 >| .     4569-7 2 #    | x    .      .      | .      .      3 # |< 2
  | x     .      .      | .    x      123-4  | 127-6  x      .   |      2
  *---------------------*--------------------*-------------------*  -   -
          ^      ^        ^                                  ^      8   9
  Internal: # = true, x = false    External: (T) = true (F)= False

(1237)Shark:r23578c2349
Truths Home Min = 8 + 1(r3), Away Max = 9
Home r2c2,r5c3,r7c3,r8c2 <> 1237, Away r1c17,r4c18,r6c67,r9c67 <> 45689 (no eliminations possible in r3)

Again an extra line must be added to bring the total to 9, and by chance whatever line is selected, the minimum home truths always exceed the maximum away ones by one. Row 3 has therefore been arbitrarily selected.

Lacking a balance, the true and false cells outside the home and away regions are now also shown to allow possible adjustments to be checked.

In row 3 there are no known truths, but because two of the external cells are false, one of the floating cells must be true for the row to contain each of the four member digits. The simple minimum home truth count of 8 can therefore be increased to 9 which balances the number of maximum away truths. Eliminations can therefore be made in all the other rows as before, but can't be made in row 6 because it's uncertain which of the four floating cells must be true.

Similar adjustments can be made to the maximum number of away truths count when external truths already exist in a house to limit the number that the away cells could hold.

Valid adjustments can be identified by checking rows, columns, or boxes, but different adjustments can only be added together if there is no overlap between the sets of uncertain cells in the different houses.

SK Loop Example: Show
........1.6...9.3...2.3.7..4..8.5........6....3.9...8...1.....4.5...8.9.7.....2..Cola199 (Morphed)
Code: Select all
    v             v                               v             v   
  *----------------------*----------------------*----------------------*
 >| 3589   4789   345789 | 24567  245678 247    | 45689  2456   1  #   |<
  | 158    6      4578   | 12457  124578 9      | 458    3      258    |
 >| 1589   1489   2 #    | 1456   3      14     | 7 #    456    5689   |<
  *----------------------*----------------------*----------------------*
  | 4      1279   679    | 8      127    5      | 1369   1267   23679  |
  | 12589  12789  5789   | 3      1247   6      | 1459   12457  2579   |
  | 1256   3      567    | 9      1247   1247   | 1456   8      2567   |
  *----------------------*----------------------*----------------------*
 >| 23689  289    1 #    | 2567   25679  237    | 3568   567    4 #    |<
  | 236    5      346    | 12467  12467  8      | 136    9      367    |
 >| 7 #    489    34689  | 1456   14569  134    | 2 #    156    3568   |<
  *----------------------*----------------------*----------------------*
    ^             ^                               ^             ^

In the example if (4)r1c1 existed as a given, there would be an SK loop in boxes 1379. The diagram shows the digit set to use and the rows and columns to select when an SK Loop or Almost Loop is identified. The missing 9th line can then be chosen from one of those in the vacant stack or tier that gives the best balance.

Stripped down this example provides a simple balance:
Code: Select all
    v             v                v               v             v       H   A
  *-----------------------*----------------------*-------------------*  Min Max
 >| x      .      3589-47 | .      568-247 .     | 5689-4 .      1 # |<  1
  | .      x      .       | 1247-5 .       x     | .      x      .   |       1
 >| 589-1  .      2 #     | .      x       .     | 7 #    .      x   |<  2
  *-----------------------*----------------------*-------------------*
  | .      127-9  .       | x      .       x     | .      127-6  .   |       2
  | .      127-89 .       | x      .       x     | .      1247-5 .   |       2
  | .      x      .       | x      .       1247# | .      x      .   |       1
  *-----------------------*----------------------*-------------------*
 >| 3689-2 .      1 #     | .      569-27  .     | x      .      4 # |<  2
  | .      x      .       | 1247-6 .       x     | .      x      .   |       1
 >| 7 #    .      3689-4  | .      569-14  .     | 2 #    .      x   |<  2
  *-----------------------*----------------------*-------------------*   -   -
    ^             ^                ^               ^             ^       7   7

(1247)Shark:r1379c13579
Truths Home Min & Away Max = 7
Home r1c357,r3c1,r7c15,r9c5 <> 1247, Away r2c4,r4c28,r5c28,r8c4 <> 35689

Often, to get all the eliminations available, a second 'twin' balance is required with the 9th line running in the opposite direction.

When an ordinary SK Loop exists, the eliminations produced by twin balances will be equivalent to those produced by the SKL logic and any locked set eliminations that directly follow it. The SKL option is easiest when it can be seen that locked sets will be formed, otherwise the Shark option will ensure that no eliminations will be missed.
David P Bird
2010 Supporter
 
Posts: 957
Joined: 16 September 2008
Location: Middle England

PreviousNext

Return to Advanced solving techniques