Not logged inRybka Chess Community Forum
1 2 Previous Next  
- - By duncan (**) Date 2008-08-25 11:11 Edited 2011-01-26 10:42
Please could you comment on this thread as some people are inferring things from your silence

http://64.68.157.89/forum/viewtopic.php?start=0&t=23118&topic_view=flat

The interesting thing that I found is that for this piece of code, Rybka 1.0 is more similar to Fruit than Strelka. Here are the differences:
Parent - - By Vempele (Silver) Date 2008-08-25 11:17
Nah, it'd take him ages to wade through all the crap. This thread should be better.
Parent - - By Vasik Rajlich (Silver) Date 2008-08-25 12:29
This discussion looks like a complete mess, I see wild statements like:

> --I noted earlier that the history initialization was different. Strelka and Rybka 1.0 are the same here, using memset(History, 256, 12 * 64 * sizeof(int)); But what I didn't notice is, 256 is out of range for an unsigned char. So that code is the same as Fruit's memset(History, 0, 12 * 64 * sizeof(int)); Why would Rybka 1.0 have 256? Is it the optimizer gone wild, or a deliberate attempt at obfuscation?


Maybe somebody can summarize the points.

Generally, code theft is easy to show - just show the two sections of identical code, side-by-side. There isn't much to debate in such cases. Rybka is of course original (with some accepted exceptions like bit scans & bit counters, etc). Strelka contains Rybka code. Whether Strelka also contains Fruit code, I don't know and don't really care.

Re. algorithms and structures - sure, you'll get a lot of similarity between programs. Take something like "modern move ordering" - by this, I mean hash move, non-losing captures (by MVV/LVA), killers, non-captures, and losing captures. The chance of two programmers settling on this independently is more or less zero.

Vas
Parent - - By zwegner (***) Date 2008-08-25 15:56 Edited 2008-08-25 16:02

> This discussion looks like a complete mess, I see wild statements like:
>
>> --I noted earlier that the history initialization was different. Strelka and Rybka 1.0 are the same here, using memset(History, 256, 12 * 64 * sizeof(int)); But what I didn't notice is, 256 is out of range for an unsigned char. So that code is the same as Fruit's memset(History, 0, 12 * 64 * sizeof(int)); Why would Rybka 1.0 have 256? Is it the optimizer gone wild, or a deliberate attempt at obfuscation?


OK, fair enough, that was wrong. I was thrown off by Strelka's memset--which is an incorrect translation of the Rybka code. More correct is for (x = 0; x < 864; x++) History[x] = 256; Memset works with bytes, but the Rybka code (rep stosd) works on ints (double words).
Parent - By zwegner (***) Date 2008-08-25 18:20
Oops, make that 768. My ALU is out of whack. ;)
Parent - - By zwegner (***) Date 2008-08-27 01:58
OK, my reply to this post was deleted. All I said was that the 864 should be 768.

What the hell is wrong with that?
Parent - - By Uly (Gold) Date 2008-08-27 05:49
Parent - - By zwegner (***) Date 2008-08-27 06:05
Huh. It must have been put back, or the forum software is acting weird again. I am 100% positive it wasn't there. Oh well...
Parent - - By Uly (Gold) Date 2008-08-27 06:09
I'm used to it, many people think their posts were deleted, must be the software. There's no way to undelete a post, by the way.
Parent - By zwegner (***) Date 2008-08-27 06:15
Heh. Maybe it's time to take a break from the computer. ;)
Parent - - By Ray (****) Date 2008-08-25 16:40

> enerally, code theft is easy to show - just show the two sections of identical code, side-by-side. There isn't much to debate in such cases. Rybka is of course original (with some accepted exceptions like bit scans & bit counters, etc). Strelka contains Rybka code. Whether Strelka also contains Fruit code, I don't know and don't really care.


Agreed. Strelka is a Frankenstein. Some of Rybka, maybe some of Fruit and who knows what else.
Parent - - By zwegner (***) Date 2008-08-25 17:04

>> enerally, code theft is easy to show - just show the two sections of identical code, side-by-side. There isn't much to debate in such cases. Rybka is of course original (with some accepted exceptions like bit scans & bit counters, etc). Strelka contains Rybka code. Whether Strelka also contains Fruit code, I don't know and don't really care.
> Agreed. Strelka is a Frankenstein. Some of Rybka, maybe some of Fruit and who knows what else.


At least three people have confirmed that Strelka and Rybka are virtually identical.
Parent - - By Gabor Szots Date 2008-08-25 17:26
And one of them was Vasik Rajlich. He claimed Strelka to be his own. Now is it or is it not?
Parent - - By Uly (Gold) Date 2008-08-25 17:29
He said he was going to claim Strelka as his own, but he never did.
Parent - - By Vempele (Silver) Date 2008-08-25 19:31
In light of the above, I am claiming Strelka 2.0 as my own and will release it in the next few days under my own name.
Note the tense change. He claimed it with that sentence. He just never rereleased it.
Parent - - By Uly (Gold) Date 2008-08-26 06:08
Difference between "I claim it" and "I'm claiming it" ;)

I think Vas needs to clarify it, he cannot claim it as his own if it contains Fruit code.
Parent - By AlphaCoder (**) Date 2008-08-27 02:07
That's why he hasn't.
Parent - By zwegner (***) Date 2008-08-25 17:31
Oops, make that 4. ;)
Parent - By Permanent Brain (*****) Date 2008-08-26 01:40
He NEVER said that Strelka is 100% Rybka. Now he wrote: Strelka contains Rybka code. See above.

IMO Strelka should be completely omitted from these comparisons, if it's about what Rybka contains or not.
Parent - - By Vasik Rajlich (Silver) Date 2008-08-27 14:55

> And one of them was Vasik Rajlich. He claimed Strelka to be his own. Now is it or is it not?


I made quite a detailed post about this around the time of the Strelka 2.0 release, maybe someone can dig it up.

Claiming Strelka as my own would have been illegal, so I didn't do it.

Vas
Parent - By Milton (***) Date 2008-08-27 15:55 Edited 2008-08-27 16:45
Parent - By zwegner (***) Date 2008-08-27 16:09
Very interesting...
Parent - By duncan (**) Date 2008-08-25 20:30
could you comment please on this post of fadden

http://64.68.157.89/forum/viewtopic.php?t=20730&postdays=0&postorder=asc&highlight=strelka&topic_view=flat&start=30

Rick Fadden

By the way, some people are using the word "clone", and from past experience clone is used for a more mellow activity than this.

About the word "clone" in the context of a chess program:

Long ago some people took the open source code of Crafty and they changed some of the strings output by the program and they compiled and used the resulting binary, and these programs were identified as clones.

Fruit 2.1 open source was used with new developments or improvements and the result is considered a clone of Fruit.

Take a version of Fritz that plays 2850 uniprocessor 32 bit and disassemble it and completely recreate the C of the Original Fritz, and call this program "Jury" and then claim that you have made one of the best programs on the planet.

I wouldn't describe that as a clone of Fritz, that's a stolen, reverse engineered Fritz, and the result is a Fraud.

Stelka is not a clone, it's a Fraud. It is a direct Reverse Engineer of Rybka, and I can show you the exact constants, the exact math taken from Rybka, every function call in exactly the same location being passed exactly the same arguments, the same values and the same constants. A *direct* reverse engineering effort. There is no original content in Strelka, it is all a direct rip-off with some chunks of stuff left out.

I found one specially commented line of code that was not in Rybka, and then we found that line of code came from Fruit.

What a pure and complete rip off.

----

When I put on my temporary "reverse engineer" hat I also say that it was an amazing feat of reverse engineering. To do this effort would have taken me a year of effort. I think the person Jury or whoever, has some excellent skill.

I probably shouldn't say this but honestly I am now reading Rybka like a complete "open book." There is one reason why I can see everything. Because I used Strelka as the "primer" (similar to the use of the term in the movie "Contact"). With the "primer" in hand I was able to label every single variable in Rybka, and the position of these variables lines up in the same order as the variables in Strelka. It's spooky. All functions are called in exactly the same order, from the same functions.

There is no coincidence here because all of the wired constants in the x86 code are in Strelka in exactly the same spot. I'm saying the "primer" showed me everything, it completely exposed all of Rybka.

I was able to find all details of Node Count, and I was then able to patch Rybka to remove the node count obfuscation. Before I had the "primer" in my hand I could not have done this, I could not have labeled all of the varibales in Rybka. Strelka 2.0 is the primer it is the "open book" of Rybka.
Parent - - By GenoM (**) Date 2008-08-27 01:46
V.Rajlich: Whether Strelka also contains Fruit code, I don't know and don't really care.
How can you say you don't care about Fruit parts in Strelka when you claimed Strelka as your engine?
Parent - - By Vasik Rajlich (Silver) Date 2008-08-27 14:58
Indeed, I couldn't claim it. Really, only Yuri Osipov knows how Strelka was made.

Vas
Parent - - By zwegner (***) Date 2008-08-27 15:23

> Really, only Yuri Osipov knows how Strelka was made.
>


Many people know, and I would think you would too.
Parent - - By Vasik Rajlich (Silver) Date 2008-08-27 15:29
I have a guess.

Vas
Parent - By zwegner (***) Date 2008-08-27 16:08
Come on, Vas. It is really obvious. Many have said that they are virtually identical. What possible ways are there?
Parent - - By Felix Kling (Gold) Date 2011-01-25 18:57
bump
Parent - - By Felix Kling (Gold) Date 2011-01-25 18:59
for those wondering why the other thread disappeared: I made a mistake when trying to merge threads :(
Parent - - By Banned for Life (Gold) Date 2011-01-25 20:04
Sounds like it was a Freudian slip! :lol:
Parent - By Akbarfan (***) Date 2011-01-25 20:21
:lol::lol::lol::lol:
Parent - - By Felix Kling (Gold) Date 2011-01-25 21:41
Well, yes, a Freudian mouse slip ;) Seriously, it's a bug in the forum software - no chance to bring it back
Parent - By SchachProfi (****) Date 2011-01-25 23:35
maybe too much Flicks King? :lol:
Parent - - By PauloH Date 2011-01-25 20:30
Yeah, the same kind of mistake Vas did when he "lost" the sources of the first versions of Rybka.
Parent - By Felix Kling (Gold) Date 2011-01-25 21:42
if I would have wanted to delete it, I would say so. I already thought about moving the thread, but deleting was not intended at all.
Parent - By eduardotav (**) Date 2011-01-25 22:41
this behavior is not uncommon for
children and feudal censorship. only
confirms the theory of double moral. thx anyway
Parent - - By Uly (Gold) Date 2011-01-26 06:23 Edited 2011-01-26 07:00
Parent - - By tomski1981 (*****) Date 2011-01-26 06:34
lol... :razz: ...lol

i'm surprised felix didn't know about this.... i didn't, but i'm not involved in these kinds of things...

either you're the biggest pain in the :wink: .... or a hero :roll:
Parent - By Uly (Gold) Date 2011-01-26 06:56
Well, anyone could have used Google to find the cached copy of the page, I just saved it because Google is probably going to delete it when it realizes the page no longer exists.

I believe Felix deleted the thread by mistake, it's something that keeps happening due to software flaws (i.e. it doesn't know about the recycle bin concept of restoring threads for such cases).
Parent - By Felix Kling (Gold) Date 2011-01-26 10:39
great, thanks! :)
- - By Felix Kling (Gold) Date 2011-01-26 10:40
First page of the old thread.
Second page of the old thread.

You can continue just like nothing has happened ;)
Parent - - By Uly (Gold) Date 2011-01-26 11:50
I'm still curious of why you wanted to merge the threads. There are several precedents of themes that resurface over time on Rybka Forum (like God's ELO, or Religious Wars) and if the old thread is old enough (here we're talking >2 years) there's no need for a merge.

If anything, a link to the old thread would have sufficed.
Parent - - By Vempele (Silver) Date 2011-01-26 11:54

> There are several precedents of themes that resurface over time on Rybka Forum (like God's ELO, or Religious Wars) and if the old thread is old enough (here we're talking >2 years) there's no need for a merge.


I think (some of) those should be moved to a new subforum called <opposite of edge> that only people with less than 500 posts can see.
Parent - - By Uly (Gold) Date 2011-01-26 11:58

> a new subforum called <opposite of edge>


Sorry, I think we've already exhausted those resources.

But for such a forum I'd suggest the name: The Inside.
Parent - By Uly (Gold) Date 2011-01-26 12:00
With description "A private board for unestablished and inactive forum users".
Parent - - By Felix Kling (Gold) Date 2011-01-26 12:03
i wanted to merge threads because of Vas' statements here. Those clarify things and if I just link to them, noone reads them.
Parent - By sockmonkey (***) Date 2011-01-26 12:06
How ironic. Because no one will read them now, either.
Parent - By InspectorGadget (*****) Date 2011-01-26 12:10 Edited 2011-01-26 12:13
I see that Fabien Letouzey is very active at CCC. He was talking about the thread that you said it vanished. Some Dr. Deep was fabricating some story about Vas saying he met Fabien in 2005. But no one seems to know about that except Wael. Then Fabien asked about the vanished thread as to its whereabouts :smile:

I'm glad how he handles all this mess with an open mind. Haaa!! I saw another post that says Banned For Life interviewed Vasik. Shocking how people could twist the facts!!
Parent - - By Uly (Gold) Date 2011-01-26 12:11
Jeremy is right, this is what people coming to this thread with new posts are seeing:



They'd have to keep clicking the [+] of each branch to read it, or mark all forums old and read and then enter the thread again to see all branched expanded. So, just a link would have been better, even without the accident.
1 2 Previous Next  

Powered by mwForum 2.27.4 © 1999-2012 Markus Wichitill