Advanced methods and approaches for solving Sudoku puzzles

A lot of work went into ALS chains lately, especially in DonM's ALS chains tutorial and PIsaacson's overlapping ALS thread. In both threads various rules for RC adjacency were given. When reworking my ALS chaining code I tried to come up with an easy to use definition that covers all cases. Starting point are PIsaacson's latest rules. Here is my approach:

We try to add ALS2 to an ALS-Chain that currently ends in ALS1:
Collect all RCs between ALS1 and ALS2 (the Possible RCs (PRC))
Subtract the Actual RCs (ARC) used to reach ALS1 from the PRCs; what's left are the new ARCs
If no ARC is left the chain stops with ALS1.
If the chain starts with two PRCs one of them can be arbitrarily chosen as ARC

To prove the rules lets look at all possible combinations of RCs (we are only using ALS so the maximum number of RCs per ALS is 2).

1 ARC- ALS1 -1 PRC
This is only a reformulation of the rule that two adjacent RCs must not be equal.

1 ARC- ALS1 -2 PRCs
a- ALS1 -ab: b remains as new ARC, the chain can be continued.
a- ALS1 -bc: b and c are the new ARCs, the contradiction can be ignored (see below).

2 ARCs- ALS1 -1 PRC
ab- ALS1 -a: ARC a cancels PRC a, the chain cannot be continued.
ab- ALS1 -c: c becomes ARC, the contradiction can be ignored (see below).

2 ARCs- ALS1 -2 PRCs
ab- ALS1 -ab: No ARC remains, the chain stops.
ab- ALS1 -bc: c becomes ARC, the chain continues (contradiction ignored).
ab- ALS1 -cd: c and d become ARCs (contradiction ignored).

The whole thing works because the ARCs are deleted from the following ALS, thus wiping out the same candidate as possible RC for the next step.

A problem occurs when an ALS is reached via two ARCs: This leaves not enough candidates to fill all cells in the second ALS thus causing a contradiction (Allan Barker's "Locked Set" within the ALS-Chain?). For the chain this is completely irrelevant. All that matters is that the remaining candidates are locked within the ALS and thus can be used as RCs into another ALS.

It is possible to use the contradiction in another way: If a link with two ARCs occurs, the initial premise must be invalid. This turns the initial ALS into a locked set. The same logic can be applied to all ALS in the chain. An Example (e1, e2, e3 are the remaining candidates for the respective ALS):

x- ALS1:(x|e1|a) -a- ALS2:(a|e2|b) -b- ALS3:(b|e3|cd) -cd- ALS4 => contradiction!

The contradiction proofs, that only one of c/d can be true in ALS3. That locks (b|e3) in ALS3, which in turn locks (a|e2) in ALS2 and (x|e1) in ALS1. All candidates that see the locked sets can be eliminated.
This is nothing new of course: It is simply the Doubly Linked ALS-XZ ALS3/ALS4 plus subsequent Locked Set moves combined into one (and doing the ALS-XZ first and then the Locked Sets independently could provide even more eliminations).

Reversibility
Some of the combinations of RCs produce non reversible chains. As PIsaacson already noted this is irrelevant in case of "normal" ALS chains but it is relevant for Continuous ALS Loops. Take as an example the following chain:

a- ALS1:(a|e1|b) -(a)b- ALS2:(b|e2|c) -c- ALS3:(c|e3|a) -a

The chain will eliminate all candidates a that can see all occurences of a in both ALS1 and ALS3. The problem is the double link (ab) between ALS1 and ALS2: read from left to right everything works fine. a cannot be in ALS1 which locks (e1|b). b thus cannot be in ALS2 which locks (e2|c), which in turn locks (e2|a) in ALS3. The other direction doesnt work: if a is not in ALS3, (c|e3) becomes locked which in turn locks (b|e2) in ALS2. Unfortunately e2 contains a as well which eliminates a and b from ALS1 removing the possibility to use a as RC for the next step on the left side (or put another way: ALS1<>a => ALS3=a; ALS3<>a => ALS1<>a).
My understanding of Continuous Loops is limited but I always thought that the rule that weak links become conjugate links depends on the chain beeing reversable. Perhaps someone with more experience could verify/negate that?

Last edited by hobiwan on Thu Apr 02, 2009 12:01 pm, edited 1 time in total.
hobiwan
2012 Supporter

Posts: 321
Joined: 16 January 2008
Location: Klagenfurt

Regarding reversibility: I can't claim to have the experience or knowledge, but I am a convert to Denis Berthier's nrczt chains. One basic premise is that chains absolutely do not have to be reversible, but they do depend on a weak link from the CEC z targets to the chain start and end (except for whips and lassos and I won't go into that here.) In your final case, either ALS1 contains candidate a, or else it doesn't and then ALS3 does. There is no need to reverse the chain logic. It works fine in a single left-to-right progression and all z targets "candidates a that are peers of all occurrences of a in both ALS1 and ALS3" can be eliminated.

I'm still reviewing your descriptions, but I think you may be missing dual-link series: http://forum.enjoysudoku.com/viewtopic.php?p=67310#p67310

ab- ALS1 -ab is permitted provided you back-track and determine the entry/exit ARC/PRC. The chain need not stop. This greatly complicates the rules, but it allows ALS chains to subsume XY chains.

I think this is noble pursuit and I hope this thread becomes the definitive source for ALS chaining rules. I'm just not sure from my own work that it's possible to derive an "easy to use definition that covers all cases." I think you can either go easy, or cover all cases. Accomplishing both goals is the holy grail.

Cheers,
Paul
PIsaacson

Posts: 249
Joined: 02 July 2008

PIsaacson wrote:In your final case, either ALS1 contains candidate a, or else it doesn't and then ALS3 does. There is no need to reverse the chain logic. It works fine in a single left-to-right progression and all z targets "candidates a that are peers of all occurrences of a in both ALS1 and ALS3" can be eliminated.

Yes definitely! The point where I am not sure is in Continuous ALS Loops (looping back to the original ALS without causing a contradiction).

PIsaacson wrote:I'm still reviewing your descriptions, but I think you may be missing dual-link series: http://forum.enjoysudoku.com/viewtopic.php?p=67310#p67310

ab- ALS1 -ab is permitted provided you back-track and determine the entry/exit ARC/PRC. The chain need not stop. This greatly complicates the rules, but it allows ALS chains to subsume XY chains.

Dual-link series are covered: The left hand side of "ab- ALS1 -ab" in the examples above are ARCs and not PRCs. If you use the definitions from above and differentiate between ARCs and PRCs a chain like:

PRCs: a- ALS1 -ab- ALS2 -ab- ALS3 -b

becomes:

ARCs: a- ALS1 -b- ALS2 -a- ALS3 -b

On the other hand:

PRCs: a- ALS1 -ab- ALS2 -ab- ALS3 -a

becomes:

ARCs: a- ALS1 -b- ALS2 -a- ALS3 - chain stops!

This removes the need for backtracking (and was the main reason I started this).

The example you quoted above can have three possible real cases:

PRCs: c- ALS1 -ab- ALS2 -a
PRCs: c- ALS1 -ab- ALS2 -b
PRCs: c- ALS1 -ab- ALS2 -ab

All three cases become:

ARCs: c- ALS1 -ab- ALS2 - chain stops!
hobiwan
2012 Supporter

Posts: 321
Joined: 16 January 2008
Location: Klagenfurt

hobiwan wrote:Dual-link series are covered: The left hand side of "ab- ALS1 -ab" in the examples above are ARCs and not PRCs.

Excellent! My bad for not reading/studying more. This will greatly simplify my RCD algorithm. I hated that back-tracking.
hobiwan wrote:The point where I am not sure is in Continuous ALS Loops (looping back to the original ALS without causing a contradiction).

This has greatly complicated my ALS engine. I treat it as either the loop is "legal" and continuous, or it isn't and then it's what Denis Bethier calls a "whip". Whips are generated whenever a chain results in a contradiction/conflict in logic, so the original assumption (RCD) is false and it can be eliminated from the starting ALS. Continuous loops have their own set of problems, especially since the discovery from Death Blossom that we should always test ALS chains to see if the start/end ALSs form a dual-link pair. From a programming POV, loops are not necessary in that all their eliminations will eventually be replicated by discovering all the various "slices" of the loop. Ignoring that, I believe your RCD rules must allow/account for loops/whips.
PIsaacson

Posts: 249
Joined: 02 July 2008

### Re: Restricted Common Adjacency Rules

hobiwan wrote:Take as an example the following chain:

a- ALS1:(a|e1|b) -(a)b- ALS2:(b|e2|c) -c- ALS3:(c|e3|a) -a

[...]
The other direction [ed: right-to-left] doesnt work: if a is not in ALS3, (c|e3) becomes locked which in turn locks (b|e2) in ALS2. Unfortunately e2 contains a as well which eliminates a and b from ALS1 removing the possibility to use a as RC for the next step on the left side (or put another way: ALS1<>a => ALS3=a; ALS3<>a => ALS1<>a).

I've never done well trying to interpret someone else's symbolic chains, so would you please provide an example for the above? An example from an actual puzzle is preferable.

hobiwan wrote:My understanding of Continuous Loops is limited but I always thought that the rule that weak links become conjugate links depends on the chain beeing reversable. Perhaps someone with more experience could verify/negate that?

I believe that thinking is correct. Strictly speaking, however, a discontinuous loop that can't be read right-to-left is not a nice loop either.
ronk
2012 Supporter

Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

### Re: Restricted Common Adjacency Rules

ronk wrote:would you please provide an example for the above?

From the 17 collection:
Code: Select all
`000005200400100000000060030000300060050000000070000000601400000000020507000000800 #2231:9003:8:.+6...52..4..1..+6+5.....6..3....3...6+5.5........7.+5.....6+814+5+7.......2.5+17.+2.+9..8+4+6:386 391 393:826 836 884:.----------------------.------------------------.----------------------.| 13789    6    3789   |AC78     34789   5      | 2      789    1489   || 4       B39   23789  |  1     B3789   B23-89  | 6      5     B89     || 125789   19   25789  | C278    6       24-89  | 1479   3      1489   |:----------------------+------------------------+----------------------:| 1289     149  2489   |  3      14789   12489  | 1479   6      5      || 12389    5    234689 |  2678   14789   124689 | 13479  2789   123489 || 12389    7    234689 |  5      1489    124689 | 1349   289    123489 |:----------------------+------------------------+----------------------:| 6        8    1      |  4      5       7      | 39     29     239    || 39       349  349    | C6-8    2      D68     | 5      1      7      || 57       2    57     |  9     D13     D13     | 8      4      6      |'----------------------'------------------------'----------------------'Almost Locked Set Chain: 8- r1c4 {78} -7- r2c2569 {23789} -2(!!!27!!!)- r138c4 {2678} -6- r89c6,r9c5 {1368} -8 => r23c6,r8c4<>8030020000000500070000000010040030600000000200100000000006000403500701000000800000 #17717:9003:8:.3..2..+6....5..+37....+3...1..4..3.6+9.+3.....2+4.1.....+7+3.+7+16...4+835+8+37+41+9+2+6...8+6+3+1+5+7:913 519 819 622 923 829 232 632 932 933 539 839 952 656 262 962 666 993:817 831 833 835 836:.------------------------.----------------------.---------------.| C489      3     14578  | 149    2      4789   |  5-8  6  D49  || C24689   C29   C1248   | 5     B189    4689   |  3    7  D249 || C246-89 AC57   C2457-8 | 3     B7-89   467-89 |AD58   1  D249 |:------------------------+----------------------+---------------:|  28       4     2578   | 12     3      2578   |  6    9   158 ||  3        567   5789   | 169    15789  5789   |  2    4   158 ||  1        56    2589   | 2469  B589    24589  |  7    3   58  |:------------------------+----------------------+---------------:|  7        1     6      | 29    B59     259    |  4    8   3   ||  5        8     3      | 7      4      1      |  9    2   6   ||  249      29    24     | 8      6      3      |  1    5   7   |'------------------------'----------------------'---------------'Almost Locked Set Chain: 8- r3c27 {578} -7- r2367c5 {15789} -1(!!!17!!!)- r123c1,r2c23,r3c23 {12456789} -5- r123c9,r3c7 {24589} -8 => r1c7,r3c1356<>8240000000000000019000000080100504000809000000000600200070400300000010000050000000 #28367:9003:8:24.......+7+8.....19+9+1.....8+21.+75.4...8.9......+5+3+46..2..+67.4..3...+9+2.1.....5.......:313 314 714 315 515 615 715 316 516 616 716 737 457 875 975 487 393 895 995 497:845:.--------------.-------------------------.-------------------------.| 2   4   A56  | B189    AC89     B189    | A567    A3567   A3567   || 7   8    356 |  23      23456   2356   |  456     1       9      || 9   1    356 |  37      34567   3567   |  456     8       2      |:--------------+-------------------------+-------------------------:| 1   26   7   |  5      D23-89   4      | E689    E369    E368    || 8   26   9   | D1237   D237    D1237   | E1567   E34567  E134567 || 5   3    4   |  6      D789     1789   |  2      E79      178    |:--------------+-------------------------+-------------------------:| 6   7    18  |  4       25      2589   |  3       259     158    || 34  9    2   |  378     1       35678  |  5678    4567    45678  || 34  5    18  |  23789   2367    236789 |  16789   24679   14678  |'--------------'-------------------------'-------------------------'Almost Locked Set Chain: 8- r1c35789 {356789} -9(!!!89!!!)- r1c46 {189} -8(!!!89!!!)- r1c5 {89} -9(!!!89!!!)- r456c5,r5c46 {123789} -1- r4c789,r5c789,r6c8 {13456789} -8 => r4c5<>8`

Take the first example and move backwards:

r8c6<>8 => Locked Set r89c6,r9c5 {136} => r8c4<>6
r8c4<>6 => LS r138c4 {278} => r2c5<>7,r2c6<>2
r2c5<>7,r2c6<>2 => LS r2c2569 {389}
the last set has only 3 candidates for 4 cells but that is not the problem: Its RCD with r1c4 was 7 and there is no 7 left -> the chain doesnt work.

The eliminations are correct though, the ALS chain works as Forcing Chain.
hobiwan
2012 Supporter

Posts: 321
Joined: 16 January 2008
Location: Klagenfurt

I love 'em! All 3 are overlapping cannibalistic ALS chains!!! Congratulations on finding these.
PIsaacson

Posts: 249
Joined: 02 July 2008

### Re: Restricted Common Adjacency Rules

hobiwan wrote:Some of the combinations of RCs produce non reversible chains.

Hobiwan : there is no such thing as an irreversible chain...(well I can't imagine one)...on the other hand chains that involve grouped nodes of any sort including memory which is the simplest sort, reverse as nets.
If you don't consider a net as a chain, then of course you would be right.
As regards loops and conjugate links :
if there are grouped nodes, then great care must be taken in the analysis : there may still be conjugates : the analysis will reveal which.
Code: Select all
`000005200400100000000060030000300060050000000070000000601400000000020507000000800 #2231:9003:8:.+6...52..4..1..+6+5.....6..3....3...6+5.5........7.+5.....6+814+5+7.......2.5+17.+2.+9..8+4+6:386 391 393:826 836 884:.----------------------.------------------------.----------------------.| 13789    6    3789   |AC78     34789   5      | 2      789    1489   || 4       B39   23789  |  1     B3789   B23-89  | 6      5     B89     || 125789   19   25789  | C278    6       24-89  | 1479   3      1489   |:----------------------+------------------------+----------------------:| 1289     149  2489   |  3      14789   12489  | 1479   6      5      || 12389    5    234689 |  2678   14789   124689 | 13479  2789   123489 || 12389    7    234689 |  5      1489    124689 | 1349   289    123489 |:----------------------+------------------------+----------------------:| 6        8    1      |  4      5       7      | 39     29     239    || 39       349  349    | C6-8    2      D68     | 5      1      7      || 57       2    57     |  9     D13     D13     | 8      4      6      |'----------------------'------------------------'----------------------'Almost Locked Set Chain: 8- r1c4 {78} -7- r2c2569 {23789} -2(!!!27!!!)- r138c4 {2678} -6- r89c6,r9c5 {1368} -8 => r23c6,r8c4<>8`

As a hidden set aficionado, I would look at it like this :
78r13c4=2r34-2r2c6=(389)r2c269-(389=7)r2c5-(7=8)r1c4 : =><8>r12c5, r23c6, r58c4
More dividend for less work
Code: Select all
`240000000000000019000000080100504000809000000000600200070400300000010000050000000 #28367:9003:8:24.......+7+8.....19+9+1.....8+21.+75.4...8.9......+5+3+46..2..+67.4..3...+9+2.1.....5.......:313 314 714 315 515 615 715 316 516 616 716 737 457 875 975 487 393 895 995 497:845:.--------------.-------------------------.-------------------------.| 2   4   A56  | B189    AC89     B189    | A567    A3567   A3567   || 7   8    356 |  23      23456   2356   |  456     1       9      || 9   1    356 |  37      34567   3567   |  456     8       2      |:--------------+-------------------------+-------------------------:| 1   26   7   |  5      D23-89   4      | E689    E369    E368    || 8   26   9   | D1237   D237    D1237   | E1567   E34567  E134567 || 5   3    4   |  6      D789     1789   |  2      E79      178    |:--------------+-------------------------+-------------------------:| 6   7    18  |  4       25      2589   |  3       259     158    || 34  9    2   |  378     1       35678  |  5678    4567    45678  || 34  5    18  |  23789   2367    236789 |  16789   24679   14678  |'--------------'-------------------------'-------------------------'Almost Locked Set Chain: 8- r1c35789 {356789} -9(!!!89!!!)- r1c46 {189} -8(!!!89!!!)- r1c5 {89} -9(!!!89!!!)- r456c5,r5c46 {123789} -1- r4c789,r5c789,r6c8 {13456789} -8 => r4c5<>8`

89r16c5=7r6c5-(7=9)r6c8-(9=368)r4c789 : => <8>r4c5

BTW I do realise that you are thinking about this in computing terms, whereas I am looking at it as a solver.
I do nevertheless have a general "theory" that hidden set logic will deal with anything that ALS can do and quicker...except of course for the magnificent doubly-linked ALS (of which recently you posted a tremendous example)
Last edited by aran on Sat Apr 04, 2009 6:47 pm, edited 1 time in total.
aran

Posts: 334
Joined: 02 March 2007

### Re: Restricted Common Adjacency Rules

aran wrote:I do nevertheless have a general "theory" that hidden set logic will deal with anything that ALS can do and quicker...except of course for the magnificent doubly-linked ALS

Logically, of course, there is no such exception.

Four complementary and equivalent viewpoints for a Sue De Coq made from the pencilmarks here.
ronk
2012 Supporter

Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

The examples were not meant to be good I just made a quick scan to find ALS chains with a certain order of RCs to carry my point.

Reversibility: In my very simple minded view on reversibility I try to follow the chain from end to start using the exact same logic just in reverse order. This doesnt work for the examples. I decided not to try and code up ALS loops for now (PIsaacson is the only one who has done that as far as I know) so it is not so important for me now.
hobiwan
2012 Supporter

Posts: 321
Joined: 16 January 2008
Location: Klagenfurt

### Re: Restricted Common Adjacency Rules

ronk wrote:
aran wrote:I do nevertheless have a general "theory" that hidden set logic will deal with anything that ALS can do and quicker...except of course for the magnificent doubly-linked ALS

Logically, of course, there is no such exception.

Four complementary and equivalent viewpoints for a Sue De Coq made from the pencilmarks here.

Nice graphics.
I see that best as dual-linked ALSs with RCDs {1,9}, and the elims being those candidates that see each link in both sets.
BTW, by "exception" (above), I just meant that hidden sets approach won't for me get there as quick, since with dual-linked ALS, the elims can be reeled off.
aran

Posts: 334
Joined: 02 March 2007

aran wrote:I do nevertheless have a general "theory" that hidden set logic will deal with anything that ALS can do and quicker...

aran,

Could you please explain your hidden set logic general theory or point me to a url? I'm interested in anything related to ALS/AHS.

Thanks,
Paul
PIsaacson

Posts: 249
Joined: 02 July 2008

Aran wrote:As a hidden set aficionado, I would look at it like this :
78r13c4=2r34-2r2c6=(389)r2c2569-(389=7)r2c5-(7=8)r1c4 : =><8>r12c5, r23c6, r58c4
More dividend for less work

Aran, here's a simple doubly linked ALS, or ALS loop, which is quite similar to your logic. It leads to 8 = r2c9 and 9 mode eliminations.

A -3- B -9- A, where A = (39)r2c2, B = (23789) {r13c4, r2c56},

Code: Select all
`+----------------------+-----------------------+---------------------+| 13789   6     3789   |B(78)   349-78  5      | 2      789   1489   || 4      A(39)  278-39 | 1     B(3789) B(2389) | 6      5     8-9    || 125789  19    25789  |B(278)  6       49-28  | 1479   3     1489   |+----------------------+-----------------------+---------------------+| 1289    149   2489   | 3      14789   12489  | 1479   6     5      || 12389   5     234689 | 2678   14789   124689 | 13479  2789  123489 || 12389   7     234689 | 5      1489    124689 | 1349   289   123489 |+----------------------+-----------------------+---------------------+| 6       8     1      | 4      5       7      | 39     29    239    || 39      349   349    | 68     2       68     | 5      1     7      || 57      2     57     | 9      13      13     | 8      4     6      |+----------------------+-----------------------+---------------------+     5 Sets = {1N4 2N256 3N4}     5 Links = {39r2 278b2}     7 Eliminations -->  r2c39<>9, r1c5<>78, r3c6<>28, r2c3<>38r2c9 ==> r1356c9<>8, r1c8<>8, r2c356<>8,  (9 more eliminations)`

Aran wrote:BTW I do realise that you are thinking about this in computing terms, whereas I am looking at it as a solver. I do nevertheless have a general "theory" that hidden set logic will deal with anything that ALS can do and quicker...except of course for the magnificent doubly-linked ALS (of which recently you posted a tremendous example)

I agree with everything except the word "quicker", at least from a computational point of view. If one looks at Sudoku as a 3D cube, then look from the side, the terms hidden and naked would be (mostly) reversed, and the logic would come out about the same. I would agree that there is probably "more" and maybe a better variety of hidden logic.
.
Allan Barker

Posts: 266
Joined: 20 February 2008

Allan Barker wrote:here's a simple doubly linked ALS, which is quite similar to your logic.
5 Sets = {1N4 2N256 3N4}
7 Eliminations --> r2c39<>9, r1c5<>78, r3c6<>28, r2c3<>3
8r2c9 ==> r1356c9<>8, r1c8<>8, r2c356<>8, (9 more eliminations)

Very nice. What fine creatures these doubly-linked ALSs are.That one would or could be called a Sue de Coq since ultimately an SdQ involves a bivalue double-linking to an ALS.

Aran wrote:I do nevertheless have a general "theory" that hidden set logic will deal with anything that ALS can do and quicker...except of course for the magnificent doubly-linked ALS

Allan Barker wrote:I agree with everything except the word "quicker", at least from a computational point of view. If one looks at Sudoku as a 3D cube, then look from the side, the terms hidden and naked would be (mostly) reversed, and the logic would come out about the same. I would agree that there is probably "more" and maybe a better variety of hidden logic.

Quicker that was from a human manual solver's perspective, excluding Rank 0 structures - the quickest eliminators in the kingdom
aran

Posts: 334
Joined: 02 March 2007

PIsaacson wrote:
aran wrote:I do nevertheless have a general "theory" that hidden set logic will deal with anything that ALS can do and quicker...

aran,

Could you please explain your hidden set logic general theory or point me to a url? I'm interested in anything related to ALS/AHS.

Thanks,
Paul

Paul
The "theory" is in my head ...and there's no url to that !
What I can do is briefly outline what I mean.
Consider the approach that consists in building up a chain of ALS's.
The solver looks for ALS1, then for an RCD1, then for an ALS2, and RCD2 and so on.
He constructs that, then he looks at it.
Broadly I think that is how this approach works.

Now consider the hidden sets approach.
I'll use hidden pair as an example. Identical approach for hidden triple/quad.
The solver looks for a hidden pair : he'll see one or several almost immediately.
Say ab abc in r1c1, r3c1.
Immediate reaction :
- if there is a hidden pair ab, then any other (ab) in box1, col1 are eliminated
- all that lot are now precise targets for the chain in the next step which is
- if there is not a hidden pair, then abr13c2=cr3c1 holds (that is the crucial logic in all hidden set work)
- so examine that (objective : anything caught by both is eliminated)
All that happens very quickly.
I maintain
(a) if there is an ALS structure which starts from {abc} in r13c1, then the chain driven forward by the momentum from that first strong link will locate it naturally (ie "c" will search naturally for a weak link, which in an ALS context means exactly an RCD) : so no building up of ALSs RCDs etc, : the chain passes through them naturally, draws all their power, and doesn't even need to name them.
(b) since the hidden pair logic isn't all restricted to ALS chains, it has much wider scope.
In a word, faster and more wide-ranging.

Excluded from the above : doubly-linked ALSs : they are so powerful, that hidden set logic will be slower. The hidden sets solver needs to restrain his galloping stride to watch out for them !
aran

Posts: 334
Joined: 02 March 2007

Next