Rybka 1.0 source code

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

BubbaTough
Posts: 1154
Joined: Fri Jun 23, 2006 5:18 am

Re: Rybka 1.0 source code

Post by BubbaTough »

Rebel wrote: It's now 8 months after, it's not decided yet which independent body is going to research the Loop case?
Not it.

-Sam
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Rybka 1.0 source code

Post by bob »

Rebel wrote:
bob wrote:
Rebel wrote:
bob wrote:I believe the original complaint by Fabien was early July.
Thank you Bob.

So just a couple of days after the Rybka verdict.

Fabien keeps you busy :lol:
I can't recall all the specifics. The topic was broached in April. But we obviously were not going to open another investigation until the current one was closed... It became a formal request once the panel report was submitted, the decision announced, and the case closed by the ICGA.
It will be interesting how the ICGA is going to handle this since one of its key members is involved. It's now 8 months after, it's not decided yet which independent body is going to research the Loop case?
The ICGA secretariat is given the responsibility to investigate. And we will do so. There have been numerous attempts to contact the loop author via different email addresses. By several people including David. There is no major rush, since it was a tournament in the past, but it will be investigated. And the result made public. Just as in this case. Once the ICGA takes the final report we produce and make a decision.
User avatar
Rebel
Posts: 6991
Joined: Thu Aug 18, 2011 12:04 pm

Re: Rybka 1.0 source code

Post by Rebel »

Gerd Isenberg wrote:On the 0.0 issue. There are (only) about 32 >=, <=, >, < zero expressions in the Rybka C code Ed posted. And surely enough, the possible typo appeared exactly in the code where it had "semantical connections" with the floating point comparison inside Fruit.
Got a hint from Miguel, checked it and indeed it's not:

if (movetime >= 0.0)

but

if (movetime > 0.0)

or

if (movetime > .0)

for that matter.

Which motivated to do some more research resulting in:

http://www.top-5000.nl/fadden.htm
Gerd Isenberg
Posts: 2250
Joined: Wed Mar 08, 2006 8:47 pm
Location: Hattingen, Germany

Re: Rybka 1.0 source code

Post by Gerd Isenberg »

Rebel wrote:
Gerd Isenberg wrote:On the 0.0 issue. There are (only) about 32 >=, <=, >, < zero expressions in the Rybka C code Ed posted. And surely enough, the possible typo appeared exactly in the code where it had "semantical connections" with the floating point comparison inside Fruit.
Got a hint from Miguel, checked it and indeed it's not:

if (movetime >= 0.0)

but

if (movetime > 0.0)

or

if (movetime > .0)

for that matter.

Which motivated to do some more research resulting in:

http://www.top-5000.nl/fadden.htm
You are right! Just checked it with VC6. Not sure about the implications yet. But Vas touched that line...

Code: Select all

if &#40;movetime >= 0.0&#41;
 fild	 DWORD PTR _movetime$&#91;esp-4&#93;
 fcomp	 QWORD PTR __real@0000000000000000
 fnstsw	 ax
 and	 eax, 00000100H
 jne	 SHORT $L1128 ; jump if < 0.0

if &#40;movetime >.0&#41;
 fild	 DWORD PTR _movetime$&#91;esp-4&#93;
 fcomp	 QWORD PTR __real@0000000000000000
 fnstsw	 ax
 and	 eax, 00004100H ; or test ah, 0x41
 jne	 SHORT $L1128 ; jump if <= 0.0