Page 1 of 1

Winboard GUI and Stalemate Adjudication

PostPosted: 26 Feb 2008, 21:22
by Ferdinand
Hi all,

I would like to inform on the stalemate claim by Deuterium vs Bestia in one of the test games I had where Winboard failed to provide correct adjudication result.

Deuterium claimed draw by stalemate and winboard adjudicated as win for Bestia because of false draw claim.

The correct result should be a draw. :(

I use winboard_f. Winboard 4.3.12 + (Unofficial version "F").

Best regards,
Ferdinand

Here is the relevant part of the debug, Deuterium is the second engine.

1094328 >second: time 17478
1094328 >second: otim 17295
1094328 >second: g5g6
1094406 <second: 1/2-1/2 {Stalemate}
GameEnds(37, Stalemate, 6)
GameEnds(37, Stalemate, 6) clock stopped
GameEnds(37, Stalemate, 6) test claims
GameEnds(35, False draw claim: 'Stalemate', 6) after test
Interrupting first
1094406 >first : result 1-0 {False draw claim: 'Stalemate'}
1094406 >second: result 1-0 {False draw claim: 'Stalemate'}

Last position. Bestia-Deuterium, black to play (stalemate). The last 2 moves are 122. ... Ra6-g6 123. Kg5-g6
[diag]6k1/2R3P1/6K1/8/8/8/8/8 b - - 0 123[/diag]

Here is the complete game record.

[Event "nts2006, t108"]
[Site "VIVELEROI"]
[Date "2008.02.26"]
[Round "1.2"]
[White "Bestia v0.90"]
[Black "Deuterium 08.01.26.198"]
[Result "1-0"]
[TimeControl "40/180"]
[Annotator "14. -0.09 14... -0.17"]
[Number "70"]

1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 O-O 8.
h3 Bb7 9. d3 d6 10. a3 Na5 11. Ba2 c5 12. Nbd2 Nc6 13. Nf1 Bc8 14.
Ne3 {-0.09/7 6} Nd4 {-0.17/9 12} 15. Nd5 {+0.06/8 6} Be6 {-0.31/9 5} 16.
Nxe7+ {+0.11/9 6} Qxe7 {-0.04/9 4} 17. Nxd4 {+0.14/9 6} cxd4 {-0.06/11 5}
18. Bg5 {+0.10/9 4} Bxa2 {+0.02/11 5} 19. Rxa2 {+0.08/9 6} Qe6 {+0.03/11 4}
20. Ra1 {+0.06/9 6} Rfc8 {+0.14/10 5} 21. Rc1 {+0.00/8 6} a5 {+0.15/10 6}
22. c3 {+0.00/8 6} dxc3 {+0.18/10 5} 23. bxc3 {+0.04/9 6} Rc5 {+0.21/9 6}
24. d4 {+0.13/8 6} exd4 {+0.37/12 5} 25. Bxf6 {+0.07/9 5} Qxf6 {+0.37/9 0}
26. Qxd4 {+0.00/8 6} Rac8 {+0.22/10 6} 27. Qxf6 {-0.22/10 6}
gxf6 {+0.08/9 0} 28. Rb1 {-0.26/9 6} a4 {+0.23/13 5} 29. Red1 {-0.33/10 6}
R8c6 {+0.30/12 7} 30. Rb4 {-0.22/10 6} Rxc3 {+0.24/13 7} 31.
Rxb5 {-0.37/10 6} Rxa3 {+0.26/13 7} 32. Rbd5 {-0.35/9 6} Rac3 {+0.27/11 7}
33. Rxd6 {-0.36/10 6} a3 {+0.25/10 7} 34. Rxc6 {-0.21/10 7}
Rxc6 {+0.28/9 1} 35. Rd8+ {-0.23/10 7} Kg7 {+0.36/2 0} 36. Ra8 {-0.08/11 7}
Rc3 {+0.13/10 11} 37. Kh2 {-0.02/10 6} Kg6 {+0.05/10 11} 38.
f3 {+0.09/10 7} h6 {-0.01/10 11} 39. Kg3 {+0.20/10 5} Rb3 {-0.14/11 11} 40.
Kf4 {+0.33/10 0} Kg7 {-0.12/12} 41. Ra6 {+0.22/9 4} Rc3 {-0.12/10 4} 42.
h4 {+0.24/10 4} Rb3 {-0.12/10 4} 43. h5 {+0.24/10 4} Rc3 {-0.20/11 4} 44.
Ra5 {+0.40/11 4} Rb3 {-0.28/12 3} 45. Kf5 {+0.27/11 4} Rc3 {-0.27/12 4} 46.
Ra7 {+0.27/11 4} Rc5+ {-0.24/11 4} 47. Kf4 {+0.27/10 4} Rc3 {-0.09/11 4}
48. Ra4 {+0.27/11 4} Kf8 {-0.24/11 4} 49. Kf5 {+0.27/11 4} Kg7 {-0.28/11 4}
50. f4 {+0.16/11 4} Rc5+ {-0.28/12 3} 51. Kg4 {+0.27/11 4} Rc3 {-0.28/12 4}
52. Ra5 {+0.25/12 4} Rb3 {-0.27/12 4} 53. Kf5 {+0.27/11 4} Rc3 {-0.22/13 3}
54. Ra7 {+0.27/11 3} Rb3 {-0.20/11 4} 55. g4 {+0.27/11 4} Rf3 {-0.02/12 4}
56. Ra6 {+0.42/11 3} Rb3 {+0.00/13 4} 57. Ra8 {+0.25/11 4} Rc3 {+0.00/13 4}
58. Ra5 {+0.25/11 4} Rb3 {+0.00/13 4} 59. e5 {+0.32/11 4} fxe5 {-0.02/11 4}
60. Kxe5 {+0.26/10 4} Rg3 {-0.05/10 4} 61. Kf5 {+0.32/10 4}
Rf3 {-0.24/11 3} 62. Ra4 {+0.39/10 4} Rh3 {-0.26/11 3} 63. g5 {+0.38/10 4}
Rxh5 {-0.23/11 4} 64. Rxa3 {+0.25/10 3} hxg5 {-0.10/13 4} 65.
Kg4 {+0.10/11 4} Kh6 {+0.00/14 3} 66. Ra6+ {+0.10/11 4} f6 {+0.00/16 4} 67.
Rxf6+ {+0.10/11 3} Kg7 {+0.00/65 0} 68. fxg5 {+0.10/11 4} Rh8 {+0.00/21 5}
69. Re6 {+0.10/10 4} Kf7 {+0.00/24 4} 70. Rd6 {+0.10/10 5} Re8 {+0.00/23 5}
71. g6+ {+0.10/10 5} Kg7 {+0.00/23 4} 72. Kf5 {+0.00/11 5} Rc8 {+0.00/26 3}
73. Rd7+ {+0.10/10 5} Kf8 {+0.00/28 4} 74. Kg5 {+0.10/11 5}
Rc4 {+0.00/30 5} 75. Kh5 {+0.10/12 5} Rb4 {+0.00/32 6} 76.
Rd8+ {+0.10/11 5} Kg7 {+0.00/29 6} 77. Rd5 {+0.10/12 4} Ra4 {+0.00/27 6}
78. Rd7+ {+0.10/11 5} Kf8 {+0.00/30 4} 79. Rd8+ {+0.10/12 3}
Kg7 {+0.00/31 7} 80. Rd5 {+0.10/11 0} Rb4 {+0.00/27} 81. Kg5 {+0.10/10 3}
Ra4 {+0.00/27 3} 82. Kf5 {+0.10/10 4} Rb4 {+0.00/26 5} 83.
Rd7+ {+0.10/11 4} Kg8 {+0.00/28 5} 84. Rd8+ {+0.10/11 4} Kg7 {+0.00/4 0}
85. Rd5 {+0.00/12 4} Ra4 {+0.00/27 5} 86. Kg5 {+0.10/11 4} Rb4 {+0.00/27 4}
87. Ra5 {+0.10/11 4} Rc4 {+0.00/26 5} 88. Kh5 {+0.10/11 4} Rb4 {+0.00/26 4}
89. Rc5 {+0.10/11 4} Ra4 {+0.00/27 3} 90. Kg5 {+0.10/11 4} Rb4 {+0.00/27 4}
91. Rc7+ {+0.10/11 4} Kg8 {+0.00/29 4} 92. Ra7 {+0.10/11 4}
Kf8 {+0.00/28 4} 93. Kh5 {+0.10/12 4} Rc4 {+0.00/28 5} 94. Rb7 {+0.10/11 4}
Ra4 {+0.00/29 3} 95. Rb8+ {+0.10/11 3} Kg7 {+0.00/23 4} 96.
Rb5 {+0.10/12 4} Rc4 {+0.00/25 4} 97. Rb7+ {+0.10/11 3} Kf8 {+0.00/29 4}
98. Ra7 {+0.10/11 4} Rb4 {+0.00/27 4} 99. Ra8+ {+0.10/11 4}
Kg7 {+0.00/28 4} 100. Ra5 {+0.10/11 4} Rc4 {+0.00/27 2} 101.
Rb5 {+0.10/12 4} Ra4 {+0.00/26 4} 102. Rc5 {+0.10/11 4} Rb4 {+0.00/26 4}
103. Rc7+ {+0.10/11 4} Kf8 {+0.00/29 4} 104. Rf7+ {+0.10/12 3}
Kg8 {+0.00/27 3} 105. Re7 {+0.10/12 4} Kf8 {+0.00/30 4} 106.
Rc7 {+0.10/12 4} Ra4 {+0.00/29 4} 107. Rf7+ {+0.10/12 4} Kg8 {+0.00/27 3}
108. Re7 {+0.10/12 4} Kf8 {+0.00/31 4} 109. Rh7 {+0.10/12 4}
Rb4 {+0.00/27 3} 110. Kg5 {+0.10/12 4} Ra4 {+0.00/28 4} 111.
Kf5 {+0.10/12 4} Rb4 {+0.00/26 3} 112. Rf7+ {+0.10/12 4} Kg8 {+0.00/27 3}
113. Re7 {+0.10/11 4} Kf8 {+0.00/29 5} 114. Rc7 {+0.10/11 4}
Ra4 {+0.00/32 4} 115. Kg5 {+0.10/11 5} Rb4 {+0.00/37 4} 116.
Ra7 {+0.10/11 5} Rc4 {+0.00/54 4} 117. Rb7 {+0.00/11 5} Ra4 {+0.00/65 0}
118. Rf7+ {+0.00/11 5} Kg8 {+0.00/65 0} 119. Re7 {+0.00/11 3}
Kf8 {+0.00/65 0} 120. g7+ {+0.00/12 0} Kg8 {+0.00/58} 121. Rd7 {+0.00/11 3}
Ra6 {+0.00/49 4} 122. Rc7 {+0.00/13 4} Rg6+ {+0.00/65 1} 123.
Kxg6 {+0.00/13 2}
{False draw claim: 'Stalemate'} 1-0

Re: Winboard GUI and Stalemate Adjudication

PostPosted: 27 Feb 2008, 10:37
by H.G.Muller
Hmm, strange. When I load the game in my WinBoard_F (which is version 4.3.13) it adjudicates stalemate itsself after Kxg6. It seems the problem here is that it didn't.

Can you still figure out what the option settings were (through "Options -> Engines...")? It could have been that 'Detect Mates' was not set, but 'test claims' was. I guess this was an unintended combination of options, but it should of course either work correctly or be impossible to set. The 'test claim' now relies on any mate claim being false. I should test if the option 'detect mates' was off, and if it was, do the test on a claim anyway.

Thanks for spotting the error.

Re: Winboard GUI and Stalemate Adjudication

PostPosted: 27 Feb 2008, 23:00
by Ferdinand
H.G.Muller wrote:Hmm, strange. When I load the game in my WinBoard_F (which is version 4.3.13) it adjudicates stalemate itsself after Kxg6. It seems the problem here is that it didn't.

Can you still figure out what the option settings were (through "Options -> Engines...")? It could have been that 'Detect Mates' was not set, but 'test claims' was. I guess this was an unintended combination of options, but it should of course either work correctly or be impossible to set. The 'test claim' now relies on any mate claim being false. I should test if the option 'detect mates' was off, and if it was, do the test on a claim anyway.

Thanks for spotting the error.


You are right, the Detect Mates is not set and the Verify Engine Claims is set.

Re: Winboard GUI and Stalemate Adjudication

PostPosted: 28 Feb 2008, 09:39
by H.G.Muller
OK, I will fix it before the next release, so that the option /testClaims can also be used when mates are not detected by WinBoard. For now, just don't use the option /testClaims without detecting mates.