rjamil wrote:Or, I see Phil's OTP that is also covered by the same POM move by elimitating -3 @ r3c9 r56c8.
Phil solver does not do any template combinations, here its output with POM
- Code: Select all
No pattern of 3 includes r3c6, r46c4 so 3 can be deleted from r3c6, r46c4
Naked pairs of 29 at r23c6 => -2 r3c4, r9c6, -9 r1c4, r2c5, r3c4, r5c6, r6c6, r7c6, r9c6
Naked triplets of 289 at r3c167 => -8 r3c9, -9 r3c29
Naked quads of 2579 at r2379c6 => -7 r6c6
Naked quins of 13689 at r4c4, r5c56, r6c46 => -6 r4c5, -8 r4c5, -9 r4c5
8s at r78c5 only ones in row/column => -8 r89c4.
All patterns of 6 include r4c2 so this can be made equal to 6
Solved!
rjamil wrote:due puzzle either has none, single or multiple solution(s).
it is not difficult to know if a puzzle has 0, 1 or +1 solution, on the other hand a procedure template easily reports these conditions
rjamil wrote:But, due to my implementation of POM move as depth first, it is impossible to check after each elimination/placement as to whether it is enough to crack the puzzle or not.
i have several template procedures:
one that performs all combinations from size 2 to size 3 to size 4, etc.
one that performs the combinations one by one, each of the 36 combinations of size 2, each of the 84 combinations of size 3, etc. either independently of each other or taking into account the results of the previous ones
one that performs a set of combinations given as a parameter
one that randomly searches through sets of combinations
here is the output of the procedure that found that (3 6) solves the puzzle.
- Code: Select all
.2...8..43..7..1....1.5..7...5..4.1..8.5....74...2.6.....1....2..3..6...6...3....
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL (24 31 49) NIL NIL (14 31) NIL NIL NIL
579 2 679 369 1 8 59 359 4
3 4569 4689 7 49 29 1 2589 5689
89 469 1 23469 5 29 289 7 3689
279 3679 5 89 6789 4 289 1 389
129 8 269 5 69 139 249 2349 7
4 1379 79 89 2 1379 6 3589 3589
5789 4579 4789 1 4789 579 3 6 2
125789 14579 3 2489 4789 6 45789 4589 1589
6 14579 24789 2489 3 2579 45789 4589 1589
192 candidates. 27 values.
POMCombs: 2 checkVT: NIL
seuil: 2000
36: ((7 (1 6)) (7 (1 3)) (8 (3 6)) (8 (1 2)) (9 (2 6)) (9 (2 3)) (15 (1 5)) (16 (5 6)) (16 (3 5))
(17 (2 5)) (17 (1 7)) (17 (1 4)) (18 (6 7)) (18 (4 6)) (18 (3 7)) (18 (3 4)) (19 (2 7))
(19 (2 4)) (26 (5 7)) (26 (4 5)) (28 (4 7)) (33 (1 8)) (34 (6 8)) (34 (3 8)) (35 (2 8))
(42 (5 8)) (44 (7 8)) (44 (4 8)) (1279 (1 9)) (1280 (6 9)) (1280 (3 9)) (1281 (2 9))
(1288 (5 9)) (1290 (7 9)) (1290 (4 9)) (1306 (8 9)))
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
36: (1 6) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
35: (1 3) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
34: (3 6)
Left in pool: (5)
#VT: (3 5 2 14 12 3 14 30 1276)
Cells: NIL NIL (8 22 42) NIL NIL (4) NIL NIL NIL
SetVC: ( n6r1c4 n3r1c8 n3r3c4 n3r5c6 n1r6c6 n1r5c1 n4r3c2 n4r2c5 n6r3c9 n7r4c5
n4r7c3 n6r5c5 n6r4c2 n3r4c9 n3r6c2 n6r2c3 n7r6c3 n8r9c3 n8r3c1 n9r1c3
n5r1c7 n5r2c2 n2r5c3 n7r1c1 n9r4c1 n8r4c4 n2r4c7 n9r6c4 n5r7c1 n2r8c1
n4r8c4 n2r9c4 n9r3c7 n4r5c7 n9r5c8 n7r9c7 n8r2c9 n2r3c6 n5r6c9 n8r8c7
n5r8c8 n4r9c8 n9r2c6 n2r2c8 n8r6c8 n7r7c6 n9r8c5 n1r8c9 n5r9c6 n9r9c9
n9r7c2 n8r7c5 n7r8c2 n1r9c2 )
7 2 9 6 1 8 5 3 4
3 5 6 7 4 9 1 2 8
8 4 1 3 5 2 9 7 6
9 6 5 8 7 4 2 1 3
1 8 2 5 6 3 4 9 7
4 3 7 9 2 1 6 8 5
5 9 4 1 8 7 3 6 2
2 7 3 4 9 6 8 5 1
6 1 8 2 3 5 7 4 9
**S**
#VT: (3 5 2 14 12 3 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
33: (1 2) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
32: (2 6) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
31: (2 3) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
30: (1 5) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
29: (5 6) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
28: (3 5) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
27: (2 5) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
26: (1 7)
Left in pool: (21)
#VT: (3 5 4 14 12 4 13 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
25: (1 4) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
24: (6 7) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
23: (4 6) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
22: (3 7) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
21: (3 4) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
20: (2 7) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
19: (2 4) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
18: (5 7) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
17: (4 5) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
16: (4 7) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
15: (1 8) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
14: (6 8) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
13: (3 8) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
12: (2 8)
Left in pool: (65)
#VT: (3 5 4 14 12 4 14 25 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
11: (5 8) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
10: (7 8) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
9: (4 8) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
8: (1 9)
Left in pool: (2086)
#VT: (3 5 4 14 12 4 14 30 1201)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
7: (6 9)
Left in pool: (2137)
#VT: (3 5 4 14 12 4 14 30 1136)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
6: (3 9)
Left in pool: (2222)
#VT: (3 5 4 14 12 4 14 30 1136)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
5: (2 9)
Left in pool: (2488)
#VT: (3 5 4 14 12 4 14 30 1167)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
4: (5 9)
Left in pool: (5966)
#VT: (3 5 4 14 12 4 14 30 1272)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
3: (7 9) nil
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
2: (4 9)
Left in pool: (6598)
#VT: (3 5 4 14 12 4 14 30 1246)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
---------------------------------
#VT: (3 5 4 14 12 4 14 30 1276)
Cells: NIL NIL NIL NIL NIL NIL NIL NIL NIL
Candidates: NIL NIL NIL NIL NIL NIL NIL NIL NIL
1: (8 9) nil