## A revival of Broken Wings

Advanced methods and approaches for solving Sudoku puzzles

### Re: A revival of Broken Wings

Mauriès Robert wrote:More classically ...

Code: Select all
`+--------------------------+--------------------------+--------------------------+| A12347   234     8       |  1249    124579  12457   | A1345    349     6       || A1347    9      B1367    |  1468    14567   14578   | A1345    2      B158     ||  5       246    B16      |  124689  12469   3       |  7       489    B189     |+--------------------------+--------------------------+--------------------------+|  348     34568   356     |  7      C12345  C1245    |  9       368    *128     ||  3479    1       3679    |  2349    8       24      |  236     5       27      ||  3789    358     2       | D139    D1359    6       | *13      378     4       |+--------------------------+--------------------------+--------------------------+| *1289    28      4       |  5      C1267   C1278    |  26      679     3       ||  2389    7       359     |  23468   2346    248     |  2456    1       259     ||  6       235    *135     | D1234   D12347   9       |  8       47      257     |+--------------------------+--------------------------+ -------------------------+`

My classical way would be:
One of the x-wings c17r12, c39r23, r47c56, r69c45 must kill r2c5:
One of r4c9/r6c7 and one of r7c1/r9c3 must be false -> 1 x-wing true.
eleven

Posts: 2469
Joined: 10 February 2008

### Re: NoFish 022 - 563 List

yzfwsf wrote:
tarek wrote:This is the NoFish list that I originally posted on the old forum.

#029 have a broken wing as below
broken-wing.png

This is the most interesting thing I've seen on this forum in the past years: oddagons, as I prefer calling them (a contraction of odd(-sized) polygons) cannot be replaced by any whip, braid, g-whip, ... or any pattern covered by T&E(1) or gT&E(1).
Due to the ORs in it, Robert's presentation is a T&E(2) one.
This is not surprising, as the proof of the elimination rule has to suppose the target Z is true AND consider in turn both cases of a chosen node C being True or False (both cases leading to a contradiction): in each of the two branches, there are two hypotheses at the same time (Z and C, respect. Z and not C).

The above remark doesn't mean that the presence of an oddagon necessarily puts a puzzle in T&E(2): there may be other eliminations that short-circuit the oddagon one. This is true for the present puzzle: with or without the r2c5 ≠ 1 elimination, it is in W8.
It is also the case that, if the oddagons[k] are activated only after all the rules with less than k CSP-Variables, they will not appear at all in this puzzle.

As oddagons are meaningful in any CSP, I've decided to code them in CSP-Rules. For this puzzle, SudoRules finds the same oddagon as you:
Code: Select all
`oddagon[7]: r1n1{c7 c1},c1n1{r1 r7},b7n1{r7c1 r9c3},r9n1{c3 c4},c4n1{r9 r6},r6n1{c4 c7},c7n1{r6 r1} ==> r2c5 ≠ 1`

A word about the extension of the nrc notation necessary to represent an oddagon:
- as usual, the whole sequence of <CSP-Variables, bivalue-pairs> is present
- however, instead of being linked to the kth rlc, the (k+1)th llc is equal to it; this is represented by a comma instead of my usual link sign ("—") between the successive parts.
The idea is to copy the natural language process of chaining composed words by repeating the last part as the first part of the next component:
Code: Select all
`"cheval de course, course à pied, pied de biche, ..."(If you have a standard English equivalent, I'm interested and I'll update this example.)`

Notice that the puzzle has SER = 9.0, which means it's quite hard.
- If I activate only the reversible chains coded in CSP-Rules (i.e. bivalue-chains and z-chains), the oddagon appears, but (unsurprisingly for this SER) the puzzle is not solved.
- If I activate whips, the puzzle is solved (with W=8), but the oddagon doesn't appear.
- If I activate only reversible rules and t-whips, the puzzle is solved with chains of length 9 and the oddagon appears (this is clearly my preferred solution, though the length is 1 more than with whips):

Hidden Text: Show
***********************************************************************************************
*** SudoRules 20.1.s based on CSP-Rules 2.1.s, config = tW+O+SFin
*** using CLIPS 6.32-r764
***********************************************************************************************
biv-chain[4]: r3c3{n6 n1} - b7n1{r9c3 r7c1} - r7n9{c1 c8} - c8n6{r7 r4} ==> r4c3 ≠ 6
biv-chain[4]: r7n9{c1 c8} - c8n6{r7 r4} - b4n6{r4c2 r5c3} - c3n9{r5 r8} ==> r8c1 ≠ 9
biv-chain[4]: r7n9{c8 c1} - c3n9{r8 r5} - b4n6{r5c3 r4c2} - c8n6{r4 r7} ==> r7c8 ≠ 7
whip[1]: b9n7{r9c9 .} ==> r9c5 ≠ 7
biv-chain[4]: r5c6{n4 n2} - r5c9{n2 n7} - r9n7{c9 c8} - b9n4{r9c8 r8c7} ==> r8c6 ≠ 4
biv-chain[4]: b4n6{r5c3 r4c2} - c8n6{r4 r7} - r7n9{c8 c1} - c3n9{r8 r5} ==> r5c3 ≠ 3, r5c3 ≠ 7
hidden-single-in-a-column ==> r2c3 = 7
whip[1]: r2n6{c5 .} ==> r3c4 ≠ 6, r3c5 ≠ 6
biv-chain[4]: b7n1{r7c1 r9c3} - r3c3{n1 n6} - r5c3{n6 n9} - b7n9{r8c3 r7c1} ==> r7c1 ≠ 2, r7c1 ≠ 8
z-chain[4]: r8n9{c9 c3} - r8n5{c3 c7} - r9c9{n5 n7} - r5c9{n7 .} ==> r8c9 ≠ 2
z-chain[5]: r8c6{n2 n8} - r8c1{n8 n3} - r2n3{c1 c7} - r5c7{n3 n6} - r7c7{n6 .} ==> r8c7 ≠ 2
t-whip[5]: r6n7{c1 c8} - r5c9{n7 n2} - b9n2{r9c9 r7c7} - r7c2{n2 n8} - r6n8{c2 .} ==> r6c1 ≠ 3, r6c1 ≠ 9
whip[1]: r6n9{c5 .} ==> r5c4 ≠ 9
biv-chain[5]: b9n4{r8c7 r9c8} - c8n7{r9 r6} - c1n7{r6 r5} - r5n9{c1 c3} - r5n6{c3 c7} ==> r8c7 ≠ 6
whip[1]: r8n6{c5 .} ==> r7c5 ≠ 6
hidden-pairs-in-a-column: c7{n2 n6}{r5 r7} ==> r5c7 ≠ 3
biv-chain[3]: r5n3{c4 c1} - r4c3{n3 n5} - r6n5{c2 c5} ==> r6c5 ≠ 3
biv-chain[4]: r5n3{c4 c1} - r4c3{n3 n5} - r6n5{c2 c5} - r6n9{c5 c4} ==> r6c4 ≠ 3
t-whip[4]: r5n3{c4 c1} - c1n9{r5 r7} - b7n1{r7c1 r9c3} - c3n3{r9 .} ==> r8c4 ≠ 3
t-whip[5]: r5n3{c4 c1} - r4c3{n3 n5} - r6c2{n5 n8} - r7c2{n8 n2} - c7n2{r7 .} ==> r5c4 ≠ 2
t-whip[5]: c5n9{r3 r6} - r6c4{n9 n1} - r6c7{n1 n3} - b3n3{r1c7 r1c8} - r1n9{c8 .} ==> r3c4 ≠ 9
z-chain[6]: r5c4{n3 n4} - r5c6{n4 n2} - c7n2{r5 r7} - r7c2{n2 n8} - r6c2{n8 n5} - r4c3{n5 .} ==> r5c1 ≠ 3
hidden-single-in-a-row ==> r5c4 = 3
z-chain[5]: r5n4{c6 c1} - r2n4{c1 c7} - r8c7{n4 n5} - r1n5{c7 c5} - r1n7{c5 .} ==> r1c6 ≠ 4
oddagon[7]: r1n1{c7 c1},c1n1{r1 r7},b7n1{r7c1 r9c3},r9n1{c3 c4},c4n1{r9 r6},r6n1{c4 c7},c7n1{r6 r1} ==> r2c5 ≠ 1
z-chain[9]: r3n2{c5 c2} - c2n6{r3 r4} - r5n6{c3 c7} - r5n2{c7 c9} - b6n7{r5c9 r6c8} - r9c8{n7 n4} - r8c7{n4 n5} - r1n5{c7 c5} - r1n7{c5 .} ==> r1c6 ≠ 2
t-whip[9]: r8n5{c9 c3} - r4c3{n5 n3} - r9c3{n3 n1} - r7c1{n1 n9} - r7c8{n9 n6} - r4c8{n6 n8} - r4c1{n8 n4} - r5c1{n4 n7} - c9n7{r5 .} ==> r9c9 ≠ 5
whip[1]: r9n5{c3 .} ==> r8c3 ≠ 5
naked-pairs-in-a-column: c9{r5 r9}{n2 n7} ==> r4c9 ≠ 2
whip[1]: b6n2{r5c9 .} ==> r5c6 ≠ 2
naked-single ==> r5c6 = 4
biv-chain[5]: b9n2{r9c9 r7c7} - r5c7{n2 n6} - r5c3{n6 n9} - r8c3{n9 n3} - b8n3{r8c5 r9c5} ==> r9c5 ≠ 2
biv-chain[5]: b7n5{r9c2 r9c3} - b7n1{r9c3 r7c1} - c1n9{r7 r5} - r5n7{c1 c9} - c9n2{r5 r9} ==> r9c2 ≠ 2
hidden-pairs-in-a-block: b7{r7c2 r8c1}{n2 n8} ==> r8c1 ≠ 3
naked-pairs-in-a-row: r8{c1 c6}{n2 n8} ==> r8c5 ≠ 2, r8c4 ≠ 8, r8c4 ≠ 2
whip[1]: b8n8{r8c6 .} ==> r2c6 ≠ 8
biv-chain[4]: c5n6{r2 r8} - c5n3{r8 r9} - r9c2{n3 n5} - r6n5{c2 c5} ==> r2c5 ≠ 5
biv-chain[4]: r8c7{n4 n5} - c9n5{r8 r2} - r2n8{c9 c4} - c4n6{r2 r8} ==> r8c4 ≠ 4
naked-single ==> r8c4 = 6
hidden-single-in-a-block ==> r2c5 = 6
biv-chain[4]: r2c6{n1 n5} - c9n5{r2 r8} - b9n9{r8c9 r7c8} - r7c1{n9 n1} ==> r7c6 ≠ 1, r2c1 ≠ 1
biv-chain[2]: r7n1{c5 c1} - b1n1{r1c1 r3c3} ==> r3c5 ≠ 1
z-chain[3]: c6n1{r2 r4} - r4c9{n1 n8} - r2n8{c9 .} ==> r2c4 ≠ 1
z-chain[4]: c3n1{r3 r9} - r7n1{c1 c5} - r4n1{c5 c6} - r2n1{c6 .} ==> r3c9 ≠ 1
t-whip[4]: r3c9{n9 n8} - r4c9{n8 n1} - r6c7{n1 n3} - b3n3{r1c7 .} ==> r1c8 ≠ 9
whip[1]: b3n9{r3c9 .} ==> r3c5 ≠ 9
z-chain[3]: b2n9{r1c5 r1c4} - r6c4{n9 n1} - b8n1{r9c4 .} ==> r1c5 ≠ 1
z-chain[4]: r1c8{n4 n3} - r2n3{c7 c1} - r2n4{c1 c7} - r8n4{c7 .} ==> r1c5 ≠ 4
t-whip[4]: r6c7{n3 n1} - c9n1{r4 r2} - r2c6{n1 n5} - b3n5{r2c7 .} ==> r1c7 ≠ 3
biv-chain[4]: b3n3{r1c8 r2c7} - r2c1{n3 n4} - r4n4{c1 c2} - r4n6{c2 c8} ==> r4c8 ≠ 3
whip[1]: b6n3{r6c8 .} ==> r6c2 ≠ 3
z-chain[4]: r5c3{n6 n9} - r8c3{n9 n3} - b4n3{r4c3 r4c1} - r4n4{c1 .} ==> r4c2 ≠ 6
singles + a whip[1] to the end
denis_berthier
2010 Supporter

Posts: 1997
Joined: 19 June 2007
Location: Paris

### Fully super-symmetric oddagons

I don't know if this was intended in the original definition of oddagons but, needless to say, my version of oddagons is fully super-symmetric: the 4 2D spaces (rc, rn, cn and bn) play the same roles.

So the question is, do we have examples with several digits?
If we allow only Whips[1] and Oddagons, most of the puzzles in the Obiwan+Tarek collection have several oddagons

Consider #8:
Code: Select all
`..8..53.6.7..3......21.....8..5......6......7..7...14.71......9..9..4...6...9.574..8..53.6.7..3......21.....8..5......6......7..7...14.71......9..9..4...6...9.574`

This is the sought for example: it has two oddagons[5] and two oddagons[7] involving 2 digits each:

singles ==> r9c3 = 3, r9c6 = 1, r7c3 = 4, r4c3 = 1, r5c3 = 5, r2c3 = 6, r6c9 = 5, r3c9 = 8, r5c5 = 1, r7c5 = 5, r3c7 = 7, r4c6 = 7, r2c7 = 4
whip[1]: c7n9{r5 .} ==> r5c8 ≠ 9, r4c8 ≠ 9
whip[1]: r6n8{c6 .} ==> r5c6 ≠ 8, r5c4 ≠ 8
whip[1]: r6n6{c6 .} ==> r4c5 ≠ 6
oddagon[5]: b2n4{r1c4 r3c5},r3n4{c5 c1},c1n4{r3 r5},r5n4{c1 c4},c4n4{r5 r1} ==> r1c2 ≠ 4
singles ==> r1c2 = 9, r4c7 = 9, r4c8 = 6
oddagon[5]: b3n1{r1c8 r2c9},r2c9{n1 n2},b3n2{r2c9 r2c8},c8n2{r2 r1},r1c8{n2 n1} ==> r2c8 ≠ 2
oddagon[5]: b3n1{r1c8 r2c8},r2n1{c8 c9},r2c9{n1 n2},b3n2{r2c9 r1c8},r1c8{n2 n1} ==> r2c8 ≠ 1
oddagon[7]: r4c5{n2 n4},r4n4{c5 c2},b4n4{r4c2 r5c1},r5c1{n4 n2},r5n2{c1 c7},b6n2{r5c7 r4c9},r4n2{c9 c5} ==> r5c1 ≠ 2
oddagon[7]: c5n2{r1 r4},r4c5{n2 n4},b5n4{r4c5 r5c4},c4n4{r5 r1},r1c4{n4 n7},r1n7{c4 c5},r1c5{n7 n2} ==> r1c5 ≠ 2
denis_berthier
2010 Supporter

Posts: 1997
Joined: 19 June 2007
Location: Paris

### Oddagons[9]

Here are now two fully super-symmetric oddagons[9]

Consider puzzle # 38

Code: Select all
`......3..2...8.1...5...9....8..1.9....67...3.4....5..2..3.2....1....47...9.6...8.......3..2...8.1...5...9....8..1.9....67...3.4....5..2..3.2....1....47...9.6...8. # NoFish038 r8c4<>3`

The first thing CSP-Rules finds is an oddagon[5], with the expected elimination
But then there are two oddagons[9] (with 3 digits each):

oddagon[5]: b2n3{r2c6 r3c5},r3n3{c5 c1},c1n3{r3 r4},r4n3{c1 c6},c6n3{r4 r2} ==> r8c4 ≠ 3
oddagon[9]: r5n1{c2 c9},b6n1{r5c9 r6c8},c8n1{r6 r7},r7n1{c8 c6},r7c6{n1 n8},c6n8{r7 r5},r5c6{n8 n2},r5n2{c6 c2},r5c2{n2 n1} ==> r7c6 ≠ 1
oddagon[9]: r5n1{c2 c9},b6n1{r5c9 r6c8},c8n1{r6 r7},r7c8{n1 n6},b9n6{r7c8 r8c9},r8n6{c9 c2},r8c2{n6 n2},c2n2{r8 r5},r5c2{n2 n1} ==> r7c8 ≠ 6
denis_berthier
2010 Supporter

Posts: 1997
Joined: 19 June 2007
Location: Paris

### Re: A revival of Broken Wings

Being a fan of well-defined terminology, I have a question/suggestion. Is "Broken Wing" a strict synonym of "Oddagon" or are they actually slightly different? I'd vote for the latter option. Having two different terms for the same exact thing is redundant and confusing, so either one term should be dropped (I'd drop Broken Wing and keep Oddagon in that case) or they should have different definitions (my preference).

To me it would make the most sense to use "Oddagon" to refer to the (non-uniqueness) deadly pattern itself, similarly to "BUG" (most of which are probably non-uniqueness DPs as well, btw). Thus, in a puzzle with at least one solution a pure Oddagon can't exist any more than a non-uniqueness BUG, but we can have Oddagon+N patterns similar to BUG+N guaranteeing that at least one of the +N guardians must be true.

What would a Broken Wing be then? I'd see it as a special case of an Oddagon+N pattern where all of the N guardians see the victim(s) directly (just like in yzfwsf's example). On the other hand, with a generic Oddagon+N kraken chains may be needed to make at least some of the guardians see the victim(s) remotely. In other words, every Broken Wing is an Oddagon+N, but not every Oddagon+N is a Broken Wing.

Would anyone agree with those definitions? (If so, what about Bivalue Oddagons? Should they be counted as Broken Wings too if their guardians see the victims directly, or are Broken Wings strictly single-digit patterns?)

SpAce

Posts: 2674
Joined: 22 May 2017

### Re: A revival of Broken Wings

Here's a couple more ways to express the logic for that elimination:

1) 10x10 Block Triangular Matrix (BTM):

Code: Select all
`  1r2                        1c5   1b7   1r1   1b6   1r3   1b7   1c6   1r3   1b6   1c4------------------------------------------------------------- 1r2c1 1r7c1 1r1c1                                           | 1C1 1r2c7       1r1c7 1r6c7                                     | 1C7 1r2c9             1r4c9 1r3c9                               | 1C9 1r2c3                   1r3c3 1r9c3                         | 1C3 1r7c5                         1r7c1 1r7c6                   | 1R7 1r4c5             1r4c9             1r4c6                   | 1R4 1r2c3 1r9c3                               1r3c3             | 1C3 1r2c9                                     1r3c9 1r4c9       | 1C9 1r6c5                                           1r6c7 1r6c4 | 1R6 1r9c5 1r9c3                                           1r9c4 | 1R9--------------------------------------------------------------1r2c5 (That's eight different 3-SIS and eight different end points. No binary strong links at all.)`

2) 5x5 BTM using eleven's four Finned X-Wings:

Code: Select all
` 1r2|1c5   1b7   1b6   1b7   1b6---------------------------------- 1C17\r12 1r7c1 1r6c7             | FXW: 1:C17\r12 fr7c1 fr6c7 1C39\r23       1r4c9 1r9c3       | FXW: 1:C39\r23 fr4c9 fr9c3 1R47\c56       1r4c9 1r7c1       | FXW: 1:R47\c56 fr4c9 fr7c1 1C39\r23 1r9c3             1r4c9 | FXW: 1:C39\r23 fr4c9 fr9c3 1R69\c45 1r9c3             1r6c7 | FXW: 1:R69\c45 fr9c3 fr6c7-----------------------------------1r2c5`

3) An AIC with an alternate end point (@), using the same Finned X-Wings:

1: C17\r12 = r6c7|r7c1 - r4c9&r9c3 = (C39\r23@ | r6c7&r9c3 | r4c9&r7c1) - (r4c9|r7c1 & r6c7|r9c3) = (R47\c56 | R69\c45)
=> -1 r2c5

(No correctness guaranteed for any of them. This is pretty uncharted territory for me, which of course makes it fun.)

SpAce

Posts: 2674
Joined: 22 May 2017

### Re: A revival of Broken Wings

The name Broken Wing comes from the pattern, which a 5 link (1 digit) oddagon can show. So i only used it for the 5 links case.

The name oddagon, i think, is an invention of Steve K, and also was only used for 1-digit (impossible) patterns for a long time. A definition "an odd number of strong links for a digit, forming a loop" would also work for 2 digit-oddagons, for both digits (2 oddagons in the same place). After it has been introduced, it was widely accepted.

What Denis showed above, are impossible patterns with several digits, also having an odd number of strong links in a loop. To avoid misunderstandings, i would not call them oddagons (at least multi-digit-oddagon).
In the two oddagon(9) samples the eliminations can be found easier with conventional chains (not needing all the strong links), so they are not the best to demonstrate their usefulness.
Denis' notation does not list the guardians, which are 1r7c49, 7r7c6 in the first, and 6r7c79,r8c6, 459r7c8, if i see that right (to get strong links).

I have never seen a (guardianed) multidigit impossible loop with strong links only, which would make eliminations simpler, but they may exist.
eleven

Posts: 2469
Joined: 10 February 2008

### Re: A revival of Broken Wings

eleven wrote:In the two oddagon(9) samples the eliminations can be found easier with conventional chains (not needing all the strong links), so they are not the best to demonstrate their usefulness.

In this example, I activated only oddagons. In most of the puzzles, if I activate powerful rules, such as whips, oddagons don't appear.

eleven wrote:Denis' notation does not list the guardians, which are 1r7c49, 7r7c6 in the first, and 6r7c79,r8c6, 459r7c8, if i see that right (to get strong links).

Right. "Guardians" are z-candidates, which are never written in my notation.

eleven wrote:I have never seen a (guardianed) multidigit impossible loop with strong links only, which would make eliminations simpler, but they may exist.

Conversely, do you have examples of single digit oddagons that make resolution simpler?
After trying the Obi-Wahn + Tarek puzzles, it seems that oddagons are a very nice pattern, but not very useful in practice.
denis_berthier
2010 Supporter

Posts: 1997
Joined: 19 June 2007
Location: Paris

### Re: A revival of Broken Wings

denis_berthier wrote:Conversely, do you have examples of single digit oddagons that make resolution simpler?
After trying the Obi-Wahn + Tarek puzzles, it seems that oddagons are a very nice pattern, but not very useful in practice.

There are many samples for useful oddagon eliminations (just search for them). To pick one out, see here.
Also if there may be some short chains available, for manual solvers oddagons are easier to spot (ok, not with 11 guardians) and use (like UR's or BUG's).
eleven

Posts: 2469
Joined: 10 February 2008

### Re: A revival of Broken Wings

eleven wrote:There are many samples for useful oddagon eliminations (just search for them). To pick one out, see here.

That's a perfect example (unless Denis insists on a single-digit one). Cenoman's beautiful solution is a 4x4 PM:

Code: Select all
` 1r5c6 1r5c8 1r5c6       5r5c6       1r4c9 5r6c5 3r2c5 | BV-Oddagon (67)r2c59,r4c9,r6c57 3r7c6             3r3c6------------------------ -1r7c6`

It's simple to write as an AIC too:

(1)r5c6 = (5,1)r5c68 - (5|1=BVO=3)r2c59,r4c9,r6c57 - r3c6 = (3)r7c6 => -1 r7c6; btte

It's certainly the simplest available single-step solution for that puzzle, by far. Compare that to my ridiculous 20x20 BTM, for example, or any of the possibly even worse nets Hodoku has to offer.

Btw, I'd totally forgotten I'd written such a horror story... or is it a comedy, I'm not sure. Surprisingly it seems to be correct, except for one missing comma. Here it is as a matrix:

20x20 BTM: Show
Code: Select all
` 7r2c5 3r2c5 6r2c5             6r2c9 7r2c9             6r2c7 7r2c7  3r2c7                   7r46c9       7r6c7                                6r6c7 6r46c9                          3r8c7 7r8c7        9r8c7                                             9r1c7 9r1c3                                                   9r3c1 2r3c1                                                         2r9c1 5r9c1                                      6r9c9  9r9c9             5r9c9 7r9c9 7r2c5                          7r2c7                                7r2c9             =============================================================       3r2c7 3r3c8             1r3c8  1r3c9                    1r4c9 67r24c9                          6|7r6c9 5r6c9       3r2c7        1r4c9         5r6c5 2r4c5                             | DP(67)r2c79,b6p37,r46c5             8r3c8  8r3c9                     8r1c8       3r8c5 3r3c78                     2r8c5 8r78c8 3r7c5                | UR(57)r78c58       3r2c7                                               67r2c79 7r2c5                                               3r2c5 6r2c5--------------------------------------------------------------------------+7r2c5`

SpAce

Posts: 2674
Joined: 22 May 2017

### Re: A revival of Broken Wings

eleven wrote:
denis_berthier wrote:Conversely, do you have examples of single digit oddagons that make resolution simpler?
After trying the Obi-Wahn + Tarek puzzles, it seems that oddagons are a very nice pattern, but not very useful in practice.

There are many samples for useful oddagon eliminations (just search for them). To pick one out, see here.
Also if there may be some short chains available, for manual solvers oddagons are easier to spot (ok, not with 11 guardians) and use (like UR's or BUG's).

This is certainly an example worth of examination, but it's not a pure oddagon. I can see an embedded pair and I can't even count with my two hands the number of cells involved.

CSP-Rules finds a much simpler 3-digit oddagon[7]:
oddagon[7]: r1c3{n2 n7},b1n7{r1c3 r3c2},r3c2{n7 n9},c2n9{r3 r8},r8n9{c2 c3},r8c3{n9 n2},c3n2{r8 r1} ==> r8c3 ≠ 9

But it's a useless one if you allow ordinary Subsets:
Hidden Text: Show
***********************************************************************************************
*** SudoRules 20.1.s based on CSP-Rules 2.1.s, config = tW+O+SFin
*** using CLIPS 6.32-r764
***********************************************************************************************
whip[1]: r8n1{c3 .} ==> r7c3 ≠ 1
whip[1]: b4n1{r6c3 .} ==> r6c9 ≠ 1
finned-x-wing-in-rows: n5{r5 r7}{c8 c6} ==> r9c6 ≠ 5
naked-triplets-in-a-block: b7{r7c2 r7c3 r8c2}{n8 n9 n7} ==> r9c1 ≠ 9, r8c3 ≠ 9, r8c3 ≠ 7, r8c1 ≠ 9
z-chain[4]: c9n1{r3 r4} - r5c8{n1 n5} - r6c9{n5 n6} - r2c9{n6 .} ==> r3c9 ≠ 7
z-chain[4]: c9n8{r3 r8} - r7n8{c8 c2} - c2n9{r7 r8} - c7n9{r8 .} ==> r3c9 ≠ 9
hidden-single-in-a-block ==> r1c7 = 9
z-chain[3]: r2c9{n7 n6} - c7n6{r2 r6} - b6n7{r6c7 .} ==> r9c9 ≠ 7, r8c9 ≠ 7
t-whip[3]: r2c9{n6 n7} - b6n7{r6c9 r6c7} - c7n6{r6 .} ==> r2c5 ≠ 6, r1c8 ≠ 6
singles ==> r9c8 = 6, r1c6 = 6
whip[1]: r9n7{c6 .} ==> r7c4 ≠ 7, r7c5 ≠ 7, r7c6 ≠ 7, r8c5 ≠ 7
biv-chain[3]: b1n7{r3c2 r1c3} - r1n2{c3 c4} - b2n8{r1c4 r3c4} ==> r3c4 ≠ 7
biv-chain[3]: c3n7{r7 r1} - r1c8{n7 n8} - r7n8{c8 c2} ==> r7c2 ≠ 7
biv-chain[2]: r7n7{c8 c3} - c2n7{r8 r3} ==> r3c8 ≠ 7
biv-chain[4]: r8n9{c2 c9} - r9n9{c9 c4} - b8n7{r9c4 r9c6} - r3n7{c6 c2} ==> r3c2 ≠ 9, r8c2 ≠ 7
singles ==> r3c2 = 7, r1c3 = 2, r3c1 = 9, r6c1 = 1, r6c3 = 9, r7c3 = 7,> r8c3 = 1
biv-chain[4]: r3n2{c4 c6} - c6n3{r3 r7} - r7n1{c6 c4} - b8n9{r7c4 r9c4} ==> r9c4 ≠ 2
biv-chain[4]: r7n8{c8 c2} - r7n9{c2 c4} - r9c4{n9 n7} - r1n7{c4 c8} ==> r1c8 ≠ 8
stte
denis_berthier
2010 Supporter

Posts: 1997
Joined: 19 June 2007
Location: Paris

### Re: A revival of Broken Wings

denis_berthier wrote:This is certainly an example worth of examination, but it's not a pure oddagon.

I don't think it's a dirty oddagon either -- just a bivalue oddagon instead of a single-digit one. In fact, those are usually easier to spot than pure single-digit oddagons, for obvious reasons. They often have fewer guardians too, so they're usually easier to use as well.

I'm sure eleven will also find a good example of a single-digit oddagon, but for a couple of less spectacular examples this and this are at least somewhat simpler than any of the other solutions presented. The latter is actually embedded inside a bivalue (27) oddagon with a single internal guardian 5r8c6 (i.e. a direct placement). Unfortunately that placement alone doesn't solve the puzzle, unlike the two external guardians of the single-digit oddagon (which is nicely visible because of the bv-oddagon in the same cells).

I can't even count with my two hands the number of cells involved.

True. Two hands are clearly not enough. How about the fingers in those two hands? If you have the full set, it should be just enough to count the 2x5 cells used for the full logic. The bv-oddagon has five cells and the chain has five more.

SpAce

Posts: 2674
Joined: 22 May 2017

### Re: A revival of Broken Wings

In the Obi-Wahn+Tarek collection of 563 puzzles, the largest oddagon I found is an oddagon[11]
It is in puzzle #160:
Code: Select all
`1.....9.....6.4.8..4..3...2..6.8.....3...57..9..2...1...7..6....2....5..8..1....31.....9.....6.4.8..4..3...2..6.8.....3...57..9..2...1...7..6....2....5..8..1....3 # NoFish160 r5c8<>6SER=7.3`

When only whips[1] and oddagons are activated, CSP-Rules finds the same Odagon as Tarek, but also two more, including a 2-digit one of length 11.
Notice that the second oddagon[5] is made possible by the elimination of the oddagon[11]: r8c9 ≠ 6; this amounts to deleting c9 from its second cell: r8n6 and making it bivalue modulo its target (n6r1c8).
Code: Select all
`**************************************************************************************************  SudoRules 20.1.s based on CSP-Rules 2.1.s, config = O***  using CLIPS 6.32-r764***********************************************************************************************1.....9.....6.4.8..4..3...2..6.8.....3...57..9..2...1...7..6....2....5..8..1....3 # NoFish160 r5c8<>6208 candidates, 1220 csp-links and 1220 links. Density = 5.67%oddagon[5]: r1n6{c2 c9},c9n6{r1 r8},r8n6{c9 c1},c1n6{r8 r3},b1n6{r3c1 r1c2} ==> r5c8 ≠ 6oddagon[11]: r3n1{c6 c7},r3c7{n1 n6},c7n6{r3 r6},b6n6{r6c7 r6c9},c9n6{r6 r8},r8c9{n6 n1},r8n1{c9 c3},c3n1{r8 r5},r5n1{c3 c5},b5n1{r5c5 r4c6},c6n1{r4 r3} ==> r8c9 ≠ 6oddagon[5]: c8n6{r1 r8},r8n6{c8 c1},c1n6{r8 r3},r3n6{c1 c7},b3n6{r3c7 r1c8} ==> r1c8 ≠ 6`

I looked for the simplest set of rules that could solve this puzzle, so as not to destroy the oddagons. It is bivalue-chains. (Typed-bivalue-chains are not enough.) Unfortunately, they destroy the 3 oddagons, much before they have any chance to appear. In particular, the oddagon[11] elimination is obtained by a mere bivalue-chain[5]:

Hidden Text: Show
***********************************************************************************************
*** SudoRules 20.1.s based on CSP-Rules 2.1.s, config = BC+SFin
*** using CLIPS 6.32-r764
***********************************************************************************************
1.....9.....6.4.8..4..3...2..6.8.....3...57..9..2...1...7..6....2....5..8..1....3
biv-chain[4]: r3c7{n1 n6} - b1n6{r3c1 r1c2} - c2n8{r1 r6} - c7n8{r6 r7} ==> r7c7 ≠ 1
whip[1]: b9n1{r8c9 .} ==> r2c9 ≠ 1
biv-chain[3]: c9n1{r7 r8} - c3n1{r8 r5} - r5n8{c3 c9} ==> r7c9 ≠ 8
biv-chain[4]: r1n3{c3 c8} - r2c7{n3 n1} - c5n1{r2 r5} - c3n1{r5 r8} ==> r8c3 ≠ 3
whip[1]: c3n3{r2 .} ==> r2c1 ≠ 3
biv-chain[5]: r5n8{c9 c3} - r5n1{c3 c5} - r2n1{c5 c7} - b3n3{r2c7 r1c8} - b3n4{r1c8 r1c9} ==> r5c9 ≠ 4
biv-chain[5]: r8n1{c9 c3} - r5n1{c3 c5} - r2n1{c5 c7} - b3n3{r2c7 r1c8} - b3n4{r1c8 r1c9} ==> r8c9 ≠ 4
biv-chain[5]: r8n1{c9 c3} - r5n1{c3 c5} - r2n1{c5 c7} - r3c7{n1 n6} - c1n6{r3 r8} ==> r8c9 ≠ 6
finned-x-wing-in-rows: n6{r8 r3}{c1 c8} ==> r1c8 ≠ 6
biv-chain[3]: r1n6{c9 c2} - c2n8{r1 r6} - r5n8{c3 c9} ==> r5c9 ≠ 6
biv-chain[3]: c9n6{r6 r1} - c2n6{r1 r9} - r8n6{c1 c8} ==> r5c8 ≠ 6
singles ==> r5c5 = 6, r4c6 = 1,r2c5 = 1, r2c7 = 3, r4c8 = 3, r6c6 = 3, r1c3 = 3, r3c7 = 1, r5c3 = 1, r2c3 = 2, r2c2 = 9, r5c9 = 8, r7c7 = 8, r7c2 = 1, r8c9 = 1
whip[1]: b9n7{r9c8 .} ==> r1c8 ≠ 7, r3c8 ≠ 7
whip[1]: b6n5{r6c9 .} ==> r1c9 ≠ 5, r2c9 ≠ 5
singles ==> r2c9 = 7, r2c1 = 5, r3c3 = 8, r6c2 = 8, r6c5 = 7
whip[1]: c5n4{r9 .} ==> r7c4 ≠ 4, r8c4 ≠ 4
whip[1]: r7n5{c5 .} ==> r9c5 ≠ 5
whip[1]: c5n9{r9 .} ==> r7c4 ≠ 9, r8c4 ≠ 9, r8c6 ≠ 9, r9c6 ≠ 9
hidden-single-in-a-column ==> r3c6 = 9
naked-pairs-in-a-row: r8{c3 c5}{n4 n9} ==> r8c8 ≠ 9, r8c8 ≠ 4, r8c1 ≠ 4
x-wing-in-rows: n6{r3 r8}{c1 c8} ==> r9c8 ≠ 6
biv-chain-rc[3]: r3c4{n7 n5} - r3c8{n5 n6} - r8c8{n6 n7} ==> r8c4 ≠ 7
whip[1]: b8n7{r9c6 .} ==> r1c6 ≠ 7
biv-chain[3]: r9c6{n2 n7} - r8n7{c6 c8} - b9n6{r8c8 r9c7} ==> r9c7 ≠ 2
singles ==> r4c7 = 2, r5c1 = 2
biv-chain[3]: c1n4{r4 r7} - r7c9{n4 n9} - r4n9{c9 c4} ==> r4c4 ≠ 4
singles ==> r4c4 = 9, r5c4 = 4, r5c8 = 9, r7c9 = 9
biv-chain-rc[3]: r7c8{n2 n4} - r1c8{n4 n5} - r1c5{n5 n2} ==> r7c5 ≠ 2
hidden-single-in-a-row ==> r7c8 = 2
whip[1]: b9n4{r9c8 .} ==> r9c3 ≠ 4, r9c5 ≠ 4
biv-chain-rc[4]: r4c9{n4 n5} - r4c2{n5 n7} - r1c2{n7 n6} - r1c9{n6 n4} ==> r6c9 ≠ 4
biv-chain-rc[4]: r1c5{n2 n5} - r1c8{n5 n4} - r9c8{n4 n7} - r9c6{n7 n2} ==> r1c6 ≠ 2, r9c5 ≠ 2
stte

After scanning the whole collection, my initial enthusiasm for (fully super-symmetric) oddagons is shaken. I found very few interesting examples where a resolution theory is strong enough to solve the puzzle but not strong enough to destroy all the potential oddagons.

Notice also that there is more in the Obi-Wahn+Tarek collection than the fully super-symmetric oddagons I've coded in CSP-Rules. I don't find all the eliminations mentioned in the file. I don't know exactly what Tarek calls NoFish. My version of oddagons doesn't include any sub-patterns other than 2D-cells (CSP-Variables) that are bivalue modulo the target.
denis_berthier
2010 Supporter

Posts: 1997
Joined: 19 June 2007
Location: Paris

### Re: A revival of Broken Wings

denis_berthier wrote:Notice also that there is more in the Obi-Wahn+Tarek collection than the fully super-symmetric oddagons I've coded in CSP-Rules. I don't find all the eliminations mentioned in the file. I don't know exactly what Tarek calls NoFish. My version of oddagons doesn't include any sub-patterns other than 2D-cells (CSP-Variables) that are bivalue modulo the target.

Hi Denis,

The Nofish collection demonstrates eliminations through POM that were not explained by UFG type fish of the time. They were used to explore more complex fish, Obi fish and oddagons.

If there were eliminations proven through techniques other than POM then they were not mentioned.

My part of the collection were special puzzles that started at the POM elimination with no simpler techniques (in most Resolution rules at the time) available.

tarek

tarek

Posts: 3748
Joined: 05 January 2006

### Re: A revival of Broken Wings

Hi tarek,
Thanks for the explanations.
Did your idea of oddagons include the possibility of multi-digit ones ? If not, is it shocking to you that I call these oddagons also ? It seems to be to be a natural extension of the single-digit ones covered by POM.
denis_berthier
2010 Supporter

Posts: 1997
Joined: 19 June 2007
Location: Paris

PreviousNext