## Fireworks

Advanced methods and approaches for solving Sudoku puzzles

### Re: Fireworks

shye wrote:
I need no kite; the elimination is done by a generic g-whip[2] (using the same cells as the kite):
g-whip[2]: r1n9{c9 c123} - c1n9{r2 .} ==> r9c9≠9
As for your pattern, my complexity scale was not designed to measure patterns that don't produce any elimination. But your kite example has convinced me that this can be defined as 2; the block is used only for providing contradiction links.

ok, so as far as im concerned these are equivalent (and do correct me if this is wrong, ive avoided using your terminology prior only because of lack of understanding)

We had this discussion already. They allow the same elimination. That doesn't mean they are the same thing. In particular, the elimination is not proven the same way.

shye wrote:a g-whip[2]/two-string kite consists of two CSP-variables/truths and one contradiction link/link
as a result of each technique, r1c9 & r9c1 contain at least one 9

I don't (want to) know how many contradiction links there are in my g-whip[2]. This is totally irrelevant to define its size (2).

shye wrote:if we can agree on that full statement, and that it has two CSP-variables, then i would expect the same to be valid in a firework

I can't see your point here. I already said I finally agreed on size 2 for your pattern.
In my quick dirty coding, I've used rows, columns, blocks, numbers - not the generic concepts. It made it look like having a bn CSP-Variable was necessary. But, after looking at it more carefully, it isn't.

With this made clear, what I'd like is examples of use that really reduce the rating of an elimination (in terms of CSP-Variables).
denis_berthier
2010 Supporter

Posts: 3676
Joined: 19 June 2007
Location: Paris

### Re: Fireworks

totuan wrote:Hi shye,
Very nice find!
Someone can find many way to present the same deductions, but based on your pattern I can find deductions quite easier and faster. Your examples are very nice and I’m especially like Cobra Roll, Roman Candle V2, Pear and Rocket.
I’ll study more and thank you for your sharing!

totuan

Like totuan said, this is a very nice new technique ! I am just starting out. The very first 'Firework Triple' is available to human solvers. To get those exclusions, YZF_Sudoku offers a rather elaborate MSLS :

MSLS : 29 Cells r23456c1239+r5c456,r79c12,r46c5,r8c13,29 Links 23r2,1r3,23r4,3r6,479c1,9c2,479c3,4789c9,6b1,156b4,1258b5,1256b7
12 Eliminations:r3c8<>1,r2c7<>2,r9c9<>4,r1c1<>6,r6c37,r1c1,r5c3,r9c9<>7,r1c9<>8,r1c19<>9

The Firework Triple is far easier to spot than the MSLS or any of the ALS moves.

Bravo !
ghfick

Posts: 216
Joined: 06 April 2016

### Re: Fireworks

ghfick wrote: To get those exclusions, YZF_Sudoku offers a rather elaborate MSLS :
MSLS : 29 Cells r23456c1239+r5c456,r79c12,r46c5,r8c13,29 Links 23r2,1r3,23r4,3r6,479c1,9c2,479c3,4789c9,6b1,156b4,1258b5,1256b7
12 Eliminations:r3c8<>1,r2c7<>2,r9c9<>4,r1c1<>6,r6c37,r1c1,r5c3,r9c9<>7,r1c9<>8,r1c19<>9
The Firework Triple is far easier to spot than the MSLS or any of the ALS moves.

In fact, for the same deletion, my solver also gave an ALS-XZ, which should be the complement of shye's Fire Triple. There is a technique called TSDC( Triple segments SDC) can also find this structure.
Code: Select all
`Almost Locked Set XZ-Rule: A=r1c45678 {126789},B=r123456c9 {1234789}, X=12, Z=/ => r3c8<>1 r2c7<>2 r9c9<>4 r1c1<>6 r1c1<>7 r3c4<>7 r6c7<>7 r9c9<>7 r1c9<>8 r1c9<>9 r1c1<>9 `

I agree that this is a good discovery. I am hesitant to include it in the solver.
yzfwsf

Posts: 671
Joined: 16 April 2019

### Re: Fireworks

denis_berthier wrote:They allow the same elimination. That doesn't mean they are the same thing. In particular, the elimination is not proven the same way.

ok, then i do not understand your notation & reasoning like i thought i did. ill probably stop trying lol

denis_berthier wrote:I can't see your point here. I already said I finally agreed on size 2 for your pattern.
In my quick dirty coding, I've used rows, columns, blocks, numbers - not the generic concepts. It made it look like having a bn CSP-Variable was necessary. But, after looking at it more carefully, it isn't.

With this made clear, what I'd like is examples of use that really reduce the rating of an elimination (in terms of CSP-Variables).

ah, my bad, i misread your initial post (thought you meant the kite pattern was size 2). sorry about that

for examples, some of my first few i posted are very difficult without the fireworks (at least with what yzf_sudoku offers)
in particular this puzzle:

Code: Select all
`Roman Candle V2 (minimal)skfr: 9.2..98..7......6.5..4...5...37.........35...28.........68...2...4.2..7....1.6..39..`

(after whips[1]) firework MSHS of size 8, one step solution
CSP-variables & eliminations: Show
or3: n1{r1c5!r5c5!r5c9}, r1n3, r5n9, r9n8, c1n6, c5n4, c9n7

=> -25r1c1, -25r9c9, -1b5p1379
effective eliminations for stte: -5r1c1, -25r9c9

yzfwsf wrote:In fact, for the same deletion, my solver also gave an ALS-XZ, which should be the complement of shye's Fire Triple. There is a technique called TSDC( Triple segments SDC) can also find this structure.

i didnt know of triple segment SDC, that sounds exactly like the complement to these small hidden sets! i didnt realise until afterwards that some SDC's didnt have an exact hidden counterpart, only when the box ALS aligned in a miniline

ghfick wrote:The Firework Triple is far easier to spot than the MSLS or any of the ALS moves.

Bravo !

happy to hear this, thank you!

shye

Posts: 245
Joined: 12 June 2021

### Re: Fireworks

.
some new stuff to report!
firstly, i made another puzzle:

Code: Select all
`+-------+-------+-------+| . . 5 | . . 2 | 3 7 . || 1 . . | . 5 . | . . 4 || 2 . . | 3 . . | . . 1 |+-------+-------+-------+| 3 . . | 9 . . | . . 6 || 4 . . | . . . | . 5 . || . 1 . | . . 8 | 9 . . |+-------+-------+-------+| . . . | . . . | . . 5 || . . . | 8 . . | . . . || . . . | . 4 6 | 2 1 . |+-------+-------+-------+Kimono - shyeskfr 7.7..5..237.1...5...42..3....13..9....64......5..1...89..........5...8.........4621..-------------------------.--------------------.-------------------.|x689   4689     5        | 146   1689   2     | 3     7     #89   || 1     36789    36789    | 67    5      79    | 68    2      4    || 2     46789    46789    | 3     6789   479   | 5     689    1    |:-------------------------+--------------------+-------------------:| 3     2578     278      | 9     127    45    | 1478  48     6    || 4     26789    26789    | 1267  12367  137   | 178   5      2378 || 567   1        267      | 45    2367   8     | 9     34     237  |:-------------------------+--------------------+-------------------:| 6789  2346789  12346789 | 127   12379  1379  | 4678  34689  5    || 5679  2345679  1234679  | 8     12379  13579 | 467   3469   379  ||x89-57 35789    3789     | 57    4      6     | 2     1     x3789 |'-------------------------'--------------------'-------------------'`

original post

this was made to be a simpler version of Hanabi. it can be thought of with the same "firework exocet" type viewing, but is probably easier in this s-wing-like form:
8r9c1 = 8r1c1&8r9c9 - (8=9)r1c9 - 9r1c1&9r9c9 = 9r9c9
=> -57r9c1
solves with a turbot fish

i thought since exocet is rather complicated/has a lot of situational eliminations, i would try to give a less jargon-filled explanation of both of these puzzles. starting with Kimono
the main idea is that whatever is placed in r1c9 (our base cell) that digit will be placed in r9c1 (the target) because each candidate in the base has a weak link to all but one of the firework candidates
so if its an 8, say, then 8 in column 1 and row 9 become limited to the intersecting box, and therefore takes the intersecting cell (and same with 9)

for Hanabi its the same idea just with more moving parts

Code: Select all
`.---------------------.-----------------.----------------.| x689     1     2    | 46-9  7    4689 | 3    5   B89   ||  3       589   569  | 2     69   1    | 4    89   7    ||  4       789   79   | 5     3    89   | 2    1    6    |:---------------------+-----------------+----------------:|  2       59    359  | 3469  169  4569 | 589  7    1589 ||  1       6     3579 | 379   8    579  | 59   4    2    || x579     4     8    |B79    129  2579 | 6    3    15-9 |:---------------------+-----------------+----------------:|  5679    3     1    | 8     269  2679 | 579  69   4    ||  6789    2     4    | 1     5    679  | 789  689  3    ||xT789-56  5789  5679 |x679   4    3    | 1    2   x589  |'---------------------'-----------------'----------------'`

there are two base cells now, r1c9 and r6c4
the candidates of which align with the fireworks 789r9c1b7 suspiciously

lets graph out the combinations of these cells to get a better picture of how they work
Code: Select all
`8r1c9 ------ 9r1c9  ->  8r9c1  |            |  |            |7r6c4 ------ 9r6c4  ->  7r9c1  |            |  v            v7r9c1 &      9r9c18r9c1contradiction`

in each combination, a value of [789] is placed in r9c1, because the appropriate firework is reduced to one position left
=> -56r9c1
for one of those combinations, 8r1c9 & 7r6c4, it suggests that r9c1 has to hold two candidates which is a contradiction
so there are only 3 working combos, and all of them require either 9r9c1 or 9r6c4, which is a strong link between those candidates
=> -9r1c4, -9r6c9

the remaining eliminations in these puzzles can then be done with 2-string kites (turbot fish)
for neatly tying these pieces together you can consider all possible fireworks in the lines of the f-exocet and then anything incompatible with the bases will lead to kites

shye

Posts: 245
Joined: 12 June 2021

### Re: Fireworks

and the last thing which i just wanted to make as a separate post, jovi_al did me a massive favor again and generated a bunch of puzzles with the dual firework ALP setup i had in Takabisha
from this generation came an absolute ton of difficult puzzles, the highest SER of which being 9.6 but most in the 8.9 - 9.1 range

my favorite of these was this one:

Code: Select all
`+-------+-------+-------+| . . . | 4 . 6 | . . . || . 1 2 | . 3 . | 5 . . || . . . | . . . | . 7 . |+-------+-------+-------+| 8 . . | . . 4 | . . 7 || . 6 . | 7 . . | . 5 . || 5 . . | . 8 . | . . 9 |+-------+-------+-------+| . . 3 | . . . | . 2 . || . . . | . 9 . | . 1 . || . . . | 3 . 5 | . . . |+-------+-------+-------+Kingda Ka - shye & jovi_alskfr 9.1...4.6....12.3.5.........7.8....4..7.6.7...5.5...8...9..3....2.....9..1....3.5...`

(made minimal by removing 5r2c7)
after the dual firework ALP its lclstte for both the minimal and symmetric versions

but the big stand-out in terms of technique security was these two sister puzzles (nearly identical, just have some 1s and 2s swapped)

Code: Select all
`+-------+-------+-------+   +-------+-------+-------+| . 8 . | 4 . 5 | . . . |   | . 8 . | 4 . 5 | . . . || . 1 2 | . 3 . | . . . |   | . 1 2 | . 3 . | . . . || . . . | . . . | . 6 . |   | . . . | . . . | . 6 . |+-------+-------+-------+   +-------+-------+-------+| 3 . . | . . 4 | . . 7 |   | 3 . . | . . 4 | . . 7 || . 6 . | 7 . . | . 5 . |   | . 6 . | 7 . . | . 5 . || 7 . . | . 8 . | . . 9 |   | 7 . . | . 8 . | . . 9 |+-------+-------+-------+   +-------+-------+-------+| . . . | . . . | 1 . . |   | . . . | . . . | 2 . . || . . . | . 9 . | 2 . . |   | . . . | . 9 . | 1 . . || . . . | 3 . 6 | . . . |   | . . . | 3 . 6 | . . . |+-------+-------+-------+   +-------+-------+-------+Comet Tiamat - shye & jovi_alskfr 9.3.8.4.5....12.3...........6.3....4..7.6.7...5.7...8...9......1......9.2.....3.6....8.4.5....12.3...........6.3....4..7.6.7...5.7...8...9......2......9.1.....3.6...`

in yzf_sudoku these puzzles each needed brute force, but after applying the DFALP they become much more manageable (a couple orange-level deductions to wrap up)

since i know denis berthier was interested in puzzles in which the techniques substantially reduce the rating of an elimination in terms of CSP-variables, this seems like the perfect example
the dual firework ALP is made up of 9 CSP-variables
CSP-variables & eliminations: Show
or3: n1{r1c5!r1c9!r5c9}, or3: n2{r1c5!r1c9!r5c9}, or3: n1{r5c1!r9c1!r9c5}, or3: n2{r5c1!r9c1!r9c5}, r5c5

=> -12r347c5, -12r5c367, -12b7p26, -3r1c9, -4589r9c1

shye

Posts: 245
Joined: 12 June 2021

### Re: Fireworks

shye wrote:since i know denis berthier was interested in puzzles in which the techniques substantially reduce the rating of an elimination in terms of CSP-variables, this seems like the perfect example
the dual firework ALP is made up of 9 CSP-variables
CSP-variables & eliminations: Show
or3: n1{r1c5!r1c9!r5c9}, or3: n2{r1c5!r1c9!r5c9}, or3: n1{r5c1!r9c1!r9c5}, or3: n2{r5c1!r9c1!r9c5}, r5c5
=> -12r347c5, -12r5c367, -12b7p26, -3r1c9, -4589r9c1

Both puzzles are in gW8:
First puzzle: Show
Resolution state after Singles and whips[1]:
+-------------------------+-------------------------+-------------------------+
! 69 8 3679 ! 4 1267 5 ! 379 12379 123 !
! 4569 1 2 ! 689 3 789 ! 45789 4789 458 !
! 459 34579 34579 ! 1289 127 12789 ! 345789 6 123458 !
+-------------------------+-------------------------+-------------------------+
! 3 259 1589 ! 12569 1256 4 ! 68 128 7 !
! 12489 6 1489 ! 7 12 1239 ! 348 5 12348 !
! 7 245 145 ! 1256 8 123 ! 346 1234 9 !
+-------------------------+-------------------------+-------------------------+
! 245689 234579 3456789 ! 258 2457 278 ! 1 34789 34568 !
! 14568 3457 1345678 ! 158 9 178 ! 2 3478 34568 !
! 124589 24579 145789 ! 3 12457 6 ! 45789 4789 458 !
+-------------------------+-------------------------+-------------------------+
248 candidates.
257 g-candidates, 1471 csp-glinks and 865 non-csp glinks
g-whip[6]: r4c7{n8 n6} - c5n6{r4 r1} - b2n2{r1c5 r3c456} - c9n2{r3 r1} - r1n1{c9 c8} - b6n1{r4c8 .} ==> r5c9≠8
g-whip[7]: r9n1{c3 c5} - r5c5{n1 n2} - b2n2{r1c5 r3c456} - c9n2{r3 r1} - r1n1{c9 c8} - c9n1{r3 r5} - c1n1{r5 .} ==> r8c3≠1
g-whip[7]: r9n2{c2 c5} - r5c5{n2 n1} - b2n1{r1c5 r3c456} - c9n1{r3 r1} - r1n2{c9 c8} - c9n2{r3 r5} - c1n2{r5 .} ==> r7c2≠2
whip[8]: c7n7{r3 r9} - r2n7{c7 c6} - c5n7{r3 r7} - c5n4{r7 r9} - c5n5{r9 r4} - c5n6{r4 r1} - r1n2{c5 c9} - r1n1{c9 .} ==> r1c8≠7
g-whip[8]: r5c5{n2 n1} - b8n1{r9c5 r8c456} - c1n1{r8 r9} - c1n2{r9 r7} - c4n2{r7 r3} - c9n2{r3 r1} - r1n1{c9 c8} - b6n1{r4c8 .} ==> r5c6≠2
g-whip[8]: r5c5{n1 n2} - b8n2{r9c5 r7c456} - c1n2{r7 r9} - c1n1{r9 r8} - c4n1{r8 r3} - c9n1{r3 r1} - r1n2{c9 c8} - b6n2{r4c8 .} ==> r5c6≠1
g-whip[8]: r5c5{n2 n1} - b8n1{r9c5 r8c456} - c1n1{r8 r9} - r9n2{c1 c2} - r6n2{c2 c8} - r1n2{c8 c9} - r1n1{c9 c8} - b6n1{r4c8 .} ==> r4c5≠2
g-whip[8]: r5c5{n1 n2} - b8n2{r9c5 r7c456} - c1n2{r7 r9} - r9n1{c1 c3} - r6n1{c3 c8} - r1n1{c8 c9} - r1n2{c9 c8} - b6n2{r4c8 .} ==> r4c5≠1
g-whip[8]: r5c5{n2 n1} - b2n1{r1c5 r3c456} - c9n1{r3 r1} - r1n2{c9 c8} - c9n2{r3 r5} - c1n2{r5 r9} - r9n1{c1 c3} - b4n1{r4c3 .} ==> r7c5≠2
g-whip[8]: r5c5{n2 n1} - b8n1{r9c5 r8c456} - c1n1{r8 r9} - r9n2{c1 c2} - c1n2{r7 r5} - c9n2{r5 r1} - r1n1{c9 c8} - b6n1{r4c8 .} ==> r3c5≠2
g-whip[6]: c2n7{r9 r3} - r3c5{n7 n1} - r5c5{n1 n2} - r9n2{c5 c123} - c1n2{r7 r9} - r9n1{c1 .} ==> r9c3≠7
g-whip[8]: r5c5{n1 n2} - b8n2{r9c5 r7c456} - c1n2{r7 r9} - r9n1{c1 c3} - c1n1{r8 r5} - c9n1{r5 r1} - r1n2{c9 c8} - b6n2{r4c8 .} ==> r3c5≠1
singles ==> r3c5=7, r1c3=7
whip[1]: r1n3{c9 .} ==> r3c7≠3, r3c9≠3
whip[1]: c3n6{r8 .} ==> r7c1≠6, r8c1≠6
biv-chain[4]: r1c7{n3 n9} - r1c1{n9 n6} - r2n6{c1 c4} - r6n6{c4 c7} ==> r6c7≠3
whip[4]: r4c7{n8 n6} - r6n6{c7 c4} - r2c4{n6 n9} - r2c6{n9 .} ==> r2c7≠8
whip[4]: r1n9{c8 c1} - c1n6{r1 r2} - r2c4{n6 n8} - r2c6{n8 .} ==> r2c7≠9
whip[4]: r1n9{c8 c1} - c1n6{r1 r2} - r2c4{n6 n8} - r2c6{n8 .} ==> r2c8≠9
whip[4]: r4c7{n8 n6} - c5n6{r4 r1} - r1c1{n6 n9} - b3n9{r1c8 .} ==> r3c7≠8
hidden-triplets-in-a-row: r3{n1 n2 n8}{c9 c6 c4} ==> r3c9≠5, r3c9≠4, r3c6≠9, r3c4≠9
whip[1]: b2n9{r2c6 .} ==> r2c1≠9
biv-chain[3]: c4n9{r4 r2} - b2n6{r2c4 r1c5} - r4c5{n6 n5} ==> r4c4≠5
biv-chain[5]: r1c7{n3 n9} - r1c1{n9 n6} - r2n6{c1 c4} - r2n9{c4 c6} - r5c6{n9 n3} ==> r5c7≠3
hidden-single-in-a-column ==> r1c7=3
finned-x-wing-in-rows: n9{r1 r7}{c8 c1} ==> r9c1≠9
naked-triplets-in-a-block: b6{r4c7 r5c7 r6c7}{n6 n8 n4} ==> r6c8≠4, r5c9≠4, r4c8≠8
whip[1]: b6n8{r5c7 .} ==> r9c7≠8
whip[1]: b6n4{r6c7 .} ==> r2c7≠4, r3c7≠4, r9c7≠4
whip[1]: r3n4{c3 .} ==> r2c1≠4
whip[5]: r1c9{n1 n2} - r5c9{n2 n3} - r5c6{n3 n9} - r2c6{n9 n8} - b3n8{r2c8 .} ==> r3c9≠1
whip[1]: r3n1{c6 .} ==> r1c5≠1
finned-x-wing-in-columns: n1{c5 c1}{r5 r9} ==> r9c3≠1
whip[1]: c3n1{r6 .} ==> r5c1≠1
whip[4]: r1c1{n9 n6} - r1c5{n6 n2} - b3n2{r1c8 r3c9} - r5n2{c9 .} ==> r5c1≠9
biv-chain[4]: r5n9{c3 c6} - b2n9{r2c6 r2c4} - r2n6{c4 c1} - r1c1{n6 n9} ==> r3c3≠9
whip[4]: r9n1{c1 c5} - r5c5{n1 n2} - c1n2{r5 r7} - b8n2{r7c4 .} ==> r9c1≠4
whip[4]: r9n1{c1 c5} - r5c5{n1 n2} - c1n2{r5 r7} - b8n2{r7c4 .} ==> r9c1≠5
whip[4]: r9n1{c1 c5} - r5c5{n1 n2} - c1n2{r5 r7} - b8n2{r7c4 .} ==> r9c1≠8
g-whip[4]: r5c5{n1 n2} - b2n2{r1c5 r3c456} - c9n2{r3 r1} - c9n1{r1 .} ==> r5c3≠1
biv-chain[3]: r5n1{c5 c9} - r5n3{c9 c6} - b5n9{r5c6 r4c4} ==> r4c4≠1
whip[4]: r5c5{n1 n2} - r6c6{n2 n3} - b6n3{r6c8 r5c9} - r5n1{c9 .} ==> r6c4≠1
whip[5]: c6n9{r2 r5} - r5n3{c6 c9} - c9n1{r5 r1} - c9n2{r1 r3} - r3n8{c9 .} ==> r2c6≠8
singles-single ==> r2c6=9, r5c6=3, r6c8=3, r4c4=9, r5c3=9
naked-pairs-in-a-column: c9{r1 r5}{n1 n2} ==> r3c9≠2
stte

Second puzzle: Show
Resolution state after Singles and whips[1]:
+----------------------------+----------------------------+----------------------------+
! 69 8 3679 ! 4 1267 5 ! 379 12379 123 !
! 4569 1 2 ! 689 3 789 ! 45789 4789 458 !
! 459 34579 34579 ! 1289 127 12789 ! 345789 6 123458 !
+----------------------------+----------------------------+----------------------------+
! 3 259 1589 ! 12569 1256 4 ! 68 128 7 !
! 12489 6 1489 ! 7 12 1239 ! 348 5 12348 !
! 7 245 145 ! 1256 8 123 ! 346 1234 9 !
+----------------------------+----------------------------+----------------------------+
! 145689 34579 13456789 ! 158 1457 178 ! 2 34789 34568 !
! 24568 23457 345678 ! 258 9 278 ! 1 3478 34568 !
! 124589 24579 145789 ! 3 12457 6 ! 45789 4789 458 !
+----------------------------+----------------------------+----------------------------+
248 candidates.
257 g-candidates, 1471 csp-glinks and 865 non-csp glinks
g-whip[6]: r4c7{n8 n6} - c5n6{r4 r1} - b2n2{r1c5 r3c456} - c9n2{r3 r1} - r1n1{c9 c8} - b6n1{r4c8 .} ==> r5c9≠8
g-whip[7]: r9n2{c2 c5} - r5c5{n2 n1} - b2n1{r1c5 r3c456} - c9n1{r3 r1} - r1n2{c9 c8} - c9n2{r3 r5} - c1n2{r5 .} ==> r8c2≠2
g-whip[7]: r9n1{c3 c5} - r5c5{n1 n2} - b2n2{r1c5 r3c456} - c9n2{r3 r1} - r1n1{c9 c8} - c9n1{r3 r5} - c1n1{r5 .} ==> r7c3≠1
whip[8]: c7n7{r3 r9} - r2n7{c7 c6} - c5n7{r3 r7} - c5n4{r7 r9} - c5n5{r9 r4} - c5n6{r4 r1} - r1n2{c5 c9} - r1n1{c9 .} ==> r1c8≠7
g-whip[8]: r5c5{n2 n1} - b8n1{r9c5 r7c456} - c1n1{r7 r9} - c1n2{r9 r8} - c4n2{r8 r3} - c9n2{r3 r1} - r1n1{c9 c8} - b6n1{r4c8 .} ==> r5c6≠2
g-whip[8]: r5c5{n1 n2} - b8n2{r9c5 r8c456} - c1n2{r8 r9} - c1n1{r9 r7} - c4n1{r7 r3} - c9n1{r3 r1} - r1n2{c9 c8} - b6n2{r4c8 .} ==> r5c6≠1
g-whip[8]: r5c5{n2 n1} - b8n1{r9c5 r7c456} - c1n1{r7 r9} - r9n2{c1 c2} - r6n2{c2 c8} - r1n2{c8 c9} - r1n1{c9 c8} - b6n1{r4c8 .} ==> r4c5≠2
g-whip[8]: r5c5{n1 n2} - b8n2{r9c5 r8c456} - c1n2{r8 r9} - r9n1{c1 c3} - r6n1{c3 c8} - r1n1{c8 c9} - r1n2{c9 c8} - b6n2{r4c8 .} ==> r4c5≠1
g-whip[8]: r5c5{n1 n2} - b2n2{r1c5 r3c456} - c9n2{r3 r1} - r1n1{c9 c8} - c9n1{r3 r5} - c1n1{r5 r9} - r9n2{c1 c2} - b4n2{r4c2 .} ==> r7c5≠1
g-whip[8]: r5c5{n2 n1} - b8n1{r9c5 r7c456} - c1n1{r7 r9} - r9n2{c1 c2} - c1n2{r8 r5} - c9n2{r5 r1} - r1n1{c9 c8} - b6n1{r4c8 .} ==> r3c5≠2
g-whip[6]: c2n7{r9 r3} - r3c5{n7 n1} - r5c5{n1 n2} - r9n2{c5 c123} - c1n2{r8 r9} - r9n1{c1 .} ==> r9c3≠7
g-whip[8]: r5c5{n1 n2} - b8n2{r9c5 r8c456} - c1n2{r8 r9} - r9n1{c1 c3} - c1n1{r7 r5} - c9n1{r5 r1} - r1n2{c9 c8} - b6n2{r4c8 .} ==> r3c5≠1
singles ==> r3c5=7, r1c3=7
whip[1]: r1n3{c9 .} ==> r3c7≠3, r3c9≠3
whip[1]: c3n6{r8 .} ==> r7c1≠6, r8c1≠6
biv-chain[4]: r1c7{n3 n9} - r1c1{n9 n6} - r2n6{c1 c4} - r6n6{c4 c7} ==> r6c7≠3
whip[4]: r4c7{n8 n6} - r6n6{c7 c4} - r2c4{n6 n9} - r2c6{n9 .} ==> r2c7≠8
whip[4]: r1n9{c8 c1} - c1n6{r1 r2} - r2c4{n6 n8} - r2c6{n8 .} ==> r2c7≠9
whip[4]: r1n9{c8 c1} - c1n6{r1 r2} - r2c4{n6 n8} - r2c6{n8 .} ==> r2c8≠9
whip[4]: r4c7{n8 n6} - c5n6{r4 r1} - r1c1{n6 n9} - b3n9{r1c8 .} ==> r3c7≠8
hidden-triplets-in-a-row: r3{n1 n2 n8}{c9 c6 c4} ==> r3c9≠5, r3c9≠4, r3c6≠9, r3c4≠9
whip[1]: b2n9{r2c6 .} ==> r2c1≠9
biv-chain[3]: c4n9{r4 r2} - b2n6{r2c4 r1c5} - r4c5{n6 n5} ==> r4c4≠5
biv-chain[5]: r1c7{n3 n9} - r1c1{n9 n6} - r2n6{c1 c4} - r2n9{c4 c6} - r5c6{n9 n3} ==> r5c7≠3
hidden-single-in-a-column ==> r1c7=3
finned-x-wing-in-rows: n9{r1 r7}{c8 c1} ==> r9c1≠9
naked-triplets-in-a-block: b6{r4c7 r5c7 r6c7}{n6 n8 n4} ==> r6c8≠4, r5c9≠4, r4c8≠8
whip[1]: b6n8{r5c7 .} ==> r9c7≠8
whip[1]: b6n4{r6c7 .} ==> r2c7≠4, r3c7≠4, r9c7≠4
whip[1]: r3n4{c3 .} ==> r2c1≠4
whip[5]: r1c9{n1 n2} - r5c9{n2 n3} - r5c6{n3 n9} - r2c6{n9 n8} - b3n8{r2c8 .} ==> r3c9≠1
whip[1]: r3n1{c6 .} ==> r1c5≠1
finned-x-wing-in-columns: n1{c5 c1}{r5 r9} ==> r9c3≠1
whip[1]: c3n1{r6 .} ==> r5c1≠1
whip[4]: r1c1{n9 n6} - r1c5{n6 n2} - b3n2{r1c8 r3c9} - r5n2{c9 .} ==> r5c1≠9
biv-chain[4]: r5n9{c3 c6} - b2n9{r2c6 r2c4} - r2n6{c4 c1} - r1c1{n6 n9} ==> r3c3≠9
whip[4]: r9n1{c1 c5} - r5c5{n1 n2} - c1n2{r5 r8} - b8n2{r8c4 .} ==> r9c1≠4
whip[4]: r9n1{c1 c5} - r5c5{n1 n2} - c1n2{r5 r8} - b8n2{r8c4 .} ==> r9c1≠5
whip[4]: r9n1{c1 c5} - r5c5{n1 n2} - c1n2{r5 r8} - b8n2{r8c4 .} ==> r9c1≠8
g-whip[4]: r5c5{n1 n2} - b2n2{r1c5 r3c456} - c9n2{r3 r1} - c9n1{r1 .} ==> r5c3≠1
biv-chain[3]: r5n1{c5 c9} - r5n3{c9 c6} - b5n9{r5c6 r4c4} ==> r4c4≠1
whip[4]: r5c5{n1 n2} - r6c6{n2 n3} - b6n3{r6c8 r5c9} - r5n1{c9 .} ==> r6c4≠1
whip[5]: c6n9{r2 r5} - r5n3{c6 c9} - c9n1{r5 r1} - c9n2{r1 r3} - r3n8{c9 .} ==> r2c6≠8
singles ==> r2c6=9, r5c6=3, r6c8=3, r4c4=9, r5c3=9
naked-pairs-in-a-column: c9{r1 r5}{n1 n2} ==> r3c9≠2
stte

How could a pattern with 9 CSP-Variables reduce these ratings?
denis_berthier
2010 Supporter

Posts: 3676
Joined: 19 June 2007
Location: Paris

### Re: Fireworks

denis_berthier wrote:Both puzzles are in gW8

cool! your solver is pretty powerful, when i saw yzf_sudoku resorting to brute force it seemed as resistant as i could get it (the solver can find dynamic chains with way more than 9 CSP-Variables so i figured it looked airtight)

i cant help but notice however, these deductions in your paths (using puzzle 1 as the example but its true for both)

Code: Select all
`g-whip[8]: r5c5{n2 n1} - b8n1{r9c5 r8c456} - c1n1{r8 r9} - c1n2{r9 r7} - c4n2{r7 r3} - c9n2{r3 r1} - r1n1{c9 c8} - b6n1{r4c8 .} ==> r5c6≠2g-whip[8]: r5c5{n1 n2} - b8n2{r9c5 r7c456} - c1n2{r7 r9} - c1n1{r9 r8} - c4n1{r8 r3} - c9n1{r3 r1} - r1n2{c9 c8} - b6n2{r4c8 .} ==> r5c6≠1g-whip[8]: r5c5{n2 n1} - b8n1{r9c5 r8c456} - c1n1{r8 r9} - r9n2{c1 c2} - r6n2{c2 c8} - r1n2{c8 c9} - r1n1{c9 c8} - b6n1{r4c8 .} ==> r4c5≠2g-whip[8]: r5c5{n1 n2} - b8n2{r9c5 r7c456} - c1n2{r7 r9} - r9n1{c1 c3} - r6n1{c3 c8} - r1n1{c8 c9} - r1n2{c9 c8} - b6n2{r4c8 .} ==> r4c5≠1g-whip[8]: r5c5{n2 n1} - b2n1{r1c5 r3c456} - c9n1{r3 r1} - r1n2{c9 c8} - c9n2{r3 r5} - c1n2{r5 r9} - r9n1{c1 c3} - b4n1{r4c3 .} ==> r7c5≠2g-whip[8]: r5c5{n2 n1} - b8n1{r9c5 r8c456} - c1n1{r8 r9} - r9n2{c1 c2} - c1n2{r7 r5} - c9n2{r5 r1} - r1n1{c9 c8} - b6n1{r4c8 .} ==> r3c5≠2g-whip[8]: r5c5{n1 n2} - b8n2{r9c5 r7c456} - c1n2{r7 r9} - r9n1{c1 c3} - c1n1{r8 r5} - c9n1{r5 r1} - r1n2{c9 c8} - b6n2{r4c8 .} ==> r3c5≠1`

seven deductions of size 8 that give the same most potent elims my size 9 deduction does in one step
i know it isnt what you concern yourself as heavily with, but this seems ridiculous to me to use several of a difficult deduction rather than one marginally more complex deduction (in terms of CSPVs), especially when the size 9 does even more eliminations that can make the rest of the puzzle simpler

compare it to this path i compiled (again for puzzle 1):
Code: Select all
`[9] DFALP => -12r347c5, -12r5c367, -12b7p26, -3r1c9, -4589r9c1singles => 7r3c5, 7r1c3[1] locked candidates => -3r3c79, -6r78c1[6] ALS rule: (98=6)b2p46 - (6=1239)r1c5789  => -9r2c78[4] chain: (8=6)r4c7 - 6r4c5 = 6r1c5 - (6=9)r1c1 - 9b3p12 = 9b3p7 => -8r3c7[3] hidden triple, 128 in r3 => -9r3c46, -45r3c9[1] locked candidate => -9r2c1[4] chain: (3=9)r1c7 - (9=6)r1c1 - 6r1c5 = 6r4c5 - 6r4c7 = 6r6c7 => -3r6c7[5] chain: (9=6)r1c1 - 6b2p2 = (6-9)b2p4 = 9b2p6 - (9=3)r5c6 - 3r5c7 = 3r1c7 => -9r1c7single => 3r1c7[3] locked triple, 468 in c7 & b6 => -8r29c7, -4r239c7, -8b6p26, -4b6p68[1] locked candidate => -4r2c1[5] ALS rule: (8=93)r25c6 - (3=128)r135c9 => -8r2c89, -8r3c46single => 8r3c9[2] locked pair, 12 in r3 & b2 => -12b2p2singles => 6r1c5, 6r2c1, 9r1c1, 9r3c7, 5r4c5, 4r7c5[2] naked pair, r14c8 limited to 12 => -12r6c8stte`

one size 9 move which then can keep everything at size 6 or less which feels pretty clean and much easier to find by hand considering the difficulty

but thats just my two cents
did you ever get around to looking at this one too? might be better, but i couldnt tell

shye wrote:
Code: Select all
`Roman Candle V2 (minimal)skfr: 9.2..98..7......6.5..4...5...37.........35...28.........68...2...4.2..7....1.6..39..`

(after whips[1]) firework MSHS of size 8, one step solution
CSP-variables & eliminations: Show
or3: n1{r1c5!r5c5!r5c9}, r1n3, r5n9, r9n8, c1n6, c5n4, c9n7

=> -25r1c1, -25r9c9, -1b5p1379
effective eliminations for stte: -5r1c1, -25r9c9

shye

Posts: 245
Joined: 12 June 2021

### Re: Fireworks

shye wrote:
denis_berthier wrote:Both puzzles are in gW8

cool! your solver is pretty powerful, when i saw yzf_sudoku resorting to brute force it seemed as resistant as i could get it (the solver can find dynamic chains with way more than 9 CSP-Variables so i figured it looked airtight)

The skrf is misleading: the two puzzles have SER 9.5.
As for yzw... it runs only on Windows and I can't use it. It's surprising that it doesn't find a solution without guessing, but as there's no documentation of its rules and what they mean, it's a priori difficult to tell why. What's easier to tell is why it finds longer than necessary chains: it doesn't have any systematic strategy for finding the shortest ones (at least, it didn't have any when I talked about this with yzf..).

shye wrote:i cant help but notice however, these deductions in your paths (using puzzle 1 as the example but its true for both)

Smallest number of steps and minimum length of chains are contradictory goals. In the present case, you were talking of rating and all the known ratings * are about the hardest step. By applying the fewer steps method, I could probably decrease the number of steps.
(* OK, there are some ratings that add the complexities of each step, but considering that complexity increases exponentially with length, this is totally absurd and I don't consider them.)
Anyway, it's a good thing that your or3 pattern can help find larger patterns with several eliminations.

Now, when you consider a new pattern, there's another point to take into account : the return on investment. Let's take a well-known example: J-Exocets. They generally allow several eliminations but they are very rare patterns (contrary to champagne's propaganda). They are also very difficult to find manually (but that's consistent with their ratings in terms of #CSP-Variables). Result: I have them in SudoRules but I never activate them.
Notice that the or3 pattern can only be part of something larger. The question is, which types of complete patterns the or3 can be a part of in order to be useful?

shye wrote:did you ever get around to looking at this one too? might be better, but i couldnt tell
Code: Select all
`Roman Candle V2 (minimal)skfr: 9.2..98..7......6.5..4...5...37.........35...28.........68...2...4.2..7....1.6..39..`

(after whips[1]) firework MSHS of size 8, one step solution
CSP-variables & eliminations: Show
or3: n1{r1c5!r5c5!r5c9}, r1n3, r5n9, r9n8, c1n6, c5n4, c9n7
=> -25r1c1, -25r9c9, -1b5p1379
effective eliminations for stte: -5r1c1, -25r9c9

SER = 9.3
My solution is similar to the previous two, though now in gW11.
Code: Select all
`Resolution state after Singles and whips[1]:   +----------------------+----------------------+----------------------+    ! 2356   156    9      ! 8      134    124    ! 7      1246   12     !    ! 23     178    12378  ! 123479 6      12479  ! 5      1249   1289   !    ! 4      1678   1278   ! 1279   5      1279   ! 168    1269   3      !    +----------------------+----------------------+----------------------+    ! 7      14689  1248   ! 12356  1389   12568  ! 134    1359   159    !    ! 69     3      5      ! 1467   149    1467   ! 2      8      179    !    ! 29     1489   1248   ! 12357  1389   12578  ! 134    13579  6      !    +----------------------+----------------------+----------------------+    ! 8      579    37     ! 1569   2      1569   ! 136    13567  4      !    ! 359    2      34     ! 14569  7      145689 ! 1368   1356   158    !    ! 1      457    6      ! 45     48     3      ! 9      257    2578   !    +----------------------+----------------------+----------------------+ 214 candidates.197 g-candidates, 1220 csp-glinks and 704 non-csp glinks`

solution in gW11: Show
whip[8]: r5n1{c6 c9} - c5n1{r5 r1} - r1n3{c5 c1} - c1n6{r1 r5} - r5n9{c1 c5} - c5n4{r5 r9} - r9n8{c5 c9} - c9n7{r9 .} ==> r4c4≠1
whip[8]: r5n1{c6 c9} - c5n1{r5 r1} - r1n3{c5 c1} - c1n6{r1 r5} - r5n9{c1 c5} - c5n4{r5 r9} - r9n8{c5 c9} - c9n7{r9 .} ==> r4c6≠1
whip[8]: r5n1{c6 c9} - c5n1{r5 r1} - r1n3{c5 c1} - c1n6{r1 r5} - r5n9{c1 c5} - c5n4{r5 r9} - r9n8{c5 c9} - c9n7{r9 .} ==> r6c4≠1
whip[8]: r5n1{c6 c9} - c5n1{r5 r1} - r1n3{c5 c1} - c1n6{r1 r5} - r5n9{c1 c5} - c5n4{r5 r9} - r9n8{c5 c9} - c9n7{r9 .} ==> r6c6≠1
g-whip[8]: r1c9{n2 n1} - r1c6{n1 n4} - r1c5{n4 n3} - c5n1{r1 r456} - r5n1{c6 c5} - c5n4{r5 r9} - r9n8{c5 c9} - r9n2{c9 .} ==> r1c8≠2
g-whip[9]: r1c9{n2 n1} - r1c6{n1 n4} - r1c5{n4 n3} - c5n1{r1 r456} - r5n1{c6 c5} - c5n4{r5 r9} - r9n8{c5 c9} - r8c9{n8 n5} - c1n5{r8 .} ==> r1c1≠2
g-whip[11]: r9c4{n4 n5} - r9c2{n5 n7} - c9n7{r9 r5} - c8n7{r6 r7} - r7n5{c8 c2} - c1n5{r8 r1} - r1n3{c1 c5} - c5n1{r1 r456} - r5n1{c6 c5} - r5n9{c5 c1} - c1n6{r5 .} ==> r9c5≠4
naked-single ==> r9c5=8
g-whip[5]: r1c9{n2 n1} - c5n1{r1 r456} - r5n1{c6 c5} - c5n4{r5 r1} - c8n4{r1 .} ==> r2c8≠2
whip[6]: r6c1{n9 n2} - r2c1{n2 n3} - r1n3{c1 c5} - r6c5{n3 n1} - r5n1{c4 c9} - b6n7{r5c9 .} ==> r6c8≠9
whip[6]: b6n9{r4c9 r5c9} - c1n9{r5 r8} - c1n5{r8 r1} - r1n3{c1 c5} - r4c5{n3 n1} - r5n1{c4 .} ==> r4c2≠9
g-whip[6]: r1c9{n2 n1} - r5n1{c9 c456} - c5n1{r6 r5} - c5n4{r5 r1} - r1n3{c5 c1} - r2c1{n3 .} ==> r2c9≠2
g-whip[6]: c1n5{r8 r1} - r1n3{c1 c5} - c5n4{r1 r5} - r5n9{c5 c9} - r5n1{c9 c456} - c5n1{r4 .} ==> r8c1≠9
hidden-single-in-a-block ==> r7c2=9
g-whip[7]: b6n7{r6c8 r5c9} - r5n1{c9 c456} - r6c5{n1 n9} - r6c1{n9 n2} - r2c1{n2 n3} - c4n3{r2 r4} - r4c5{n3 .} ==> r6c8≠3
whip[7]: r7n5{c6 c8} - r6n5{c8 c4} - r9n5{c4 c2} - r8c1{n5 n3} - r1n3{c1 c5} - r6n3{c5 c7} - r7n3{c7 .} ==> r8c6≠5
whip[7]: c8n3{r8 r4} - r7n3{c8 c3} - r7n7{c3 c8} - b6n7{r6c8 r5c9} - b6n9{r5c9 r4c9} - r4c5{n9 n1} - r5n1{c4 .} ==> r8c7≠3
whip[8]: r1n3{c1 c5} - r2n3{c4 c3} - r2c1{n3 n2} - r6c1{n2 n9} - r6c5{n9 n1} - r4c5{n1 n9} - b6n9{r4c8 r5c9} - r5n1{c9 .} ==> r8c1≠3
singles ==> r8c1=5, r1c2=5
whip[1]: b7n3{r8c3 .} ==> r2c3≠3
hidden-triplets-in-a-block: b9{n2 n5 n7}{r9c8 r9c9 r7c8} ==> r7c8≠6, r7c8≠3, r7c8≠1
whip[5]: b6n7{r5c9 r6c8} - r7n7{c8 c3} - r7n3{c3 c7} - r6c7{n3 n4} - r4c7{n4 .} ==> r5c9≠1
whip[1]: r5n1{c6 .} ==> r4c5≠1, r6c5≠1
naked-pairs-in-a-block: b5{r4c5 r6c5}{n3 n9} ==> r6c4≠3, r5c5≠9, r4c4≠3
stte

However, if what you're interested in is the number of steps, here is a solution in two steps (with unrestricted length of the chains:
solution in tow steps: Show
1) FORCING[3]-T&E(S) applied to trivalue candidates n3r8c1, n5r8c1 and n9r8c1 :
===> 1 values decided in the three cases: n8r9c5
===> 13 candidates eliminated in the three cases: n1r1c2 n8r4c5 n9r6c2 n8r6c5 n5r7c2 n9r7c6 n1r7c8 n6r7c8 n5r8c4 n8r8c6 n5r8c8 n4r9c5 n8r9c9
2) FORCING[3]-T&E(S) applied to trivalue candidates n9r5c1, n9r5c5 and n9r5c9 :
===> 21 values decided in the three cases: n5r8c1 n5r1c2 n9r7c2 n8r8c9 n2r1c9 n5r4c9 n7r9c9 n4r9c2 n5r9c4 n2r9c8 n3r8c3 n7r7c3 n5r7c8 n3r7c7 n8r4c6 n8r3c7 n1r8c8 n6r8c7 n4r2c8 n2r3c6 n1r3c3
===> 106 candidates eliminated in the three cases: n2r1c1 n5r1c1 n6r1c2 n1r1c5 n2r1c6 n1r1c8 n2r1c8 n4r1c8 n1r1c9 n1r2c2 n1r2c3 n3r2c3 n7r2c3 n2r2c4 n4r2c4 n7r2c4 n9r2c4 n1r2c6 n2r2c6 n4r2c6 n1r2c8 n2r2c8 n9r2c8 n2r2c9 n8r2c9 n1r3c2 n8r3c2 n2r3c3 n7r3c3 n8r3c3 n1r3c4 n2r3c4 n1r3c6 n7r3c6 n9r3c6 n1r3c7 n6r3c7 n1r3c8 n2r3c8 n4r4c2 n8r4c2 n9r4c2 n1r4c3 n8r4c3 n1r4c4 n3r4c4 n5r4c4 n1r4c5 n1r4c6 n2r4c6 n5r4c6 n6r4c6 n1r4c7 n3r4c7 n1r4c8 n5r4c8 n1r4c9 n9r4c9 n1r5c4 n6r5c4 n7r5c4 n1r5c6 n7r5c9 n1r6c2 n4r6c2 n1r6c3 n1r6c4 n5r6c4 n9r6c5 n1r6c6 n2r6c6 n8r6c6 n3r6c7 n1r6c8 n5r6c8 n7r7c2 n3r7c3 n5r7c4 n9r7c4 n5r7c6 n1r7c7 n6r7c7 n3r7c8 n7r7c8 n3r8c1 n9r8c1 n4r8c3 n1r8c4 n6r8c4 n1r8c6 n5r8c6 n6r8c6 n1r8c7 n3r8c7 n8r8c7 n3r8c8 n6r8c8 n1r8c9 n5r8c9 n5r9c2 n7r9c2 n4r9c4 n5r9c8 n7r9c8 n2r9c9 n5r9c9
stte
denis_berthier
2010 Supporter

Posts: 3676
Joined: 19 June 2007
Location: Paris

### Re: Fireworks

denis_berthier wrote:As for yzw... it runs only on Windows and I can't use it. It's surprising that it doesn't find a solution without guessing, but as there's no documentation of its rules and what they mean, it's a priori difficult to tell why. What's easier to tell is why it finds longer than necessary chains: it doesn't have any systematic strategy for finding the shortest ones (at least, it didn't have any when I talked about this with yzf..).

My solver did not include the group node when searching the dynamic chain, so my dynamic chain should be basically equivalent to the power of your whips.
In theory, my solver can find the shortest chain, because I use the BFS algorithm, just to increase the speed, It quit after finding the any eliminations, or my solver gives priority to finding a reasonable eliminations instead of using it to find the shortest chain.
yzfwsf

Posts: 671
Joined: 16 April 2019

### Re: Fireworks

SER = 9.3
My solution is similar to the previous two, though now in gW11.
Code: Select all
`Resolution state after Singles and whips[1]:   +----------------------+----------------------+----------------------+    ! 2356   156    9      ! 8      134    124    ! 7      1246   12     !    ! 23     178    12378  ! 123479 6      12479  ! 5      1249   1289   !    ! 4      1678   1278   ! 1279   5      1279   ! 168    1269   3      !    +----------------------+----------------------+----------------------+    ! 7      14689  1248   ! 12356  1389   12568  ! 134    1359   159    !    ! 69     3      5      ! 1467   149    1467   ! 2      8      179    !    ! 29     1489   1248   ! 12357  1389   12578  ! 134    13579  6      !    +----------------------+----------------------+----------------------+    ! 8      579    37     ! 1569   2      1569   ! 136    13567  4      !    ! 359    2      34     ! 14569  7      145689 ! 1368   1356   158    !    ! 1      457    6      ! 45     48     3      ! 9      257    2578   !    +----------------------+----------------------+----------------------+ 214 candidates.197 g-candidates, 1220 csp-glinks and 704 non-csp glinks`

solution in gW11: Show
whip[8]: r5n1{c6 c9} - c5n1{r5 r1} - r1n3{c5 c1} - c1n6{r1 r5} - r5n9{c1 c5} - c5n4{r5 r9} - r9n8{c5 c9} - c9n7{r9 .} ==> r4c4≠1
whip[8]: r5n1{c6 c9} - c5n1{r5 r1} - r1n3{c5 c1} - c1n6{r1 r5} - r5n9{c1 c5} - c5n4{r5 r9} - r9n8{c5 c9} - c9n7{r9 .} ==> r4c6≠1
whip[8]: r5n1{c6 c9} - c5n1{r5 r1} - r1n3{c5 c1} - c1n6{r1 r5} - r5n9{c1 c5} - c5n4{r5 r9} - r9n8{c5 c9} - c9n7{r9 .} ==> r6c4≠1
whip[8]: r5n1{c6 c9} - c5n1{r5 r1} - r1n3{c5 c1} - c1n6{r1 r5} - r5n9{c1 c5} - c5n4{r5 r9} - r9n8{c5 c9} - c9n7{r9 .} ==> r6c6≠1
g-whip[8]: r1c9{n2 n1} - r1c6{n1 n4} - r1c5{n4 n3} - c5n1{r1 r456} - r5n1{c6 c5} - c5n4{r5 r9} - r9n8{c5 c9} - r9n2{c9 .} ==> r1c8≠2
g-whip[9]: r1c9{n2 n1} - r1c6{n1 n4} - r1c5{n4 n3} - c5n1{r1 r456} - r5n1{c6 c5} - c5n4{r5 r9} - r9n8{c5 c9} - r8c9{n8 n5} - c1n5{r8 .} ==> r1c1≠2
g-whip[11]: r9c4{n4 n5} - r9c2{n5 n7} - c9n7{r9 r5} - c8n7{r6 r7} - r7n5{c8 c2} - c1n5{r8 r1} - r1n3{c1 c5} - c5n1{r1 r456} - r5n1{c6 c5} - r5n9{c5 c1} - c1n6{r5 .} ==> r9c5≠4
naked-single ==> r9c5=8
g-whip[5]: r1c9{n2 n1} - c5n1{r1 r456} - r5n1{c6 c5} - c5n4{r5 r1} - c8n4{r1 .} ==> r2c8≠2
whip[6]: r6c1{n9 n2} - r2c1{n2 n3} - r1n3{c1 c5} - r6c5{n3 n1} - r5n1{c4 c9} - b6n7{r5c9 .} ==> r6c8≠9
whip[6]: b6n9{r4c9 r5c9} - c1n9{r5 r8} - c1n5{r8 r1} - r1n3{c1 c5} - r4c5{n3 n1} - r5n1{c4 .} ==> r4c2≠9
g-whip[6]: r1c9{n2 n1} - r5n1{c9 c456} - c5n1{r6 r5} - c5n4{r5 r1} - r1n3{c5 c1} - r2c1{n3 .} ==> r2c9≠2
g-whip[6]: c1n5{r8 r1} - r1n3{c1 c5} - c5n4{r1 r5} - r5n9{c5 c9} - r5n1{c9 c456} - c5n1{r4 .} ==> r8c1≠9
hidden-single-in-a-block ==> r7c2=9
g-whip[7]: b6n7{r6c8 r5c9} - r5n1{c9 c456} - r6c5{n1 n9} - r6c1{n9 n2} - r2c1{n2 n3} - c4n3{r2 r4} - r4c5{n3 .} ==> r6c8≠3
whip[7]: r7n5{c6 c8} - r6n5{c8 c4} - r9n5{c4 c2} - r8c1{n5 n3} - r1n3{c1 c5} - r6n3{c5 c7} - r7n3{c7 .} ==> r8c6≠5
whip[7]: c8n3{r8 r4} - r7n3{c8 c3} - r7n7{c3 c8} - b6n7{r6c8 r5c9} - b6n9{r5c9 r4c9} - r4c5{n9 n1} - r5n1{c4 .} ==> r8c7≠3
whip[8]: r1n3{c1 c5} - r2n3{c4 c3} - r2c1{n3 n2} - r6c1{n2 n9} - r6c5{n9 n1} - r4c5{n1 n9} - b6n9{r4c8 r5c9} - r5n1{c9 .} ==> r8c1≠3
singles ==> r8c1=5, r1c2=5
whip[1]: b7n3{r8c3 .} ==> r2c3≠3
hidden-triplets-in-a-block: b9{n2 n5 n7}{r9c8 r9c9 r7c8} ==> r7c8≠6, r7c8≠3, r7c8≠1
whip[5]: b6n7{r5c9 r6c8} - r7n7{c8 c3} - r7n3{c3 c7} - r6c7{n3 n4} - r4c7{n4 .} ==> r5c9≠1
whip[1]: r5n1{c6 .} ==> r4c5≠1, r6c5≠1
naked-pairs-in-a-block: b5{r4c5 r6c5}{n3 n9} ==> r6c4≠3, r5c5≠9, r4c4≠3
stte

wow, looks like the underdog pulled through
i didnt expect this one to work better than Comet Tiamat but im happy with the result nonetheless

denis_berthier wrote:Smallest number of steps and minimum length of chains are contradictory goals. In the present case, you were talking of rating and all the known ratings * are about the hardest step. By applying the fewer steps method, I could probably decrease the number of steps.
(* OK, there are some ratings that add the complexities of each step, but considering that complexity increases exponentially with length, this is totally absurd and I don't consider them.)
[...]
Now, when you consider a new pattern, there's another point to take into account : the return on investment. Let's take a well-known example: J-Exocets. They generally allow several eliminations but they are very rare patterns (contrary to champagne's propaganda). They are also very difficult to find manually (but that's consistent with their ratings in terms of #CSP-Variables). Result: I have them in SudoRules but I never activate them.
Notice that the or3 pattern can only be part of something larger. The question is, which types of complete patterns the or3 can be a part of in order to be useful?

all this talk of complexity scaling has had me thinking about how i'd approach it if i was dedicated enough to make a rigid system. i value efficiency a lot, if a pattern can make several eliminations, or reduce the puzzle to singles, i'd like to be aware of it. it may not be a pleasing deduction every time, but i'd still want to have some weighting for that. so perhaps a point system like this:

for each component of a deduction (CSP-variables/truths) assign 1 point
for the most difficult deduction, the one with the most points, count it twice (if there are multiple highest point moves, they are also counted twice)
tally up all the points, the lower the final score the easier the rating

this would encourage higher complexity but efficient moves, while also penalising frequent use of them. i dont know if this system would work well for every puzzle, but to use the two we've most recently looked at:

Comet Tiamat
gW8 path - 243 points
DFALP path - 55 points

Roman Candle V2
gW11 path - 136 points
FMSHS path - 18 points

very much skewed in my favor obviously because its catered for my preferences (plus i made the puzzles >_>), and would probably need more adjusting too anyway
for instance, the actual methodology of the technique would need to have some importance. an ALS rule deduction can have well over 10 components but then when notated in eureka it uses just two strong links; the ALS itself is vital in how the technique is thought about and applied, less so the cells that make it up. and on the other end of the spectrum, the dual firework ALP may indeed have just 9 components, but it is logically proven by considering one of them as double counted, this should also be adjusted for

such painful details are why i could never devote the time to making a well-rounded complexity system
a bit off topic but just wanted to share these thoughts

Anyway, it's a good thing that your or3 pattern can help find larger patterns with several eliminations.

oh thank you! even if in the future you or others dont end up using particular applications of these patterns, the recognition that it has some worth means a lot to me

shye

Posts: 245
Joined: 12 June 2021

### Re: Fireworks

denis_berthier wrote:.
I found 237 (1.1%) puzzles with this partial pattern. I think that's quite a lot for experimenting.

Any guess at the frequency with which it appears in sudoku variant puzzles?

For example Guy Fawkes uses it. (link to CTC App version)
Pallando

Posts: 3
Joined: 16 September 2021

### Re: Fireworks

Pallando wrote:
denis_berthier wrote:.
I found 237 (1.1%) puzzles with this partial pattern. I think that's quite a lot for experimenting.

Any guess at the frequency with which it appears in sudoku variant puzzles?

I can't see any reason why it wouldn't appear in variants. But I have no experimental data.
denis_berthier
2010 Supporter

Posts: 3676
Joined: 19 June 2007
Location: Paris

### Re: Fireworks

Andrew Stuart has implemented the FW Triple and the FW Quad in his solver :
www.sudokuwiki.org/Fireworks
He notes that, in very hard puzzle list of 45,000, he found over 300 puzzles with the FW Triple.
He further notes that he has not yet found a FW Quad other than the one given by shye
ghfick

Posts: 216
Joined: 06 April 2016

### Re: Fireworks

ghfick wrote:Andrew Stuart has implemented the FW Triple and the FW Quad in his solver :
www.sudokuwiki.org/Fireworks
He notes that, in very hard puzzle list of 45,000, he found over 300 puzzles with the FW Triple.
He further notes that he has not yet found a FW Quad other than the one given by shye

this was quite the surprise! the comparison of frequency between fw triples and naked quads especially
if the generalised firework hidden sets could be implemented that would be amazing (any hidden tuple consisting of fireworks and positional truths eg: bilocals) but as it stands, im happy to see it implemented at all

i've not been looking more into this for a while since christmas season started up & also focusing more of my puzzle time on non-sudoku, but ill probably come back to it all eventually

shye

Posts: 245
Joined: 12 June 2021

PreviousNext