Anti-backdoors

Advanced methods and approaches for solving Sudoku puzzles

Anti-backdoors

Postby denis_berthier » Fri Feb 05, 2021 8:43 am


Anti-backdoors

If T is a resolution theory with the confluence property, one can easily define the notion of a T-anti-backdoor: a candidate Z is a T-anti-backdoor if eliminating Z allows to obtain a solution in T.
This concept may be useful for finding "single-step" solutions, as I have illustrated with a puzzle from Mith: http://forum.enjoysudoku.com/post300763.html#p300763

In SudoRules, the way of finding anti-backdoors is very similar to the way of finding backdoors:

1) choose the following settings in the configuration file:
Code: Select all
(bind ?*T* TRUE)
(bind ?*Anti-Backdoors* TRUE)

Where ?*T* stands for the the resolution theory you have chosen, which will generally be ?*Whips[1]* or ?*Subsets* or nothing is you want the simplest anti-backdoors (i.e. BRT-anti-backdoors).

2) type the folloiwing command
Code: Select all
(find-sudoku-anti-backdoors ?string)

where ?string is the puzzle of interest, e.g.
Code: Select all
(find-sudoku-anti-backdoors "..9......8....97...7..6..5..5..4..6.9....38....2.......6..5.17.2....84......1....")


In this example, the result is
Code: Select all
13 W1-ANTI-BACKDOORS FOUND: (892 388 985 982 182 979 879 968 865 944 843 834 818)



For an example of how this can be used to find one-step solutions, see the above-mentioned thread. In this example, 12 of the 13 anti-backdoors give rise to a single-step solution.
denis_berthier
2010 Supporter
 
Posts: 3970
Joined: 19 June 2007
Location: Paris

Re: Anti-backdoors

Postby Leren » Fri Feb 05, 2021 10:16 am

I have a similar function in my solver that surveys single digit eliminations that result in stte finishes. For this puzzle only 1 is listed : 1 r8c2. That looks like the 5th one in your list.

Nevertheless I tried for a btte finish and got lucky:

Code: Select all
*-------------------------------------------------------------*
| 56     1234 9     | 1234578 2378 12457 | 236   12348 123468 |
| 8      1234 56    | 12345   23   9     | 7     1234  12346  |
| 134    7    134   | 12348   6    124   | 239   5     123489 |
|-------------------+--------------------+--------------------|
| 137    5    1378  | 12789   4    127   | 239   6     12379  |
| 9      14   1467  | 12567   27   3     | 8     124   12457  |
| 13467 a1348 2     | 156789 e79-8 1567  | 359   1349  134579 |
|-------------------+--------------------+--------------------|
| 34     6    348   | 2349    5    24    | 1     7     2389   |
| 2     c139  1357  | 3679   e379  8     | 4     39    3569   |
| 3457  b3489 34578 | 234679  1    2467  | 23569 2389  235689 |
*-------------------------------------------------------------*

(8) r6c2 = (8-9) r9c2 = r8c2 - r8c5 = (9) r6c6 => - 8 r6c5; btte. That's the 9th one 865 in your list.

I got the idea from Phil Beeby, who I believe does stte and btte finishes for both single digit eliminations and placements.

Leren
Leren
 
Posts: 5035
Joined: 03 June 2012

Re: Anti-backdoors

Postby denis_berthier » Fri Feb 05, 2021 11:23 am

Leren wrote:I have a similar function in my solver that surveys single digit eliminations that result in stte finishes. For this puzzle only 1 is listed : 1 r8c2. That looks like the 5th one in your list.
Nevertheless I tried for a btte finish and got lucky:
[...]
(8) r6c2 = (8-9) r9c2 = r8c2 - r8c5 = (9) r6c6 => - 8 r6c5; btte. That's the 9th one 865 in your list.
I got the idea from Phil Beeby, who I believe does stte and btte finishes for both single digit eliminations and placements.


I dind't mean to have invented the notion of an anti-backdoor. Having the old notion of a T-backdoor and being interested in 1-step solutions, introducing anti-backdoors is a straightforward step. I meant it's new in SudoRules (and I state in which conditions it's meaningful: T must have the confluence property).

The list of T-anti-backdoors depends on T: the stronger T, the larger the list.
I checked that, by taking T = BRT, there's only one anti-backdoor: n1r8c2 (same as yours)

The list I gave before is when T = whips[1], in which case there are 13 W1-anti-backdoors.

I also tried with T = Subsets and I find 38 of them:
Code: Select all
38 S-ANTI-BACKDOORS FOUND: (998 597 696 493 892 689 388 985 784 583 982 182 979 879 476 371 769 968 367 566 865 362 661 559 654 349 944 843 236 834 431 524 623 818 617 715 414 511)
denis_berthier
2010 Supporter
 
Posts: 3970
Joined: 19 June 2007
Location: Paris

Re: Anti-backdoors

Postby Mauriès Robert » Sun Feb 07, 2021 3:52 pm

denis_berthier wrote:
Anti-backdoors

If T is a resolution theory with the confluence property, one can easily define the notion of a T-anti-backdoor: a candidate Z is a T-anti-backdoor if eliminating Z allows to obtain a solution in T.

It is thus the case, for T= basic techniques, of any candidate Z such that the anti-track P'(Z) covers (P'(Z)≡solution) the puzzle without contradiction.
Robert
Mauriès Robert
 
Posts: 585
Joined: 07 November 2019
Location: France

Re: Anti-backdoors

Postby denis_berthier » Mon Feb 08, 2021 5:19 am

Mauriès Robert wrote:
denis_berthier wrote:
Anti-backdoors

If T is a resolution theory with the confluence property, one can easily define the notion of a T-anti-backdoor: a candidate Z is a T-anti-backdoor if eliminating Z allows to obtain a solution in T.

It is thus the case, for T= basic techniques, of any candidate Z such that the anti-track P'(Z) covers (P'(Z)≡solution) the puzzle without contradiction.

How to turn an elementary definition into lingo.
denis_berthier
2010 Supporter
 
Posts: 3970
Joined: 19 June 2007
Location: Paris

Re: Anti-backdoors

Postby Mauriès Robert » Mon Feb 08, 2021 3:08 pm

denis_berthier wrote:
Mauriès Robert wrote:
denis_berthier wrote:
Anti-backdoors

If T is a resolution theory with the confluence property, one can easily define the notion of a T-anti-backdoor: a candidate Z is a T-anti-backdoor if eliminating Z allows to obtain a solution in T.

It is thus the case, for T= basic techniques, of any candidate Z such that the anti-track P'(Z) covers (P'(Z)≡solution) the puzzle without contradiction.

How to turn an elementary definition into lingo.

I'm not giving a definition, I'm just making an observation: an anti-backdoor is the generator of an anti-track solution.
Robert
Mauriès Robert
 
Posts: 585
Joined: 07 November 2019
Location: France


Return to Advanced solving techniques