Skip to content

[BUG] Potential bug in PV generation when there is a 3-fold repetition #188

@ptsouchlos

Description

@ptsouchlos

While running OpenBench tests on my system, I noticed these warnings:

[#0] Warning; PV continues after threefold repetition - move c1b2 from Byte-Knight-base :: Info; info depth 13 time 37 nodes 141910 score cp 147 nps 3771449 pv h8h7 h1g2 h7g8 g2g1 g8g7 g1g2 g7g8 c1b2 :: Position; fen rn1qk2r/pbp1ppbp/1p4p1/6B1/2BPp3/2N1P3/PPP2PPP/R2QK2R w KQkq - 2 9 :: Moves; e1g1 a7a6 c4b3 h7h6 g5h4 e8g8 d1g4 g6g5 h4g3 b8d7 a1e1 d7f6 g4e2 b6b5 g3e5 d8d7 h2h3 a8c8 a2a3 f8e8 g1h1 c7c5 h1g1 c5c4 b3a2 d7f5 e2d2 f5g6 b2b3 f6d5 e5g7 g8g7 b3c4 d5c3 d2c3 b7d5 e1d1 d5c4 a2c4 c8c4 c3b2 e8c8 d1d2 c4c3 f1a1 c8c4 a3a4 b5b4 a4a5 g6c6 g1h2 c6c7 h2g1 c7c6 a1a2 g7g8 a2a1 c6d5 a1a4 d5b5 a4a1 h6h5 g1h2 g5g4 h3h4 b5d5 g2g3 d5b5 h2h1 g8g7 h1g1 e7e6 g1h2 g7g8 h2g1 b5c6 a1a2 c6b5 a2a1 b5d5 a1a4 d5b7 a4a1 b7b5 g1g2 b5d5 a1a4 d5b5 a4a1 b5c6 g2g1 g8g7 g1g2 g7h7 g2g1 h7g8 g1g2 g8h7 a1a2 c6b5 a2a1 b5d5 a1a4 d5b5 a4a1 b5d5 a1a4 d5b7 a4a2 h7g7 a2a1 b7d5 a1a4 d5b5 a4a1 b5c6 g2g1 g7h7 a1a2 h7h8 a2a1 c6b5 g1h1 b5d5 h1g1 d5b5 b2b1 c3a3 b1f1 b5d5 g1h2 c4c3 a1b1 c3c4 b1b3 a3a5 f1b1 a5a4 b1b2 h8g8 c2c3 a6a5 d2c2 g8h7 b2c1 d5c6 h2g1 h7g8 g1g2 g8g7 g2h2 g7g8 h2g1 g8g7 g1h2 g7h7 h2g2 h7g8 g2g1 g8h7 g1g2 h7g6 g2g1 g6h6 g1g2 h6h7 g2g1 h7g8 g1g2 f7f5 c1b2 g8h7 b2c1 h7h8 g2h1
[#0] Warning; PV continues after threefold repetition - move g2g1 from Byte-Knight-base :: Info; info depth 14 time 55 nodes 216536 score cp 147 nps 3873603 pv h8h7 h1g2 h7g8 g2g1 g8g7 g1g2 g7g8 g2g1 g8g7 g1g2 c6d5 :: Position; fen rn1qk2r/pbp1ppbp/1p4p1/6B1/2BPp3/2N1P3/PPP2PPP/R2QK2R w KQkq - 2 9 :: Moves; e1g1 a7a6 c4b3 h7h6 g5h4 e8g8 d1g4 g6g5 h4g3 b8d7 a1e1 d7f6 g4e2 b6b5 g3e5 d8d7 h2h3 a8c8 a2a3 f8e8 g1h1 c7c5 h1g1 c5c4 b3a2 d7f5 e2d2 f5g6 b2b3 f6d5 e5g7 g8g7 b3c4 d5c3 d2c3 b7d5 e1d1 d5c4 a2c4 c8c4 c3b2 e8c8 d1d2 c4c3 f1a1 c8c4 a3a4 b5b4 a4a5 g6c6 g1h2 c6c7 h2g1 c7c6 a1a2 g7g8 a2a1 c6d5 a1a4 d5b5 a4a1 h6h5 g1h2 g5g4 h3h4 b5d5 g2g3 d5b5 h2h1 g8g7 h1g1 e7e6 g1h2 g7g8 h2g1 b5c6 a1a2 c6b5 a2a1 b5d5 a1a4 d5b7 a4a1 b7b5 g1g2 b5d5 a1a4 d5b5 a4a1 b5c6 g2g1 g8g7 g1g2 g7h7 g2g1 h7g8 g1g2 g8h7 a1a2 c6b5 a2a1 b5d5 a1a4 d5b5 a4a1 b5d5 a1a4 d5b7 a4a2 h7g7 a2a1 b7d5 a1a4 d5b5 a4a1 b5c6 g2g1 g7h7 a1a2 h7h8 a2a1 c6b5 g1h1 b5d5 h1g1 d5b5 b2b1 c3a3 b1f1 b5d5 g1h2 c4c3 a1b1 c3c4 b1b3 a3a5 f1b1 a5a4 b1b2 h8g8 c2c3 a6a5 d2c2 g8h7 b2c1 d5c6 h2g1 h7g8 g1g2 g8g7 g2h2 g7g8 h2g1 g8g7 g1h2 g7h7 h2g2 h7g8 g2g1 g8h7 g1g2 h7g6 g2g1 g6h6 g1g2 h6h7 g2g1 h7g8 g1g2 f7f5 c1b2 g8h7 b2c1 h7h8 g2h1
[#0] Warning; PV continues after threefold repetition - move g2g1 from Byte-Knight-base :: Info; info depth 15 time 84 nodes 330993 score cp 147 nps 3908432 pv h8h7 h1g2 h7g8 g2g1 g8g7 g1g2 g7g8 g2g1 g8g7 g1g2 c6d5 :: Position; fen rn1qk2r/pbp1ppbp/1p4p1/6B1/2BPp3/2N1P3/PPP2PPP/R2QK2R w KQkq - 2 9 :: Moves; e1g1 a7a6 c4b3 h7h6 g5h4 e8g8 d1g4 g6g5 h4g3 b8d7 a1e1 d7f6 g4e2 b6b5 g3e5 d8d7 h2h3 a8c8 a2a3 f8e8 g1h1 c7c5 h1g1 c5c4 b3a2 d7f5 e2d2 f5g6 b2b3 f6d5 e5g7 g8g7 b3c4 d5c3 d2c3 b7d5 e1d1 d5c4 a2c4 c8c4 c3b2 e8c8 d1d2 c4c3 f1a1 c8c4 a3a4 b5b4 a4a5 g6c6 g1h2 c6c7 h2g1 c7c6 a1a2 g7g8 a2a1 c6d5 a1a4 d5b5 a4a1 h6h5 g1h2 g5g4 h3h4 b5d5 g2g3 d5b5 h2h1 g8g7 h1g1 e7e6 g1h2 g7g8 h2g1 b5c6 a1a2 c6b5 a2a1 b5d5 a1a4 d5b7 a4a1 b7b5 g1g2 b5d5 a1a4 d5b5 a4a1 b5c6 g2g1 g8g7 g1g2 g7h7 g2g1 h7g8 g1g2 g8h7 a1a2 c6b5 a2a1 b5d5 a1a4 d5b5 a4a1 b5d5 a1a4 d5b7 a4a2 h7g7 a2a1 b7d5 a1a4 d5b5 a4a1 b5c6 g2g1 g7h7 a1a2 h7h8 a2a1 c6b5 g1h1 b5d5 h1g1 d5b5 b2b1 c3a3 b1f1 b5d5 g1h2 c4c3 a1b1 c3c4 b1b3 a3a5 f1b1 a5a4 b1b2 h8g8 c2c3 a6a5 d2c2 g8h7 b2c1 d5c6 h2g1 h7g8 g1g2 g8g7 g2h2 g7g8 h2g1 g8g7 g1h2 g7h7 h2g2 h7g8 g2g1 g8h7 g1g2 h7g6 g2g1 g6h6 g1g2 h6h7 g2g1 h7g8 g1g2 f7f5 c1b2 g8h7 b2c1 h7h8 g2h1
[#0] Warning; PV continues after threefold repetition - move g2g1 from Byte-Knight-base :: Info; info depth 16 time 84 nodes 330993 score cp 147 nps 3908140 pv h8h7 h1g2 h7g8 g2g1 g8g7 g1g2 g7g8 g2g1 g8g7 g1g2 c6d5 :: Position; fen rn1qk2r/pbp1ppbp/1p4p1/6B1/2BPp3/2N1P3/PPP2PPP/R2QK2R w KQkq - 2 9 :: Moves; e1g1 a7a6 c4b3 h7h6 g5h4 e8g8 d1g4 g6g5 h4g3 b8d7 a1e1 d7f6 g4e2 b6b5 g3e5 d8d7 h2h3 a8c8 a2a3 f8e8 g1h1 c7c5 h1g1 c5c4 b3a2 d7f5 e2d2 f5g6 b2b3 f6d5 e5g7 g8g7 b3c4 d5c3 d2c3 b7d5 e1d1 d5c4 a2c4 c8c4 c3b2 e8c8 d1d2 c4c3 f1a1 c8c4 a3a4 b5b4 a4a5 g6c6 g1h2 c6c7 h2g1 c7c6 a1a2 g7g8 a2a1 c6d5 a1a4 d5b5 a4a1 h6h5 g1h2 g5g4 h3h4 b5d5 g2g3 d5b5 h2h1 g8g7 h1g1 e7e6 g1h2 g7g8 h2g1 b5c6 a1a2 c6b5 a2a1 b5d5 a1a4 d5b7 a4a1 b7b5 g1g2 b5d5 a1a4 d5b5 a4a1 b5c6 g2g1 g8g7 g1g2 g7h7 g2g1 h7g8 g1g2 g8h7 a1a2 c6b5 a2a1 b5d5 a1a4 d5b5 a4a1 b5d5 a1a4 d5b7 a4a2 h7g7 a2a1 b7d5 a1a4 d5b5 a4a1 b5c6 g2g1 g7h7 a1a2 h7h8 a2a1 c6b5 g1h1 b5d5 h1g1 d5b5 b2b1 c3a3 b1f1 b5d5 g1h2 c4c3 a1b1 c3c4 b1b3 a3a5 f1b1 a5a4 b1b2 h8g8 c2c3 a6a5 d2c2 g8h7 b2c1 d5c6 h2g1 h7g8 g1g2 g8g7 g2h2 g7g8 h2g1 g8g7 g1h2 g7h7 h2g2 h7g8 g2g1 g8h7 g1g2 h7g6 g2g1 g6h6 g1g2 h6h7 g2g1 h7g8 g1g2 f7f5 c1b2 g8h7 b2c1 h7h8 g2h1
[#0] Warning; PV continues after threefold repetition - move c1b2 from Byte-Knight-base :: Info; info depth 7 time 5 nodes 5719 score cp 147 nps 1142628 pv h7g8 g2g1 c6d5 g1g2 d5c6 c1b2 :: Position; fen rn1qk2r/pbp1ppbp/1p4p1/6B1/2BPp3/2N1P3/PPP2PPP/R2QK2R w KQkq - 2 9 :: Moves; e1g1 a7a6 c4b3 h7h6 g5h4 e8g8 d1g4 g6g5 h4g3 b8d7 a1e1 d7f6 g4e2 b6b5 g3e5 d8d7 h2h3 a8c8 a2a3 f8e8 g1h1 c7c5 h1g1 c5c4 b3a2 d7f5 e2d2 f5g6 b2b3 f6d5 e5g7 g8g7 b3c4 d5c3 d2c3 b7d5 e1d1 d5c4 a2c4 c8c4 c3b2 e8c8 d1d2 c4c3 f1a1 c8c4 a3a4 b5b4 a4a5 g6c6 g1h2 c6c7 h2g1 c7c6 a1a2 g7g8 a2a1 c6d5 a1a4 d5b5 a4a1 h6h5 g1h2 g5g4 h3h4 b5d5 g2g3 d5b5 h2h1 g8g7 h1g1 e7e6 g1h2 g7g8 h2g1 b5c6 a1a2 c6b5 a2a1 b5d5 a1a4 d5b7 a4a1 b7b5 g1g2 b5d5 a1a4 d5b5 a4a1 b5c6 g2g1 g8g7 g1g2 g7h7 g2g1 h7g8 g1g2 g8h7 a1a2 c6b5 a2a1 b5d5 a1a4 d5b5 a4a1 b5d5 a1a4 d5b7 a4a2 h7g7 a2a1 b7d5 a1a4 d5b5 a4a1 b5c6 g2g1 g7h7 a1a2 h7h8 a2a1 c6b5 g1h1 b5d5 h1g1 d5b5 b2b1 c3a3 b1f1 b5d5 g1h2 c4c3 a1b1 c3c4 b1b3 a3a5 f1b1 a5a4 b1b2 h8g8 c2c3 a6a5 d2c2 g8h7 b2c1 d5c6 h2g1 h7g8 g1g2 g8g7 g2h2 g7g8 h2g1 g8g7 g1h2 g7h7 h2g2 h7g8 g2g1 g8h7 g1g2 h7g6 g2g1 g6h6 g1g2 h6h7 g2g1 h7g8 g1g2 f7f5 c1b2 g8h7 b2c1 h7h8 g2h1 h8h7 h1g2

I should investigate and try to fix them (and add a test to catch this in the first place).

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions