Although the price is pretty steep, how can it be a crime when people are not forced to use the product?Lyudmil Tsvetkov wrote:......The big crime is selling 1 hour cluster time for 2000 bugs..........
What's Vasik Rajlich doing today?
Moderator: Ras
-
Graham Banks
- Posts: 46705
- Joined: Sun Feb 26, 2006 10:52 am
- Location: Auckland, NZ
Re: What's Vasik Rajlich doing today?
gbanksnz at gmail.com
-
Rebel
- Posts: 7629
- Joined: Thu Aug 18, 2011 12:04 pm
- Full name: Ed Schröder
Re: What's Vasik Rajlich doing today?
Rule #2hgm wrote:Well, that at least is progress, (and it wasn't so difficult, was it)? This seems a bit hard to reconcile with your earlier statement, though, so I can see little justification for your sulking:Rebel wrote:It's worse than that. You haven't even tried to pay attention what I was saying and you immediately jumped into patronizing remarks flowing from your usual charming self.
Of course copyright infringement is different than rule #2 certainly from it's the historic origin (perspective).
Rebel wrote:ICGA rule #2 (since day one) is about copyright infringement
Each program must be the original work of the entering developers. Programming teams whose code is derived from or including game-playing code written by others must name all other authors, or the source of such code, in their submission details. Programs which are discovered to be close derivatives of others (e.g., by playing nearly all moves the same), may be declared invalid by the Tournament Director after seeking expert advice.
Now tell me, what else does the word derivative mean other than copying? And it was confirmed by David in the email I quoted earlier.
Ask Bob why he endlessly has been complaining that (according to him) Rybka 1.0 contained a Crafty rotated bit-board table which later (when 2 programmers looked into it) he had to retract because it wasn't true but that's besides the point.Well, three people so far have pointed out that this is not true at all, and you are totally alone in this. So it seems clear that this is just a misconception of yours. You don't understand the scope of copyright, you don't understand what it means by "similarity".To keep the PST's as an example, if 12*64 = 768 cells contain the EXACT SAME information than copyright is without mercy ...
This seems again totally wrong, even ignoring the fact that using the same numbers was not a copyright violation at all, and did not need any generosity of the judge, but would be outright dismissed. Because it is always up to the generosity of the 'judge'. The judge has to decide whether the degree of similarity is a violation of copyright, or 'fair use'.while with rule #2 it's up to the generosity of the judge(s) to forgive provided they not find more of such cases. So in this specific case rule #2 is softer than copyright infringement.
But it is interesting that you admit 'non-overlap' of rule #2 and copyrights, albeit so far only (and IMO erroneously) in the sense that rule #2 would allow things copyrights don't. Do you also think there are cases that violate rule #2, but are allowed w.r.t. copyright? IOW, do you claim that rule #2 violations are a sub-set of copyright infringements?
Bob's example of illegally including copyrighted code without violating rule #2 (magic bitboard move generation or EGT probing) was actually valid. But only by virtue of the fact that rule #2 explicitly exempts those parts of an engine from the originality requirement. (Which I have always considered strange, BTW.)
Point is, PST's are not just some numbers, it is the creative and unique work of a programmer and thus protected by copyright.
-
Rebel
- Posts: 7629
- Joined: Thu Aug 18, 2011 12:04 pm
- Full name: Ed Schröder
Re: What's Vasik Rajlich doing today?
You should check the initial "Attack of the Clones" article on ChessVibes that set everything in motion. Objectivity was a passed station, that train already left. One long accusation towards Rybka.hgm wrote:That analogy is a bit wrong. The investigation was not modeled after a jury trial; there was only one judge, which was David. Who, if anything, had great interest in the verdict being a 'not guilty'.
And in a way (from his point of view) it made sense. He was confronted with 16 (IIRC) angry programmers who would go on strike if he did not act, remember what happened to the CSVN when it wasn't in agreement with the ICGA Rybka boycott, death followed. likewise he would have witnessed the death of his yearly WCCCC.
No, David had every interest in a guilty verdict.
Nope, the experts witnesses were jury at the same time.So it is better to say that Vas was not willing to face the prosecutor and the expert witnesses he called to the stand. "I am not coming to court if you allow this guy in there that accuses me of any crime!"
-
bob
- Posts: 20943
- Joined: Mon Feb 27, 2006 7:30 pm
- Location: Birmingham, AL
Re: What's Vasik Rajlich doing today?
"circumstantial evidence" is still evidence. Too much and it becomes just as damning as direct evidence. If there were no other issues to discuss, the PST speculation would be just that. But with the evaluation similarities, the parse oddities with floating point numbers, the hashing glitch that is in both, particularly when it was not in the previous version of Rybka, all slowly build a picture of "this was wrong."Rebel wrote:Not at all.bob wrote:Along that point, are YOU finally prepared, given your statement above, that according to YOUR definition of copyright, Vas violated copyright, which is even worse than violating ICGA rule2? You and Chris hung your hats on the issue that PSTs are just numbers. Tables of numbers. Tables that did NOT violate copyright. It would seem you have done another 180 degree flip-flop here???Rebel wrote:Suggestive question.hgm wrote:Does that mean you are prepared to finally admit that they are different?
From the Wiki -
A suggestive question is one that implies that a certain answer should be given in response, or falsely presents a presupposition in the question as accepted fact. Such a question distorts the memory thereby tricking the person into answering in a specific way that might or might not be true or consistent with their actual feelings, and can be deliberate or unintentional.
Show me where I stated they are equal.
More to the point, are you finally prepared to admit that exact PST's are a copyright infringment?
Rybka PST and Fruit PST greatly differ.
That you and others made it an issue is wrong for various reasons. First of all it's based on the ASSUMPTION Vas used a modified version of the Fruit PST initializing code to create them. That's indemonstrable. Furthermore and secondly, Miguel gave you some PST lessons up to the point he found a "substantial similarity" between a Crafy and Fruit PST how absurd that line of thinking was.
And that's basically the whole case in a nutshell, assumptions build on assumptions from an already closed mind leading to a guilty verdict.
Your focus should have been on portions of clear and undeniable copied code. As the CC communinity has done in the past with an 100% consensus among the programmers.
We didn't focus "on clearly copied code". We couldn't. Starting there would be hopeless, since one program is bit board and the other is not. We recognized early on that we would have to do a bit of abstraction before we could compare anything. Once you find that a bit board procedure is doing the exact same things as the mailbox procedure, there is a question of originality and it is more than reasonable to assume that code was copied and morphed into bit board operations, aka "non-literal copying."
Your "closed mind" is way off the mark however. When this started, I, as did several others, ignored it completely. We have had plenty of clone accusations over the years already. But as more and more evidence was shown by Zach, it became clearer and clearer and as I looked myself, we found more and more, not to mention the old crafty versions of Rybka as well. Too much wrong-doing. Too much denial. Total lack of credible evidence to contradict the ICGA data.
I don't like the way things turned out, but the process was perfectly correct from my perspective, considering just the reverse-engineering aspects of how the evidence was developed. The overall process could have been handled better. But the evidence, to me anyway, is iron-clad. The final punishment was above my pay grade, whether I agree there or not doesn't matter to anyone. But the final conclusion was certainly correct to the best of my understanding and interpretation.
-
bob
- Posts: 20943
- Joined: Mon Feb 27, 2006 7:30 pm
- Location: Birmingham, AL
Re: What's Vasik Rajlich doing today?
First, keep this truthful. I pointed out the specific version of Crafty where Rybka's rotated bit board code came from. Others verified that everything was identical. I also pointed out that was not THE problem with the early Rybkas. The problem was the duplicated search code, the duplicated evaluation code with unintentional programming errors copied verbatim, the iterate.c code with a specific exclusion for endgame tables that were never publicly available (excluding probes if a position has any possibility of a future EP capture, where Nalimov tables handle this correctly and the exclusion is not needed.)Rebel wrote:Rule #2hgm wrote:Well, that at least is progress, (and it wasn't so difficult, was it)? This seems a bit hard to reconcile with your earlier statement, though, so I can see little justification for your sulking:Rebel wrote:It's worse than that. You haven't even tried to pay attention what I was saying and you immediately jumped into patronizing remarks flowing from your usual charming self.
Of course copyright infringement is different than rule #2 certainly from it's the historic origin (perspective).
Rebel wrote:ICGA rule #2 (since day one) is about copyright infringement
Each program must be the original work of the entering developers. Programming teams whose code is derived from or including game-playing code written by others must name all other authors, or the source of such code, in their submission details. Programs which are discovered to be close derivatives of others (e.g., by playing nearly all moves the same), may be declared invalid by the Tournament Director after seeking expert advice.
Now tell me, what else does the word derivative mean other than copying? And it was confirmed by David in the email I quoted earlier.
Ask Bob why he endlessly has been complaining that (according to him) Rybka 1.0 contained a Crafty rotated bit-board table which later (when 2 programmers looked into it) he had to retract because it wasn't true but that's besides the point.Well, three people so far have pointed out that this is not true at all, and you are totally alone in this. So it seems clear that this is just a misconception of yours. You don't understand the scope of copyright, you don't understand what it means by "similarity".To keep the PST's as an example, if 12*64 = 768 cells contain the EXACT SAME information than copyright is without mercy ...
This seems again totally wrong, even ignoring the fact that using the same numbers was not a copyright violation at all, and did not need any generosity of the judge, but would be outright dismissed. Because it is always up to the generosity of the 'judge'. The judge has to decide whether the degree of similarity is a violation of copyright, or 'fair use'.while with rule #2 it's up to the generosity of the judge(s) to forgive provided they not find more of such cases. So in this specific case rule #2 is softer than copyright infringement.
But it is interesting that you admit 'non-overlap' of rule #2 and copyrights, albeit so far only (and IMO erroneously) in the sense that rule #2 would allow things copyrights don't. Do you also think there are cases that violate rule #2, but are allowed w.r.t. copyright? IOW, do you claim that rule #2 violations are a sub-set of copyright infringements?
Bob's example of illegally including copyrighted code without violating rule #2 (magic bitboard move generation or EGT probing) was actually valid. But only by virtue of the fact that rule #2 explicitly exempts those parts of an engine from the originality requirement. (Which I have always considered strange, BTW.)
Point is, PST's are not just some numbers, it is the creative and unique work of a programmer and thus protected by copyright.
SO please quit harping on the rotated bit board stuff, which I had given MANY people permission to use, just as Pradu has for his magic stuff. I pointed out the rotated stuff because Vas explicitly claimed that he had done his own bit board code. If he had, he would have noticed that I had renumbered the bits to match Intel (rather than Cray where with Cray bit 0 is MSB, with intel it is LSB). He would have then noticed that some of the code he copied was instantly broken (for example anything that deals with ranks and files.) In any case, nobody cared about the rotated stuff since permission had been granted to others to use already. What we DID care about was all the other copied stuff in a program he claimed was 100% original. He had some sort of distorted / deranged definition of "100% original" is about all I can say.
Now back to the regularly scheduled arguments...
But at least let's keep this factual. Richard INITIALLY thought that crafty used 64x256 bit board arrays. When I pointed out that somewhere in the 19.x series. Several looked and discovered that as I had said, I was using 64x64 before Rybka early versions existed. Richard looked at old archives, found this was true, and simply said "you are right, I thought it had always been 64x256. I believe this was version 19.9, where the change was leaked in something like 19.7beta (I would have to go back through all the old versions to be sure of that). After that, NOBODY thought his rotated bit board code was original. Took a while to find his bishop shift array, because rather than using characters, he used ints. But accessed the array as an array of 4 byte elements and extracted the first byte from a 4 byte value. We could never figure out why any C compiler was producing that nonsense. Richard and I discussed it on RF in fact.
-
bob
- Posts: 20943
- Joined: Mon Feb 27, 2006 7:30 pm
- Location: Birmingham, AL
Re: What's Vasik Rajlich doing today?
I have belonged to many organizations/associations over the years. Not a single one resorted to anything other than "the board" because that is what the bylaws required. Ditto for the ICGA charter, which gave the board final authority. We were providing input to the board. Vas could have provided input to the board.Rebel wrote:Of course the point being was NOT time, that's negotionable. Point is Vas wasn't willing to face a jury who already had made up its mind. He was asking for someone independent. David made it a courtcase, see the correspondence. And there wasn't a selection procedure to rule out jury members with bias.bob wrote:Trials generally take days or weeks. Very rarely does one go for a month or longer. There's a reason. Things should be settled as quickly as possible, in order to stifle/limit speculation. 9 months is not exactly a reasonable response, keeping with the "judge" metaphor here. In general, the plaintiff makes there case by presenting their evidence. The defendant then presents his side of the evidence. Immediately, not 9 months later...Rebel wrote:And that's EXACTLY what Vas asked for, to protect his ideas from his competitors he wrote to David -bob wrote:this is bogus. You have a right to avoid self-incrimination. You do NOT have a right to not disclose trade secrets. A judge can, and sometimes will, close the courtroom when such are being discussed. But there is no guaranteed right other than that you do not have to make self-incriminating statements, period.Rebel wrote:Okay, this is going to be controversial, can be fun anyway, so let's have itFrank Quisinsky wrote: If Rybka 1 have nothing to do with Fruit Vas had six years time to clear the situation.![]()
The right to silence is a fundamental right in court not to incriminate one self, or more subtle in his case not to talk (and explain) about his secrets that put him on top for quite some time. Silence doesn't mean (a sign of) guilt. In the end code decides if he is guilty or not.
Although I never met Vas in person due to my email contacts and his general behaviour in public I learned a bit about how he looks at things and he is not an every day person. Statements like: when I began with chess programming in 2003 I already knew I would go commercial I would dominate the rating lists. Think about that for a moment.
Take for instance the Sven-Vas correspondence about the origin of Ippolit, Sven asking specific questions that would proof Vas' claim Ippolit being Rybka in disguise. You see the same pattern as with the RF case, he doesn't answer Sven and remains vague and in the end you know nothing more than before. This while it was in his own interest to clear the case.
So what goes on in the mind of the person Vasik Raijlich?
Here are some options:
1. From a commercial perspective he doesn't want to give anyone information, not the tiniest bit;
2. He is arrogant, if he states Ippolit=Rybka you just have to believe him, period, likewise in the R/F case;
3. In the end the programmers figured it out themselves, that Ippolit is a Rybka clone and maybe he relied on that in the R/F case;
4. He doesn't trust anyone. Not even me, the latter I know for sure.
So place your bets![]()
Would not be my choice, I would defend myself to death to such slander.
Hi David,
I prefer to plead my case with the final arbiter rather than with the accusers.
Re. the schedule - could we have the final hearings in October or November? I'd like to prepare properly, and my schedule is very full until the first week in October.
Best regards,
Vas
There was no jury empaneled here. Just the ICGA board as stipulated in the ICGA charter.
-
bob
- Posts: 20943
- Joined: Mon Feb 27, 2006 7:30 pm
- Location: Birmingham, AL
Re: What's Vasik Rajlich doing today?
The ICGA board was the jury. It took our evidence, and formed an opinion, and from that reached a decision on what action to take. The secretariat was ALWAS defined as advisory to the ICGA board, no power to convict nor punish was ever granted to the secretariat. Most would prefer to leave that to those elected to serve the ICGA as officers, since they were chosen by a majority vote of the actual ICGA membership.Rebel wrote:You should check the initial "Attack of the Clones" article on ChessVibes that set everything in motion. Objectivity was a passed station, that train already left. One long accusation towards Rybka.hgm wrote:That analogy is a bit wrong. The investigation was not modeled after a jury trial; there was only one judge, which was David. Who, if anything, had great interest in the verdict being a 'not guilty'.
And in a way (from his point of view) it made sense. He was confronted with 16 (IIRC) angry programmers who would go on strike if he did not act, remember what happened to the CSVN when it wasn't in agreement with the ICGA Rybka boycott, death followed. likewise he would have witnessed the death of his yearly WCCCC.
No, David had every interest in a guilty verdict.
Nope, the experts witnesses were jury at the same time.So it is better to say that Vas was not willing to face the prosecutor and the expert witnesses he called to the stand. "I am not coming to court if you allow this guy in there that accuses me of any crime!"
Perhaps this is more like a supreme court in the US. N judges (9 for the US supreme court, but there are lesser courts all the way down to state supreme courts). In a supreme court "trial" there is no jury. The judges (the supreme court justices, or here the ICGA board) listens to the evidence for both sides, then takes time to analyze it on their own, before reaching and rendering a decision. When they hear a case, they hear a case. It does not include plaintiff here, defendant a few months later, etc. It is all "right then". And it works pretty well. Nothing is ever perfect, but that's life.
-
bob
- Posts: 20943
- Joined: Mon Feb 27, 2006 7:30 pm
- Location: Birmingham, AL
Re: What's Vasik Rajlich doing today?
Again, you twist and distort. Yes we did a lousy job at showing copyright infringement. That was NOT our task or goal. We also did a hell of a lousy job at improving the world economy, limiting inflation, reducing infant mortality rates in 3rd world countries, and a lot of other things. But since those were not "our assigned task" of course we did a lousy job. But we did pretty well on exposing the fact that Vas had repeatedly copied the work of others, for several years, all the while claiming 100% originality. Even after being exposed with the old rybka versions and such, no change in attitude. Just extreme arrogance, "I am vas, I don't copy, I write everything" followed by lots of twists, dances and distortions to make it hard to pin him down on anything specific...Rebel wrote:Yes, what he (Dalke) wrote was that you had done a lousy job.bob wrote:Again. Read what he WROTE.
It's actually shameful that you are shifting your opinion how to interprete rule #2 while we were in agreement in the past. Plenty times you have said that rule #2 is about copying in the end. Shall I post your examples?
From the David-Vas correspondence David makes it crystal clear:
Hi Vas,
"playing nearly all moves the same" is just one example of how a competing program might be discovered to be close derivatives of others. There are various other ways, as you know, including your own suggestion referred to in the report.
And you have not addressed "Programming teams whose code is derived from or including game-playing code written by others must name all other authors, or the source of such code, in the details of their submission form."
Kind regards,
David
What else can the term derivative mean if the origin isn't copying?
And since you couldn't proof copying the verdict basically comes down to the estimated (and disputed) volume of ideas Vas (supposedly) took from Fruit.
Don said - too much Fruit in Rybka.
Lefler - He took too much.
Please define "too much".
And that is what was wrong with the interpretation of rule #2, NEVER EVER was someone convicted for the use of "too many ideas", it was always about copying.
-------
Regarding the hashtable issue you raised, we have discussed it and disagreed because you willingly ignored the public discussions between Fabien and Vas in CCC during the years 2003 and 2004.
Secondly and most simple, the version(s) that played in ICGA tournaments used a total different hashtable approach, instead of 16 bytes per entry the versions that played had 8 byte entries, so total different data structure, total different code. Nothing like Fruit.
I ignore the fabien discussions because MANY of us had discussions about mtd(f) and such. Yet no other two programmers came up with the same hashing approach that not only was not particularly efficient, but which also had an ugly alignment bug that ONLY showed up in two specific programs.
Nothing wrong in believing in someone. Nothing wrong with not believing in others. But you can't ignore every orange/red light in an ocean of green and say "there are so few red lights here, compared to all the thousands of green ones in other programs, we will just pretend this is a uniform green background." The red lights are there. Each one, by itself, is troubling. But taken together, they are FAR worse than simply "troubling".
He copies code from me for a couple of years, including a few inexplicable bugs that were in both my code and his, bugs he could not possibly have introduced on his own because in one case they were needed for a particular endgame database that was not public released, and which had been superseded by Nalimov years before Vas' first code. Yet this was in mine AND his "original code". Then he suddenly gets much stronger, right after Fruit shows up, and once again, the similarities are found. Just not as glaring as in the case of Crafty, since Crafty has always been a bit board program, where fruit was not. Therefore he had to modify much (but not all) fruit stuff to use bit boards, changing the look quite a bit and making it much more difficult to discover. But not impossible to discover. We see hints of "problems" like the 0.0 usage, or the hashing usage, or the go_parse similarities, the setjmp/longjmp stuff, and we look further. We we see a pattern. If it doesn't trouble you, I don't understand why. If it does, I don't understand why you keep rehashing all of this stuff. Nothing has changed, nor is it likely to.
-
bob
- Posts: 20943
- Joined: Mon Feb 27, 2006 7:30 pm
- Location: Birmingham, AL
Re: What's Vasik Rajlich doing today?
The issue is about credibility. Vas always claimed 100% originality, even on the pre-fruit versions of Rybka. We now know that is an outright lie. We know that the early commercial version of Rybka had a heavy influence. So what if version 2.0 is more distant from fruit? I would expect that each year the stuff taken from another program would become more and more diluted as development continues. There were enough direct problems in 1.0 beta, and Mark did the analysis of the 2.2 version to note that much of the evaluation was still very similar.Rebel wrote:Yes, what he (Dalke) wrote was that you had done a lousy job.bob wrote:Again. Read what he WROTE.
It's actually shameful that you are shifting your opinion how to interprete rule #2 while we were in agreement in the past. Plenty times you have said that rule #2 is about copying in the end. Shall I post your examples?
From the David-Vas correspondence David makes it crystal clear:
Hi Vas,
"playing nearly all moves the same" is just one example of how a competing program might be discovered to be close derivatives of others. There are various other ways, as you know, including your own suggestion referred to in the report.
And you have not addressed "Programming teams whose code is derived from or including game-playing code written by others must name all other authors, or the source of such code, in the details of their submission form."
Kind regards,
David
What else can the term derivative mean if the origin isn't copying?
And since you couldn't proof copying the verdict basically comes down to the estimated (and disputed) volume of ideas Vas (supposedly) took from Fruit.
Don said - too much Fruit in Rybka.
Lefler - He took too much.
Please define "too much".
And that is what was wrong with the interpretation of rule #2, NEVER EVER was someone convicted for the use of "too many ideas", it was always about copying.
-------
Regarding the hashtable issue you raised, we have discussed it and disagreed because you willingly ignored the public discussions between Fabien and Vas in CCC during the years 2003 and 2004.
Secondly and most simple, the version(s) that played in ICGA tournaments used a total different hashtable approach, instead of 16 bytes per entry the versions that played had 8 byte entries, so total different data structure, total different code. Nothing like Fruit.
From day 1, the thing was bad. And it never went north of that line.
You like to use an odd definition of the concept of "an idea". An idea is just that so long as it is a general concept. But when an idea gets reduced to pseudo-code, so that the new pseudo-code exactly mimics the original program, now you are copying the details of the idea. The exact implementation details. In simple things, that might be OK for a few terms. But not a bunch of them. And if the ideas are organized in the same order, it looks worse. It begins to look like the original was used as a template, and each block was rewritten from mailbox to bit board, and that is NOT what the concept of using an "idea" is about. An idea is an abstract thing, a piece of knowledge, a general concept, a board layout. The code that implements that idea can't be reproduced even by rewriting in a new language. It is just a translation, which is a copy.
-
Sean Evans
- Posts: 1777
- Joined: Thu Jun 05, 2008 10:58 pm
- Location: Canada
Re: What's Vasik Rajlich doing today?
The word "idea" can be defined in different ways by different people. When a word is not defined in any statute law then the Courts use the common use definition of the word, which I believe is what is required in the case of Vas.bob wrote: You like to use an odd definition of the concept of "an idea". An idea is just that so long as it is a general concept.
Oxford Dictionary: A thought or suggestion as to a possible course of action
American Heritage Dictionary: 1. Something, such as a thought or conception, that is the product of mental activity.
Collins Dictionary: any content of the mind, esp the conscious mind
Merriam-Webster Dictionary: something that you imagine or picture in your mind
As you can see the consensus among dictionaries is the word "idea" is a thought, concept or imagination derived from an individuals mind. An idea is not looking at other programmers code and then copying and pasting it into your program and calling it original work!
The word "plagiarize" is defined as follows:
Oxford Dictionary: Take (the work or an idea of someone else) and pass it off as one’s own.
American Heritage: 1. To reproduce or otherwise use (the words, ideas, or other work of another) as one's own or without attribution.
Collins Dictionary: to appropriate (ideas, passages, etc) from (another work or author)
Merriam-Webster Dictionary: to use the words or ideas of another person as if they were your own words or ideas
Vas plagiarized others peoples work, by taking other programmers ideas and code and pasting it directly into Rybka, i.e. Rybka was not wholly based on "ideas" of Vas.
Cordially,
Sean