Ocean wrote:Nice puzzles, gsf! A few comments:
thanks for the analysis
there are some positions where my solver finds more than one order
n x-wing (n=3 swordfish n=4 jellyfish) and I don't think they are duals
typically one is for columns, the other for rows, both on the same cell value,
but involving different cells
I'll annotate your analysis with my solver -v2 x-wing trace that lists the
cell value, rol/col orientation, the order, and the cells
- Code: Select all
puzzle #1:
First: Swordfish (cell pattern 2+2+2; 3+1+0 eliminations).
Later: Jellyfish (cell pattern 3+2+2+2; 2+1+1+0 eliminations).
8:r/4:[13][14][16][18]/[43][44][46][48]/[63][64][66][68]/[73][74][76][78]
8:c/4:[31][51][81][91]/[35][55][85][95]/[37][57][87][97]/[39][59][89][99]
No alternative paths (only one instance available each time).
puzzle #2:
First: Two alternative quads (naked or hidden; same box; quint counterparts).
A. Naked quad: Later Jellyfish (one choice, and solves the puzzle).
7:r/4:[23][24][25][28]/[43][44][45][48]/[53][54][55][58]/[83][84][85][88]
7:c/4:[31][61][71][91]/[32][62][72][92]/[36][66][76][96]/[37][67][77][97]
B. Hidden quad: Later Jellyfish (one choice, and solves the puzzle).
puzzle #3:
First: Swordfish (cell pattern 3+2+2; 2+2+1 eliminations) (one choice).
7:r/3:[22][23][29]/[42][43][49]/[92][93][99]
7:c/4:[31][51][71][81]/[34][54][74][84]/[36][56][76][86]/[37][57][77][87]
Later: Jellyfish (cell pattern 4+4+3+2; 3+2+2+1 eliminations) (one choice).
4:r/4:[12][13][15][18]/[22][23][25][28]/[42][43][45][48]/[92][93][95][98]
4:r/4:[31][51][71][81]/[34][54][74][84]/[36][56][76][86]/[37][57][77][87]
puzzle #4:
First:Swordfish (cell pattern 2+2+2; 3+2+1 eliminations) (one choice).
8:r/3:[32][35][37]/[62][65][67]/[72][75][77]
8:c/4:[11][21][41][81]/[14][24][44][84]/[16][26][46][86]/[19][29][49][89]
Later:Another Swordfish (cell pattern 3+2+2; 3+2+0 eliminations) (one choice).
if the doubles are duals then my code (and brain) certainly missed that
now I'll comment on how I coaxed the solver to filter superior-plus
please don't take this as a plug for my solver per-se
the main point is that there is a concise notation that can be used to describe
superior+ and other similar puzzle collections
first, the techniques are labeled by a letter and a digit for order (size)
T=naked-tuple H=hidden-tuple B=box-line W=x-wing G=backtrack-guess
T1=naked-single W4=jellyfish etc.
the -q option controls the techniques in scope and the application order
{...} groups techniques to be applied as a batch, batch meaning all techniques
within a group are first identified at the current position, and then they are applied in one batch
in batch (-B) mode: at each position the solver starts with the left most group
and checks if any techniques progress the puzzle,
if so then all techniques that progress the puzzle are identified,
and then applied as a batch, and the solver restarts with the first group again
if the current group does not progress the puzzle then the next group
is attempted, and so on
if no groups progress the puzzle then it is rejected
group application is directly related to step counting
each application of a group counts as one step
(this matches the inferior/ulterior step counts)
here are the (-q) ordering expressions for some of the *erior threads
'-' before a technique in the order disables that and subsequent techniques
so -G means 'no guessing / backtracking'
finally, ':' within a group means 'commit the moves to this point'
but continue with the rest of the group (and still only count the
entire group as one step)
- Code: Select all
inferior {T1H1}-G
ulterior {B2:H1}-G
superior {T1H1BT2H2W2T3H3}-G
superior+ {T1H1BT2H2W2T3H3}{W3T4H4W4}-G
this is why I kept bugging this thread with minutiae
the next *erior thread can post a similar expression and (bonus) I won't ask any questions
so the superior+ has two groups as outlined by ocean
the first contains the non-plus techniques, the second the plus techniques,
(and then the -G because my solver requires backtacking to be explicitly disabled)
the filtering part involves expression on statistics gathered by the solver
these are named by singles letters with order digits, just like the techniques,
with extras like V:puzzle-is-solvable, In:#steps-for-group-n
so this (-e) expression was used to filter the recent 5 puzzle submission
- Code: Select all
V && I2>1
i.e., puzzle solvable with given constraints and the second group was applied
(required) in at least 2 steps
finally, since we can formulate superior+ in a manner to the other *eriors
the step counting is already done -- those are the n.n.n numbers in the
puzzle commentary -- <#steps>.<#plus-steps>.<#non-plus-steps>
so we can have a taxonomy of superior+ steppers
note that we haven't seen any >2 plus-steppers yet