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?
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 .
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.
BB+ wrote:
Depends on what you mean by "reverse-engineered"... 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?
BB+ wrote:
Depends on what you mean by "reverse-engineered"... 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.
BB+ wrote:
Depends on what you mean by "reverse-engineered"... 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?
BB+ wrote:
Depends on what you mean by "reverse-engineered"... 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?