I'd like to move on from the NN weights copyright thread: it seems obvious to me that in the case of SF and FF2, CB would, if challenged, be obliged to release the NN weights file to GPL. It annoys me that intelligent people are arguing against that, but:
1. As I've stated in detail, it actually has no practical consequence (brief summary: people who want the strongest program will download SF, people who buy FF2 will be getting a lot more than the NN)
2. Historically (and "currently" IMO - but this is not the place), there have been many cases of large numbers of intelligent people being wrong with FAR more pernicious consequences than this GPL dispute
An interesting question that does arise though: suppose I wrote a new EF, I wanted to keep the source closed, and I didn't want to write the rest of the chess program. I have identified a suitable GPL chess program (CP) to put my new EF in. What could I do to achieve this?
A couple of ideas:
1. Make a fork of CP with the EF removed, but able to get an eval from a DLL. Then release my closed source EF (CSEF) as a DLL. I think the constraint here would be that I would not be allowed to package the modified CP and DLL together, as it would then be in violation of the GPL.
2. Again make a fork of the CP with the EF removed, but this time, enable it to request an eval from a service. I would then compile my CSEF as some sort of a service (actual service, pipe, command line etc). I believe that I could then bundle the two parts together as a package and not be in violation of the GPL. The drawback would be performance (no way of getting an eval as a service is going to be as quick as having it in the same program), but from my reading of the GPL FAQ, I would not then be under an obligation to GPL my CSEF
How A New EF Could Get Around The GPL
Moderators: hgm, Dann Corbit, Harvey Williamson
-
towforce
- Posts: 11476
- Joined: Thu Mar 09, 2006 12:57 am
- Location: Birmingham UK
How A New EF Could Get Around The GPL
Writing is the antidote to confusion.
It's not "how smart you are", it's "how are you smart".
Your brain doesn't work the way you want, so train it!
It's not "how smart you are", it's "how are you smart".
Your brain doesn't work the way you want, so train it!
-
gonzochess75
- Posts: 208
- Joined: Mon Dec 10, 2018 3:29 pm
- Full name: Adam Treat
Re: How A New EF Could Get Around The GPL
I am assuming EF stands for Evaluation Function...towforce wrote: ↑Sat Feb 27, 2021 12:56 pm An interesting question that does arise though: suppose I wrote a new EF, I wanted to keep the source closed, and I didn't want to write the rest of the chess program. I have identified a suitable GPL chess program (CP) to put my new EF in. What could I do to achieve this?
Do you own the copyright to the 'suitable GPL chess program (CP)' in this hypothetical? If so, then all you need do is change your license to allow it. If you don't, then you can't. If you try and modify CP to technologically circumvent the GPL then you are breaking the spirit of the license clearly. Moreover, I don't think there is any clever technological solution to breaking someone elses copyright license. The authors of CP have exclusive rights over their work. They set the terms and conditions you have to meet for the privilege of copying, modifying, or distributing their work. Try to circumvent it and you might very well find yourself in court.
-
towforce
- Posts: 11476
- Joined: Thu Mar 09, 2006 12:57 am
- Location: Birmingham UK
Re: How A New EF Could Get Around The GPL
gonzochess75 wrote: ↑Sat Feb 27, 2021 4:15 pmI am assuming EF stands for Evaluation Function...towforce wrote: ↑Sat Feb 27, 2021 12:56 pm An interesting question that does arise though: suppose I wrote a new EF, I wanted to keep the source closed, and I didn't want to write the rest of the chess program. I have identified a suitable GPL chess program (CP) to put my new EF in. What could I do to achieve this?
Yes - apologies for all the abbreviations: I'm happy to expand them all if anyone else doesn't know any of them.
Do you own the copyright to the 'suitable GPL chess program (CP)' in this hypothetical? If so, then all you need do is change your license to allow it. If you don't, then you can't. If you try and modify CP to technologically circumvent the GPL then you are breaking the spirit of the license clearly. Moreover, I don't think there is any clever technological solution to breaking someone elses copyright license. The authors of CP have exclusive rights over their work. They set the terms and conditions you have to meet for the privilege of copying, modifying, or distributing their work. Try to circumvent it and you might very well find yourself in court.
I disagree. I think I can do each of the following:
1. fork the chess program so that the EF is in a separate compiled link library (a DLL in Windows)
2. build an original new DLL EF with closed source
3. offer the closed source DLL as a compiled program with closed source
4. send the user the DLL only and tell the user they can run the DLL with the forked chess program
Which of the above could I not do?
What I would not be able to do is to offer them as a ready made bundle.
I also think, from the GPL FAQ, that I could bundle them by making the EF a service of some kind - but obviously that would entail a big performance hit.
Writing is the antidote to confusion.
It's not "how smart you are", it's "how are you smart".
Your brain doesn't work the way you want, so train it!
It's not "how smart you are", it's "how are you smart".
Your brain doesn't work the way you want, so train it!
-
Fulvio
- Posts: 395
- Joined: Fri Aug 12, 2016 8:43 pm
-
towforce
- Posts: 11476
- Joined: Thu Mar 09, 2006 12:57 am
- Location: Birmingham UK
Re: How A New EF Could Get Around The GPL
To be fair, that would be a very clean solution!
Writing is the antidote to confusion.
It's not "how smart you are", it's "how are you smart".
Your brain doesn't work the way you want, so train it!
It's not "how smart you are", it's "how are you smart".
Your brain doesn't work the way you want, so train it!