World Chess Computer Champion?

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

User avatar
hgm
Posts: 27789
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: World Chess Computer Champion?

Post by hgm »

bob wrote:The issue I was talking about is not with the crafty license, but with a perfectly "legal" derivative of Crafty (pretend the EULA does not exist and it is GPL). The ICGA maintains a no-derivative rule. So which gets first right of refusal, original or derivative? I don't want N copies of stockfish in a single event any more or less than I don't want N copies of ippolit or another open-source program.
As soon as an author stamps 'GPL' on his code, he basically gives up any form of control over what that code can be used for (as long as it remains open). I would say that includes (from a legal perspective) the right to refuse permission to enter it in a WCCC (or any other tourney). So there is no 'right of first refusal'.

If that is not what the author wants, he should think twice before stamping his code with 'GPL'. I am sure that one can easily design a 'copy-left'-type license that virally attaches the condition 'no entry in official tournaments' to the published code or even 'whatever code you add to this and modifications you make to this, you will have to pubish the source, and Mr XXX will then will have the exclusive right to enter it in any World Championship'. If the original author wants to keep that right, he should use such a license, not a plain GPL.

Consider a case where a GPL'ed project has a minor contributor that is not the original author. Would it be reasonable to grant that contributor the 'right of refusal'? The GPL is not designed to make any distinction in the rights of various contributors, based on how much they contributed. So I think the only logical interpretation is that no contributer has that right.

Only rules imposed by the tourney organizers themselves can resolve this. And there seems little reason to go contrary to the law here. The only right that the copyright holders retain over GPL'ed code is to enforce that the full source of any program that includes it remains open. Everything else they gave up. For public domain they did not even keep that right, and gave up everything.

So I would say, if you GPL'ed Crafty, and Rybka turned out to be a Crafty derivative... Tough luck for you. You would have to play a qualifier against Rybka. Fortunately you were wise enough not to put yourself in that position.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: World Chess Computer Champion?

Post by bob »

hgm wrote:
bob wrote:The issue I was talking about is not with the crafty license, but with a perfectly "legal" derivative of Crafty (pretend the EULA does not exist and it is GPL). The ICGA maintains a no-derivative rule. So which gets first right of refusal, original or derivative? I don't want N copies of stockfish in a single event any more or less than I don't want N copies of ippolit or another open-source program.
As soon as an author stamps 'GPL' on his code, he basically gives up any form of control over what that code can be used for (as long as it remains open). I would say that includes (from a legal perspective) the right to refuse permission to enter it in a WCCC (or any other tourney). So there is no 'right of first refusal'.

If that is not what the author wants, he should think twice before stamping his code with 'GPL'. I am sure that one can easily design a 'copy-left'-type license that virally attaches the condition 'no entry in official tournaments' to the published code or even 'whatever code you add to this and modifications you make to this, you will have to pubish the source, and Mr XXX will then will have the exclusive right to enter it in any World Championship'. If the original author wants to keep that right, he should use such a license, not a plain GPL.

Consider a case where a GPL'ed project has a minor contributor that is not the original author. Would it be reasonable to grant that contributor the 'right of refusal'? The GPL is not designed to make any distinction in the rights of various contributors, based on how much they contributed. So I think the only logical interpretation is that no contributer has that right.

Only rules imposed by the tourney organizers themselves can resolve this. And there seems little reason to go contrary to the law here. The only right that the copyright holders retain over GPL'ed code is to enforce that the full source of any program that includes it remains open. Everything else they gave up. For public domain they did not even keep that right, and gave up everything.

So I would say, if you GPL'ed Crafty, and Rybka turned out to be a Crafty derivative... Tough luck for you. You would have to play a qualifier against Rybka. Fortunately you were wise enough not to put yourself in that position.
I don't see that as a problem. GPL does not forbid ICGA from saying "We will choose which to allow because we only allow one entrant from a given source code." ICGA can then simply say "original author will be admitted before any derivative author, unless the original author chooses to not enter."
User avatar
hgm
Posts: 27789
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: World Chess Computer Champion?

Post by hgm »

Yes, they can say that. But they would have to say at, and theire ruless don't say it now. This is why I bring it up. The problem is not that it cannot be solved. The problem is that the current rules do not solve it.

You could make a rule
a) in case of a conflict about who can use the code, the ICGA decides as it sees fit.

This would give maximum power to the ICGA to do 'the right thing'. It would also be IMO the best recipe for trouble and discontent. I'd rather have an objective rule that would allow would-be participants to predict in advance what to expect. Also, if two former collaborators would fall out, and both claim the right to enter their version of the code, you would draw the ICGA into their conflict, which doesn't seem wise. So I would like to see rules like:

b) the one who made the earliest contribution to the common code will have priority (no matter how small the contribution was)
or
c) the one who made the largest contribution to the common code will have priority
or
d) the one who added the most code of his own to the common code will have priority
or
e) the one who added most Elo to the common code has priority
or
f) the one who currently holds most Elo in total

All these rules have their upsides and downsides. E.g. (e) or (f) are good for spectators, but bad because they require an outside source for defining Elo, and for the others you can conceive situations in which they would be highly unfair, and the facts themselves on which you base your decisions can be disputed.

So why not let them play for it? The whole purpose of the event is to play Chess programs against each other. Why design artificial criteria to keep people out? No more impartial judge than the Chess board.