I'm afraid, not.mclane wrote:you should plan a second career as kabberettist.
But could be a good astrologer, yes. Speaks much but says nothing.
Moderator: Ras
I'm afraid, not.mclane wrote:you should plan a second career as kabberettist.
David Dahlem wrote:Hi Normankranium wrote:Hi Dave,David Dahlem wrote:The Strelka source and the Fruit source has been made public, right? I was just wondering ... Has anyone done detailed comparison, and posted the results? What percentage of Strelka and Fruit are identical, or very similar.bob wrote: (2) the rybka/fruit/strelka issue is an interesting question because of GPL issues. He pointed out something I had not considered previously, namely that strelka/fruit have lots of similarities, and then Vas claimed that strelka was so much like rybka 1 that he was claiming it as his own code. Once you digest both of those points, there could be an issue one might have to deal with at some point down the road. The GPL is a legal document that can't be waved away.
.
Regards
Dave
yes, i have spent considerable time on it, but i'm loathe to post anything.
...i believe the subject is just too controversial, sensitive, and risky for all concerned at this point.
don't forget, Rybka, Vas, etc., are enormously popular and strongly supported, an icon of the community. anything negative may be construed as blasphemy. (look what just happened to CT). it's clear that there are extremely powerful business interests concerned. one must be very careful when it comes to powerful players, money, profits, prestige, etc. for ex: the vast majority of 'corporate' whistleblowers are ostracized from society, harassed, made to suffer, and fired. it seems that challenging these powerful entities is akin to suicide.
in addition, unfortunately..., i think at this moment it may be far to easy for anyone concerned to simply avow or disavow any specific piece of code. (and if it's Juri's word against Vas and his legal team??)
Please Rolf! go easy with your response!!
My question was about the public sources of Strelka and Fruit. I didn't mention Rybka or Vas at all. And how can anyone disavow code that has been made public?
Regards
Dave
Yes, i understand, and knew that before i posted my question. But what would be the problem with simply showing the similarities in the Fruit/Strelka code, without making any false claims? Would this violate the CCC charter, or cause any legal problems? I am sure it would further stir up this hornets nest.kranium wrote:David Dahlem wrote:Hi Normankranium wrote:Hi Dave,David Dahlem wrote:The Strelka source and the Fruit source has been made public, right? I was just wondering ... Has anyone done detailed comparison, and posted the results? What percentage of Strelka and Fruit are identical, or very similar.bob wrote: (2) the rybka/fruit/strelka issue is an interesting question because of GPL issues. He pointed out something I had not considered previously, namely that strelka/fruit have lots of similarities, and then Vas claimed that strelka was so much like rybka 1 that he was claiming it as his own code. Once you digest both of those points, there could be an issue one might have to deal with at some point down the road. The GPL is a legal document that can't be waved away.
.
Regards
Dave
yes, i have spent considerable time on it, but i'm loathe to post anything.
...i believe the subject is just too controversial, sensitive, and risky for all concerned at this point.
don't forget, Rybka, Vas, etc., are enormously popular and strongly supported, an icon of the community. anything negative may be construed as blasphemy. (look what just happened to CT). it's clear that there are extremely powerful business interests concerned. one must be very careful when it comes to powerful players, money, profits, prestige, etc. for ex: the vast majority of 'corporate' whistleblowers are ostracized from society, harassed, made to suffer, and fired. it seems that challenging these powerful entities is akin to suicide.
in addition, unfortunately..., i think at this moment it may be far to easy for anyone concerned to simply avow or disavow any specific piece of code. (and if it's Juri's word against Vas and his legal team??)
Please Rolf! go easy with your response!!
My question was about the public sources of Strelka and Fruit. I didn't mention Rybka or Vas at all. And how can anyone disavow code that has been made public?
Regards
Dave
Hi Dave,
Vas says that Strelka is his, i.e. identical to Rybka:, so if we're talking about Strelka, i guess (acccording to Vas) we're talking about Rybka:
http://rybkaforum.net/cgi-bin/rybkaforu ... 8#pid39198
Best regards Dave!
Norm
Dave-David Dahlem wrote:Yes, i understand, and knew that before i posted my question. But what would be the problem with simply showing the similarities in the Fruit/Strelka code, without making any false claims? Would this violate the CCC charter, or cause any legal problems? I am sure it would further stir up this hornets nest.kranium wrote:David Dahlem wrote:Hi Normankranium wrote:Hi Dave,David Dahlem wrote:The Strelka source and the Fruit source has been made public, right? I was just wondering ... Has anyone done detailed comparison, and posted the results? What percentage of Strelka and Fruit are identical, or very similar.bob wrote: (2) the rybka/fruit/strelka issue is an interesting question because of GPL issues. He pointed out something I had not considered previously, namely that strelka/fruit have lots of similarities, and then Vas claimed that strelka was so much like rybka 1 that he was claiming it as his own code. Once you digest both of those points, there could be an issue one might have to deal with at some point down the road. The GPL is a legal document that can't be waved away.
.
Regards
Dave
yes, i have spent considerable time on it, but i'm loathe to post anything.
...i believe the subject is just too controversial, sensitive, and risky for all concerned at this point.
don't forget, Rybka, Vas, etc., are enormously popular and strongly supported, an icon of the community. anything negative may be construed as blasphemy. (look what just happened to CT). it's clear that there are extremely powerful business interests concerned. one must be very careful when it comes to powerful players, money, profits, prestige, etc. for ex: the vast majority of 'corporate' whistleblowers are ostracized from society, harassed, made to suffer, and fired. it seems that challenging these powerful entities is akin to suicide.
in addition, unfortunately..., i think at this moment it may be far to easy for anyone concerned to simply avow or disavow any specific piece of code. (and if it's Juri's word against Vas and his legal team??)
Please Rolf! go easy with your response!!
My question was about the public sources of Strelka and Fruit. I didn't mention Rybka or Vas at all. And how can anyone disavow code that has been made public?
Regards
Dave
Hi Dave,
Vas says that Strelka is his, i.e. identical to Rybka:, so if we're talking about Strelka, i guess (acccording to Vas) we're talking about Rybka:
http://rybkaforum.net/cgi-bin/rybkaforu ... 8#pid39198
Best regards Dave!
Norm
Regards
Dave
But this what is exsactly happening in our example. Vas once had a beta for free and some took this as sort of invitation to get the source code by r.eng. But apparently nobody was keen enough to publish Rybka stuff. So the following happened. Evil criminals IMO created a copy of Rybka 1 beta which was for free and called it Str___ and threatened to publish Str__ as open source. So here you hasve a clear mafia-like threat/ blackmail. To end all that Vas simply claimed that Str__ is his own program before the criminals could continue their blackmail. So that we have actually the following threat in a remake of the former mafia-like crime, Bob.bob wrote: I don't follow the thread that leads from "reverse engineering" to "wrong". If you don't want someone to reverse engineer your idea, you patent the idea, then there is no issue. But often, in any discipline, simply knowing that something is possible leads to how it was done. If you don't know that something is possible, then you might not be willing to expend the resources to figure out how. That happens all the time and I am mystified as to how this is "wrong".
Tony wrote:And I disagreed back then. And most (almost all) programmers I have met during tournements agreed with me. But no comercial did so openly. And because they didn't, I was overshouted by all the "what do you care", "it plays well, so Vas is holy" and "you must be jalous" posters.Rolf wrote:Is Dann Corbit for you a nobody? He and two others have analysed the dirty copy. Result, read Corbit for yourself, nothing. That was almost 2 years ago. And now it's kosher if a Theron, who has practically left computerchess Tiger, he is reserved a stage here for such a smear campaign. You say he never insulted with bad wording or such. I say the whole campaign is it. Last time all was discussed, now the same procedure as every year. Not kosher IMO. Ok, I think my position has become clear enough. Technically I cant tell anything for obvious reasons.bob wrote: I'll state my view one more time. The node count obfuscation has _no_ justification, other than the simple fact that it is used to hide internal details. I don't have a problem with the "hiding". I do have a problem with knowingly producing bogus values. If you want to hide something, hide it. Don't disguise it. That's simple enough.
As far as the "clone issue" my only point was that by claiming strelka, those that use the argument to others of "you haven't seen the source for Rybka so you can't possibly conclude anything about it" are simply wrong. Because since Vas claimed Strelka as _his_ code, a clone of Rybka 1, then he has inadvertantly put "his" source code in a public light, where inspection is possible...
I have not drawn any conclusion about whether Rybka is a derivative of Fruit, gnuchess, or sasquatch. I only commented on the fact that strelka is there for anyone to look at, analyze, and draw conclusions that apply to Rybka 1 as well. I've implied nothing more, nothing less. The node counts are bogus, and intentionally so. As far as the clone issue, I have not looked at any of this and don't intend to.
Now a commercial speaks up. And I remembered people about Vas claiming the Strelka code. ( The fact that Bob thinks Christophe wrote that, proves how the human brain works)
I was right back then, and I am now.
The only chessprogrammers I met, that diagree with me stated "I actually don't care about chess tournements"
Tony
Vas claims proves nothing.tiger wrote:Tony wrote:And I disagreed back then. And most (almost all) programmers I have met during tournements agreed with me. But no comercial did so openly. And because they didn't, I was overshouted by all the "what do you care", "it plays well, so Vas is holy" and "you must be jalous" posters.Rolf wrote:Is Dann Corbit for you a nobody? He and two others have analysed the dirty copy. Result, read Corbit for yourself, nothing. That was almost 2 years ago. And now it's kosher if a Theron, who has practically left computerchess Tiger, he is reserved a stage here for such a smear campaign. You say he never insulted with bad wording or such. I say the whole campaign is it. Last time all was discussed, now the same procedure as every year. Not kosher IMO. Ok, I think my position has become clear enough. Technically I cant tell anything for obvious reasons.bob wrote: I'll state my view one more time. The node count obfuscation has _no_ justification, other than the simple fact that it is used to hide internal details. I don't have a problem with the "hiding". I do have a problem with knowingly producing bogus values. If you want to hide something, hide it. Don't disguise it. That's simple enough.
As far as the "clone issue" my only point was that by claiming strelka, those that use the argument to others of "you haven't seen the source for Rybka so you can't possibly conclude anything about it" are simply wrong. Because since Vas claimed Strelka as _his_ code, a clone of Rybka 1, then he has inadvertantly put "his" source code in a public light, where inspection is possible...
I have not drawn any conclusion about whether Rybka is a derivative of Fruit, gnuchess, or sasquatch. I only commented on the fact that strelka is there for anyone to look at, analyze, and draw conclusions that apply to Rybka 1 as well. I've implied nothing more, nothing less. The node counts are bogus, and intentionally so. As far as the clone issue, I have not looked at any of this and don't intend to.
Now a commercial speaks up. And I remembered people about Vas claiming the Strelka code. ( The fact that Bob thinks Christophe wrote that, proves how the human brain works)
It is correct that you were the first one to remind us of this fact.
I did not even think about it when the thread started.
At the moment you reminded us of Vas' claim, I immediately remembered this week when I was reading the Strelka source code and did not believe it was Rybka, thinking instead that it was Fruit modified to play like Rybka. And then Vas came and confirmed it was Rybka. Wow!
// Christophe
Vas said "vast sections of code", and even compared the evaluations. Rick Fadden compared Rybka to Strelka and said they are identical. I've been comparing Rybka with Strelka and Fruit and there are definite similarities. The move generator is nothing, Strelka and Fruit have many similarities. It will be a while before we have enough evidence, so I'll give you a little something to chew on.Uri Blass wrote:Vas claims proves nothing.
Vas probably had no time to read every line of strelka.
I think that move generator is the basis of the chess program.
Before I had even alpha beta I had a move generator.
The move generator of strelka has nothing to do with fruit
and I assume that Vas saw that it is his code so the natural response is to say that it is his code.
I doubt if Vas had time to read every line of strelka and reading part of it was enough to identify that he read rybka's code so he said that strelka is his own code.
Uri
Code: Select all
true_nodes = 0;
pos_info_entry = Pos_info;
memset(list_root, 0, 256 * sizeof(struct list_t));
if (evaluate(pos_info_entry)) {
gen_evasions(list_root, ~(pos_info_entry->mob[1]));
}
else {
gen_captures(list_root, Board->mp[White], Board->mp[Black]);
for (i = 0; list_root[i].move != 0; i++);
gen_quiet_moves(list_root + i, pos_info_entry->mob[1], -1, -1, -1);
for (k = i; list_root[k].move != 0; k++) list_root[k].score = 0;
}
if (setjmp(jmp_buffer) != 0) return;
num_moves = 0;
for (i = 0; list_root[i].move != 0; i++) {
move_do(list_root[i].move, undo);
evaluate(pos_info_entry);
legal = !ILLEGAL_POSITION;
move_undo(list_root[i].move, undo);
if (legal) { list_root[num_moves].move = list_root[i].move; num_moves++; }
}
list_root[num_moves].move = 0;
// Ñëåäóþùóþ ñòðîêó ìîæíî äîáàâëÿòü òîëüêî ïîñëå ãðàìîòíîãî íàïèñàíèÿ MultiPV,
// èíà÷å ìîæåò áûòü îøèáêà.
// if (num_moves <= 1) { depth_is_limited = 1; depth_limit = 4; }
trans_set_date((trans_date + 1) % DateSize);
for (i = 0; i < 256; i++) {
(Pos_info + i)->killer1 = 0;
(Pos_info + i)->killer2 = 0;
}
memset(History, 0x100, 12 * 64 * sizeof(int));
entry = trans_entry + (KEY_INDEX & trans_mask);
for (i = 0; i < ClusterSize; i++, entry++) if (entry->lock == KEY_LOCK) trans_
move = entry->move;
if (num_moves >= 2) {
for (i = num_moves - 1; i >= 0; i--) {
move = list_root[i].move;
if (move == trans_move) score = 0x7FFFFFFF;
else {
from = MOVE_FROM(move);
to = MOVE_TO(move);
piece = Board->square[from];
capture = Board->square[to];
if (capture != 0) score = (capture * 16) - piece + 0x7FFFFEFF;
else score = move_order(move);
}
for (k = i; score < list_root[k + 1].score; k++) {
list_root[k].move = list_root[k + 1].move;
list_root[k].score = list_root[k + 1].score;
}
list_root[k].move = move;
list_root[k].score = score;
}
}
Code: Select all
gen_legal_moves(SearchInput->list,SearchInput->board);
if (LIST_SIZE(SearchInput->list) <= 1) {
SearchInput->depth_is_limited = true;
SearchInput->depth_limit = 4; // was 1
}
// SearchInfo
if (setjmp(SearchInfo->buf) != 0) {
ASSERT(SearchInfo->can_stop);
ASSERT(SearchBest->move!=MoveNone);
search_update_current();
return;
}
// SearchRoot
list_copy(SearchRoot->list,SearchInput->list);
// SearchCurrent
board_copy(SearchCurrent->board,SearchInput->board);
my_timer_reset(SearchCurrent->timer);
my_timer_start(SearchCurrent->timer);
// init
trans_inc_date(Trans);
sort_init();
search_full_init(SearchRoot->list,SearchCurrent->board);
Code: Select all
for (height = 0; height < HeightMax; height++) {
for (i = 0; i < KillerNb; i++) Killer[height][i] = MoveNone;
}
// history
for (i = 0; i < HistorySize; i++) History[i] = 0;
for (i = 0; i < HistorySize; i++) {
HistHit[i] = 1;
HistTot[i] = 1;
}
Code: Select all
trans_move = MoveNone;
if (UseTrans) trans_retrieve(Trans,board->key,&trans_move,&trans_min_depth,&t
rans_max_depth,&trans_min_value,&trans_max_value);
note_moves(list,board,0,trans_move);
list_sort(list)