xboard protocol - a compromise that would work

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

User avatar
hgm
Posts: 27796
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: xboard protocol - a compromise that would work

Post by hgm »

OK, so that would e reevant for Bob to know, because he claimed that Crafty did send offer draw. So there still is confusion about what exactly happened.

If Crafty sent 1/2-1/2 before a draw condition had ever appeared (i.e. neither after his last move, or before its next move), then also XBoard would forfeit it. It would not take into account thet there is a claimable draw after the next move.

The old protocol specs clearly state this as illegal use of the 1/2-1/2 command. That in practice you would get away with it on old XBoard was only because of a bug in its handling of RESULT commands (namely believeng the engine unconditionlly).
User avatar
Matthias Gemuh
Posts: 3245
Joined: Thu Mar 09, 2006 9:10 am

Re: xboard protocol - a compromise that would work

Post by Matthias Gemuh »

hgm wrote:OK, so that would e reevant for Bob to know, because he claimed that Crafty did send offer draw. So there still is confusion about what exactly happened.

If Crafty sent 1/2-1/2 before a draw condition had ever appeared (i.e. neither after his last move, or before its next move), then also XBoard would forfeit it. It would not take into account thet there is a claimable draw after the next move.

The old protocol specs clearly state this as illegal use of the 1/2-1/2 command. That in practice you would get away with it on old XBoard was only because of a bug in its handling of RESULT commands (namely believeng the engine unconditionlly).
See last post on this link:

http://www.talkchess.com/forum/viewtopi ... =&start=60

Bob is aware.

Matthias.
My engine was quite strong till I added knowledge to it.
http://www.chess.hylogic.de
Uri Blass
Posts: 10282
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: xboard protocol - a compromise that would work

Post by Uri Blass »

michiguel wrote:
Uri Blass wrote:
rjgibert wrote:
bob wrote:what I would _like_ to do is do the claim in the order I would use in a human event. examples:

(1) I want to claim a draw and do not need to make a move to do so. I would like to send "draw" and have the game end.

(2) I want to claim a draw after I play a move, because only after I play this move will the draw condition be valid. I would like to send "move xxx" and then "draw".

(3) I want to offer a draw to my opponent. I would like to send "move xxx" and then "offer draw".

(4) My opponent offers me a draw. I would like to send "draw" and not send a move.
(2) is not valid in a human event in the case of 3-fold repetition and the 50 move rule. The proper procedure is to write the drawing move down on your score sheet and present it along with your draw claim. If you actually play the move instead, then make the draw claim, then the claim is invalid. You cannot make a draw claim after you make your move. The last player to make a move on the board must always be your opponent for a draw claim to be valid.

Computers might be treated differently in this regard, but you asserted (2) as valid in a human event and this is not correct.

BTW, if you are ambiguous about whether you are making a draw offer or claiming a draw I would expect it would be interpreted as a draw offer, which can be refused of course.
You are right.
even if you make a move and stop the clocks and claim that the position repeated 3 times the draw claim is not valid based on the fide rule.

I practically did it correctly by first writing my move in a tournament game some years ago but for some reason did not think about it when the subject was about computers when writing your move is equivalent to making a move.

I also do not see the logic behind this fide rule and I think that it is more logical to change it and allow humans to claim a draw even after they complete the move as long as they did not press the clock.

Uri
It is very consistent with other FIDE rules and it makes a lot of sense. You have to claim things at your move, when your clock is running.

A bit unrelated, but to show the spirit of the rules, the correct etiquette to offer a draw is to move, offer a draw verbally, and then hit the clock. If you hit the clock and then offer, you are bothering your opponent in their time.

Miguel
I did not suggest not to claim a draw when my clock is running.

The point is that based on the fide rules if I make a move(and not only write it) and do not hit the clock and claim a draw based on the fact that my move caused second repetition I do not get the draw.

The relevant parts of the fide rules:

http://www.fide.com/fide/handbook?id=124&view=article

9.4:If the player makes a move without having claimed the draw he loses the right to claim

No need to hit the clock in order to complete making a move based on 4.6:

"The move is considered to have been made when all the relevant requirements of Article 3 have been fulfilled.

in the case of a capture, when the captured piece has been removed from the chessboard and the player, having placed his own piece on its new square, has released this capturing piece from his hand;

in the case of castling, when the player`s hand has released the rook on the square previously crossed by the king. When the player has released the king from his hand, the move is not yet made, but the player no longer has the right to make any move other than castling on that side, if this is legal;"

Uri
User avatar
hgm
Posts: 27796
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: xboard protocol - a compromise that would work

Post by hgm »

Uri Blass wrote:9.4:If the player makes a move without having claimed the draw he loses the right to claim
This applies to cases where the position before the move was already a draw, not?
Uri Blass
Posts: 10282
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: xboard protocol - a compromise that would work

Post by Uri Blass »

hgm wrote:
Uri Blass wrote:9.4:If the player makes a move without having claimed the draw he loses the right to claim
This applies to cases where the position before the move was already a draw, not?
I think that it applies to every case that the player makes a draw claim based on repetition or the fifty move rule after making a move(and before the opponent replied to the move).

The claim is simply not accepted because the right time to claim a draw is before making a move and after your opponent made a move.

Uri
User avatar
hgm
Posts: 27796
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: xboard protocol - a compromise that would work

Post by hgm »

FIDE rules wrote:6.8 During the game each player, having made his move on the chessboard, shall stop his own clock and start his opponent`s clock. A player must always be allowed to stop his clock. His move is not considered to have been completed until he has done so, unless the move that was made ends the game. (See Articles 5.1, and 5.2)
The time between making the move on the chessboard and stopping his own clock and starting his opponent`s clock is regarded as part of the time allotted to the player.
This rule actually casts doubt on that: If you claim between moving on the board and pressing your clock, formally you claim during your move. I would say that means you have not made a move yet, and thus that the claim is still valid.

I noticed one thing funny, though:

According to these rules, when I am about to checkmate my opponent with my 50th reversible move, write the move down, tell the referee I intend to make it, and claim a draw, the game will be a draw!
User avatar
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

Re: xboard protocol - a compromise that would work

Post by michiguel »

hgm wrote:
FIDE rules wrote:6.8 During the game each player, having made his move on the chessboard, shall stop his own clock and start his opponent`s clock. A player must always be allowed to stop his clock. His move is not considered to have been completed until he has done so, unless the move that was made ends the game. (See Articles 5.1, and 5.2)
The time between making the move on the chessboard and stopping his own clock and starting his opponent`s clock is regarded as part of the time allotted to the player.
This rule actually casts doubt on that: If you claim between moving on the board and pressing your clock, formally you claim during your move. I would say that means you have not made a move yet, and thus that the claim is still valid.
You have to claim before making the move, not during the making of the move.

Miguel

I noticed one thing funny, though:

According to these rules, when I am about to checkmate my opponent with my 50th reversible move, write the move down, tell the referee I intend to make it, and claim a draw, the game will be a draw!
User avatar
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

Re: xboard protocol - a compromise that would work

Post by michiguel »

Uri Blass wrote:
michiguel wrote:
Uri Blass wrote:
rjgibert wrote:
bob wrote:what I would _like_ to do is do the claim in the order I would use in a human event. examples:

(1) I want to claim a draw and do not need to make a move to do so. I would like to send "draw" and have the game end.

(2) I want to claim a draw after I play a move, because only after I play this move will the draw condition be valid. I would like to send "move xxx" and then "draw".

(3) I want to offer a draw to my opponent. I would like to send "move xxx" and then "offer draw".

(4) My opponent offers me a draw. I would like to send "draw" and not send a move.
(2) is not valid in a human event in the case of 3-fold repetition and the 50 move rule. The proper procedure is to write the drawing move down on your score sheet and present it along with your draw claim. If you actually play the move instead, then make the draw claim, then the claim is invalid. You cannot make a draw claim after you make your move. The last player to make a move on the board must always be your opponent for a draw claim to be valid.

Computers might be treated differently in this regard, but you asserted (2) as valid in a human event and this is not correct.

BTW, if you are ambiguous about whether you are making a draw offer or claiming a draw I would expect it would be interpreted as a draw offer, which can be refused of course.
You are right.
even if you make a move and stop the clocks and claim that the position repeated 3 times the draw claim is not valid based on the fide rule.

I practically did it correctly by first writing my move in a tournament game some years ago but for some reason did not think about it when the subject was about computers when writing your move is equivalent to making a move.

I also do not see the logic behind this fide rule and I think that it is more logical to change it and allow humans to claim a draw even after they complete the move as long as they did not press the clock.

Uri
It is very consistent with other FIDE rules and it makes a lot of sense. You have to claim things at your move, when your clock is running.

A bit unrelated, but to show the spirit of the rules, the correct etiquette to offer a draw is to move, offer a draw verbally, and then hit the clock. If you hit the clock and then offer, you are bothering your opponent in their time.

Miguel
I did not suggest not to claim a draw when my clock is running.

The point is that based on the fide rules if I make a move(and not only write it) and do not hit the clock and claim a draw based on the fact that my move caused second repetition I do not get the draw.

The relevant parts of the fide rules:

http://www.fide.com/fide/handbook?id=124&view=article

9.4:If the player makes a move without having claimed the draw he loses the right to claim

No need to hit the clock in order to complete making a move based on 4.6:

"The move is considered to have been made when all the relevant requirements of Article 3 have been fulfilled.

in the case of a capture, when the captured piece has been removed from the chessboard and the player, having placed his own piece on its new square, has released this capturing piece from his hand;

in the case of castling, when the player`s hand has released the rook on the square previously crossed by the king. When the player has released the king from his hand, the move is not yet made, but the player no longer has the right to make any move other than castling on that side, if this is legal;"

Uri
Your suggestion will have no advantage and could be the cause of many problems.

Miguel
rjgibert
Posts: 317
Joined: Mon Jun 26, 2006 9:44 am

Re: xboard protocol - a compromise that would work

Post by rjgibert »

hgm wrote:
FIDE rules wrote:6.8 During the game each player, having made his move on the chessboard, shall stop his own clock and start his opponent`s clock. A player must always be allowed to stop his clock. His move is not considered to have been completed until he has done so, unless the move that was made ends the game. (See Articles 5.1, and 5.2)
The time between making the move on the chessboard and stopping his own clock and starting his opponent`s clock is regarded as part of the time allotted to the player.
This rule actually casts doubt on that: If you claim between moving on the board and pressing your clock, formally you claim during your move. I would say that means you have not made a move yet, and thus that the claim is still valid...
It "seems" so and indeed in more than one place in the rules, there is ambiguity in the rules about when a move is completed or not. Nevertheless, an experienced arbiter will rule against you. Very simply, you will have not followed the correct procedure, which is to write the move down on your score sheet, then make your draw claim based on the 50 move rule or 3-fold repetition. On what is the correct procedure, there is no ambiguity whatsoever.

IIRC, there was a famous instance of this involving Bobby Fischer where he correctly asserted that the draw claim did not follow the correct procedure and was therefore invalid. The arbiter ruled in his favor as will any arbiter that knows what he is doing.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: xboard protocol - a compromise that would work

Post by bob »

rjgibert wrote:
bob wrote:what I would _like_ to do is do the claim in the order I would use in a human event. examples:

(1) I want to claim a draw and do not need to make a move to do so. I would like to send "draw" and have the game end.

(2) I want to claim a draw after I play a move, because only after I play this move will the draw condition be valid. I would like to send "move xxx" and then "draw".

(3) I want to offer a draw to my opponent. I would like to send "move xxx" and then "offer draw".

(4) My opponent offers me a draw. I would like to send "draw" and not send a move.
(2) is not valid in a human event in the case of 3-fold repetition and the 50 move rule. The proper procedure is to write the drawing move down on your score sheet and present it along with your draw claim. If you actually play the move instead, then make the draw claim, then the claim is invalid. You cannot make a draw claim after you make your move. The last player to make a move on the board must always be your opponent for a draw claim to be valid.
If you think about it, my (2) is _exactly_ what a human does. (1) sends move to arbiter (writes it on score sheet). (2) tells arbiter he wants to claim a draw. (sends draw command). (3) stops clock. (3) is the only thing we can't do. But with my (2) above, the steps are the same as a human event. We just don't have some sort of way to say "OK, now my move and any claim have been passed to the arbiter, stop my clock and let him make a decision.

Clearly I do not think of (1) send "offer draw" and then (2) send move. When I intend to _claim_ a draw. Never done that in my life in a real game.

Computers might be treated differently in this regard, but you asserted (2) as valid in a human event and this is not correct.
See above. The _order_ is correct. The issue is that the "move" is currently treated as "make this move, and press the clock". That introduces the ambiguity. For example, how do you claim a draw without having to even make a move, which is perfectly legal?

BTW, if you are ambiguous about whether you are making a draw offer or claiming a draw I would expect it would be interpreted as a draw offer, which can be refused of course.
That's why I prefer "draw" to claim a draw, "offer draw" to offer a draw.