Robert's puzzles 2020-10-14

Post puzzles for others to solve here.

Robert's puzzles 2020-10-14

Postby Mauriès Robert » Wed Oct 14, 2020 4:10 pm

Hi all,
This puzzle generated by Hodoku is evaluated at more than 9000 by the software.
I submit it to your resolution.
Cordially
Robert
.6..7...1..2...4.....5..87...9....1..3.197.5..5....6...17..8.....4...7..3...2..6.
puzzle: Show
Image
solution: Show
My resolution is given in detail with this link : https://www.assistant-sudoku.com/Grille ... hp?RID=682

Image
Mauriès Robert
 
Posts: 594
Joined: 07 November 2019
Location: France

Re: Robert's puzzles 2020-10-14

Postby denis_berthier » Thu Oct 15, 2020 2:23 am

SR 8.6, W=7
I've found nothing noticeable

Code: Select all
***********************************************************************************************
***  SudoRules 20.1.s based on CSP-Rules 2.1.s, config = W+SFin
***  Using CLIPS 6.32-r770
***********************************************************************************************
singles ==> r5c7 = 2, r4c7 = 3, r9c7 = 1, r9c4 = 7, r5c3 = 6
187 candidates, 1071 csp-links and 1071 links. Density = 6.16%
finned-x-wing-in-rows: n8{r5 r9}{c9 c1} ==> r8c1 ≠ 8
finned-x-wing-in-columns: n5{c7 c3}{r1 r7} ==> r7c1 ≠ 5
finned-x-wing-in-columns: n5{c3 c7}{r1 r9} ==> r9c9 ≠ 5
finned-swordfish-in-rows: n4{r5 r9 r1}{c1 c9 c6} ==> r3c6 ≠ 4
naked-quads-in-a-column: c9{r4 r5 r9 r6}{n7 n8 n4 n9} ==> r8c9 ≠ 9, r8c9 ≠ 8, r7c9 ≠ 9, r7c9 ≠ 4, r3c9 ≠ 9, r2c9 ≠ 9
biv-chain[4]: r9c2{n8 n9} - c9n9{r9 r6} - b6n7{r6c9 r4c9} - c2n7{r4 r2} ==> r2c2 ≠ 8
z-chain[4]: r3n9{c2 c6} - r3n2{c6 c9} - c9n6{r3 r2} - r2n5{c9 .} ==> r2c1 ≠ 9
z-chain[4]: r3n2{c6 c9} - c9n6{r3 r2} - r2n5{c9 c1} - r2n1{c1 .} ==> r3c6 ≠ 1
biv-chain[5]: r2c8{n3 n9} - b6n9{r6c8 r6c9} - r6n7{c9 c1} - b4n1{r6c1 r6c3} - r3c3{n1 n3} ==> r3c9 ≠ 3
z-chain[5]: r3n9{c2 c6} - r3n2{c6 c9} - c9n6{r3 r2} - r2n5{c9 c1} - r2n7{c1 .} ==> r2c2 ≠ 9
naked-single ==> r2c2 = 7
t-whip[6]: r6n2{c6 c1} - r6n7{c1 c9} - r6n9{c9 c8} - r2c8{n9 n3} - r1c8{n3 n2} - r3n2{c9 .} ==> r4c6 ≠ 2
t-whip[7]: r3c3{n3 n1} - c1n1{r3 r6} - r6n7{c1 c9} - r6n9{c9 c8} - r2c8{n9 n3} - r1c8{n3 n2} - r3n2{c9 .} ==> r3c6 ≠ 3
t-whip[7]: c7n9{r7 r1} - r2c8{n9 n3} - r1c8{n3 n2} - r3n2{c9 c6} - r6c6{n2 n3} - r1c6{n3 n4} - r9n4{c6 .} ==> r9c9 ≠ 9
singles ==> r6c9 = 9, r4c9 = 7, r6c1 = 7, r6c3 = 1, r3c3 = 3
whip[1]: r6n2{c6 .} ==> r4c4 ≠ 2
z-chain[3]: b9n9{r7c8 r8c8} - b9n8{r8c8 r9c9} - r9c2{n8 .} ==> r7c1 ≠ 9
biv-chain[4]: c2n4{r3 r4} - r5n4{c1 c9} - c9n8{r5 r9} - r9c2{n8 n9} ==> r3c2 ≠ 9
naked-single ==> r3c2 = 4
whip[1]: c2n9{r9 .} ==> r8c1 ≠ 9
finned-x-wing-in-columns: n4{c8 c5}{r7 r6} ==> r6c4 ≠ 4
naked-triplets-in-a-row: r1{c1 c3 c7}{n9 n8 n5} ==> r1c8 ≠ 9, r1c6 ≠ 9, r1c4 ≠ 9, r1c4 ≠ 8
whip[1]: b2n8{r2c5 .} ==> r2c1 ≠ 8
biv-chain-rn[3]: r3n9{c6 c1} - r3n1{c1 c5} - r8n1{c5 c6} ==> r8c6 ≠ 9
biv-chain[3]: r1c8{n3 n2} - r3n2{c9 c6} - r6c6{n2 n3} ==> r1c6 ≠ 3
biv-chain[4]: b9n8{r8c8 r9c9} - r9n4{c9 c6} - r1n4{c6 c4} - r1n3{c4 c8} ==> r8c8 ≠ 3
biv-chain[4]: r2n5{c9 c1} - b1n1{r2c1 r3c1} - r3c5{n1 n6} - b3n6{r3c9 r2c9} ==> r2c9 ≠ 3
whip[1]: c9n3{r8 .} ==> r7c8 ≠ 3
biv-chain[4]: r3n9{c6 c1} - c1n1{r3 r2} - r2n5{c1 c9} - b3n6{r2c9 r3c9} ==> r3c6 ≠ 6
t-whip[4]: r1n3{c4 c8} - r2c8{n3 n9} - c7n9{r1 r7} - c4n9{r7 .} ==> r8c4 ≠ 3
biv-chain[5]: r2c8{n9 n3} - r1n3{c8 c4} - b2n4{r1c4 r1c6} - r9n4{c6 c9} - b9n8{r9c9 r8c8} ==> r8c8 ≠ 9
whip[1]: b9n9{r7c8 .} ==> r7c4 ≠ 9
z-chain[5]: r8c8{n2 n8} - r8c2{n8 n9} - r8c4{n9 n6} - c1n6{r8 r7} - r7n2{c1 .} ==> r8c9 ≠ 2
biv-chain[3]: r3n6{c5 c9} - c9n2{r3 r7} - r7c1{n2 n6} ==> r7c5 ≠ 6
z-chain[5]: r8c9{n3 n5} - b7n5{r8c1 r9c3} - c6n5{r9 r4} - c6n6{r4 r2} - c6n1{r2 .} ==> r8c6 ≠ 3
whip[5]: r8n1{c6 c5} - b2n1{r3c5 r2c6} - r2c1{n1 n5} - r8n5{c1 c9} - r8n3{c9 .} ==> r8c6 ≠ 6
biv-chain[4]: c7n5{r7 r1} - r2c9{n5 n6} - c6n6{r2 r4} - b5n5{r4c6 r4c5} ==> r7c5 ≠ 5
whip[1]: r7n5{c9 .} ==> r8c9 ≠ 5
naked-single ==> r8c9 = 3
biv-chain[4]: c6n6{r4 r2} - b3n6{r2c9 r3c9} - r3n2{c9 c6} - r1c6{n2 n4} ==> r4c6 ≠ 4
z-chain[3]: r4c6{n6 n5} - c5n5{r4 r8} - b8n6{r8c5 .} ==> r4c4 ≠ 6
hidden-pairs-in-a-block: b5{r4c5 r4c6}{n5 n6} ==> r4c5 ≠ 8, r4c5 ≠ 4
x-wing-in-columns: n4{c5 c8}{r6 r7} ==> r7c4 ≠ 4
naked-triplets-in-a-column: c5{r3 r4 r8}{n1 n6 n5} ==> r2c5 ≠ 6, r2c5 ≠ 1
biv-chain-bn[3]: b8n3{r7c4 r7c5} - b8n4{r7c5 r9c6} - b2n4{r1c6 r1c4} ==> r1c4 ≠ 3
stte
denis_berthier
2010 Supporter
 
Posts: 4213
Joined: 19 June 2007
Location: Paris

Re: Robert's puzzles 2020-10-14

Postby Mauriès Robert » Thu Oct 15, 2020 9:25 am

Hi Denis,
denis_berthier wrote:I've found nothing noticeable

Indeed, this puzzle has nothing special except that its level always requires several steps to solve, even with T&E.
Robert
Mauriès Robert
 
Posts: 594
Joined: 07 November 2019
Location: France

Re: Robert's puzzles 2020-10-14

Postby SpAce » Fri Oct 16, 2020 11:27 pm

Hi Robert,

Mauriès Robert wrote:Indeed, this puzzle has nothing special except that its level always requires several steps to solve, even with T&E.

I guess that depends on what kind of T&E you mean. With T&E(2, basics) it's easy:

Code: Select all
.------------------.---------------------.--------------------.
| 4589   6     358 | 23489  7     2349   |  59   239    1     |
| 15789  789   2   | 3689   1368  1369   |  4    39     3569  |
| 149    49    13  | 5      1346  123469 |  8    7      2369  |
:------------------+---------------------+--------------------:
| 2478   2478  9   | 2468   4568  2456   |  3    1      478   |
| 48     3     6   | 1      9     7      |  2    5      48    |
| 12478  5     18  | 2348   348   234    |  6    489    4789  |
:------------------+---------------------+--------------------:
| 2569   1     7   | 3469   3456  8      | a59   2349   23459 |
| 25689  289   4   | 369    1356  13569  |  7   a239-8  23589 |
| 3      89    58  | 7      2     459    |  1    6      4589  |
'------------------'---------------------'--------------------'

T&E(2): 8r8c8 & (5|9)r7c7 ->[singles, 1 NP]-> ! => -8 r8c8; stte
-SpAce-: Show
Code: Select all
   *             |    |               |    |    *
        *        |=()=|    /  _  \    |=()=|               *
            *    |    |   |-=( )=-|   |    |      *
     *                     \  ¯  /                   *   

"If one is to understand the great mystery, one must study all its aspects, not just the dogmatic narrow view of the Jedi."
User avatar
SpAce
 
Posts: 2671
Joined: 22 May 2017

Re: Robert's puzzles 2020-10-14

Postby Mauriès Robert » Sat Oct 17, 2020 8:00 am

Hi Space,
SpAce wrote:I guess that depends on what kind of T&E you mean. With T&E(2, basics) it's easy:
T&E(2): 8r8c8 & (5|9)r7c7 ->[singles, 1 NP]-> ! => -8 r8c8; stte

Well seen your resolution of size 2, i.e. with bifurcation (OR).
For my part, by T&E I meant T&E(1), i.e. without bifurcation.
Cordialy
Robert
Mauriès Robert
 
Posts: 594
Joined: 07 November 2019
Location: France

Re: Robert's puzzles 2020-10-14

Postby denis_berthier » Sat Oct 17, 2020 10:08 am

SpAce wrote: With T&E(2, basics) it's easy:
T&E(2): 8r8c8 & (5|9)r7c7 ->[singles, 1 NP]-> ! => -8 r8c8; stte


Except that this is not T&E(2). In T&E(2), you take two (and only two) candidates as a hypothesis and the only thing that can possibly be concluded is a contradiction between them.
denis_berthier
2010 Supporter
 
Posts: 4213
Joined: 19 June 2007
Location: Paris

Re: Robert's puzzles 2020-10-14

Postby SpAce » Sat Oct 17, 2020 11:28 am

denis_berthier wrote:
SpAce wrote: With T&E(2, basics) it's easy:
T&E(2): 8r8c8 & (5|9)r7c7 ->[singles, 1 NP]-> ! => -8 r8c8; stte

Except that this is not T&E(2).

Ok. I won't argue about that since, as far as I know, you've defined the terms. What is it then?

In T&E(2), you take two (and only two) candidates as a hypothesis and the only thing that can possibly be concluded is a contradiction between them.

Good to know, but what exactly does that mean? That the two candidates can't be true together? How does that solve anything alone? Don't you need to test at least two of such combos with one part remaining fixed (like here) to conclude anything worth-while? How do you actually use T&E(2) if it's not that? (I've understood that it can solve any 9x9 sudoku, so it would be nice to know what you actually mean by it.)

I've always thought T&E(2) meant T&E with a single nesting (or bifurcation) level. In other words, when a tested top-level candidate runs into a dead-end (with the specified techniques) you add a new SIS to the mix and test all of its branches (in this case just two). If all of those branches result in a contradiction you can eliminate the top-level candidate. I've thought it's T&E(2) as long as there's no deeper nesting. If that's not the case, then what is that? DFS? What exactly is T&E(2) then?
User avatar
SpAce
 
Posts: 2671
Joined: 22 May 2017

Re: Robert's puzzles 2020-10-14

Postby denis_berthier » Sat Oct 17, 2020 11:39 am

SpAce wrote:
denis_berthier wrote:
SpAce wrote: With T&E(2, basics) it's easy:
T&E(2): 8r8c8 & (5|9)r7c7 ->[singles, 1 NP]-> ! => -8 r8c8; stte

Except that this is not T&E(2).

Ok. I won't argue about that since, as far as I know, you've defined the terms. What is it then?

In T&E(2), you take two (and only two) candidates as a hypothesis and the only thing that can possibly be concluded is a contradiction between them.

Good to know, but what exactly does that mean? That the two candidates can't be true together? How does that solve anything alone?


Your example is not the full T&E(2) procedure, it's T&E(based on 2 candidates). This can only produce contradictions between these two candidates (or nothing). And ok, of itself it cannot eliminate anything.
"T&E: 8r8c8 & (5|9)r7c7" ... is meaningless. It just appears as a random assemblage.
denis_berthier
2010 Supporter
 
Posts: 4213
Joined: 19 June 2007
Location: Paris

Re: Robert's puzzles 2020-10-14

Postby SpAce » Sat Oct 17, 2020 12:07 pm

denis_berthier wrote:"T&E: 8r8c8 & (5|9)r7c7" ... is meaningless. It just appears as a random assemblage.

Robert seems to have understood it perfectly well. In any case, this is what I meant:

Code: Select all
 (5r7c7 | 9r7c7)
-(8r8c8 & 5r7c7)
-(8r8c8 & 9r7c7)
================
=> -8r8c8

In other words, since all three premises are true (the first one trivially and the other two as a result of trying), the conclusion must be true as well. Only two candidates are tried at once, but it's done twice: (8 & 5) and (8 & 9) to cover the nested binary SIS.

And no, I still don't know what that logic should be called, or how you'd prefer it written, or what T&E(2) is.
User avatar
SpAce
 
Posts: 2671
Joined: 22 May 2017

Re: Robert's puzzles 2020-10-14

Postby denis_berthier » Sat Oct 17, 2020 12:33 pm

SpAce wrote:
denis_berthier wrote:"T&E: 8r8c8 & (5|9)r7c7" ... is meaningless. It just appears as a random assemblage.

Robert seems to have understood it perfectly well. In any case, this is what I meant:

Code: Select all
 (5r7c7 | 9r7c7)
-(8r8c8 & 5r7c7)
-(8r8c8 & 9r7c7)
================
=> -8r8c8

In other words, since all three premises are true (the first one trivially and the other two as a result of trying), the conclusion must be true as well. Only two candidates are tried at once, but it's done twice: (8 & 5) and (8 & 9) to cover the nested binary SIS.

And no, I still don't know what that logic should be called, or how you'd prefer it written, or what T&E(2) is.


I don't see the point of giving a specific name to any sequence of intermediate conclusions. You can merely write it as you did here.
As for the steps 2 and 3, they are what I called bi-T&E(n8r8c8, n5r7c7) and bi-T&E(n8r8c8, n9r7c7) in PBCS.
denis_berthier
2010 Supporter
 
Posts: 4213
Joined: 19 June 2007
Location: Paris

Re: Robert's puzzles 2020-10-14

Postby Mauriès Robert » Sun Oct 18, 2020 3:26 pm

Hi Denis and Space,
For my part, in the context of TDP, I have my own definitions. I never use the term T&E, preferring the term track or anti-track, and when the complexity of the resolution requires it (ET being insufficient), I use the term expansion and extension tree.
These definitions are detailed in a visible document here. Here is a simplified presentation:
The expansion of a P(A) track by a P(B) track, where B is not a candidate of P(A), is the set P(A).P(B) formed by the candidates of P(A) and P(B). An expansion of the expansion can therefore be considered : P(A).P(B).P(C) where C belongs neither to P(A) nor to P(B), etc...
A track P(A) can have two useful expansions for resolution: P(A).P(B) and P(A).P'(B), because P(B) and its antitrack P'(B) being conjugated, one of the two is necessarily valid and the other invalid.
We are therefore led to define an extension tree composed of several expansions (called branches) and represented by the following graph:
Code: Select all
               .P'(C)....
             /
       .P(B)
      /      \
     /         .P(C)...
P(A)
     \         .P(D)...
      \       /
       .P'(B)
              \
               .P'(D)...

From then on, the notion of resolution tree is defined by constructing the extension trees of P(A) and its anti-track P'(A), which necessarily leads to the solution when it is unique, because one of the branches of the extension trees leads to the solution and the others to contradiction, provided of course that we go deep enough in the development of the tracks.
Nothing new for you I think, this is what Denis calls DFS I believe.
In the case of the puzzle of this thread, the resolution tree is written :
Code: Select all
          .P(5r7c7) -> contradiction
         /     
        /         
P(8r6c8)           All branches of P(8r6c8) leading to contradiction, 8r6c8 can be eliminated.
        \         
         \       
          .P'(5r7c7) -> contradiction
             
P'(8r6c8) -> solution

Cordialy.
Robert
Mauriès Robert
 
Posts: 594
Joined: 07 November 2019
Location: France

Re: Robert's puzzles 2020-10-14

Postby SpAce » Sun Oct 18, 2020 8:17 pm

Hi Robert,

Mauriès Robert wrote:I never use the term T&E, preferring the term track or anti-track

I agree that T&E is not a great term in this case as it implies a more comprehensive process. Perhaps this could be considered a single T&E(2) Step, though? Anyway, 'track' is pretty descriptive. I have no problem with that.

Nothing new for you I think, this is what Denis calls DFS I believe.

Probably so, but it's still not clear to me how DFS (depth 2) is different from a T&E(2) step.

In the case of the puzzle of this thread, the resolution tree is written :
Code: Select all
          .P(5r7c7) -> contradiction
         /     
        /         
P(8r6c8)           All branches of P(8r6c8) leading to contradiction, 8r6c8 can be eliminated.
        \         
         \       
          .P'(5r7c7) -> contradiction
             
P'(8r6c8) -> solution

Exactly. There are many ways to skin this cat, and I'm pretty sure most of them get understood. A flat kraken would be another (easier) way to write it:

Code: Select all
-8r6c8
||
(8r6c8 & 5r7c7) -> !
||
(8r6c8 & 9r7c7) -> !

=> -8r6c8

Of course there can be more than two branches if the SIS is larger:

Code: Select all
(z & a1) -> !
(z & a2) -> !
(z & a3) -> !
(z & a4) -> !

=> -z

(The negative option and the '||' SIS-markers omitted for brevity.) The same in a single line:

((z & (a1|a2|a3|a4)) -> !) => -z

If deeper nesting is required, it means more branches and ANDed elements:

Code: Select all
(z & a1 & b1 & c1) -> !
(z & a1 & b1 & c2) -> !
(z & a1 & b1 & c3) -> !
(z & a1 & b2) -> !
(z & a1 & b3) -> !
(z & a2) -> !
(z & a3) -> !
(z & a4) -> !

=> -z

The single-line version becomes quickly unreadable if depth is increased.

Btw, I would actually prefer the '.' like in your notation:

Code: Select all
z.a1.b1.c1 -> !
z.a1.b1.c2 -> !
z.a1.b1.c3 -> !
z.a1.b2 -> !
z.a1.b3 -> !
z.a2 -> !
z.a3 -> !
z.a4 -> !

=> -z

I'd like to use '.' as an AND-symbol in general because it's much more readable than '&'.
User avatar
SpAce
 
Posts: 2671
Joined: 22 May 2017


Return to Puzzles