BB's Rybka/Ippolit comparison

General discussion about computer chess...
Post Reply
Roger Brown
Posts: 30
Joined: Thu Jun 10, 2010 5:35 am

Re: BB's Rybka/Ippolit comparison

Post by Roger Brown » Mon Jun 14, 2010 2:18 pm

Jeremy Bernstein wrote: And I guess we'll be arguing about this for the next 2-3 years. Thank you very much, BB, for presenting this document. I had a chance to scan it while watching the Germany game last night, and I appreciate the level of detail you provide (I find the information about data structures, bitwidths and bit usage particularly convincing, as a RE hack job would most likely never bother to change these underlying details, even if higher-level changes managed to alter output in the direction of unrecognizability). I don't pretend to understand the particulars of chess engine design -- it's not my corner of the programming universe -- but I'm looking forward to more reactions from those who do.

Jeremy


Hello Jeremy,

I had a lot more respect for you until I read the above (bold, underlined and italicised). You were doing something else while that whipping was taking place?

That is just sad Jeremy.

Just sad.

:-)

Later.

Sentinel
Posts: 122
Joined: Thu Jun 10, 2010 12:49 am
Real Name: Milos Stanisavljevic

Re: BB's Rybka/Ippolit comparison

Post by Sentinel » Mon Jun 14, 2010 3:17 pm

Roger Brown wrote:I had a lot more respect for you until I read the above (bold, underlined and italicised). You were doing something else while that whipping was taking place?

That is just sad Jeremy.

Just sad.
Don't be so harsh on him. Maybe he did it in the half-time :).

Roger Brown
Posts: 30
Joined: Thu Jun 10, 2010 5:35 am

Re: BB's Rybka/Ippolit comparison

Post by Roger Brown » Mon Jun 14, 2010 3:36 pm

Sentinel wrote:
Don't be so harsh on him. Maybe he did it in the half-time :).

Hello Sentinel,

That must be the explanation!

:-)

Later.

benstoker
Posts: 110
Joined: Thu Jun 10, 2010 7:32 pm
Real Name: Ben Stoker

Re: BB's Rybka/Ippolit comparison

Post by benstoker » Mon Jun 14, 2010 4:22 pm

BB+ wrote: ... Also, Zach and I do not always agree on the relative turpitude of various similarities. ...
Disagreement is good. It helps the process, right? You report "I think xyz because abc. However, Zach disagrees and says 123 ..."

User avatar
kingliveson
Posts: 1388
Joined: Thu Jun 10, 2010 1:22 am
Real Name: Franklin Titus
Location: 28°32'1"N 81°22'33"W

Re: BB's Rybka/Ippolit comparison

Post by kingliveson » Mon Jun 14, 2010 4:33 pm

Jeremy Bernstein wrote:The predictable "shoot the messenger" reactions are starting up. From Vas's buddy "Kullberg" on rybkaforum:
I read this pdf. It makes clear the author disassembled / decompiled Rybka 3. And he has quite some knowledge about programming of chess engines. He concentrated on finding differences between Rybka and Ippolit. It's very easy to find such differences if you put them in yourself.

My first thought now is: is BB the cloner? Is he trying to legalize the clone code to make money out of it?
Would anyone disassemble Rybka only to write a few pages in a forum? Understanding disassembled code is hard work.


Just some thoughts
.
.
.
And I guess we'll be arguing about this for the next 2-3 years. Thank you very much, BB, for presenting this document. I had a chance to scan it while watching the Germany game last night, and I appreciate the level of detail you provide (I find the information about data structures, bitwidths and bit usage particularly convincing, as a RE hack job would most likely never bother to change these underlying details, even if higher-level changes managed to alter output in the direction of unrecognizability). I don't pretend to understand the particulars of chess engine design -- it's not my corner of the programming universe -- but I'm looking forward to more reactions from those who do.

Jeremy
Not surprisingly, all they give us is more words -- nothing concrete. Quick to accuse without offering anything substantive. I look forward to Vas' Ippolit write up 2 years from now.
PAWN : Knight >> Bishop >> Rook >>Queen

benstoker
Posts: 110
Joined: Thu Jun 10, 2010 7:32 pm
Real Name: Ben Stoker

Re: BB's Rybka/Ippolit comparison

Post by benstoker » Mon Jun 14, 2010 4:39 pm

BB+ wrote: Depends on what you mean by "reverse-engineered"... 8-) I would find it wholly plausible that IPPOLIT is a "reverse-engineered Rybka with many changes", and indeed I would assert that the IPPOLIT maker(s) certainly knew much of the internal workings of Rybka. It is not, however, merely a "code-based" copy therein (and my recollection is that the claim, at least at one point, was that code of Rybka appeared in IPPOLIT). I see no way to differentiate as to whether IPPOLIT "started from scratch" and implemented Rybka-like-parts one-by-one, or "started as a functional equivalent to Rybka" and then was modified (rather substantially). There are a few clues, for instance IPPOLIT computes Crafty-style bitboards at startup (as opposed to just having huge arrays in the executable), to indicate that at least some parts of IPPOLIT are completely independent (code-wise) from Rybka.
Help please with this 'reverse-engineered' concept. At what point or stage does 'reverse-engineered' become illegal? At what point does it become wholesale copying of intellectual property? Is there enough known/discovered about ippolit/rybka to draw a conclusion that even if ippolit was 'reverse-engineered' in whole or in part, then the degree of reverse engineering is not such as would amount to copyright infringement?

User avatar
kingliveson
Posts: 1388
Joined: Thu Jun 10, 2010 1:22 am
Real Name: Franklin Titus
Location: 28°32'1"N 81°22'33"W

Re: BB's Rybka/Ippolit comparison

Post by kingliveson » Mon Jun 14, 2010 4:46 pm

benstoker wrote:
BB+ wrote: Depends on what you mean by "reverse-engineered"... 8-) I would find it wholly plausible that IPPOLIT is a "reverse-engineered Rybka with many changes", and indeed I would assert that the IPPOLIT maker(s) certainly knew much of the internal workings of Rybka. It is not, however, merely a "code-based" copy therein (and my recollection is that the claim, at least at one point, was that code of Rybka appeared in IPPOLIT). I see no way to differentiate as to whether IPPOLIT "started from scratch" and implemented Rybka-like-parts one-by-one, or "started as a functional equivalent to Rybka" and then was modified (rather substantially). There are a few clues, for instance IPPOLIT computes Crafty-style bitboards at startup (as opposed to just having huge arrays in the executable), to indicate that at least some parts of IPPOLIT are completely independent (code-wise) from Rybka.
Help please with this 'reverse-engineered' concept. At what point or stage does 'reverse-engineered' become illegal? At what point does it become wholesale copying of intellectual property? Is there enough known/discovered about ippolit/rybka to draw a conclusion that even if ippolit was 'reverse-engineered' in whole or in part, then the degree of reverse engineering is not such as would amount to copyright infringement?
Expression of Ideas. Assuming the pdf report on page 1 is an accurate analysis, you would have to say Ippolit is legal to use/distribute. You can't copyright ideas.
05.12.2005, Vasik Rajlich wrote: Yes, the publication of Fruit 2.1 was huge. Look at how many engines took a massive jump in its wake: Rybka, Hiarcs, Fritz, Zappa, Spike, List, and so on. I went through the Fruit 2.1 source code forwards and backwards and took many things.
PAWN : Knight >> Bishop >> Rook >>Queen

Jeremy Bernstein
Site Admin
Posts: 1226
Joined: Wed Jun 09, 2010 7:49 am
Real Name: Jeremy Bernstein
Location: Berlin, Germany
Contact:

Re: BB's Rybka/Ippolit comparison

Post by Jeremy Bernstein » Mon Jun 14, 2010 4:57 pm

benstoker wrote:
BB+ wrote: Depends on what you mean by "reverse-engineered"... 8-) I would find it wholly plausible that IPPOLIT is a "reverse-engineered Rybka with many changes", and indeed I would assert that the IPPOLIT maker(s) certainly knew much of the internal workings of Rybka. It is not, however, merely a "code-based" copy therein (and my recollection is that the claim, at least at one point, was that code of Rybka appeared in IPPOLIT). I see no way to differentiate as to whether IPPOLIT "started from scratch" and implemented Rybka-like-parts one-by-one, or "started as a functional equivalent to Rybka" and then was modified (rather substantially). There are a few clues, for instance IPPOLIT computes Crafty-style bitboards at startup (as opposed to just having huge arrays in the executable), to indicate that at least some parts of IPPOLIT are completely independent (code-wise) from Rybka.
Help please with this 'reverse-engineered' concept. At what point or stage does 'reverse-engineered' become illegal? At what point does it become wholesale copying of intellectual property? Is there enough known/discovered about ippolit/rybka to draw a conclusion that even if ippolit was 'reverse-engineered' in whole or in part, then the degree of reverse engineering is not such as would amount to copyright infringement?
http://www.chillingeffects.org/reverse/faq.cgi might be of some assistance here for some general background on RE and its legality; it's readable for laymen.

User avatar
thorstenczub
Posts: 592
Joined: Wed Jun 09, 2010 12:51 pm
Real Name: Thorsten Czub
Location: United States of Europe, germany, NRW, Lünen
Contact:

Re: BB's Rybka/Ippolit comparison

Post by thorstenczub » Mon Jun 14, 2010 5:16 pm

for me it looks the self announced witch hunters, the computerchess-police, is standing in front of us without trousers :-)

yesterday they wanted to lynch Steve B. Or any other guy. because of his "support" for criminals,
now they consider an apology.

http://en.wikipedia.org/wiki/McCarthyism

here the leader of the clone-stasi :

Image

benstoker
Posts: 110
Joined: Thu Jun 10, 2010 7:32 pm
Real Name: Ben Stoker

Re: BB's Rybka/Ippolit comparison

Post by benstoker » Mon Jun 14, 2010 5:27 pm

Jeremy Bernstein wrote:
benstoker wrote:
BB+ wrote: Depends on what you mean by "reverse-engineered"... 8-) I would find it wholly plausible that IPPOLIT is a "reverse-engineered Rybka with many changes", and indeed I would assert that the IPPOLIT maker(s) certainly knew much of the internal workings of Rybka. It is not, however, merely a "code-based" copy therein (and my recollection is that the claim, at least at one point, was that code of Rybka appeared in IPPOLIT). I see no way to differentiate as to whether IPPOLIT "started from scratch" and implemented Rybka-like-parts one-by-one, or "started as a functional equivalent to Rybka" and then was modified (rather substantially). There are a few clues, for instance IPPOLIT computes Crafty-style bitboards at startup (as opposed to just having huge arrays in the executable), to indicate that at least some parts of IPPOLIT are completely independent (code-wise) from Rybka.
Help please with this 'reverse-engineered' concept. At what point or stage does 'reverse-engineered' become illegal? At what point does it become wholesale copying of intellectual property? Is there enough known/discovered about ippolit/rybka to draw a conclusion that even if ippolit was 'reverse-engineered' in whole or in part, then the degree of reverse engineering is not such as would amount to copyright infringement?
http://www.chillingeffects.org/reverse/faq.cgi might be of some assistance here for some general background on RE and its legality; it's readable for laymen.
vielen Dank

Post Reply