Local Area Sets and Three Dimensional Sudoku

Advanced methods and approaches for solving Sudoku puzzles

Postby Glyn » Sat Oct 04, 2008 2:21 am

champagne wrote:I had to use my dictionnary to find the meaning of "rookery". I have been surprised to learn that the best way to go fishing was to work on a colony of birds.:D


Perhaps for fishing a more plausible word would be 'hookery' although that might suggest something else.:) Rugby of course.:)
Glyn
 
Posts: 357
Joined: 26 April 2007

Postby champagne » Sat Oct 04, 2008 4:42 am

Hi Allan,

I just applied the idea to Fata Morgana rookeries 136.

I got the following results



Code: Select all
2458  2467  245678 |126789 16789 1678  |24589  1248  3     
2348  2347  1      |23789  3789  5     |6      248   249   
2358  9     2568   |12368  4     1368  |258    7     125   
----------------------------------------------------------
12348 12346 2468   |13678  13678 9     |2347   5     12467
7     12346 2469   |136    5     136   |2349   12346 8     
1389  5     689    |4      13678 2     |379    136   1679 
----------------------------------------------------------
145   8     457    |1367   2     13467 |3457   9     4567 
249   247   3      |5      6789  4678  |1      2468  2467 
6     1247  24579  |13789  13789 13478 |234578 2348  2457 


Should be cleared

2: r4c2
3: r2c1 r5c78 r6c1 r9c467
4: r4c2
6: r1c346 r4c9 r5c23 r8c9

And before the "slimfast" program has been applied, the following sets are in (112 in total).

N1,2 N1,3 N1,4 N1,5 N1,6 N1,8
N2,1 N2,2 N2,4 N2,5
N3,1 N3,3 N3,4 N3,6 N3,9
N4,1 N4,2 N4,3 N4,4 N4,5 N4,7 N4,9
N5,2 N5,3 N5,4 N5,6 N5,7 N5,8
N6,1 N6,3 N6,5 N6,7 N6,8 N6,9
N7,1 N7,4 N7,6 N7,7 N7,9
N8,5 N8,6 N8,8 N8,9
N9,2 N9,4 N9,5 N9,6 N9,7 N9,8
1R1 1R3 1R4 1R5 1R6 1R7 1R9
1C1 1C2 1C4 1C5 1C6 1C8 1C9
1B2 1B3 1B4 1B5 1B6 1B7 1B8
3R2 3R3 3R4 3R5 3R6 3R7 3R9
3C1 3C2 3C4 3C5 3C6 3C7 3C8
3B1 3B2 3B4 3B5 3B6 3B8 3B9
6R1 6R3 6R4 6R5 6R6 6R7 6R8
6C2 6C3 6C4 6C5 6C6 6C8 6C9
6B1 6B2 6B4 6B5 6B6 6B8 6B9

I start working on the "slimfast" process.

champagne
champagne
2017 Supporter
 
Posts: 7465
Joined: 02 August 2007
Location: France Brittany

Postby coloin » Sat Oct 04, 2008 5:03 am

i believe the "rookery" term came from the behaviour of birds on a telephone wire - they spread out as far as possible.

can be called a "template" too.

1-rookery = just one clue
2-rookery = two [18] clues etc

c
coloin
 
Posts: 2502
Joined: 05 May 2005
Location: Devon

Postby champagne » Sat Oct 04, 2008 5:24 am

Hi coloin
coloin wrote:Well , i thought it made sense:!:

using braid analysis [original def] could be used as a way of identifying the best level 4 tagging process.

c


I don't know if this apply to braid analysis, but I feel Allan rules could lead to a completely different path and this is a reason why I am working on it.


coloin wrote:i believe the "rookery" term came from the behaviour of birds on a telephone wire - they spread out as far as possible.

can be called a "template" too.

1-rookery = just one clue
2-rookery = two [18] clues etc

c


I knew the answer of ronk was not appropriate. A rook is not a fishing bird:D
champagne
2017 Supporter
 
Posts: 7465
Joined: 02 August 2007
Location: France Brittany

Postby Allan Barker » Sat Oct 04, 2008 7:50 am

Hi Champagne and Strmckr,

I am still making an overall summary to put on my website, but let me inject a few points here.

Champagne wrote:1) when you have a group of sets leading to actions (clearings or assignments), you can add any set, the already found clearing will stay valid.

true.

Champagne wrote:2) Reversely, you can check whether you have the minimal set trying to suppress sets one by one. If you still have the same actions. For sure, sets bearing actions must stay. At the end, you have a kind of “minimal set” for these actions

I mentioned there were two tricks to reducing complexity, the first was choosing the 'next set'.

The second involves finding a minimum set group (MSG). This is a real complex problem. Suppressing one set at a time works but is very slow for big problems. I know of no easy way to subtract a set from a group of permutations. Re-adding the whole series of sets minus 1 set will always work. Trick 2 is a faster way to find MSGs but it is a real hair raiser.

Other than this, there are only details and you have grasped the whole picture. There is always a lot of work to reduce complexity so your idea to find reduced methods is very good. The summary should fill in many of the details when I post it.

I added a plotter to see what some of these things look like. Below is a 'continuous' solution for Fata Morgana.

Gray bars = no. of permutations at each set addition.
Blue line: no. of total eliminations.
Red line: no. of total assignments.
Below: eliminated note, marked at correct horiz. position.

Note: You can see the first pair p422, p424 removed (FM loop 1), followed by p259, and then multiple eliminations from layers 3 and 6 (FM loop 2).

Image
Allan Barker
 
Posts: 266
Joined: 20 February 2008

Postby Allan Barker » Sat Oct 04, 2008 8:51 am

RonK wrote:
Champagne wrote:The simplest test is to consider a “floor” (I don’t re use the word layer to qualify all sets of the same digit because that word has another meaning in full tagging).

If your meaning is the pattern of all nine appearances of a single digit ... the proper term is rookery.

Floor already has a different generally-accepted meaning.


What would be a general word for everything to do with a single digit? I often say "The swordfish was in digit layer 8 " or "all the sets were in layers 1,2, and 5.

Edit: I see now that rookeries is being adopted here. Is 'layers' still OK for general use, outside of tagging?
Last edited by Allan Barker on Sat Oct 04, 2008 5:14 am, edited 1 time in total.
Allan Barker
 
Posts: 266
Joined: 20 February 2008

Postby Allan Barker » Sat Oct 04, 2008 9:13 am

Champagne wrote:Should be cleared

2: r4c2
3: r2c1 r5c78 r6c1 r9c467
4: r4c2
6: r1c346 r4c9 r5c23 r8c9

And before the "slimfast" program has been applied, the following sets are in (112 in total).

N1,2 N1,3 N1,4 N1,5 N1,6 N1,8
<more>
6B1 6B2 6B4 6B5 6B6 6B8 6B9

1. "Shoud be cleared" means these candidates are your targets or, your computation shows they are eliminated?

2. How did you choose the 112 sets?

Congratulatios if this is working so fast.:!:
. :
Allan Barker
 
Posts: 266
Joined: 20 February 2008

Postby champagne » Sat Oct 04, 2008 9:52 am

Allan Barker wrote:
Champagne wrote:Should be cleared

2: r4c2
3: r2c1 r5c78 r6c1 r9c467
4: r4c2
6: r1c346 r4c9 r5c23 r8c9

And before the "slimfast" program has been applied, the following sets are in (112 in total).

N1,2 N1,3 N1,4 N1,5 N1,6 N1,8
<more>
6B1 6B2 6B4 6B5 6B6 6B8 6B9

1. "Shoud be cleared" means these candidates are your targets or, your computation shows they are eliminated?

2. How did you choose the 112 sets?

Congratulatios if this is working so fast.:!:
. :



1) permutations show they are allways '0'. so the answer is "computation shows they are eliminated".

2)I entered directly in a kind of strategic selection telling the solver to work on "rookeries" 1;3;6.

112 s made of
. all sets int these rookeries,
.all nodes having one of the three digits.

taken in once in that "focusing strategy"


3) Processing time.

First step has been achieved in less than one second.

slim fast program one should not be as long as you think. Here, it took less than 30 seconds, which is too much, but I am in quick and dirty mode.


Degreasing the sets is nearly a linear problem (not exactly because we have to loop until we have a step without clearing. Here, 28 sets were suppressed in the second step, none in the third. So, Finally, less than 200 groups have been evaluated. Processing time seems to high, but the minimum is not so far in a set by set process.


To answer a question raised in another post, I don't think there is ony one way to "reduce the count". If you change the way you select the "next to test", you will likely find several different MinimumGroupSet Not so many, but no reason to have only one. (may be the contrary will be proven, but it f the process is ok, starting from my MGS I have no chance to come to your loop1.

champagne
champagne
2017 Supporter
 
Posts: 7465
Joined: 02 August 2007
Location: France Brittany

Postby ronk » Sat Oct 04, 2008 11:00 am

Allan Barker wrote:
RonK wrote:If your meaning is the pattern of all nine appearances of a single digit ... the proper term is rookery.

What would be a general word for everything to do with a single digit? I often say "The swordfish was in digit layer 8 " or "all the sets were in layers 1,2, and 5.

I not aware of a generally used or accepted term for that. When working with fishy exemplars, daj95376 and I just wrote "pencilmarks" or "pm" or "PM." The context made it clear that normal pencilmarks were filtered for all candidates of a single digit. Sometimes givens and placements were included, other times not.

"Layer" seems fine to me, but if we can single out a digit in a row with "8r7", I don't see why we can't single out all occurences of a digit with something like "8pm", or multiple digits with "125pm."

If champagne was also talking about all appearances of a single-digit in the pencilmarks, then my prior "rookery" answer was incorrect.
ronk
2012 Supporter
 
Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

Postby champagne » Sat Oct 04, 2008 11:50 am

ronk wrote:If champagne was also talking about all appearances of a single-digit in the pencilmarks, then my prior "rookery" answer was incorrect.


I think there is no doubt for Allan and me than we are lookng for a shared name for all candidates of the same digit.

Allan is using the word layer.
A layer in full tagging is the container of associated tags (say all candidates or groups of candidates linked by a strong inference).

I am reluctant to use the same word for two very different concepts, that's why I suggested "floor".

I find first floor, second floors sounds good for "candidates digits 1" "candidates digit 2" ... but I am flexible.

champagne
champagne
2017 Supporter
 
Posts: 7465
Joined: 02 August 2007
Location: France Brittany

Postby coloin » Sat Oct 04, 2008 1:11 pm

indeed......these possible templates rookeries layers or floors have been looked at in the "hardest thread" - albeit inconclusivly

Easter Monster had values of {8.18.18.32.39.41.41.130.148} per clue value.

Easy puzzles will have one rookery per clue value [the correct one] the only one which will fit in without breaking simple constraint rules.

c
coloin
 
Posts: 2502
Joined: 05 May 2005
Location: Devon

Postby ronk » Sat Oct 04, 2008 2:34 pm

coloin wrote:indeed......these possible templates rookeries layers or floors have been looked at in the "hardest thread" - albeit inconclusivly

Easter Monster had values of {8.18.18.32.39.41.41.130.148} per clue value.

If those are counts of templates [from the possible 46,656] that potentially match EM at the point of the SK loop, my numbers don't agree. [edit: Aargh! I was actually using pencilmarks after application of the SK loop.]
Last edited by ronk on Mon Oct 06, 2008 8:09 am, edited 1 time in total.
ronk
2012 Supporter
 
Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

Postby coloin » Sat Oct 04, 2008 2:44 pm

gsf and daj95376 "agreed" on a starting position, this must be before yours.:)
c
coloin
 
Posts: 2502
Joined: 05 May 2005
Location: Devon

Postby champagne » Sun Oct 26, 2008 6:37 am

Hi Allan,

Back from my trip, I worked on new ideas to find an efficient way to include your process in my solver.

I think my preliminary test can be used although there are likely still bugs in the program.

It’s not clear for me to understand how you focus on the most interesting subjects, but facts are there, you do it.

I started with Fata Morgana a preliminary process to detect which groups of floors can produce eliminations/assignments.

My first algorithm for permutations was very efficient with “one floor” and not two bad with “two floors” groups, but I got long processing time (say 10 minutes and more) to analyze all possible combinations of three floors. (four floors are used in the first EM loop).

Looking into detailed results, it appeared that most of the possible permutations are coming from nodes having extra candidates.

Here for example EM at the start. Your first loop for EM uses floors 1;2;6;7


Code: Select all
1      478   34578 |3567  3689  5678  |3489   369   2     
238    9     378   |4     12368 12678 |138    5     368   
23458  248   6     |1235  12389 1258  |7      139   3489 
---------------------------------------------------------
2468   5     1478  |9     1246  3     |128    1267  678   
234689 12468 13489 |126   7     1246  |123589 12369 35689
2369   1267  1379  |8     5     126   |1239   4     3679 
---------------------------------------------------------
7      148   14589 |1235  12348 12458 |6      239   3459 
456    3     145   |12567 1246  9     |245    8     457   
45689  468   2     |3567  3468  45678 |3459   379   1     


In the former process, all nodes having one candidate belonging to the floors were considered equally.
In the new one, only the nodes having no “extra candidate” are taken in the preliminary step.

Code: Select all
N:..................................X....X......X...X..............................
R:.XXXXXXX..XXXXXXX............................XX.XXX.XXXX.X.X.XX..................
C:.XXXXXXX.XX.XXXXX............................XX.XXX.XX.XXX.X.XX..................
B:.XXXXXXX.XX.XXX.XX............................XXXXXXX.XX.X.X.XX..................
  1        2        3        4        5        6        7        8        9 


Other nodes will come later

Code: Select all
HC.xxxxx.x.x.x.xxx.xxx.xxx.x.x.x.x.x.xxxx..xxxxx.x...x.x.xxxxx.x.x.xxx.x.xxx.xxx.x.


So the core is now 85 sets only.

Looking at valid permutations inside this “85 sets” group, I got only 11 possibilities.
If you extend the scope to all nodes in the line HC:, you have millions of permutations bringing nearly nothing to the study.

One so called “valid permutation” could be not valid if you extend the scope to the nodes of the line HC, but :

- if you take as valid one permutation, you can miss some possibilities of assignment/elimination, you will never create false data,
- It is enough to find one permutation including the HC: line to make the preliminary permutation definitely valid.

On top of assignments/eliminations of candidates in the field of our 85 nodes, we know which nodes of the line HC: have one candidate belonging to the floors. Nodes assigned in that way for all permutations can not have extra candidates.


Applying theses rules, I got at the end for floors 1;2;6;7
Code: Select all
Eliminations for
1: r3c5r5c367r7c35
2: r3c15r5c167r7c5
6: r1c5r5c169r9c15
7: r1c3
And seven nodes that must be filled by candidates 1;2;6;7
NE.............xx................x.....x.....x......................xx.............
  1        2        3        4        5        6        7        8        9       

Your loop 1 eliminations are included in that group. More are available and we could reach that position

Code: Select all
1      478   345 8 |3567  3 89  5678  |3489   369   2     
238    9     378   |4     12 6  1267  |138    5     368   
 3458  248   6     |1235    389 1258  |7      139   3489 
---------------------------------------------------------
2468   5     1478  |9     12 6  3     |128    1267  678   
 34 89 12 6   3489 |126   7       4   |  3589 12 6  3568 
2369   1267  1379  |8     5     126   |1239   4     3679 
---------------------------------------------------------
7      148    4589 |1235   2348 12458 |6      239   3459 
456    3     145   |12 67 1  6  9     |245    8     457   
45 89  468   2     |3567  34 8  45678 |3459   379   1     


With a first found digit r5c6=4. If you have a look to the solution given by my solver (V1), this is the first cell solved, but after a long long way.

No doubt that after your first loop you can find a second one achieving the task.




Applied to Fata Morgana (floors 136) we find

Code: Select all
2458  2467  245678 |126789 16789 1678  |24589  1248  3     
2348  2347  1      |23789  3789  5     |6      248   249   
2358  9     2568   |12368  4     1368  |258    7     125   
----------------------------------------------------------
12348 12346 2468   |13678  13678 9     |2347   5     12467
7     12346 2469   |136    5     136   |2349   12346 8     
1389  5     689    |4      13678 2     |379    136   1679 
----------------------------------------------------------
145   8     457    |1367   2     13467 |3457   9     4567 
249   247   3      |5      6789  4678  |1      2468  2467 
6     1247  24579  |13789  13789 13478 |234578 2348  2457 


Code: Select all
N:.......................................X.X..........X............................
R:X.XXXXX.X..........XXXXXX.X..................X.XXXXXX............................
C:XX.XXX.XX.........XX.XXXXX....................XXXXX.XX...........................
B:.XXXXXXX..........XX.XXX.XX..................XX.XXX.XX...........................
  1        2        3        4        5        6        7        8        9       
total =66 sets  to study
and the following nodes with extra candidates to consider
Code: Select all
HC.xxxxx.x.xx.xx....x.xx.x..xxxxxx.x.x.xx...xx.x.x.x.x.xx..x.xx.x....xx.xx.x.xxxxx.

I find 26 permutations with the following list of potential eliminations
Code: Select all
3: r2c1r5c78r6c1r9c467
6: r1c346r4c9r5c23r8c9
And the node N42 appears as the only one always filled by digits 1;3;6



I know there is still a lot to do to find the relevant groups for a sets/linksets analysis, but I feel much more comfortable at that point.
champagne
2017 Supporter
 
Posts: 7465
Joined: 02 August 2007
Location: France Brittany

Postby Allan Barker » Sun Nov 09, 2008 2:14 am

Champagne,

Here is the overdue description of how my slim program works, it is based on permutation string theory.:)


How a Permutation Solver Works

The permutation solver uses three steps to find and analyze logic, a find step, a slim step, and a weak-set assign step. The purpose here is to discuss the slim step within a little framework. This is purposely kept at the conceptual level because any attempt I might make at a detailed description is sure to cause confusion.

There is a working example at the bottom to make up for the brevity. This example is one of the first few eliminations from the puzzle TOP1465 #3. The elimination is rather small and makes a good example.

Find

The find program constructs a path made of sets while calculating the allowed permutations for each group of sets as the path develops. The permutations for each step are calculated differentially to save time. Each step is saved for future reference by the slim program. This find program can find different things depending on what is used to start the permutation database.
Code: Select all
Assertion                    Finds                    Produces
-----------------------------------------------------------------------
Falsehood           0 permutation condition          elimination path
Truth               1 permutation condition          puzzle solution
Truth               N permutation condition          multi-solutions
Set (1T +nF)        0 nodes in permutation base      elimination path
    (and)           1 permutation condidition        puzzle solution


Eliminations and assignments appear in the permutation data base as columns (equivalent to individual candidates) that become all 0s or all 1s respectivly.


Slim, Permutation String Theory

Slimming is probably the most complex step in the process.

Slimming defines an ordered set-space in which permutations become linear strings connecting an assertion (in set0) to a contradiction (in setN). It is useful to imagine a large bundle of permutations that connect set0 to setN, each set in the sequence then provides a constraint that can eliminate permutations in the bundle. The goal is to find which sets in the sequence are responsible for preventing which permutations from connecting one end of the set path to the other. Sets that block permutations must be in the solution, sets that don't can be discarded.

Step 1. One bundle of permutations is generated starting from the falsehood in set0 traveling through the ordered sets to setN. This bundle initially grows as more sets are added and then shrinks to 0 permutations as it reaches setN. This must happen because the truth (now a contradiction) in setN is not compatible (cannot share permutations) with the falsehood in set0. This fact was established in the initial find program. The exact order of sets is chosen to minimize the total number of permutations otherwise, it has no importance.

Step 2. A second bundle of permutations is generated starting with the truth (contradiction) on the right running in the opposite direction to the falsehood on the left. This bundle behaves the same way except when it arrives at set0 there will be one permutation left that contains a truth at the same candidate that started the falsehood.

The trick to the algorithm is testing each permutation at each set on the way back to see if that set prevents any left permutations from joining right permutations. More specifically, a falsehood permutation from the left cannot be allowed to connect to a truth permutation from the right. If that happens, then there is no elimination. The sets that prevent this from happening belong to the set logic solution and the others can be discarded.
Code: Select all
                                  ****--------------
                            *****************-------
                      ****************************--
          ****************-------------------------- perm a
  S0****S1****S2****S3****S4----S5----S6----S7----SN
         
         forward -------->
                            <-----------return

  S0----S1----S2****S3****S4****S5****S6****S7****SN
  --------------------------****************-------- perm a
  --------------------****************--------------
  --****************************--------------------
  --------**********--------------------------------
               ^S2 discarded
                          ^S4 retained

---- logical permutation
****   valid permutation


The algorithm conceptually turns a complex problem into a linear one, at least from the implementer's point of view. The complexity is retained inside of the permutations.


Assigning Linksets

Although discovering which sets can be linksets and which must be sets is a complex problem, it is not computationally difficult because this has been already decided by the logic form produced by slim. Well almost, occasionally there may be multiple choices but these will always produce the same eliminations with the same group of sets.

This process can be dome in to steps to save time. The first step recognizes that any time a candidate is contained in only one set, that set must be a weak set. Other simple heuristics can also be used, the last step is to test remaining sets individually.

Example

The following is an example printout generated to debug the original algorithm when it was being developed, some of the output lines are not important. The main points are the forward pass and the reverse order pass. The permutation base (sometimes just one permutation) is shown for each step.

Do not trust the output as absolute truth as I cannot be sure what I was tweaking at the time. However, it is a good example for visualizing the process.

Code: Select all
FORWARD BUNDLE

load count = 844
25.211.4 R29  1.94  p266      --        996-351
Cont =================1======================== (initial falsehood)
c66+ ________1________1_______________1____1___ (added set)
     ........0........1...............0....0... (perm base '.' = empty)
b26+ ______111_______11____________11__________
     ......000.......01............00.0....0...
r16+ _____1111_________________________________
     .....1000.......01............00.0....0...
c56+ _______1_______________________11____1__1_
     .....1000.......01............0010...00.0.
     .....1000.......01............0000...10.0.
     .....1000.......01............0000...00.1.
b56+ ________________________________11________
     .....1000.......01............0010...00.0.
n95+ ________________________________________11
     .....1000.......01............0010...00.01
c58+ __________________________________11___1_1
     .....1000.......01............001000.00001
n75+ ____________________________________11_1__
     .....1000.......01............001000100001
c55+ ____1_______________________1_______1_____
     ....01000.......01..........0.001000100001
n35+ _____________________1______1__1__________
     ....01000.......01...1......0.001000100001
B21+ 11_______1__________11____________________
     00..010000......01..01......0.001000100001
r31+ __________________111111__________________
     00..010000......01000100....0.001000100001
b16+ _____1________11_____________1____________
     00..010000....0001000100....00001000100001
n31+ __________________1_____1_1__1____________
     00..010000....00010001001.0.00001000100001
     00..010000....00010001000.1.00001000100001
b14+ __________11____________11________________
     00..01000000..0001000100100.00001000100001
     00..01000010..0001000100001.00001000100001
     00..01000001..0001000100001.00001000100001
     00..01000000..0001000100011.00001000100001
n23+ ___________1_1_1__________________________
     00..01000000.10001000100100.00001000100001
     00..01000010.10001000100001.00001000100001
     00..01000001.00001000100001.00001000100001
     00..01000000.10001000100011.00001000100001
b15+ __11________11____________11______________
     000001000000010001000100100000001000100001
     000001000001000001000100001000001000100001
n32+ ___________________1_____1_1______________
Contradiction in N32...
N32+ ___________________1_____1_1______________
     ===================0=====0=0==============




Code: Select all
REVERSE TRACE

+B15 __11________11____________11______________
SAVE ..11........11............11..............
PRE  11..11111111.11111111111111.11111111111111
RA1  .....1...........1...1..........1...1....1
RX1  ..........................................
RA0  11..1.1111....111.111.11....1111.111.1111.
RX0  ..11......1.1............1.1..............
 (1) 000001000001000001000100001000001000100001
 (1) 000001000000010001000100100000001000100001
B15+ __11________11____________11______________
     -------------1-----0-----00---------------
     -------------0-----0-----01---------------
ZOO  -------------1-----1-----11---------------

+N23 ___________1_1_1__________________________
SAVE .............1............................
PRE  11..11111111..1111111111111.11111111111111
RA1  .....1...........1...1..........1...1....1
RX1  ..........................................
RA0  11..1.1111....111.111.11....1111.111.1111.
RX0  ..........................................
 (1) 00--01000000-10001000100011-00001000100001
 (1) 00--01000001-00001000100001-00001000100001
 (1) 00--01000010-10001000100001-00001000100001
 (1) 00--01000000-10001000100100-00001000100001
N23+ ___________1_1_1__________________________
     -----------1---0---0-----00---------------
     -----------1---0---0-----01---------------
     -----------0---1---0-----00---------------
     -----------0---1---0-----01---------------
ZOO  -----------1---1---1-----11---------------

+B14 __________11____________11________________
SAVE ...........1.............1................
PRE  11..111111....11111111111.1.11111111111111
RA1  .....1...........1...1..........1...1....1
RX1  ..........................................
RA0  11..1.1111....111.111.11....1111.111.1111.

RX0  ..........................................
 (1) 00--01000000--0001000100011-00001000100001
 (1) 00--01000001--0001000100001-00001000100001
 (1) 00--01000010--0001000100001-00001000100001
 (1) 00--01000000--0001000100100-00001000100001
B14+ __________11____________11________________
     ---------------0---0----1-0---------------
     ---------------0---0----1-1---------------
     ---------------1---0----1-0---------------
     ---------------1---0----1-1---------------
ZOO  ---------------1---1----1-1---------------

+N31 __________________1_____1_1__1____________
SAVE ........................1.1...............
PRE  11..111111....1111111111....11111111111111
RA1  .....1...........1...1..........1...1....1
RX1  ..........................................
RA0  11..1.1111....111.111.11....1111.111.1111.
RX0  ..........................................
 (1) 00--010000----00010001000-1-00001000100001
 (1) 00--010000----00010001001-0-00001000100001
N31+ __________________1_____1_1__1____________
     ---------------0--10---------0------------
     ---------------1--10---------0------------
     ---------------0--00---------1------------
     ---------------1--00---------1------------
ZOO  ---------------1--11---------1------------

+B16 _____1________11_____________1____________
SAVE ...............1.............1............
PRE  11..111111......11111111....1.111111111111
RA1  .....1...........1...1..........1...1....1
RX1  ..........................................
RA0  11..1.1111......1.111.11....1.11.111.1111.
RX0  ..............11.............1............
 (1) 00--010000----0001000100----00001000100001
B16+ _____1________11_____________1____________
     -----1------------10----------------------
     -----1------------00----------------------
ZOO  -----1------------11----------------------

+R31 __________________111111__________________
SAVE ..................11......................
PRE  11..111111......11..11......1.111111111111
RA1  .....1...........1...1..........1...1....1
RX1  ..........................................
RA0  11..1.1111......1...1.......1.11.111.1111.
RX0  ..................11..11..................
 (1) 00--010000------01000100----0-001000100001
R31+ __________________111111__________________
     -----1---------------1--------------------
ZOO  -----1---------------1--------------------

+B21 11*******1**********11********************
SAVE ..........................................
PRE  ....11111.......11...1......1.111111111111
RA1  .....1...........1...1..........1...1....1
RX1  ..........................................
RA0  ....1.111.......1...........1.11.111.1111.
RX0  11.......1..........1.....................
 (1) 00--010000------01--01------0-001000100001
B21+ 11_______1__________11____________________
     -----1---------------1--------------------
ZOO  -----1---------------1--------------------

+N35 _____________________1______1__1__________
SAVE .....................1....................
PRE  ....11111.......11..........1.111111111111
RA1  .....1...........1..............1...1....1
RX1  .....................1....................
RA0  ....1.111.......1...........1.11.111.1111.
RX0  ..........................................
 (1) ----01000-------01---1------0-001000100001
N35+ _____________________1______1__1__________
     -----1----------------------1--0----------
     -----1----------------------0--1----------
ZOO  -----1----------------------1--1----------

+C55 ____1_______________________1_______1_____
SAVE ............................1.............
PRE  .....1111.......11............111111111111
RA1  .....1...........1..............1...1....1
RX1  ..........................................
RA0  ......111.......1.............11.111.1111.
RX0  ....1.......................1.............
 (1) ----01000-------01----------0-001000100001
C55+ ____1_______________________1_______1_____
     -----1-------------------------0----1-----
     -----1-------------------------1----1-----
ZOO  -----1-------------------------1----1-----

+N75 ____________________________________11_1__
SAVE ....................................1.....
PRE  .....1111.......11............111111.11111
RA1  .....1...........1..............1........1
RX1  ....................................1.....
RA0  ......111.......1.............11.111.1111.
RX0  ..........................................
 (1) -----1000-------01------------001000100001
N75+ ____________________________________11_1__
     -----1-------------------------0-----1-0--
     -----1-------------------------1-----1-0--
     -----1-------------------------0-----0-1--
     -----1-------------------------1-----0-1--
ZOO  -----1-------------------------1-----1-1--

+C58 __________________________________11___1_1
SAVE .......................................1..
PRE  .....1111.......11............1111...11.11
RA1  .....1...........1..............1........1
RX1  ..........................................
RA0  ......111.......1.............11.1...11.1.
RX0  ..................................11...1..
 (1) -----1000-------01------------001000-00001
C58+ __________________________________11___1_1
     -----1-------------------------0-----1---1
     -----1-------------------------1-----1---1
     -----1-------------------------0-----0---1
     -----1-------------------------1-----0---1
ZOO  -----1-------------------------1-----1---1

+N95 ________________________________________11
SAVE .........................................1
PRE  .....1111.......11............1111...11.1.
RA1  .....1...........1..............1.........
RX1  .........................................1
RA0  ......111.......1.............11.1...11.1.
RX0  ..........................................
 (1) -----1000-------01------------0010---00-01
N95+ ________________________________________11
     -----1-------------------------0-----1--1-
     -----1-------------------------1-----1--1-
     -----1-------------------------0-----0--1-
     -----1-------------------------1-----0--1-
ZOO  -----1-------------------------1-----1--1-

+B56 ________________________________11________
SAVE ................................11........
PRE  .....1111.......11............1111...11.1.
RA1  .....1...........1........................
RX1  ................................1.........
RA0  ......111.......1.............11.1....1...
RX0  .....................................1..1.
 (1) -----1000-------01------------0010---00-0-
B56+ ________________________________11________
     -----1-------------------------010---1--1-
     -----1-------------------------110---1--1-
     -----1-------------------------010---0--1-
     -----1-------------------------110---0--1-
     -----1-------------------------001---1--1-
     -----1-------------------------101---1--1-
     -----1-------------------------001---0--1-
     -----1-------------------------101---0--1-
ZOO  -----1-------------------------111---1--1-

+C56 _______1_______________________11____1__1_
SAVE ................................1....1..1.
PRE  .....1111.......11............11.1....1...
RA1  .....1...........1........................
RX1  ..........................................
RA0  ......111.......1.............11.1....1...
RX0  ..........................................
 (1) -----1000-------01------------0000---00-1-
 (1) -----1000-------01------------0000---10-0-
 (1) -----1000-------01------------0010---00-0-
C56+ _______1_______________________11____1__1_
     -----1-1-----------------------0-0--------
     -----1-1-----------------------0-1--------
     -----1-0-----------------------1-0--------
     -----1-0-----------------------1-1--------
ZOO  -----1-1-----------------------1-1--------

+R16 _____1111_________________________________
SAVE .....1....................................
PRE  ......111.......11............11.1....1...
RA1  .................1........................
RX1  .....1....................................
RA0  ......111.......1.............11.1....1...
RX0  ..........................................
 (1) -----1000-------01------------00-0----0---
R16+ _____1111_________________________________
     ------100----------------------1-0--------
     ------100----------------------1-1--------
     ------010----------------------0-0--------
     ------010----------------------0-1--------
     ------001----------------------1-0--------
     ------001----------------------1-1--------
ZOO  ------111----------------------1-1--------

+B26 ______111_______11____________11__________
SAVE ......11.......................1..........
PRE  ........1........1...............1....1...
RA1  .................1........................
RX1  ..........................................
RA0  ........1........................1....1...
RX0  ......11........1.............11..........
 (1) ------000-------01------------00-0----0---
B26+ ______111_______11____________11__________
     --------0--------1---------------0--------
     --------0--------1---------------1--------
     --------1--------1---------------0--------
     --------1--------1---------------1--------
ZOO  --------1--------1---------------1--------

+C66 ________1________1_______________1____1___
SAVE ........1........................1........
PRE  .................1........................
RA1  ..........................................
RX1  .................1........................
RA0  .................1........................
RX0  ........1........0...............1....1...
 (1) --------0--------1---------------0----0---
C66+ ________1________1_______________1____1___
     -----------------1------------------------
ZOO  -----------------1------------------------
 17set (18) r17 u_ f1 s=1


Edit: clean up spelling/wording
Last edited by Allan Barker on Sun Nov 09, 2008 12:58 am, edited 1 time in total.
Allan Barker
 
Posts: 266
Joined: 20 February 2008

PreviousNext

Return to Advanced solving techniques