Sven Schüle wrote: bob wrote: Sven Schüle wrote:
These percentages are very plausible for me. I don't know whether many non-programmers can follow but nevertheless I suggest to all interested members to reread what I already posted five weeks ago
on that topic (EO subforum). Read especially my quite detailled comments on each of the points from Zach's pages under the heading "My details". If I had to match these 11 points with the 40-40-20 estimate by Vas then I would perhaps come to similar numbers as he did.
One note @Zach here: for me claiming that something is "wrong", or "standard CC concept" does not mean anything about your competence, and also nothing personal. I just try to keep as objective as possible. If someone would make 4 wrong statements out of 11 then this does not turn him "incompetent" at all. Just to let you know. EDIT: I see no reason why Vas should view this differently.
I believe that I responded to your post back then point by point also. Your "refutation" offers _zero_ details. And I _do_ mean _zero_. When we started the analysis, we were comparing rybka binary to fruit source, and since the binary is stripped of symbols, and since it is in asm, it takes some work to go from asm back to C. And that code was posted here. And there were howls of protest because our goal was to take the binary and map it directly back to C that matches fruit. I tried to point out that C to binary is a many-to-one mapping, as there are many ways to code up an algorithm where the source looks completely different but the binary is identical. Students try this all the time by changing variable names, procedure names, switching from a for loop to a while loop, and so forth. So going blindly from asm to C is not helpful, but _if_ you ask the question, "Can I use this assembly code, in its entirety without adding instructions or having any left over, and map it back to the exact C source in fruit?" then the answer was yes in more than one instance, the first was the main loop where commands are read and the infamous do_parse() procedure is called.
If you don't accept any of that, that's your choice. But there _is_ ample evidence to show that code was copied. It is not about how much was copied, it is about was _any_ copied, and the answer is most certainly "yes". It is time to get out from behind this false cover of "not too much" or "just a little". One more time, you can't be just a little bit pregnant. Ideas are not the same as code. We are talking about _code_.
Another new excuse is "Rybka is bitboard, fruit is not, can't be copied". Baloney. Much of my early evaluation was not bitboard since I have always maintained a mailbox copy of the board to make it easy to figure out what piece is on a particular square. And I converted that code directly to bitboard code later. Are you _really_ saying that is not copied. When I copy A to B, then modify B to use a different board representation, and now B is not a copy of A. That's convoluted thinking, to be kind about it.
What if the robo* guys convert from bitboards? Are they _also_ OK by this definition, even though it looks more and more like they are already OK, based on continually arriving data.
"Zero details" is as imprecise as possible. This was part of my post that I linked to above:
Code: Select all
piece square tables:
- I can see no similar code, just similar values used[/quote]
"piece/square tables have _NO_ code. Just values. So exactly what does the above mean?
- I can see no similar code, just ideas may have been reused[/quote]
You have to read Zach's comments. If you take fruit, convert it to bitboards, the code will, of necessity, morph significantly. Yet if one is interested, one can "un-morph" the code to see how it looked pre-bitboard, and then draw conclusions. Zach mentioned exactly this.
- "Rybka code" may look similar but is a bitboard translation with several other changes, so only ideas were reused but no literal code copying[/quote]
That is simply utter baloney. If one looks carefully, one can find code in the released version of Cray Blitz that was copied, converted to bitboards, and then used "as is". So that isn't copying code? Would it be ok for the IP* guys to convert back to a mailbox board representation. would that stop all complaints since the code would no longer match anything in Rybka perfectly. This is flawed logic. _badly_ flawed logic.
- using a flag that defines whether king safety is used or not is a common idea that many programs share, and its existence in R1 does not prove copying of code but just reusing an idea
- attacks evaluation is a bitboard translation, so the code is changed => only idea reused[/quote]
same bogus idea, once again. Copy the code, modify it to use bitboards, all is OK. Copy a book, convert from English to German, all is now ok since the text does not match.
- final score calculation: one source line is shown that contains the same idea in R1 as in Fruit but has 3 changes in R1, so no unchanged literal code copying
- shelter: implementations show look quite similar BUT Zach states that this code is not present in Rybka binary but is "an equivalent" created manually by Zach so this can be ZERO proof for anything[/quote]
Someone copies book written in English. Converts to German. Converting the German version back to English for comparison is "zero proof"?
"All of this shelter evaluation code in Rybka above is an equivalent; it doesn't appear in the Rybka binary. It is there simply to illustrate what is in the precomputed tables. These precomputed tables are used during the pawn evaluation to quickly evaluate shelters."
- storm: very different code, only same ideas
- "Rybka code" presented looks very different, just ideas may have been reused
- common ideas but completely different implementations
- implementations of "MatKingFlag", "DrawBishopFlag", and game phase look quite similar
=> assembler code of R1 should be shown to prove that the code shown as "Rybka" is really in R1, and not part of Strelka source only (which would not prove anything)
How is that "zero"? You have to open a second browser window or tab with the related Zach pages, of course, to see, parse, and understand what I mean. Is it that difficult to get the meaning of my comment that I see no similarities of the presented code pieces left and right side, for instance? Do I have to repeat what is written on Zach's pages to make my comment more readable? I guess no. I guess you have not even read my comments to 11 points. That excuses your reply.
Regarding "bitboard translation": yes, if I copy code and modify it to use bitboards then it is no longer a literal copy. Simple.
Regarding "asm to C", this was not my topic at all in my referenced post, you have drifted to another topic with that.
Regarding "copying actual code" and "a little bit pregnant", you simply can't show actual code copying merely with a website like Zach's where left and right sides do not match, it needs some more work like the recent one from "BB" for that IMO. So *there is no code copying proven*. It is proven, and was admitted very early by Vasik, that R1 was influenced by many Fruit ideas. He says "legally", would you assume he does not know what that means, as a software developer? You say something like: he copied the evaluation code from Fruit to Rybka and adapted it to match the Rybka needs. He says something like: he wrote original code, took some ideas from Fruit and legally implemented them in Rybka. You come and say he is dishonest, and you "prove" that with a website where left and right sides do not match but the text says they were "virtually identical". A couple of serious chess programmers raise their doubts. But you insist. Fabien does not care about it, he obviously has no strong feelings in this area.
Why do you insist on this campaign, Bob?
I also think that it is important to carefully clean up the accusation that Rybka were derived from Fruit, simply because this "derivation" assumption may serve as kind of an excuse for having been allowed to publish parts of copyrighted material as "public domain" source code, provided that has happened (still open for me although many think that everything's fine now after the "BB report").