Rybka 1.0 source code

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

Moderators: hgm, Rebel, chrisw

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

Re: Rybka 1.0 source code

Post by bob »

wims wrote:
bob wrote: ...
Would be fun to take something known, compile it and then decompile it, to see how close it looks...
I once did that here at ccc and proved that totally different source code could decompile into identical code. You laughed at it.
I didn't laugh at the "idea". I laughed at the ridiculousness of your concept. I've worked on compilers for years. I understand the concepts perfectly well, and that there are N different ways to write code for a loop in C that maps to the same asm code. But people don't write loops all those different ways, naturally. And more importantly, two different people won't each write one of those "different ways". Just does NOT happen...

One only has to look at hexrays output to see how utterly choppy the code is, and that NO human would write code that looks anywhere near what that code looks like. The answer, in general, "it won't look very close" which was my point. Not what you thought it was...
User avatar
Rebel
Posts: 6995
Joined: Thu Aug 18, 2011 12:04 pm

Re: Rybka 1.0 source code

Post by Rebel »

bob wrote: One only has to look at hexrays output to see how utterly choppy the code is, and that NO human would write code that looks anywhere near what that code looks like. The answer, in general, "it won't look very close" which was my point. Not what you thought it was...
Once upon a time (before the RE job) you would have embraced the decompiled Rybka 1 source code but I understand it's now is a threat to your position.
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: One only has to look at hexrays output to see how utterly choppy the code is, and that NO human would write code that looks anywhere near what that code looks like. The answer, in general, "it won't look very close" which was my point. Not what you thought it was...
Once upon a time (before the RE job) you would have embraced the decompiled Rybka 1 source code but I understand it's now is a threat to your position.
It is not a threat at all. In fact, once YOU actually begin to study it, you will see that the RE stuff we did was exactly correct, and this source actually makes it a bit easier to see inside for those that don't understand assembly.

You WISH it was a threat. It is actually "evidence for the prosecution." You will figure this out soon enough...

"fools rush in..." comes to mind. You didn't help "your side" one bit with this...

I just happen to think that the asm is easier to read than that messy code. Nothing more, nothing less... I don't think hex rays is involved in a conspiracy to produce bad code, which will likely be your next line of reasoning...
User avatar
Rebel
Posts: 6995
Joined: Thu Aug 18, 2011 12:04 pm

Re: Rybka 1.0 source code

Post by Rebel »

bob wrote: You WISH it was a threat. It is actually "evidence for the prosecution." You will figure this out soon enough...
Not me. It's my hope some programmers with an open mind will pick up the challenge and start comparing the 2 source codes. For sure I am not the right person to do so, I am much too biased in the between time.
kranium
Posts: 2129
Joined: Thu May 29, 2008 10:43 am

Re: Rybka 1.0 source code

Post by kranium »

Rebel wrote:
bob wrote: You WISH it was a threat. It is actually "evidence for the prosecution." You will figure this out soon enough...
Not me. It's my hope some programmers with an open mind will pick up the challenge and start comparing the 2 source codes. For sure I am not the right person to do so, I am much too biased in the between time.
Ed, some already have...(Mark L. and Zach have simply and substantially confirmed R. Fadden's findings..., detailed below:)
why must it be done again?

In May of 2008, some compelling information was released...here on CCC, in this thread:
http://www.talkchess.com/forum/viewtopic.php?t=20936

Please read carefully post # 9 on the 2nd page.
The engineer (Rick Fadden, Vermont, USA) who produced this data had never seen the Fruit 2.1 source code,
he was working to prove that Stelka was a clone of Rybka.
He was an enthousistic Rybka customer, and an active Rybka forum poster, and even communicated privately with Vas on occasion.

In order to accomplish this, he (and his colleagues) examined rybka 1.0 beta executable with a microscope.
They used a disaasember to produce the assembly language from the binary's machine language.
He converted everything he saw to C (as best he could)...
as you know, the process is very difficult, and only a very skilled engineer with lots of assembly and C experience is capable of accomplishing it.

He states:
"I need to be clear, using the above technique I found each of the mostly unknown Rybka functions in Strelka.
I read the assembly language and it exactly matched the code in each of these Strelka functions in turn. "

"Caveat: Everything was matching so beautifully of course I could easily have missed a few modified lines of code.
I'm just saying this perfect correlation was amazing to me!
It became so clear to me that Strelka is a pure Reverse Engineer of Rybka. All of the above exactly matches. "


Ed?...just take at quick look at the Strelka source code (which Vas claimed as a 'his', i.e. a 'Rybka 1.0 beta clone')...
....there are hundreds of "exact" line by line matches!
(i.e. exact and whole copies of Fruit functions). This fact is well documented...and anyone (even non-programmers) can recognize it...
there are many links and comparisons avaialble (besides Zach's and Marks)...I will gladly post them here if need be, but...
is this all really necessary?

It appears you're now (3-4 years later, why I don't know??) furiously attempting (and succeeding?) to cloud the issue by publishing an inordinate amounts of debatable information, here and on your website...
(all with the backing and enthousistic support of Chessbase?)
:shock:
it's all a giant information overload 'smoke screen', which inevitably will accomplish it's desired effect:
profusely confuse the issue..and raise doubt in the masses.

please stop!
Last edited by kranium on Tue Feb 07, 2012 9:29 pm, edited 8 times in total.
User avatar
Harvey Williamson
Posts: 2011
Joined: Sun May 25, 2008 11:12 pm
Location: Whitchurch. Shropshire, UK.
Full name: Harvey Williamson

Re: Rybka 1.0 source code

Post by Harvey Williamson »

Rebel wrote:
bob wrote: You WISH it was a threat. It is actually "evidence for the prosecution." You will figure this out soon enough...
Not me. It's my hope some programmers with an open mind will pick up the challenge and start comparing the 2 source codes. For sure I am not the right person to do so, I am much too biased in the between time.
The fact is that no matter what happens unless Vas contacts the ICGA with an appeal I doubt the case will be reopened.
kranium
Posts: 2129
Joined: Thu May 29, 2008 10:43 am

Re: Rybka 1.0 source code

Post by kranium »

Rebel wrote:
bob wrote: One only has to look at hexrays output to see how utterly choppy the code is, and that NO human would write code that looks anywhere near what that code looks like. The answer, in general, "it won't look very close" which was my point. Not what you thought it was...
Once upon a time (before the RE job) you would have embraced the decompiled Rybka 1 source code but I understand it's now is a threat to your position.
here:
http://www.sdchess.ru/download_engines.htm
choose engine: Strelka(WB)(UCI)
download column...
click on 2.0B+sources
please compare this source code to Fruit 2.1

get real Ed-
the code you provide (are passing off) as the 'Rybka 1.0 beta source code' (w/ Vas R. permisson) is a joke...
it's simply a crude and innacurate Hex Rays C 'approximation' of the Rybka 1.0 beta binary data..
kranium
Posts: 2129
Joined: Thu May 29, 2008 10:43 am

Re: Rybka 1.0 source code

Post by kranium »

kranium wrote:
Rebel wrote:
bob wrote: One only has to look at hexrays output to see how utterly choppy the code is, and that NO human would write code that looks anywhere near what that code looks like. The answer, in general, "it won't look very close" which was my point. Not what you thought it was...
Once upon a time (before the RE job) you would have embraced the decompiled Rybka 1 source code but I understand it's now is a threat to your position.
here:
http://www.sdchess.ru/download_engines.htm
choose engine: Strelka(WB)(UCI)
download column...
click on 2.0B+sources
please compare this source code to Fruit 2.1

get real Ed-
the code you provide (are passing off) as the 'Rybka 1.0 beta source code' (w/ Vas R. permisson) is a joke...
it's simply a crude and innacurate Hex Rays C 'approximation' of the Rybka 1.0 beta binary data..

From the IdaPro (HexRays) web site:
"It converts executable programs into a human readable C-like pseudocode text."
amazing!
...and all via a simple menu choice
(one simply has to wait a couple minutes while the program attempts to create this 'human readable text'!)

Ed, is this what you are distributing and claiming is the "Rybka 1.0 beta source code"?
(released with Vas R's permission? )
:shock:

nonsense...you ought to be ashamed.
User avatar
Rebel
Posts: 6995
Joined: Thu Aug 18, 2011 12:04 pm

Re: Rybka 1.0 source code

Post by Rebel »

kranium wrote: nonsense...you ought to be ashamed.
You are missing a couple points.

1. Strelka is non-relevant to the discussion. It's a mixture of Fruit and Rybka 1. And I don't trust Osipov statements for one penny as he has his own agenda.

2. Rick Fadden - he missed things. He missed that Fruit's time control could not have been copied from Fruit, yet he claimed it. Wrong. Here:

http://www.top-5000.nl/evidence.htm#C6

at the end of chapter 6.

You are forgetting I in meantime spend 7 months of my time in this issue and the longer I look the more I am convinced that Rybka 1 is way too original to be derived from anything.
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:
kranium wrote: nonsense...you ought to be ashamed.
You are missing a couple points.

1. Strelka is non-relevant to the discussion. It's a mixture of Fruit and Rybka 1. And I don't trust Osipov statements for one penny as he has his own agenda.

2. Rick Fadden - he missed things. He missed that Fruit's time control could not have been copied from Fruit, yet he claimed it. Wrong. Here:

http://www.top-5000.nl/evidence.htm#C6

at the end of chapter 6.

You are forgetting I in meantime spend 7 months of my time in this issue and the longer I look the more I am convinced that Rybka 1 is way too original to be derived from anything.
So you have a new angle of defense. If he copies a block of code (with the 0.0 in it) you come up with two incredibly weak arguments that prove Fadden wrong:

(1) rather than really copying 0.0 from fruit. he MIGHT have somehow typed 0. or .0 by himself. No programmers use the numeric keypad, but he might have used a European version without numbers on the top row. Even though he was in the US when he was doing that effort, and even though photos of him on the net show him at a normal US qwerty keyboard. But in spite of all of that, it is possible that he typed 0. by accident, even though he really wanted to type 0) to end the if condition. For various reasons that do not stand up to even minimal scrutiny. Note that the explanation depends on odd circumstances that are very unlikely.

(2) If he copies a block of code, he is never going to add a statement in the middle of that? Once copied, it can't be changed at all, in your world? I've added such things to my code over the years, as I made changes. But he can't? Because a single added line shows that this block of code was not copied? Again, that is not even remotely plausible.

You try to invent completely implausible explanations, then claim that they are outright proof that nothing was copied. Hoping that some poor idiot will believe you. It isn't working.

A famous quote "He missed that Fruit's time control could not have been copied" followed by an "ironclad, irrefutable, and incontrovertible proof" of that Assuming one believes that pigs fly and everyone wins the lottery daily???