Nolot

Nolot is a chess test suite with 11 very difficult positions from real games. They were compiled by Pierre Nolot for the French chess magazine Gambisco and posted on the rec.games.chess Usenet group in 1994. Some of these positions were particularly hard to solve for chess engines at the time.
Problem 1.
FEN: r3qb1k/1b4p1/p2pr2p/3n4/Pnp1N1N1/6RP/1B3PP1/1B1QR1K1 w - - 0 1
26.Nxh6!! c3 (26... Rxh6 27.Nxd6 Qh5 (best) 28.Rg5! Qxd1 29.Nf7+ Kg8 30.Nxh6+ Kh8 31.Rxd1 c3 32.Nf7+ Kg8 33.Bg6! Nf4 
34.Bxc3 Nxg6 35.Bxb4 Kxf7 36.Rd7+ Kf6 37.Rxg6+ Kxg6 38.Rxb7 +-) 27.Nf5! cxb2 
28.Qg4 Bc8 (28... g6!? 29.Kh2! 29.Qd7 30.Nh4 Bc6
31.Nc5! dxc 32.Rxe6 Nf6 33.Nxg6+ Kg7 34.Qg5 Nbd5 35.Ne5 Kh8
36.Nxd7 +-) 29.Qh4+ Rh6 30.Nxh6 gxh6 31.Kh2! Qe5 32.Ng5 Qf6 33.Re8 Bf5 34.Qxh6 (missing a mate in 6: 34.Nf7+ Qxf7 35.Qxh6+ Bh7 36.Rxa8 Nf6 37.Rxf8 Qxf8 38.Qxf8+ Ng8
39.Qg7#) 34...Qxh6 35.Nf7+ Kh7 36.Bxf5+ Qg6 37.Bxg6+ Kg7 38.Rxa8 Be7 39.Rb8 a5 40.Be4+ Kxf7 41.Bxd5+ 1-0
The best Novag computer, the Diablo 68000, finds 26. Nxh6 after seven and a half months
(Pierre Nolot has let it run on the position for 14 months and one
day, until a power failure stopped an analysis of over nodes.)
but for wrong reasons: it evaluates white's position as inferior and 
thinks this move would enable it to draw.
Today Gambit Tiger 2.0 for example can find it pretty fast: Most free engines running on 64 bit processors in 2010 could solve this problem and the others in a few seconds.
1.Qd4 c3 2.Bxc3 Nxc3 3.Qxb4 Nxe4 4.Qxb7 Rb8 5.Qxb8 Qxb8 6.Bxe4 d5 7.Rb1 <br>
 μ (-1.20) Depth: 12 00:00:09 6055 kN <br>
1.Nxh6 c3 2.Nf5 cxb2 3.Qg4 Rb8 4.Nxg7 Rg6 5.Qxg6 Qxg6 6.Rxg6 Bxg7 7.Nxd6 <br>
 ³ (-0.48) Depth: 12 00:00:21 14368 kN <br>
1.Nxh6 c3 2.Nf5 cxb2 3.Qg4 Rc8 4.Nxg7 Rg6 5.Nxe8 Rxg4 6.Rxg4 Rxe8 7.Rg6 <br>
 μ (-0.74) Depth: 13 00:00:55 38455 kN <br>
1.Ne3 Rxe4 2.Bxe4 Qxe4 3.Nxd5 Qxd5 4.Qc1 Qf5 5.Qxh6+ Qh7 6.Qe6 Nd3 7.Re2 Nxb2 8.Rxb2 <br>
 ³ (-0.58) Depth: 13 00:01:30 62979 kN <br>
1.Ne3 Rxe4 <br>
 ³ (-0.58) Depth: 14 00:02:02 84941 kN <br>
1.Ne3 Nxe3 2.Rexe3 Bxe4 3.Qg4 Rg6 4.Qxe4 Qxe4 5.Bxe4 Rxg3 6.Rxg3 d5 7.Bf5 Re8 8.Bc3 <br>
 ³ (-0.30) Depth: 15 00:03:05 128968 kN <br>
1.Nxh6 <br>
 ² (0.32) Depth: 15 00:07:58 350813 kN <br>
With the next ply showing a clear advantage.
Stockfish_20081808_x64_avx2:
NNUE evaluation using C:\Program Files (x86)\Arena\Engines\20200812-2257.bin enabled.
 23/37 00:01 9295k 6574k +4,09 Nxh6 Rxh6 Nxd6 Qh5 Rg5 Qxd1 Nf7+ Kg8 Nxh6+ Kh8 Rxd1 c3 Nf7+ Kg8 Bg6 Nf4 Bxc3 Nbd5 Rb1 Bc6 Ba1 Nxg6 Rxg6 Nf6 Nh6+ Kh7
 46/83 02:48 1300098k 7722k +5,38 Nxh6 Rxh6 Nxd6 Qh5 Rg5 Qxd1 Nf7+ Kg8 Nxh6+ Kh8 Rxd1 c3 Nf7+ Kg8 Bg6 Nf4 Bxc3 Nbd5 Rb1 Bc6 Ba1 Nxg6 Rxg6 Bxa4 Rb7 Ne7 Nh6+ Kh7 Rxg7+ Bxg7 Rxe7 Re8 Rxg7+ Kxh6 Bc3 Re4 Kh2 Re2 Kg3 Ra2 Re7 Bb5 Re6+ Kh7 h4 Rc2 Re7+ Kg6 Rc7 Bf1 Rc5 a5 h5+ Kh7 Rc8 Kh6 Rh8+ Kg5 Bxa5 Rxf2 Kxf2 Bd3 Bd2+ Kf6 g4 Bc2 h6 Kg6 Ke3 Ba4 Kd4 Kf7 g5
Stockfish 12dev 64bit 4CPU running on 2020 hardware recognises the significance of Nxh6!! in 1 second.
Problem 2.
FEN: r4rk1/pp1n1p1p/1nqP2p1/2b1P1B1/4NQ2/1B3P2/PP2K2P/2R5 w - - 0 1
22.Rxc5!! Nxc5 23.Nf6+ Kh8 24.Qh4 Qb5+ (computers think there is perpetual check here, but...) 25.Ke3! 25... h5 26.Nxh5 Qxb3+ (26... d5+ 27.Bxd5 Qd3 28.Kf2 Ne4+ 29.Bxe4 Qd4+ 30.Kg2 Qxb2+ 31.Kh3 +-) and White won in 41 moves.
Today Deep Junior 8.ZX for example finds it very quickly (around 1 minute):
1.Kd1 Rac8 2.Bh6 Qb5 3.Rc3 Qf1+ 4.Kc2 Rc6 5.Bxf8 <br>
 -+ (-2.11) Depth: 12 00:00:04 10422 kN <br>
1.Nxc5 Nxc5 2.Rxc5 Qxc5 3.e6 Rae8 4.e7 Nc8 5.Kf1 Nxd6 6.Bf6 b5 <br>
 -+ (-2.10) Depth: 12 00:00:14 25054 kN <br>
1.Bf6! <br>
 μ (-1.35) Depth: 12 00:00:17 34601 kN <br>
1.Bf6 Qb5+ 2.Ke1 Bb4+ 3.Kf2 Bc5+ <br>
 = (0.00) Depth: 12 00:00:20 34601 kN <br>
1.Bf6 Qb5+ 2.Ke1 Nxf6 3.Nxf6+ Kg7 4.Nh5+ gxh5 5.Qf6+ Kg8 6.Qg5+ Kh8 7.Qf6+ <br>
 = (0.00) Depth: 15 00:01:01 130544 kN <br>
1.Rxc5! <br>
 = (0.15) Depth: 15 00:01:12 145875 kN <br>
1.Rxc5 Nxc5 2.Nf6+ Kh8 3.Qh4 Qb5+ 4.Ke3 h5 5.Nxh5 Qd3+ 6.Kf2 Ne4+ 7.fxe4 Qd4+ 8.Kf1 Qd3+ 9.Ke1 Qb1+ 10.Bd1 <br>
 +- (2.18) Depth: 15 00:01:18 145875 kN
Stockfish 12dev 64bit 4CPU running on 2020 hardware recognises the significance of Rxc5!! in 1 second.
Stockfish_20081808_x64_avx2:
NNUE evaluation using C:\Program Files (x86)\Arena\Engines\20200812-2257.bin enabled.
 27/49 00:01 15304k 8488k +6,13 Rxc5 Qxc5 Nxc5 Nxc5 Bf6 Ne6 Qh6 Nd4+ Kf2 Nf5 Qg5 Nd7 h4 Rae8 h5 Nxe5 Bxe5 Rxe5 d7 Re7 hxg6 hxg6 Qxg6+ Ng7 Qd6 Re6 Qxf8+ Kxf8 d8Q+ Re8 Qf6 Re6 Bxe6 Nxe6 Qh8+ Ke7 Qb8 Nd8 Qxa7
 53/72 04:08 2305460k 9264k +6,31 Rxc5 Qxc5 Nxc5 Nxc5 Bf6 Ne6 Qh6 Nd4+ Kf2 Nf5 Qg5 Nd7 h4 Nxf6 Qxf6 Ng7 a4 Nh5 Qe7 b6 d7 Rab8 Bc4 Ng7 Qf6 Ra8 b4 Rab8 b5 Ra8 Ke1 Rab8 Bb3 Ra8 Bd5 Rab8 Kf2 Nh5 Qd6 Rbd8 Bb3 Nf4 Ba2 Nh5 Qe7 Rb8 Bc4 Ng7 Bb3 Nh5 Ke1 Nf4 Kd2 Nh5 Bc4 Ng7 Bd5 Nf5 Qf6 Ng7 Ba2 Nh5 Qd6 Rbd8 Qe7 Rb8 Kc3 Ng7 Bd5 Nh5 Bc4 Ng7
Blacks 22. .. Nxc5 is suboptimal and leads faster mate
 77/44 09:18 6987714k 12518k +M22 Nf6+ Kh8 Qh4 Qb5+ Ke3 Qxb3+ axb3 h5 Nxh5 Nd5+ Kd4 Ne6+ Kxd5 Nxg5 Qxg5 gxh5 f4 Rad8 f5 f6 Qxh5+ Kg7 Qg6+ Kh8 e6 b6 e7 Rb8 exf8Q+ Rxf8 Ke6 b5 Ke7 Rb8 Qh5+ Kg7 Qf7+ Kh8 Kxf6 Rf8 Qxf8+ Kh7 Qg7+
Problem 3.
FEN: r2qk2r/ppp1b1pp/2n1p3/3pP1n1/3P2b1/2PB1NN1/PP4PP/R1BQK2R w KQkq - 0 1
12.Nxg5!! Bxd1 13.Nxe6 Qb8 14.Nxg7+!! Kf8 15.Bh6! Bg4 16.0-0+ Kg8 17.Rf4 +-
White wins with a queen sac but black has defensive resources.
Stockfish 8 64bit 3CPU running on 2016 hardware recognizes the significance of Nxg5!! in 55 seconds.
Stockfish 12 dev (Stockfish_20081808_x64_avx2) 64bit 4CPU running on 2020 hardware recognizes the significance of Nxg5!! in 1 second.
NNUE evaluation using C:\Program Files (x86)\Arena\Engines\20200812-2257.bin enabled.
 21/39 00:01 6418k 5899k +2,46 Nxg5 Bxd1 Nxe6 Qb8 Nxg7+ Kd8 Kxd1 b5 Rf1 Kc8 N3f5 Kb7 Bxb5 Bf8 Nh5 Ne7 g4 Nxf5 gxf5 c5 Nf4 cxd4 cxd4
 43/77 08:19 2889567k 5788k +2,95 Nxg5 Bxd1 Nxe6 Qb8 Nxg7+ Kd8 Kxd1 b5 Rf1 Kc8 N3f5 Kb7 a4 a6 Nxe7 Nxe7 Ne6 b4 Rf6 Qg8 Nc5+ Ka7 g3 Qg4+ Kc2 Rhf8 Rxa6+ Kb8 Rf6 Ka7 Re6 Rf3 Rxe7 Rxd3 Rxc7+ Kb6 Rb7+ Kc6 Rxb4 Qe2+ Kb3 Rd1 Ka2 Qf1 Nb3 Qf8 h4 Rb8 Rxb8 Qxb8 Bf4 Rxa1+ Nxa1 Qc8 Nb3 Qg4 Nc5 Qe2 Ka3 Qf1 e6 Qa1+ Kb3 Qb1
Blacks 14 .. Kf8 is suboptimal and leads loss fast
41/68 06:31 3269727k 8350k +9,28 Bh6 Kg8 Rxd1 Bf8 N3h5 Bxg7 Nxg7 Qf8 Nf5 Ne7 Bxf8 Nxf5 Bxf5 Rxf8 Be6+ Kg7 Rd3 Rf4 Bxd5 c6 Rg3+ Kf8 Rf3 Rxf3 Bxf3 Kg7 Rf1 Re8 Be4 Re6 Ke2 a5 Ke3 Rh6 h3 a4 Kf4 Re6 h4 Re8 Ke3 h6 h5 Rf8 Rxf8 Kxf8
Problem 4.
FEN: r1b1kb1r/1p1n1ppp/p2ppn2/6BB/2qNP3/2N5/PPP2PPP/R2Q1RK1 w kq - 0 1
10.Nxe6!! Qxe6 11.Nd5 Kd8 12.Bg4 Qe5 13.f4 Qxe4 (13...Qxb2 stronger but not sufficient: 14.Bxd7 Bxd7 15.Rb1 Qa3 16.Nxf6 Bb5 17.Qd4 Qc5 18.Rfd1 +-) 14.Bxd7 Bxd7 15.Nxf6 gxf6 16.Bxf6+ Kc7 17.Bxh8 and Black resigned on move 27.
Stockfish 8 64bit 3CPU running on 2016 hardware recognises the significance of Nxe6!! in 0.5 seconds.
Problem 5.
FEN: r2qrb1k/1p1b2p1/p2ppn1p/8/3NP3/1BN5/PPP3QP/1K3RR1 w - - 0 1
21.e5!! dxe5 22.Ne4! Nh5 23.Qg6!? (stronger is 23.Qg4!! Nf4 24.Nf3 Qc7 25.Nh4 +- ) 23...exd4? (23...Nf4 24.Rxf4! exf4 25.Nf3! Qb6 26.Rg5!! covering b5 and threatening Nf6 or Ne5-f7+) 24.Ng5 1-0
Stockfish 8 64bit 3CPU running on 2016 hardware recognises the significance of e5!! in 5 seconds.
Stockfish 12 dev (Stockfish_20062212_x64_modern) 64bit 1CPU running on 2016 hardware recognizes the significance of Nxg5!! in 11 seconds.
25/42 00:06 7 963k 1309k +6,93 e5 Nh5 Ne4 dxe5 Nf3 Nf4 Qg4 Qc7 Nh4 Bc6 Nf6 g5 Rxf4 exf4 Qh5 Qe7 Ng6+ Kg7 Nxe7 Rxe7 Ng4
37/62 03:12 298 083k 1545k +10,70 e5 Ng4 Qxg4 Qg5 Qh3 Qxe5 Nde2 g5 Rxf8+ Kg7 Rff1 Rf8 Re1 Qf5 Qg3 Rad8 Nd4 Qf4 Nxe6+ Bxe6 Rxe6 Qxg3
Problem 6.
FEN: rnbqk2r/1p3ppp/p7/1NpPp3/QPP1P1n1/P4N2/4KbPP/R1B2B1R b kq - 0 1
13... axb5!! offers an exchange to keep the white queen out of play. 14.Qxa8 Bd4 15.Nxd4 cxd4 16.Qxb8 0-0! 17.Ke1 Qh4 18.g3 Qf6 19.Bf4 g5? (Ivanchuk found 19...d3! during post-game analysis.) 20.Rc1 exf4 21.Qxf4 Qd4 22.Rd1 bxc4 23.e5 Qc3+ 24.Rd2 Re8 25.Bxd3 cxd3 -+
Tasc R30 finds 19... d3! in 2 1/2 hours. 19... Bf5!! is even stronger than 19... d3.
Position is already lost at 19... d3 +8.00 for black, ... Bf5 not much better
Stockfish 12 dev (Stockfish_20062212_x64_modern) 64bit 1CPU running on 2016 hardware finds the winning move under a second and suggesting this mainline after longer think
39/73 08:46 667178k 1268k +1,72 axb5 Qxa8 Bd4 h3 Nf6 Nxd4 exd4 Kf2 Nbd7 Kg1 0-0 Qa5 b6 Qxb5 Nxe4 bxc5 Qh4 Qb2 bxc5 Qe2 f5 Bd2 Ne5 Qe1 Qf6 Bf4 
Problem 7.
FEN 1r1bk2r/2R2ppp/p3p3/1b2P2q/4QP2/4N3/1B4PP/3R2K1 w k - 0 1
1.Rxd8+!! Rxd8 (1...Kxd8 2.Ra7! Qe2 3.Qd4+ Ke8 4.h3 Qe1+ 5.Kh2 Rd8 6.Qc5 Qh4 7.Ba3 Rd7 8.Ra8+ Rd8 9.g3 1-0) 2.Ba3 Qe2 3.h3! Bd7 (better but still losing was 3...Qe1+ 4.Kh2 Qa5 5.Re7+ Kf8 6.Rd7+ Kg8 7.Bb4 Rxd7 8.Bxa5 +-) 4.Nf5! Qd1+ 5.Kh2 f6 6.exf6 1-0
The exchange sacrifice keeps control of the 7th rank. Genius 2 does better than the R30 on this one, but needs more than a month to find 1.Rxd8!!, even on a 90 MHz Pentium.
Fritz 9 plays 1.Rxd8!! in 2 seconds.
Stockfish 8 64bit 3CPU running on 2016 hardware recognises the significance of Rxd8!! in 8 seconds.
Problem 8.
FEN r3rbk1/ppq2ppp/2b1pB2/8/6Q1/1P1B3P/P1P2PP1/R2R2K1 w - - 0 24
24.Bxh7+!! is natural, but Black has some defensive resources. 24...Kxh7 25.Qh5+ Kg8 26.Rd4! gxf6 27.Rg4+ Bg7 28.Qh6 Kf8 29.Rxg7! Rac8 (computers prefer 29...Be4 which also loses after 30.Rg4+ Ke7 31.Rxe4 Rad8 32.c4 Qa5 33.Rae1 +-) 30.Qh7 b5 31.Rd1 Bd5 32.c4 bxc4 33.bxc4 1-0.
Problem 9.
FEN r4r1k/4bppb/2n1p2p/p1n1P3/1p1p1BNP/3P1NP1/qP2QPB1/2RR2K1 w - - 0 1
1.Ng5!! hxg5 2.hxg5! (with the idea of 3. Nf6!!) and now:
A. 2...Rac8 3.Nf6!!
A1. 3...gxf6 which loses if white play precisely: 4.gxf6 and now:
A1a. 4...Nxd3? 5.Rxd3 Bxd3? 6.Qh5+ is mate in 4.
A1b. 4...Re8 5.Rxc5! (5.Qh5!? Kg8 6.Rxc5! Bg6! 7.Qh4 Bxc5 8.Be4 Ne7 9.Kg2! is winning as well.) 5...Bxc5 6.Qh5 with the idea 7.Be4 and White is winning.
A1c. 4...Bg6 5.Bxc6 Bxf6 (6...Rxc6 6.fxe7 Re8 7.Bg5 f5 8.Bf6+ Kg8 9.Qd2 is winning) 7.Rxc5 Be7 8.Rcc1 and White is better.
A2. 3...Nb8 4.Bd5!! (to block d5 so White can play Kg2 without having to deal with ...Qd5+; 4.Qh5!? Bxf6 5.gxf6 Nbd7 (5...gxf6 6.Rxc5! Rxc5 7.Be4 f5 8.Kg2! Rg8 9.Rh1 Rg7 10.Bh6 Nd7 11.Bxg7+ Kxg7 12.Qxh7+ Kf8 13.Qh6+ Ke8 14.Qg5 is winning.) 6.Bb7 Nxb7 7.Rxc8 Rxc8 8.Qxf7 Rg8 9.Qxd7 with advantage for White.) 4...exd5 (4...Qxd5 5.Nxd5 exd5 6.Kg2! should win as well.) 5.Kg2! Bxf6 6.Rh1! Bg5 7.Qh5 Bh6 8.Bxh6 with mate to follow.
B. 2...Rfc8 3.Nf6!!
B1. 3...gxf6 4.exf6! (4.gxf6 Nxd3 (4...Bf8 5.Rxc5! Bxc5 6.Qh5 Kg8 7.Be4 Bxe4 8.dxe4 wins for White.) 5.Rxd3 Bxd3 6.Qxd3 Nxe5! 7.Rxc8+ Rxc8 8.Bxe5 Qa1+ is unclear, probably a draw.) and now:
B1a. 4...Bf8? 5.Rxc5! Bxc5 6.Qh5 Kg8 7.Be4 Bxe4 8.dxe4 is winning for White, e.g. 8...Qa4 9.Rc1 Ne7 10.fxe7 Qe8 11.Kg2! f6 12.Qh6.
B1b. 4...Nxd3 5. Rxd3 Bf8! (6...Bxd3 6. Qxd3 wins for White.) 6.Rxc6 (6.Bxc6!? Rxc6 7.Rxc6 Qd5 8.Rc7 is better for White.) 6...Rxc6 7.Bxc6 Rd8 8.Rd1 is also favorable for White.
B2. 3...Bg6 is probably Black's best try:
B2a. 4.Bxc6 gxf6 5.exf6 Bf8! 6.Bxa8 Rxa8 7.Rc4 and Black seems to hold.
B2b. 4.Qg4 gxf6 5.gxf6 Nxd3 (5...Bf8? 6.Qh3+ Kg8 7.Bh6! is winning) 6.Rxd3 Bf8 7.Rdd1 is unclear.
Pierre Nolot seems to have repudiated this problem.
Nxh6 much better than Ng5
Stockfish_20042208_x64_modern:
65/114 49:42:09 568 217 595k 3 176k +6,06 Nxh6 gxh6 Bxh6 Qd5 Bg5 Ra7 Bxe7 Rxe7 Ng5 Qxe5 Qh5 f5 Bxc6 Qd6 Qh6 Kg8 Bb5 Rb8 Be8 Nd7 Bf7+ Rxf7 Nxf7 Qf8 Qxf8+ Nxf8 Ne5 Bg6 Nxg6 Nxg6 Rc6 Kf7 Re1 Nf8 Ra6 Rb7 Rxa5 Kf6 f4 Nd7 Rc1 Kf7 Rc4 Nf6 Kf2 Rb6 Rxd4 Kg7 Ra8 Kg6 Kf3 Nd5 Ke2 Kh5 Rc4 Nf6 Kf3 Kg6 Rd8 Kh5 d4 Kg6 Rh8 Ng4 Rhc8 b3 R8c7 Nf6 R4c6
Problem 10.
FEN r1b2rk1/1p1nbppp/pq1p4/3B4/P2NP3/2N1p3/1PP3PP/R2Q1R1K w - - 0 15
15.Rxf7!! Rxf7 16.Bxf7 Kxf7 17.Qh5+ Kg8 16.Qe8+ Bf8 19.Nd5 Qxd4 20.Ne7+ Kh8 21.Rf1 Qf6 22.Rxf6 and white won on move 29.
Stockfish 8 64bit 3CPU running on 2016 hardware recognises the significance of Rxf7!! in 9 seconds.
Problem 11.
FEN r1b3k1/p2p1nP1/2pqr1Rp/1p2p2P/2B1PnQ1/1P6/P1PP4/1K4R1 w - - 0 1
Neishtadt's "Leçons de tactique" gives:
"1.Rxh6!! the g pawn will be helped by the h pawn 1...Nxh6 (1...Rxh6 2.Bxf7+ Kxf7 3.g8Q+) 2.Qg5 Nf7 3.Qd8+!! Nxd8 4.h6 and there is nothing to prevent h6-h7+ 1-0"
But 4...Qd4!! 5.h7+ Kf7 6.g8Q+ Ke7 7.h8Q Kd6 8.Rg7 Qxd2!! 9.Qxd8 Qd1+! (if 9...Kc5? 10.Rxd7 Bxd7 11.Qxa8 Kb4 12.Qh1! and White wins. Not 12.Qxa7? Qe1+ 13.Kb2 Qc3+ with perpetual check.) 10.Kb2 Qd4+ 11.Ka3 Qc5+ 12.b4 Qe3+ 13.Bd3 Qc1+ 14.Kb3 Qb1+ 15.Kc3 Qe1+ 1/2 as White cannot escape the black checks.
Stockfish 8 64bit 3CPU running on 2016 hardware recognises the drawing significance of Rxh6!! in 7 seconds.