Topic Rybka Support & Discussion / Rybka Support / 14 of 34 = not a single panel member believed him innocent
There is publicizing the result, and there is publicizing the result. A right way to do it, and the ICGA way.
Just out of curiosity though, how long does Vas have to keep the source code to satisfy ICGA requirements? 10 years? 20 years? 50 years? Doesn't this strike you as being somewhat silly?
Just out of curiosity though, how long does Vas have to keep the source code to satisfy ICGA requirements? 10 years? 20 years? 50 years? Doesn't this strike you as being somewhat silly?
No. How long do you have to keep your tax documents for the IRS? You do know that if they find something within the past 5 years, they can go back to your first return and demand proof? Doesn't that seem silly? However, I have a file cabinet with every tax return I have filed, so that I am prepared.
Doesn't matter whether it is silly or not.
Doesn't matter whether it is silly or not.
The IRS has a statute of limitations. The ICGA does not. THAT is the silly part.
The IRS does _not_ have a statute of limitations. Again, check before you speak. They can go back in your tax records for 6 years for starters, although they technically can only audit your last 3 years unless a problem is found. If they find anything that violates tax law, they can then go all the way back to the first tax return you filed and audit your entire life. I'm surprised you don't know that. It is often discussed when someone posts the question around tax time "How far back do I need to go when keeping my tax records." The answer is "all the way back". Even if you file 1040EZ, you could omit income (or not) and they can demand proof, once they have uncovered the first "pebble" of a problem.
BTW, I am an expert witness for this issue. I started to work for the state of Mississippi (University of Southern Mississippi) in 1970. In 1988 I formally left and started teaching at UAB. I withdrew my retirement fund from Mississippi and used it as a down-payment when we built our current house. IRS contacted me via an audit and said you did not report that retirement fund as income on your 1988 tax return. You own < some big number > for taxes on that money as well as penalties. I disputed the result. I told them that my retirement contributions were taxed normally. They replied "If you can provide proof for the period of time September 1, 1970 (when I started to work there) through August 31, 1988, that you had income tax withheld from money contributed to that fund, then no additional taxes and penalties are due. I supplied them with a copy of every tax return from 1970 to 1988 showing what I had claimed. I sent copies of every last pay stub (which we had filed with the tax returns, as well as the W-2's). And we walked away owing nothing.
There _is_ no statute of limitations, once they believe they have discovered something wrong on a recent return (typically 3 years for individuals). But once the door is opened, it is opened WIDE.
From experience.
BTW, I am an expert witness for this issue. I started to work for the state of Mississippi (University of Southern Mississippi) in 1970. In 1988 I formally left and started teaching at UAB. I withdrew my retirement fund from Mississippi and used it as a down-payment when we built our current house. IRS contacted me via an audit and said you did not report that retirement fund as income on your 1988 tax return. You own < some big number > for taxes on that money as well as penalties. I disputed the result. I told them that my retirement contributions were taxed normally. They replied "If you can provide proof for the period of time September 1, 1970 (when I started to work there) through August 31, 1988, that you had income tax withheld from money contributed to that fund, then no additional taxes and penalties are due. I supplied them with a copy of every tax return from 1970 to 1988 showing what I had claimed. I sent copies of every last pay stub (which we had filed with the tax returns, as well as the W-2's). And we walked away owing nothing.
There _is_ no statute of limitations, once they believe they have discovered something wrong on a recent return (typically 3 years for individuals). But once the door is opened, it is opened WIDE.
From experience.
OK, I stand corrected. I admit to knowing very little about the tax code. I do know that it is completely irrational, and I am always surprised to find out how much I owe, sometimes in a positive sense, sometimes in a negative sense.
If you are married, you had better hope that you married someone with as much attention to detail as my wife. My first job after graduation was June, 1970. 41 years ago. Do you still have every last paystub for the last 41 years (or whatever number is appropriate based on your age? That could have been an _ugly_ deal, and an expensive one, since the IRS is always right unless you can prove them wrong (one of the few places where innocent until proven guilty seems to be ignored, in fact, but that's another story for another time.
My wife is definitely not known for her attention to these types of details. I do have a habit of never throwing out records, but if the IRS started asking questions about my first job after college 30 years ago, I would be in deep trouble.
> if the IRS started asking questions about my first job after college 30 years ago, I would be in deep trouble
This is going to be a very good day here ...
10 years to collect outstanding tax liabilities- 3-year time period for an audit-unless of suspicion of fraud.
I told you exactly what happened. "suspicion of fraud" is equivalent to "suspicion of mistake". And they go as deep as they want, but only if they find something in the last 3 years. In my case, they found exactly what I stated. When you take money from a retirement account, the IRS must be notified. The "pre-tax retirement stuff" did not become law until somewhere in the late 70's. I did know exactly when but this happened years ago. The law does _not_ require the retirement system to tell the IRS if any of the money was post-tax or not. If you worked on both sides of that boundary, you could have a problem. Simple really.
> "suspicion of fraud" is equivalent to "suspicion of mistake"
Not at all!
You have no idea what you are talking about. I've been there.
I just called a friend who is a tax consultant and he was sure that in the majority of cases the IRS can distinguish between a mistake and out right Fraud and with the limitation of man power they aren't about to open up a complete inquiry into your tax history over a presumed mistake.
If you make a math error, you are correct. If you put something in the wrong box, you are correct. If they receive a report of a significant withdrawal from a retirement fund that _might_ be taxable and have penalties added, you are simply wrong, as is your friend. I still have the many letters from/to the IRS to straighten this mess out. It would be easy enough to scan a couple and make them available so that we can get out of this "what a friend says." Because that doesn't matter. What actually _happened_ is what matters.
I have seen a similar case with a friend that sold a house and made no money, but got into a hassle with the IRS because you are required to roll any profits back into a new house within 12 months or the profits are taxable. And there is a form that has to be filed dealing with that. He lost money, and filed nothing, and was audited all the way back to when the house became his property...
I have seen a similar case with a friend that sold a house and made no money, but got into a hassle with the IRS because you are required to roll any profits back into a new house within 12 months or the profits are taxable. And there is a form that has to be filed dealing with that. He lost money, and filed nothing, and was audited all the way back to when the house became his property...
14 is not accurate. I am not sure where you are getting "votes" from. The panel was not a jury. We did twice ask opinions about the case (once about half along the process to see what people had read and see if they felt more evidence was needed, and later asking onions about guilt). Many people expresses opinions on a discussion board on the icga wiki site. Some preferred not to announce their opinion there and did it via email. Some of the secretariat members did not express opinions publicly so as not to sway other panel members. Some did not express a direct opinion. But again, this was not a jury and so a "vote" could not be forced on anyone. There was not a single vote expressed to the Secretariat by any panel member indicating they felt Vasik Rajlich was innocent.
Note we were requiring people to read the evidence completely before expressing opinions. Ideally, we wanted everyone to vote. But we were requiring they answer these two questions:
a. Have you read all of the evidence linked to the Rybka-Fruit Controversy pages?
b. In your opinion, did Vasik Rajlich's chess program Rybka violate the ICGA Tournament Rules (http://icga.wikispaces.com/ICGA+Tournament+Rules), especially rule 2:
I think some panel members just did not devote enough time reading the large amount of information collected, so they probably felt it improper to vote.
Note we were requiring people to read the evidence completely before expressing opinions. Ideally, we wanted everyone to vote. But we were requiring they answer these two questions:
a. Have you read all of the evidence linked to the Rybka-Fruit Controversy pages?
b. In your opinion, did Vasik Rajlich's chess program Rybka violate the ICGA Tournament Rules (http://icga.wikispaces.com/ICGA+Tournament+Rules), especially rule 2:
I think some panel members just did not devote enough time reading the large amount of information collected, so they probably felt it improper to vote.
In the op Graham Banks provided a link to BB's post which claims that 14 panel members voted. Are you saying that BB is wrong and that less than 14 voted? Can you tell us the names of those who voted?
Move than 14 expressed an opinion. No, I cannot give a list of names. I have been told in many countries how people "vote" must be private, although the Secretariat knows all the names (and the panel members know most of the names). Revealing specific people "vote" could make it harder for us in the future to form a panel. You are welcome to contact each panel member and ask how they "voted" since that lets them decide for themselves if they want it public knowledge. For the record, my opinion was the ICGA Rules were clearly violated.
I never heard of an organization/committee that doesn't disclose the names of the panelists/judges who participated for a ruling of such impact.
Governments often only reveal vote totals (the US Congress does this on most votes which are done electronically, although there are mechanisms for forcing a recorded vote sometimes). We have the full list of panel members in the report, and I can discuss with each member who voted if they want their vote released. Of course, the fact that a specific person did no choose to vote might also be sensitive (they might get harassed for not voting, or someone might accuse them of being lazy and not reading the volumes of information we assembled). I will discuss this with the ICGA Board and Secretariat.
Are you sure about that? Here's a website that tracks congress votes:
http://projects.washingtonpost.com/congress/112/
Take a look at a recent vote, the GOP 2012 Budget Plan:
http://projects.washingtonpost.com/congress/112/house/1/votes/277/
Lists the yes votes, the no votes, and the names of those that did not vote.
http://projects.washingtonpost.com/congress/112/
Take a look at a recent vote, the GOP 2012 Budget Plan:
http://projects.washingtonpost.com/congress/112/house/1/votes/277/
Lists the yes votes, the no votes, and the names of those that did not vote.
Yes, I am sure about that:
http://www.scpolicycouncil.com/research-and-publications-/special-reports/1384-break-the-power-monopoly-record-every-vote
In the US, Congress typically only records between 20-30% of votes. It takes time to record votes. And in Europe according to a college student I just asked, when judges decide a case, a decision is publish saying which side won, but individual votes are not published. This helps prevent lobbyist from targeting them and avoids some harassment.
http://www.scpolicycouncil.com/research-and-publications-/special-reports/1384-break-the-power-monopoly-record-every-vote
In the US, Congress typically only records between 20-30% of votes. It takes time to record votes. And in Europe according to a college student I just asked, when judges decide a case, a decision is publish saying which side won, but individual votes are not published. This helps prevent lobbyist from targeting them and avoids some harassment.
You are badly misinformed with respect to non-voice votes of the US congress. There are many groups recording congressional votes, and they are reported in many papers. Many organizations grade congress on these votes.
Yes, groups record the votes that take place, but only if the votes are recorded. Of course, the Congress records and pub lishes them as well! Most votes are done yia people yelling Yeah or Nay, where only volume counts. I can find no technology that records 400+ pictures of congressmen at the same time and reads their lips, so most votes go uncounted. Please research things before saying I am wrong.
No, not correct. Most votes are not voice votes, and electronic votes are recorded and available for public review. Like most people, I can monitor how my congressional delegation votes in our local newspaper. No lip reading is necessary.
Can't you come up with a better excuse for not having an open process?
Can't you come up with a better excuse for not having an open process?
http://www.votesmart.org/voting_category.php?can_id=44082
This is one of the many sites that allows me to review the voting record of my congressman.
This is one of the many sites that allows me to review the voting record of my congressman.
the US Congress does this on most votes which are done electronically, although there are mechanisms for forcing a recorded vote sometimes
Nonsense. The voting record for the US congress is available for all votes that performed electronically. Voice votes of course are not recorded.
Nonsense. The voting record for the US congress is available for all votes that performed electronically. Voice votes of course are not recorded.
You can read the report. In it are opinions from I think 6 members. Based on the opinions I think you can figure out how those 6 voted. For example, Ken Thompson.
Did you consider trying to get at least 50% of the people on the panel to agree with the conclusion? 14 out of 34 sounds more like a hung jury than a conviction to me.
Nope. Again, this was a request for opinions, the more the merrier. To get information to present to the ICGA Board. It was not a vote to convict. Just a final chance for people to contribute opinions. Earlier in the investigation (on 17 March, in fact) We had another survey:
"a. Have you read the Zach Wegner and Mark Watkins papers? If yes, do you judge that Rybka 1.0 beta was a derivative of Fruit 2.1?
b. Have you read the Rybka-Crafty evidence? If yes, do you judge pre-Rybka 1.6.1 (or other pre-Rybkas) were derivatives of Crafty?
c. Have you read the ICGA Tournament Rules? If yes, do you judge that Rybka violated The ICGA Tournament Rules?
d. If you answer is no or undecided to any of the above, what more evidence is needed for you to decide?"
This was to get opinions about what people had studied, what current opinions were, and most importantly, what other evidence/information was needed to help people make decisions.
"a. Have you read the Zach Wegner and Mark Watkins papers? If yes, do you judge that Rybka 1.0 beta was a derivative of Fruit 2.1?
b. Have you read the Rybka-Crafty evidence? If yes, do you judge pre-Rybka 1.6.1 (or other pre-Rybkas) were derivatives of Crafty?
c. Have you read the ICGA Tournament Rules? If yes, do you judge that Rybka violated The ICGA Tournament Rules?
d. If you answer is no or undecided to any of the above, what more evidence is needed for you to decide?"
This was to get opinions about what people had studied, what current opinions were, and most importantly, what other evidence/information was needed to help people make decisions.
Let me answer your points in detail:
a. Have you read the Zach Wegner and Mark Watkins papers? If yes, do you judge that Rybka 1.0 beta was a derivative of Fruit 2.1?
There is nothing new here. Let me bring you back 3-1/2 years ago to when Anthony Cozzi first reviewed Strelka. He wrote the following:
Hello,
I took a look at the Strelka sources (sorry, couldn't contain my curiosity). I do sympathize with your legal issues and hope you can work something out. IIRC disassembly is legal but I can't imagine that releasing source code is. The worst part is that I think it will be very difficult to prevent this in the future. I looked into some of these things and unfortunately obfuscation seems to be theoretically impossible, although at least you can waste some of Osipov's time. However, you can take heart that there isn't really anything your competitors can learn from Strelka anyway ;)
Which is why I'm surprised no one is talking about the actual source code, which by your own admission is very similar to Rybka 1.0. I know a lot of the people here are basically chess players and not programmers, but that no one has taken the time to spend an hour examining the most dominant chess program in 5 years? I expected that Rybka was going to be a fast simple program with an obfuscated node count, but I had no idea just how right that was going to be. On my machine the 32-bit Strelka gets 1.2 million nps or so, which means a 64 bit compile would get 2.5M, or about 5X as fast as my poor little Zappa. In terms of knowledge, there is very little that is not in well known except for the material tables, which should be very fast. I'm also pretty amazed at how aggressively the search prunes. Not only will Strelka drop straight into the q-search on a depth-3 search search, but because it orders all captures first, it will reduce almost all noncapture/check moves.
Anyway, in my professional opinion Strelka is basically Fritz5 + history reductions + bigger (but not more) mobility/passed pawn terms + super-vasik-material evaluation. What's amazing to me is how well it works. I don't know whether to laugh at the silliness of all the speculation surrounding Rybka and how horribly wrong it was, or congratulate you for taking a completely different path than everyone else.
cheers,
anthony
This was only one of multiple posts where Anthony discussed details of Rybka 1.0 Beta, as gleaned from Strelka, with Vas. For whatever reason, your investigation ignored this review. Why?
As Anthony points out, Strelka, and by extension Rybka 1.0 Beta, had a vanilla evaluation function and a very fast search function, much faster than Zappa's. As he also points out, this wasn't a complete surprise. Also note that although Anthony was very familiar with Fruit, it never occurred to him to mention this similarity after he did his review. Also note that Anthony pulled several ideas out of Rybka and tried to implement them in Zappa, in particular, very aggressive pruning. Did this make Zappa a derivative work? Not in my book, it didn't. Use of ideas from other engines has been going on for a long, long time, and it's perfectly ok. A function (e.g. an evaluation function) is actually the simplest of ideas (it doesn't even require a state machine).
Mark's argument is based on Rybka using similar features to Fruit (with the exceptions that he notes). Using similar features does NOT make Rybka a derivative work under copyright code. Mark used slight of hand to get around that by saying it would be considered plagiarism in a university setting because it uses ideas without attribution. I would dispute even this much weaker statement since Vas did give attribution to Fruit. In any event, the key point is that use of a similar feature set is fine by all legal standards, as long as the code isn't copied or paraphrased, and I saw no evidence that this was the case.
b. Have you read the Rybka-Crafty evidence? If yes, do you judge pre-Rybka 1.6.1 (or other pre-Rybkas) were derivatives of Crafty?
I read some of the "evidence" that was available a while back, including the stuff on R1.6.1. R1.6.1 was definitely a derivative work of Crafty. It was also a very weak engine that never competed for an ICGA title. That said, as a guy who spends way too much time going through IP legal briefs, I can tell you that the investigative work is trashy and not worth the paper it's printed on. The main problem is that rather than being based on commercial standards, it is based on academic standards.
Mark may consider plagiarism to be a very serious offense, but us commercial guys take advantage of other people's work all the time, rarely give attribution, and it's all completely legit. Using academic standards for the basis of your judgement was a fatal mistake.
c. Have you read the ICGA Tournament Rules? If yes, do you judge that Rybka violated The ICGA Tournament Rules?
I have read the ICGA Tournament Rules, but I am in no position to judge whether any participant violated the rules or not. This a matter for the ICGA to decide, and the ICGA is perfectly within their rights to make arbitrary and capricious judgements based on personal vendettas. What ICGA personnel should not be doing is sending out press releases branding Vas as a cheat.
d. If you answer is no or undecided to any of the above, what more evidence is needed for you to decide?
Evidence should consist of copied code in the releases of Rybka that competed at the ICGA tournaments, or commercial versions from the same time frame. More importantly, extraneous crap about similar evaluation functions and reminders that Vas used Crafty in R1.6.1 should be removed. They don't help make your case, and in fact are strongly indicative of not having the goods to demonstrate that Vas acted in a manner that isn't acceptable by commercial norms during the tournaments in question.
a. Have you read the Zach Wegner and Mark Watkins papers? If yes, do you judge that Rybka 1.0 beta was a derivative of Fruit 2.1?
There is nothing new here. Let me bring you back 3-1/2 years ago to when Anthony Cozzi first reviewed Strelka. He wrote the following:
Hello,
I took a look at the Strelka sources (sorry, couldn't contain my curiosity). I do sympathize with your legal issues and hope you can work something out. IIRC disassembly is legal but I can't imagine that releasing source code is. The worst part is that I think it will be very difficult to prevent this in the future. I looked into some of these things and unfortunately obfuscation seems to be theoretically impossible, although at least you can waste some of Osipov's time. However, you can take heart that there isn't really anything your competitors can learn from Strelka anyway ;)
Which is why I'm surprised no one is talking about the actual source code, which by your own admission is very similar to Rybka 1.0. I know a lot of the people here are basically chess players and not programmers, but that no one has taken the time to spend an hour examining the most dominant chess program in 5 years? I expected that Rybka was going to be a fast simple program with an obfuscated node count, but I had no idea just how right that was going to be. On my machine the 32-bit Strelka gets 1.2 million nps or so, which means a 64 bit compile would get 2.5M, or about 5X as fast as my poor little Zappa. In terms of knowledge, there is very little that is not in well known except for the material tables, which should be very fast. I'm also pretty amazed at how aggressively the search prunes. Not only will Strelka drop straight into the q-search on a depth-3 search search, but because it orders all captures first, it will reduce almost all noncapture/check moves.
Anyway, in my professional opinion Strelka is basically Fritz5 + history reductions + bigger (but not more) mobility/passed pawn terms + super-vasik-material evaluation. What's amazing to me is how well it works. I don't know whether to laugh at the silliness of all the speculation surrounding Rybka and how horribly wrong it was, or congratulate you for taking a completely different path than everyone else.
cheers,
anthony
This was only one of multiple posts where Anthony discussed details of Rybka 1.0 Beta, as gleaned from Strelka, with Vas. For whatever reason, your investigation ignored this review. Why?
As Anthony points out, Strelka, and by extension Rybka 1.0 Beta, had a vanilla evaluation function and a very fast search function, much faster than Zappa's. As he also points out, this wasn't a complete surprise. Also note that although Anthony was very familiar with Fruit, it never occurred to him to mention this similarity after he did his review. Also note that Anthony pulled several ideas out of Rybka and tried to implement them in Zappa, in particular, very aggressive pruning. Did this make Zappa a derivative work? Not in my book, it didn't. Use of ideas from other engines has been going on for a long, long time, and it's perfectly ok. A function (e.g. an evaluation function) is actually the simplest of ideas (it doesn't even require a state machine).
Mark's argument is based on Rybka using similar features to Fruit (with the exceptions that he notes). Using similar features does NOT make Rybka a derivative work under copyright code. Mark used slight of hand to get around that by saying it would be considered plagiarism in a university setting because it uses ideas without attribution. I would dispute even this much weaker statement since Vas did give attribution to Fruit. In any event, the key point is that use of a similar feature set is fine by all legal standards, as long as the code isn't copied or paraphrased, and I saw no evidence that this was the case.
b. Have you read the Rybka-Crafty evidence? If yes, do you judge pre-Rybka 1.6.1 (or other pre-Rybkas) were derivatives of Crafty?
I read some of the "evidence" that was available a while back, including the stuff on R1.6.1. R1.6.1 was definitely a derivative work of Crafty. It was also a very weak engine that never competed for an ICGA title. That said, as a guy who spends way too much time going through IP legal briefs, I can tell you that the investigative work is trashy and not worth the paper it's printed on. The main problem is that rather than being based on commercial standards, it is based on academic standards.
Mark may consider plagiarism to be a very serious offense, but us commercial guys take advantage of other people's work all the time, rarely give attribution, and it's all completely legit. Using academic standards for the basis of your judgement was a fatal mistake.
c. Have you read the ICGA Tournament Rules? If yes, do you judge that Rybka violated The ICGA Tournament Rules?
I have read the ICGA Tournament Rules, but I am in no position to judge whether any participant violated the rules or not. This a matter for the ICGA to decide, and the ICGA is perfectly within their rights to make arbitrary and capricious judgements based on personal vendettas. What ICGA personnel should not be doing is sending out press releases branding Vas as a cheat.
d. If you answer is no or undecided to any of the above, what more evidence is needed for you to decide?
Evidence should consist of copied code in the releases of Rybka that competed at the ICGA tournaments, or commercial versions from the same time frame. More importantly, extraneous crap about similar evaluation functions and reminders that Vas used Crafty in R1.6.1 should be removed. They don't help make your case, and in fact are strongly indicative of not having the goods to demonstrate that Vas acted in a manner that isn't acceptable by commercial norms during the tournaments in question.
No one asked you to answer the questions, and your answers seem to make it clear you have not studied the documents well. This was not and has never been a copyright case (and this is mentioned several times in the wiki). This has been a case to decide if Rybka violated ICGA rules. Citing Cozzie is pointless. He was not even on the panel, and comments about Strelka is not useful in determining if Rybka was a derivation of Fruit. The Crafty stuff was added to the investigation when we tried to see how pre-Rybka jumped about 800 ELO in one year. We were shocked to see so much stolen code. This indicated a continuing history of making derivatives, which has a direct bearing on this case. Just like a history of shop lifting has a direct bearing on a new accusation of shoplifting.
Why are you only reading "some" of the evidence. Please stop writing page after page and sit down and read the whole thing. What you are doing is effectively channel surfing and seeing a few minutes of a movie then passing judgment. Do the work then someone might listen to you. You poor ability to actually try to read this stuff suggests you would be a bad panel member.
Not having source code to compare, the panel reverse engineered the code. This has been done in many court case and lead to many convictions of patent violation.
I am a patient person, but my patience for your illogical arguments based on incomplete knowledge means that I would be best served by ignoring you. Once you read everything and understand it, we can talk. So I will ignore future messages from you unless they begin with something like "I have read and understood all the evidence on and linked to the ICGA wiki and.."
Why are you only reading "some" of the evidence. Please stop writing page after page and sit down and read the whole thing. What you are doing is effectively channel surfing and seeing a few minutes of a movie then passing judgment. Do the work then someone might listen to you. You poor ability to actually try to read this stuff suggests you would be a bad panel member.
Not having source code to compare, the panel reverse engineered the code. This has been done in many court case and lead to many convictions of patent violation.
I am a patient person, but my patience for your illogical arguments based on incomplete knowledge means that I would be best served by ignoring you. Once you read everything and understand it, we can talk. So I will ignore future messages from you unless they begin with something like "I have read and understood all the evidence on and linked to the ICGA wiki and.."
Thank you for ignoring me. I will still take the opportunity to rebut your attempted diversions for the edification of others on the forum.
This was not and has never been a copyright case (and this is mentioned several times in the wiki).
Of course not. It wouldn't succeed as a copyright case. To obtain a conviction in your kangaroo court, the standards were reduced to academic plagiarism of features. Even this incredibly low bar isn't low enough though, as Anthony points out that the features are all well known and thus in the public domain.
This has been a case to decide if Rybka violated ICGA rules.
This is not an important case. A much more important case would deal with your defamation of Vas by sending out press releases calling him a cheat.
Citing Cozzie is pointless. He was not even on the panel
So you acknowledge that you disregarded evidence by expert witnesses when they did not agree with your preconceived notions? Anthony was the second best engine developer in the world at the time, and any reasonable hearing would have given his views heavy weighting.
comments about Strelka is not useful in determining if Rybka was a derivation of Fruit.
This contradicts your own experts and is wrong to boot. Strelka is reverse engineered Rybka with Fruit filler and Anthony was able to see and potentially understand the Rybka 1 Beta story by studying the code.
The Crafty stuff was added to the investigation when we tried to see how pre-Rybka jumped about 800 ELO in one year. We were shocked to see so much stolen code.
You would have a much better understanding of the 800 Elo jump if you read Anthony's review, but of course you won't because it doesn't jive with your propaganda. Rybka 1.0 Beta was super strong because the search was incredibly fast. Much faster than Zappa's, which was no slouch in search speed.
This indicated a continuing history of making derivatives, which has a direct bearing on this case. Just like a history of shop lifting has a direct bearing on a new accusation of shoplifting.
History is only a supporting factor. It's not an excuse for lack of recent evidence or shoddy investigative work.\
This has been done in many court case and lead to many convictions of patent violation.
Patent violation??? What the hell are you talking about? Are there any patents involved here? Didn't think so.
This was not and has never been a copyright case (and this is mentioned several times in the wiki).
Of course not. It wouldn't succeed as a copyright case. To obtain a conviction in your kangaroo court, the standards were reduced to academic plagiarism of features. Even this incredibly low bar isn't low enough though, as Anthony points out that the features are all well known and thus in the public domain.
This has been a case to decide if Rybka violated ICGA rules.
This is not an important case. A much more important case would deal with your defamation of Vas by sending out press releases calling him a cheat.
Citing Cozzie is pointless. He was not even on the panel
So you acknowledge that you disregarded evidence by expert witnesses when they did not agree with your preconceived notions? Anthony was the second best engine developer in the world at the time, and any reasonable hearing would have given his views heavy weighting.
comments about Strelka is not useful in determining if Rybka was a derivation of Fruit.
This contradicts your own experts and is wrong to boot. Strelka is reverse engineered Rybka with Fruit filler and Anthony was able to see and potentially understand the Rybka 1 Beta story by studying the code.
The Crafty stuff was added to the investigation when we tried to see how pre-Rybka jumped about 800 ELO in one year. We were shocked to see so much stolen code.
You would have a much better understanding of the 800 Elo jump if you read Anthony's review, but of course you won't because it doesn't jive with your propaganda. Rybka 1.0 Beta was super strong because the search was incredibly fast. Much faster than Zappa's, which was no slouch in search speed.
This indicated a continuing history of making derivatives, which has a direct bearing on this case. Just like a history of shop lifting has a direct bearing on a new accusation of shoplifting.
History is only a supporting factor. It's not an excuse for lack of recent evidence or shoddy investigative work.\
This has been done in many court case and lead to many convictions of patent violation.
Patent violation??? What the hell are you talking about? Are there any patents involved here? Didn't think so.
So you acknowledge that you disregarded evidence by expert witnesses when they did not agree with your preconceived notions? Anthony was the second best engine developer in the world at the time, and any reasonable hearing would have given his views heavy weighting.
Cozzie did not join the panel. He did not offer any evidence to us either supporting or further incriminating Rybka.
BTW rybka's "speed" was not worth 800 elo. One gains about 70 elo for each _doubling_ in raw NPS numbers. To get +700 elo requires 10 doublings, or making the thing run 1024 times faster. Impossible. If speed were all there was to it, I am unaware of any program that is faster than Crafty. Yet it is not at the top. So speed is _not_ the underlying reason for the over 800 elo gain. It is a nice try, however. But it doesn't hold water.
comments about Strelka is not useful in determining if Rybka was a derivation of Fruit.
This contradicts your own experts and is wrong to boot. Strelka is reverse engineered Rybka with Fruit filler and Anthony was able to see and potentially understand the Rybka 1 Beta story by studying the code.
No, every time strelka comes up, the hue and cry from rybka fans follows. We elected to get strelka out of the picture and eliminate that criticism up front. So we compared A (fruit) to C (Rybka), not B (strelka) to C (Rybka) and then A (fruit) to B (Strelka). It eliminated one source of complaint, but made the process much more difficult since all we had for Rybka was a binary.
And no, there is no patent issue. But there is most certainly a copyright issue, and it might become an even bigger problem depending on the FSF.
Cozzie did not join the panel. He did not offer any evidence to us either supporting or further incriminating Rybka.
BTW rybka's "speed" was not worth 800 elo. One gains about 70 elo for each _doubling_ in raw NPS numbers. To get +700 elo requires 10 doublings, or making the thing run 1024 times faster. Impossible. If speed were all there was to it, I am unaware of any program that is faster than Crafty. Yet it is not at the top. So speed is _not_ the underlying reason for the over 800 elo gain. It is a nice try, however. But it doesn't hold water.
comments about Strelka is not useful in determining if Rybka was a derivation of Fruit.
This contradicts your own experts and is wrong to boot. Strelka is reverse engineered Rybka with Fruit filler and Anthony was able to see and potentially understand the Rybka 1 Beta story by studying the code.
No, every time strelka comes up, the hue and cry from rybka fans follows. We elected to get strelka out of the picture and eliminate that criticism up front. So we compared A (fruit) to C (Rybka), not B (strelka) to C (Rybka) and then A (fruit) to B (Strelka). It eliminated one source of complaint, but made the process much more difficult since all we had for Rybka was a binary.
And no, there is no patent issue. But there is most certainly a copyright issue, and it might become an even bigger problem depending on the FSF.
Cozzie did not join the panel. He did not offer any evidence to us either supporting or further incriminating Rybka.
So because he did not join the panel you disregarded his analysis from 3-1/2 years ago? Anthony's analysis is worth a million of Mark's papers. Did you or anyone else on the panel even bother reading it?
BTW rybka's "speed" was not worth 800 elo.
The claim that R1.0 Beta was very similar to R1.6.1, which was much weaker, was yours, not mine.
I am unaware of any program that is faster than Crafty.
Anthony Cozzi stated that R1.0 Beta searched 2.5 times faster than Zappa with a 32-bit compile, and he estimated that he believed it would have searched much faster with a 64-bit compile. So unless Crafty was searching 4-5 times faster than Zappa at that time, it would appear that Crafty was not the fastest.
No, every time strelka comes up, the hue and cry from rybka fans follows. We elected to get strelka out of the picture and eliminate that criticism up front. So we compared A (fruit) to C (Rybka), not B (strelka) to C (Rybka) and then A (fruit) to B (Strelka). It eliminated one source of complaint, but made the process much more difficult since all we had for Rybka was a binary.
Your investigative team missed the forest for the trees. Anthony analyzed what was happening in R1.0 Beta and had a discussion with Vas, who corrected some of his misconceptions. Leaving this detailed analysis by one of the best engine authors in the business out of your report is really striking.
It eliminated one source of complaint, but made the process much more difficult since all we had for Rybka was a binary.
Your case is purely circumstantial and in my opinion, just a reflection of your incredibly strong internal biases. Yes, you were able to convince a group of like-minded people to vote with you on this. But I take Vas at his word when he says there is no Fruit code in R1.0 Beta, and I suspect that he could come up with the source for at least one of the many Beta releases if this matter ever goes to a real court of law.
But there is most certainly a copyright issue, and it might become an even bigger problem depending on the FSF.
I was going to quote a well known IP lawyer from Stanford, but I see you've already dissed him in another forum!
So because he did not join the panel you disregarded his analysis from 3-1/2 years ago? Anthony's analysis is worth a million of Mark's papers. Did you or anyone else on the panel even bother reading it?
BTW rybka's "speed" was not worth 800 elo.
The claim that R1.0 Beta was very similar to R1.6.1, which was much weaker, was yours, not mine.
I am unaware of any program that is faster than Crafty.
Anthony Cozzi stated that R1.0 Beta searched 2.5 times faster than Zappa with a 32-bit compile, and he estimated that he believed it would have searched much faster with a 64-bit compile. So unless Crafty was searching 4-5 times faster than Zappa at that time, it would appear that Crafty was not the fastest.
No, every time strelka comes up, the hue and cry from rybka fans follows. We elected to get strelka out of the picture and eliminate that criticism up front. So we compared A (fruit) to C (Rybka), not B (strelka) to C (Rybka) and then A (fruit) to B (Strelka). It eliminated one source of complaint, but made the process much more difficult since all we had for Rybka was a binary.
Your investigative team missed the forest for the trees. Anthony analyzed what was happening in R1.0 Beta and had a discussion with Vas, who corrected some of his misconceptions. Leaving this detailed analysis by one of the best engine authors in the business out of your report is really striking.
It eliminated one source of complaint, but made the process much more difficult since all we had for Rybka was a binary.
Your case is purely circumstantial and in my opinion, just a reflection of your incredibly strong internal biases. Yes, you were able to convince a group of like-minded people to vote with you on this. But I take Vas at his word when he says there is no Fruit code in R1.0 Beta, and I suspect that he could come up with the source for at least one of the many Beta releases if this matter ever goes to a real court of law.
But there is most certainly a copyright issue, and it might become an even bigger problem depending on the FSF.
I was going to quote a well known IP lawyer from Stanford, but I see you've already dissed him in another forum!
I can tell you unequivocally, Crafty was _far_ faster than Zappa. Cozzie and I wrote a paper together and ran a ton of test positions and compared results. Zappa was not fast. That wasn't its design goal. I will see if I can dig up the raw numbers and post a few, I'll just have to search thru my archives to find the data he sent...
My claim for Rybka 1.6.1 was _not_ that it was very similar to Rybka 1.0 beta. That is _your_ assertion here. I claimed, and proved, that Rybka 1.6.1 was a pure copy of Crafty. What, if anything, he changed is not clear, but the executable code is certainly identical. Whether he changed some of the eval tuning or not is unknown. It was weaker than Crafty based on CCT results, however. I suggested that he probably then ported the "engine" part of Fruit 2.1, the search, eval, ordering, etc, stuff to make it work in the Crafty bitboard framework, without changing the way things were done at all except for the data structure changes required. He ended up with a bitboard fruit. Whether it was faster than normal fruit or not nobody knows, because he also obfuscated program output to make it difficult to figure out what was going on internally. Search depths were altered. NPS was random noise. In short, he spent some effort on obfuscating what he had done. We originally thought he was doing this to hide some secret new idea he had found. In reality, he might have been simply trying to hide the origin of his program...
You might want to do a little research on copyright law and patent law as they apply to computer software. It is treated quite differently than the usual cases. The patent office refuses nearly any patent request for software algorithms, because of issues that a patent attorney can explain. We have had a couple of presentations by attorneys that work with patents and copyright issues, and I won't claim to be an expert, nor will I try to educate you on the issues since that is not my area of specialization (CS is). But things are not quite as you believe they are...
My claim for Rybka 1.6.1 was _not_ that it was very similar to Rybka 1.0 beta. That is _your_ assertion here. I claimed, and proved, that Rybka 1.6.1 was a pure copy of Crafty. What, if anything, he changed is not clear, but the executable code is certainly identical. Whether he changed some of the eval tuning or not is unknown. It was weaker than Crafty based on CCT results, however. I suggested that he probably then ported the "engine" part of Fruit 2.1, the search, eval, ordering, etc, stuff to make it work in the Crafty bitboard framework, without changing the way things were done at all except for the data structure changes required. He ended up with a bitboard fruit. Whether it was faster than normal fruit or not nobody knows, because he also obfuscated program output to make it difficult to figure out what was going on internally. Search depths were altered. NPS was random noise. In short, he spent some effort on obfuscating what he had done. We originally thought he was doing this to hide some secret new idea he had found. In reality, he might have been simply trying to hide the origin of his program...
You might want to do a little research on copyright law and patent law as they apply to computer software. It is treated quite differently than the usual cases. The patent office refuses nearly any patent request for software algorithms, because of issues that a patent attorney can explain. We have had a couple of presentations by attorneys that work with patents and copyright issues, and I won't claim to be an expert, nor will I try to educate you on the issues since that is not my area of specialization (CS is). But things are not quite as you believe they are...
I can tell you unequivocally, Crafty was _far_ faster than Zappa. Cozzie and I wrote a paper together and ran a ton of test positions and compared results. Zappa was not fast. That wasn't its design goal. I will see if I can dig up the raw numbers and post a few, I'll just have to search thru my archives to find the data he sent...
Great. If Crafty was 5 times faster than Zappa circa 3-1/2 years ago, then based on Cozzie's numbers, it would be faster than R1.0 Beta as well, and I will concede the point. But based on Cozzie's reaction after he tested Strelka, there is no doubt in my mind that it was the fastest searcher he had encountered.
My claim for Rybka 1.6.1 was _not_ that it was very similar to Rybka 1.0 beta. That is _your_ assertion here.
No. I have never ever made this assertion because I've always known they were two entirely separate animals. I do remember you stating that you believed that significant portions of 1.6.1, and by extension Crafty code, had migrated to R1.0 Beta. I never believed this either.
I claimed, and proved, that Rybka 1.6.1 was a pure copy of Crafty.
I would stipulate that R1.6.1 was based on a Crafty framework, and had a lot of Crafty pieces in place. I would also note that it was a terrible engine. I would not say that it was a pure copy. If it was a pure copy it wouldn't have sucked so bad and finished last in a CCT6 while you were finishing first. (Not too often a program can claim first and last place in the same tournament!
).
I suggested that he probably then ported the "engine" part of Fruit 2.1, the search, eval, ordering, etc, stuff to make it work in the Crafty bitboard framework, without changing the way things were done at all except for the data structure changes required. He ended up with a bitboard fruit.
Vas has said this didn't happen and I take him at his word.
Whether it was faster than normal fruit or not nobody knows, because he also obfuscated program output to make it difficult to figure out what was going on internally. Search depths were altered. NPS was random noise.
The obfuscation in R1.0 Beta has been well understood for years, and disappeared entirely when Strelka was released. Cozzie ran numbers 3-1/2 years ago.
We originally thought he was doing this to hide some secret new idea he had found. In reality, he might have been simply trying to hide the origin of his program...
Cozzie commented on this exact point 3-1/2 years ago regarding Strelka. It's pretty clear that he was trying to get people to believe that Rybka used a heavy duty evaluation function and was a slow searcher, when the reverse was actually true. Cozzie found a bunch of other novelties too. But the eval was plain vanilla. What Cozzie didn't note was significant similarity with Fruit, which he was also very familiar with.
You might want to do a little research on copyright law and patent law as they apply to computer software.
Software patents are not recognized in many countries and face an uncertain future in the US. This doesn't mean that it is difficult to patent algorithms. Almost any algorithm that will run in software will also run in firmware or dedicated hardware and algorithms in these formats are not difficult to patent. Once patented, at least in the hypothetical case, the claims would still be valid, even if the algorithm were implemented in software...
That said, patents are not useful in my line of work. It would be impossible to know if competitors were stepping on them, and you have to disclose what you're doing. This is a loser through and through. We rely on trade secrets instead (just as many in the chess engine community do). Luckily, our equipment includes processing and networking hardware in addition to software, so RE is a significant challenge. At one point, I considered it almost impossible, but the Israeli's proved me wrong by buying a system, taking apart all the boards (including delaminating some 12-layer boards to follow the traces, and building a replica system. After they were finished, the put all the pieces into a box and sent them back for warranty work. I think they call this chutzpah...
Great. If Crafty was 5 times faster than Zappa circa 3-1/2 years ago, then based on Cozzie's numbers, it would be faster than R1.0 Beta as well, and I will concede the point. But based on Cozzie's reaction after he tested Strelka, there is no doubt in my mind that it was the fastest searcher he had encountered.
My claim for Rybka 1.6.1 was _not_ that it was very similar to Rybka 1.0 beta. That is _your_ assertion here.
No. I have never ever made this assertion because I've always known they were two entirely separate animals. I do remember you stating that you believed that significant portions of 1.6.1, and by extension Crafty code, had migrated to R1.0 Beta. I never believed this either.
I claimed, and proved, that Rybka 1.6.1 was a pure copy of Crafty.
I would stipulate that R1.6.1 was based on a Crafty framework, and had a lot of Crafty pieces in place. I would also note that it was a terrible engine. I would not say that it was a pure copy. If it was a pure copy it wouldn't have sucked so bad and finished last in a CCT6 while you were finishing first. (Not too often a program can claim first and last place in the same tournament!
).I suggested that he probably then ported the "engine" part of Fruit 2.1, the search, eval, ordering, etc, stuff to make it work in the Crafty bitboard framework, without changing the way things were done at all except for the data structure changes required. He ended up with a bitboard fruit.
Vas has said this didn't happen and I take him at his word.
Whether it was faster than normal fruit or not nobody knows, because he also obfuscated program output to make it difficult to figure out what was going on internally. Search depths were altered. NPS was random noise.
The obfuscation in R1.0 Beta has been well understood for years, and disappeared entirely when Strelka was released. Cozzie ran numbers 3-1/2 years ago.
We originally thought he was doing this to hide some secret new idea he had found. In reality, he might have been simply trying to hide the origin of his program...
Cozzie commented on this exact point 3-1/2 years ago regarding Strelka. It's pretty clear that he was trying to get people to believe that Rybka used a heavy duty evaluation function and was a slow searcher, when the reverse was actually true. Cozzie found a bunch of other novelties too. But the eval was plain vanilla. What Cozzie didn't note was significant similarity with Fruit, which he was also very familiar with.
You might want to do a little research on copyright law and patent law as they apply to computer software.
Software patents are not recognized in many countries and face an uncertain future in the US. This doesn't mean that it is difficult to patent algorithms. Almost any algorithm that will run in software will also run in firmware or dedicated hardware and algorithms in these formats are not difficult to patent. Once patented, at least in the hypothetical case, the claims would still be valid, even if the algorithm were implemented in software...
That said, patents are not useful in my line of work. It would be impossible to know if competitors were stepping on them, and you have to disclose what you're doing. This is a loser through and through. We rely on trade secrets instead (just as many in the chess engine community do). Luckily, our equipment includes processing and networking hardware in addition to software, so RE is a significant challenge. At one point, I considered it almost impossible, but the Israeli's proved me wrong by buying a system, taking apart all the boards (including delaminating some 12-layer boards to follow the traces, and building a replica system. After they were finished, the put all the pieces into a box and sent them back for warranty work. I think they call this chutzpah...
You are using terms you don't understand. There is NPS search speed. There is time-to-depth search speed. I have no idea what Cozzie measured, because Rybka is dishonest about both the size of the tree it searched, and the nominal search depth reached. Zach spent 100x (at a minimum) more time than Cozzie looking at this issue. And by the time you factor in Mark Watkins work with the disassembler, and the entire panel, it is at least 1000x more effort. Which sounds more convincing? An example is the supposed "legal eagle" that said that since Crafty and Fruit are "free source" Vas might not have committed any improper act at all. If only he knew what he was talking about, because neither of those programs are "free source". Both have explicit license agreements, with Fruit's running for several pages in the form of the GPL. But certainly, feel free to take the "quick impression" result when it better suits your agenda, and ignore the much more in-depth and substantive information provided by the ICGA panel.
I'd be willing to bet that once Cozzie reads the report and looks at all the evidence, if he ever does, you would find that his remarks would change, and that your primary witness just went around the bowl and down the hole by recanting earlier statements after further consideration.
I'd be willing to bet that once Cozzie reads the report and looks at all the evidence, if he ever does, you would find that his remarks would change, and that your primary witness just went around the bowl and down the hole by recanting earlier statements after further consideration.
> and that your primary witness just went around the bowl and down the hole
OK, so Cozzie's study of the internals of R1.0 Beta, performed 3-1/2 years ago, doesn't jive with your world view, so you don't want to give it any consideration.
I'd be willing to bet that once Cozzie reads the report and looks at all the evidence, if he ever does, you would find that his remarks would change, and that your primary witness just went around the bowl and down the hole by recanting earlier statements after further consideration.
Cozzie was looking at the forest, not the trees. I very much doubt his views would change much, but everyone is entitled to update their worldview as they pick up more information. The bottom line though, is that he hasn't done this, and your supposition that he would fall into line is just that. A supposition.
I'd be willing to bet that once Cozzie reads the report and looks at all the evidence, if he ever does, you would find that his remarks would change, and that your primary witness just went around the bowl and down the hole by recanting earlier statements after further consideration.
Cozzie was looking at the forest, not the trees. I very much doubt his views would change much, but everyone is entitled to update their worldview as they pick up more information. The bottom line though, is that he hasn't done this, and your supposition that he would fall into line is just that. A supposition.
Cozzies view does not jive with _anybody's_ world view today. Clear enough? Find _one_ other programmer that has looked at the data. Cozzie did not have even 10% of what we have today. I have no idea how carefully he looked at it. And I won't try to guess. But his statements do not jive with many others, any one of which is just as qualified as he is, and a few quite a bit _more_ qualified.
My "supposition" as based on some pretty strong judgemental intuition, however. He is a computer scientist. He understands programming and compiling. Today's body of evidence is beyond overwhelming. And I can't imagine _any_ computer scientist that would look at it and dismiss it as "doesn't prove anything at all" as some here are trying to do.
My "supposition" as based on some pretty strong judgemental intuition, however. He is a computer scientist. He understands programming and compiling. Today's body of evidence is beyond overwhelming. And I can't imagine _any_ computer scientist that would look at it and dismiss it as "doesn't prove anything at all" as some here are trying to do.
Well, Cozzie always struck me as a very competent guy. His advantage over others was that he not only went through the Strelka code closely enough to pick up ideas for improving Zappa, but also had a free-wheeling discussion on several fine points with Vas. I'm still not sure why you would dismiss his review. It in no way takes away from more recent work by Zach, who is no doubt still in regular communication with Cozzie.
I am not "dismissing" his comments. His comments are simply "way out of date." there is 10x more data available in our report than was available when he looked at Zach's stuff...
Cozzie was naturally interested in search and evaluation, and of course didn't pay much attention to the UCI parser or time management code. I personally think that was both appropriate and sufficient. The more recent stuff focusing on feature similarities between Rybka and Fruit is "necessarily unscientific" and really doesn't perform any function other than giving the report the desired page count and weight.
Fine. What about Crafty vs Rybka 1.6.1? What about the code shown by Zach for Fruit 2.1 and Rybka 1.0 beta? Those are not "full of holes" they are extremely specific, and show that code was copied in _both_ cases. If you want to discount the evaluation comparison since the data structures are different, that is fine. But code was still copied, and the report _still_ shows that even when you exclude the "feature comparison" that you don't like. And the ICGA rules are crystal clear about copying code. The rules does not say "it is ok to copy time management, or UCI parsing, or initialization." Nor do they say "you must copy at least XXX consecutive lines before you violate this rule." It says "no code that is not original unless the author of that code is also a member of the team and listed."
There was no "page minimum" we had to meet. We wanted to show, as clearly as possible, with multiple techniques, that the program violated the ICGA rules. The report does that.
There was no "page minimum" we had to meet. We wanted to show, as clearly as possible, with multiple techniques, that the program violated the ICGA rules. The report does that.
What about Crafty vs Rybka 1.6.1?
Clearly copied code. And what is the relevance to ICGA?
What about the code shown by Zach for Fruit 2.1 and Rybka 1.0 beta?
Similarities in UCI parser and time management and data structures. No obvious copyright issues.
Nor do they say "you must copy at least XXX consecutive lines before you violate this rule."
This would have been more convincing if it didn't focus in on the fact that both Fruit and Rybka used a lot of MACs in the evaluation section, given that this is perfectly normal for a weight and sum implementation. As far as number of consecutive lines, without the symbol table, you would be hard pressed to positively identify two or three lines of copied code.
Nor do they say "you must copy at least XXX consecutive lines before you violate this rule." It says "no code that is not original unless the author of that code is also a member of the team and listed."
We've already discussed the fact that ALL of the engines are using common code for a number of purposes, so if this is really the rule, the competition should have been canceled.
There was no "page minimum" we had to meet. We wanted to show, as clearly as possible, with multiple techniques, that the program violated the ICGA rules. The report does that.
It's very common for snow jobs to pack on extra page count and weight to increase their stature in the eyes of the uninformed. In this case, most of the page count, and all of the recent page count, is based on a very cheesy statistical analysis which purports to show that Crafty and Rybka, and Fruit and Rybka have a more similar eval function than other engines. This is A) irrelevant since the evaluation function is an idea that can be implemented in numerous ways, and B) not accurate, as better statistical methods readily demonstrate.
Clearly copied code. And what is the relevance to ICGA?
What about the code shown by Zach for Fruit 2.1 and Rybka 1.0 beta?
Similarities in UCI parser and time management and data structures. No obvious copyright issues.
Nor do they say "you must copy at least XXX consecutive lines before you violate this rule."
This would have been more convincing if it didn't focus in on the fact that both Fruit and Rybka used a lot of MACs in the evaluation section, given that this is perfectly normal for a weight and sum implementation. As far as number of consecutive lines, without the symbol table, you would be hard pressed to positively identify two or three lines of copied code.
Nor do they say "you must copy at least XXX consecutive lines before you violate this rule." It says "no code that is not original unless the author of that code is also a member of the team and listed."
We've already discussed the fact that ALL of the engines are using common code for a number of purposes, so if this is really the rule, the competition should have been canceled.
There was no "page minimum" we had to meet. We wanted to show, as clearly as possible, with multiple techniques, that the program violated the ICGA rules. The report does that.
It's very common for snow jobs to pack on extra page count and weight to increase their stature in the eyes of the uninformed. In this case, most of the page count, and all of the recent page count, is based on a very cheesy statistical analysis which purports to show that Crafty and Rybka, and Fruit and Rybka have a more similar eval function than other engines. This is A) irrelevant since the evaluation function is an idea that can be implemented in numerous ways, and B) not accurate, as better statistical methods readily demonstrate.
I'm intrigued by this early Rybka version, is it 1.6.1? that is supposed to be a Crafty clone - sorry for my lack of knowledge here, but I was kept out of the wiki and discussion so am probably a bit rusty.
What exactly was/is the problem with this version?
What exactly was/is the problem with this version?
1.6.1 is a nearly complete crafty clone. reverse-engineering showed identical code for search, for evaluation, for move generation, for move ordering and selection, for making/unmaking moves, etc. Even worse, it showed a couple of well-known bugs in Crafty version 19.x that were copied into Rybka 1.6.1, some of these were in the form of useless code that at one point in time had a purpose, but not in 19.x, one was in the form of a bug-fix for endgame databases that were not even available when Rybka was written, yet the code to fix the egtb probe for certain cases was still present.
well, going along with your clone assertion for the time being, don't you encourage people to mess around with your code in order that they can test ideas and learn about chess programming? So where did he go wrong?
By violating the ICGA rule, perhaps? Rybka 1.6.1 competed in a CCT event, for example, and we use ICGA rules there + some additions to account for issues on a chess server that do not happen in ICGA events (yet). Or, look at main.c, very top:
* All rights reserved. No part of this program may be reproduced in any *
* form or by any means, for other than your personal use, without the *
* express written permission of the authors. This program may not be used *
* in whole, nor in part, to enter any computer chess competition without *
* written permission from the authors. Such permission will include the *
* requirement that the program be entered under the name "Crafty" so that *
* the program's ancestry will be known. *
* *
* Copies of the source must contain the original copyright notice intact. *
* *
* Any changes made to this software must also be made public to comply with *
* the original intent of this software distribution project. These *
* restrictions apply whether the distribution is being done for free or as *
* part or all of a commercial product. The authors retain sole ownership *
* and copyright on this program except for 'personal use' explained below. *
* *
* Personal use includes any use you make of the program yourself, either by *
* playing games with it yourself, or allowing others to play it on your *
* machine, and requires that if others use the program, it must be clearly *
* identified as "Crafty" to anyone playing it (on a chess server as one *
* example). Personal use does not allow anyone to enter this into a chess *
* tournament where other program authors are invited to participate. IE you *
* can do your own local tournament, with Crafty + other programs, since this *
* is for your personal enjoyment. But you may not enter Crafty into an *
* event where it will be in competition with other programs/programmers *
* without permission as stated previously. *
That _really_ seems to be crystal clear as to what one can and can't do. If they want to make a copy, and add or delete code, that's fine. If they want to test it in their own private gauntlets or tournaments, that is fine. But when you step outside that narrow box, the license agreement seems to be quite clear. And it was violated quite seriously in the current case...
* All rights reserved. No part of this program may be reproduced in any *
* form or by any means, for other than your personal use, without the *
* express written permission of the authors. This program may not be used *
* in whole, nor in part, to enter any computer chess competition without *
* written permission from the authors. Such permission will include the *
* requirement that the program be entered under the name "Crafty" so that *
* the program's ancestry will be known. *
* *
* Copies of the source must contain the original copyright notice intact. *
* *
* Any changes made to this software must also be made public to comply with *
* the original intent of this software distribution project. These *
* restrictions apply whether the distribution is being done for free or as *
* part or all of a commercial product. The authors retain sole ownership *
* and copyright on this program except for 'personal use' explained below. *
* *
* Personal use includes any use you make of the program yourself, either by *
* playing games with it yourself, or allowing others to play it on your *
* machine, and requires that if others use the program, it must be clearly *
* identified as "Crafty" to anyone playing it (on a chess server as one *
* example). Personal use does not allow anyone to enter this into a chess *
* tournament where other program authors are invited to participate. IE you *
* can do your own local tournament, with Crafty + other programs, since this *
* is for your personal enjoyment. But you may not enter Crafty into an *
* event where it will be in competition with other programs/programmers *
* without permission as stated previously. *
That _really_ seems to be crystal clear as to what one can and can't do. If they want to make a copy, and add or delete code, that's fine. If they want to test it in their own private gauntlets or tournaments, that is fine. But when you step outside that narrow box, the license agreement seems to be quite clear. And it was violated quite seriously in the current case...
Your copyright notice is not worth the 1s and 0s it is written in, your copyright notice can be breached at will without any legal redress on your part.
Why?
1. You do not enforce it
2. You publicly state several times you will not enforce it. It's a dead copyright notice.
Therefore you cannot screw somebody by using it.
ICGA is not CCT, whether or not you purloined the ICGA rules for that basement tournament is irrelevent, the ICGA itself has zero to do with it and I note that the ICGA do not appear to mention it.
Did Vas distribute this version to the public? You might have a stronger moral case if so, but legally not. And the CCT thing is obviously quite trivial, the version was weak, made little difference and is a giant SO WHAT?
Why try to destroy Vas on such a trivial basis? Bit pathetic, or obsessive or psychopathic or something or other.
Why?
1. You do not enforce it
2. You publicly state several times you will not enforce it. It's a dead copyright notice.
Therefore you cannot screw somebody by using it.
ICGA is not CCT, whether or not you purloined the ICGA rules for that basement tournament is irrelevent, the ICGA itself has zero to do with it and I note that the ICGA do not appear to mention it.
Did Vas distribute this version to the public? You might have a stronger moral case if so, but legally not. And the CCT thing is obviously quite trivial, the version was weak, made little difference and is a giant SO WHAT?
Why try to destroy Vas on such a trivial basis? Bit pathetic, or obsessive or psychopathic or something or other.
Topic Rybka Support & Discussion / Rybka Support / 14 of 34 = not a single panel member believed him innocent
Powered by mwForum 2.27.4 © 1999-2012 Markus Wichitill