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