Rule #2 and its use during history
Posted: Sun Apr 29, 2012 1:57 pm
http://chessprogramming.wikispaces.com/ ... l+Examples
1989 - Quickstep - Richard Lang clone (copyright breach)
1996 - Gunda - Crafty clone (copyright breach)
2002 - El Chinito - Crafty clone (copyright breach) Author admitted the wrong doing.
2003 - List - I leave this case out. Reul was banned but later reinstated.
2006 - Lion++ - Fruit clone (copyright breach) Authors admitted because felt they did nothing wrong.
2010 - SquarknII - Robolito version with only 3 instructions changed.
===
All good decisions. All have in common that (source) code was taken as a whole and a derivative was the result. In none of the cases rule #2 and its interpretation became under pressure. Copying was proven, end of story. A second ingredient what they have in common is that all of them were easy to debunk as a clone.
2011 - Rybka
Bob - rule #2 has been about copying since day one.
16 programmers (and not the first ones) accuse the Rybka programmer of copying Fruit. A number of copy-traces are given (time-control including "0.0", setjmp, root search time control similarities, PST-code to generate PST's, move[-1]=0) but for the rest the accusations surround only one theme: similarities in EVAL and on the latter the interpretation of rule #2 comes into play for the first time of the ICGA history.
So 2 different topics: 1) real traces of copying and 2) the volume of similarities that together with (1) should make a convincing case for a copyright breach.
CHAPTER ONE: About the alleged Fruit copying
1. Time control (not copied)
2. 0.0 (alternative explanations, YMMV) (elo gain 0)
3. setjmp (borrowed from Fruit by the admission of Vas to unwind the recursive search) (elo gain 0)
4. root search time control similarities (not unlikely borrowed from Fruit) (elo gain 1-2)
5. Fruit's PST-code to generate PST's (likely imported into C# for own use) (elo gain 0-5 where 5 is a lot)
6. move[-1]=0 (just splits the UCI string into 2 strings by separating the POSITION part from the MOVES part) Simple programmers convenience.
7. Calling search from UCI (almost identical code) (elo gain 0) It's place is not unusual, saw it in a version of Glaurung too.
Your mileage may vary but I don't think that's much to proof verbatim copying all of Fruit and then make changes ending up as a derivative. The elo gain is about 5-7 where 7 is a lot. Besides Vas said he took many things from Fruit, (3) admittedly falls into that category, (4) (5) (7) likely do so. It only proofs what he stated 3 weeks after the Rybka 1.0 release, traces he took from Fruit. No real big surprise. It would be strange if there weren't any. The above is in screaming contrast with the history of ICGA cloning, these were crystal clear cases of verbatim copying, this is just a poor list. Take the pre-Rybka's as another example, those had Crafty code all over, a 100% derivative.
In retrospect (and that's always easy) the Rybka investigators should have stopped the investigation right here, consider and weight the "verbatim copy evidence" as insufficient and that verbatim copying can't be proven. I don't blame them for their continuation as they at the time did not had enough opposition such as the above counter analysis and also it's a golden rule exploring a total new area with very few historic references (jurisprudence, knowledge, insight) doing things for the first time usually is a receipt for the introduction of (many) errors. It's the natural way how humanity makes progress doing things better the second, third time.
CHAPTER TWO: Rule 2
In a separate post. Apparently I am being long winded mood today.
1989 - Quickstep - Richard Lang clone (copyright breach)
1996 - Gunda - Crafty clone (copyright breach)
2002 - El Chinito - Crafty clone (copyright breach) Author admitted the wrong doing.
2003 - List - I leave this case out. Reul was banned but later reinstated.
2006 - Lion++ - Fruit clone (copyright breach) Authors admitted because felt they did nothing wrong.
2010 - SquarknII - Robolito version with only 3 instructions changed.
===
All good decisions. All have in common that (source) code was taken as a whole and a derivative was the result. In none of the cases rule #2 and its interpretation became under pressure. Copying was proven, end of story. A second ingredient what they have in common is that all of them were easy to debunk as a clone.
2011 - Rybka
Bob - rule #2 has been about copying since day one.
16 programmers (and not the first ones) accuse the Rybka programmer of copying Fruit. A number of copy-traces are given (time-control including "0.0", setjmp, root search time control similarities, PST-code to generate PST's, move[-1]=0) but for the rest the accusations surround only one theme: similarities in EVAL and on the latter the interpretation of rule #2 comes into play for the first time of the ICGA history.
So 2 different topics: 1) real traces of copying and 2) the volume of similarities that together with (1) should make a convincing case for a copyright breach.
CHAPTER ONE: About the alleged Fruit copying
1. Time control (not copied)
2. 0.0 (alternative explanations, YMMV) (elo gain 0)
3. setjmp (borrowed from Fruit by the admission of Vas to unwind the recursive search) (elo gain 0)
4. root search time control similarities (not unlikely borrowed from Fruit) (elo gain 1-2)
5. Fruit's PST-code to generate PST's (likely imported into C# for own use) (elo gain 0-5 where 5 is a lot)
6. move[-1]=0 (just splits the UCI string into 2 strings by separating the POSITION part from the MOVES part) Simple programmers convenience.
7. Calling search from UCI (almost identical code) (elo gain 0) It's place is not unusual, saw it in a version of Glaurung too.
Your mileage may vary but I don't think that's much to proof verbatim copying all of Fruit and then make changes ending up as a derivative. The elo gain is about 5-7 where 7 is a lot. Besides Vas said he took many things from Fruit, (3) admittedly falls into that category, (4) (5) (7) likely do so. It only proofs what he stated 3 weeks after the Rybka 1.0 release, traces he took from Fruit. No real big surprise. It would be strange if there weren't any. The above is in screaming contrast with the history of ICGA cloning, these were crystal clear cases of verbatim copying, this is just a poor list. Take the pre-Rybka's as another example, those had Crafty code all over, a 100% derivative.
In retrospect (and that's always easy) the Rybka investigators should have stopped the investigation right here, consider and weight the "verbatim copy evidence" as insufficient and that verbatim copying can't be proven. I don't blame them for their continuation as they at the time did not had enough opposition such as the above counter analysis and also it's a golden rule exploring a total new area with very few historic references (jurisprudence, knowledge, insight) doing things for the first time usually is a receipt for the introduction of (many) errors. It's the natural way how humanity makes progress doing things better the second, third time.
CHAPTER TWO: Rule 2
In a separate post. Apparently I am being long winded mood today.