Stockfish: Our lawsuit against ChessBase

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

Moderators: hgm, Rebel, chrisw

gaard
Posts: 447
Joined: Mon Jun 07, 2010 3:13 am
Location: Holland, MI
Full name: Martin W

Re: Stockfish: Our lawsuit against ChessBase

Post by gaard »

dkappe wrote: Mon Aug 30, 2021 5:29 am Come on guys, it’s not that complicated. You say that FF2 is an ongoing GPLv3 violation. I say it isn’t. We’ll know sooner or later what the courts say.
It's not that complicated. Who said FF2 was an ongoing GPLv3 violation? And why?
dkappe
Posts: 1631
Joined: Tue Aug 21, 2018 7:52 pm
Full name: Dietrich Kappe

Re: Stockfish: Our lawsuit against ChessBase

Post by dkappe »

gaard wrote: Mon Aug 30, 2021 5:37 am
dkappe wrote: Mon Aug 30, 2021 5:29 am Come on guys, it’s not that complicated. You say that FF2 is an ongoing GPLv3 violation. I say it isn’t. We’ll know sooner or later what the courts say.
It's not that complicated. Who said FF2 was an ongoing GPLv3 violation? And why?
Sweet! Let Vondele know he can drop the lawsuit. :lol:
Fat Titz by Stockfish, the engine with the bodaciously big net. Remember: size matters. If you want to learn more about this engine just google for "Fat Titz".
AndrewGrant
Posts: 1754
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: Stockfish: Our lawsuit against ChessBase

Post by AndrewGrant »

dkappe wrote: Mon Aug 30, 2021 5:29 am Come on guys, it’s not that complicated. You say that FF2 is an ongoing GPLv3 violation. I say it isn’t. We’ll know sooner or later what the courts say.
I'm not saying its an ongoing violation. And neither is the Stockfish team .....
#WeAreAllDraude #JusticeForDraude #RememberDraude #LeptirBigUltra
"Those who can't do, clone instead" - Eduard ( A real life friend, not this forum's Eduard )
AndrewGrant
Posts: 1754
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: Stockfish: Our lawsuit against ChessBase

Post by AndrewGrant »

dkappe wrote: Mon Aug 30, 2021 5:43 am
gaard wrote: Mon Aug 30, 2021 5:37 am
dkappe wrote: Mon Aug 30, 2021 5:29 am Come on guys, it’s not that complicated. You say that FF2 is an ongoing GPLv3 violation. I say it isn’t. We’ll know sooner or later what the courts say.
It's not that complicated. Who said FF2 was an ongoing GPLv3 violation? And why?
Sweet! Let Vondele know he can drop the lawsuit. :lol:
Its been about a month now, but have you still not read the original post of this entire thread?
#WeAreAllDraude #JusticeForDraude #RememberDraude #LeptirBigUltra
"Those who can't do, clone instead" - Eduard ( A real life friend, not this forum's Eduard )
User avatar
AlexChess
Posts: 1502
Joined: Sat Feb 06, 2021 8:06 am
Full name: Alex Morales

Re: Stockfish: Our lawsuit against ChessBase

Post by AlexChess »

I'd only like to know who will be the author of Chessbase Fritz 18 engine risky signing their contract :lol:
Last edited by AlexChess on Mon Aug 30, 2021 2:48 pm, edited 4 times in total.
Chess engines and dedicated chess computers fan since 1981 :D Mac mini M1 8GB-256GB, Windows 11 & Ubuntu ARM64.
ProteusSF Dev Forum TROLLS KINDERGARTEN
User avatar
AlexChess
Posts: 1502
Joined: Sat Feb 06, 2021 8:06 am
Full name: Alex Morales

Re: Stockfish: Our lawsuit against ChessBase

Post by AlexChess »

Boring discussion. :D

To a common chess engines fan like me without any commercial interest, the only meaningful question is:

Can I continue to use not GPL conpliants engines and NNUEs, NOT SHARING THEM and only for PRIVATE use? The answer is: YES

[SOURCES: https://opensource.stackexchange.com/qu ... ork-models https://www.whitesourcesoftware.com/res ... -answered/]

1) Does the GPL license require the author to release the modified source code?
GPL requires you to release the modified source code only if you release the modified program. If you’ve modified a program’s source code for personal use, there’s no need to release its source code. However, if you make the modified program available to the public, you will have to make the code public too.



2) Are neural network models code? Importantly, are they code that directly combines with the GPL-licensed code under copyright? It is instead possible that they are data. If they are data, it is unlikely that they form a combined work with the GPL-licensed code that process them. There is a related GPL FAQ item about GPL code processing non-GPL data:

If a programming language interpreter is released under the GPL, does that mean programs written to be interpreted by it must be under GPL-compatible licenses?

When the interpreter just interprets a language, the answer is no. The interpreted program, to the interpreter, is just data; a free software license like the GPL, based on copyright law, cannot limit what data you use the interpreter on. You can run it on any data (interpreted program), any way you like, and there are no requirements about licensing that data to anyone.

Are neural network models even copyrightable? If neural networks are created in such a way that it does not require a "modicum of creativity" from a human (in the United States -- other jurisdictions likely have similar rules) to create any particular neural network, they are not copyrightable. In general, the choice of mathematical parameters (or selection of input training sources) for a mathematical, automated process does not satisfy this criterion for copyrightability. If neural networks are not copyrightable, I would not expect that they form a combined work with the program under copyright. (Note they a neural network model could still be covered by sui generis database rights in some jurisdictions, without changing the impact of this consideration.)
If the answer to either of these is negative, then the GPL requirements do not apply.

Neural network models certainly seem like data. Tensorflow saves models as protocol buffers: "Protocol buffers are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data – think XML, but smaller, faster, and simpler." (developers.google.com/protocol-buffers/?hl=en) But programming language interpreters are very different from mobile applications since the mobile application is meant read a specific neural network model (and maybe future updated versions of the model). – emettomet Jun 14 '18 at 19:25

I am 99% certain neural network models are NOT copyrightable. If neural network models were copyrightable, then someone would have copyrighted one. But a search of "neural networks" on the US Copyright Office website turns up research papers, books, and images about neural networks but no neural network models. – emettomet Jun 15 '18 at 0:01
If I understand the OP correctly, the model seems to be an essential part of the system, not just arbitrarily exchangeable like an interpreted program for an interpreter. So are you really sure it is "unlikely that they form a combined work"? – Doc Brown Jun 15 '18 at 22:50

@DocBrown I agree it's counterintuitive, and maybe I'm wrong (I framed my answer as questions instead of statements, after all!). My argument goes something like this: consider an AGPL web app that uses a config file with server-specific secret keys. Insofar as those keys are just data, they don't need to be made available to users as part of the corresponding source (but the config file in general does, with meaningful if different values). I'm arguing that a NN model is a massively scaled-up version of that, but which has the same copyright consequences. Again, I might be wrong. – apsillers♦ Jun 16 '18 at 1:13
In other words, my thesis here is that two versions of the same app that are identical except containing different NN models have identical copyrighted content. I realize my answer doesn't make that terribly clear, and perhaps I ought to add a bit more uncertainty on that score. – apsillers♦ Jun 16 '18 at 1:16
Show 6 more comments

So you have an application that uses GPL code, even if part of the project can be separated and used under different terms (MIT), the project as a whole needs to comply with the GPL.

Note that the overall project design can also impact on what you can do. If the neural network is a library that links with the main program it can fall into GPL but if it is a separate program that supplies data to the main program it would not.

While data output from a GPL program is not covered by the GPL terms, Section 1 of the GPL states -

The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities.

So if your training data files are stored or converted to C/C++ code that gets compiled into the final app, then the training data will fall into the GPL.

Even if the data is stored as separate files that are only read at runtime, you may need to supply at least a basic subset of data that allows the user to "compile, install and run" the project you are sharing, while your paid application gets bundled with more useful data files. Offering your advanced data set as an optional download available once the app is installed could be another way to separate it from the open project.

Note that you are under no obligation to make the open version of the program run "really well" or to any extent of usefulness on its own, consider that the linux kernel has a very limited use without other supporting projects to make a complete system distribution. You also don't have to make the project publicly available, you only have to make the code available to users of your binary program.

I should have been more clear the neural network model is made during development and is not made at runtime. No training code or training data is included in the released binary. Only the mobile application code and the neural network model (which is data and not code) is. – emettomet Jun 15 '18 at 14:42
Add a comment

I Am Not A Lawyer, but I don't see why this would be any different from "normal" executable code. You need to distribute the source code for your app. Both GPLv2 and GPLv3 are clear on the definition of "source code":

The source code for a work means the preferred form of the work for making modifications to it.

So, do you prefer to modify the neural network by starting from the neural network blob, or would you train a new one?

I can see that it could be faster to update a neural network by starting from an existing network and doing more training. You can add new code to an executable file, too, but that doesn't mean it's the preferred form of the work for making modifications to it - it's better to have the original source code. If you can re-train the neural network from scratch, you can make more kinds of modifications, like changing the number of layers. For this reason I think you should consider the training code and data as "source code" of the neural network.

@apsillers has said that the neural network might not be copyrightable in the first place, since it's the output of a mechanical process. However, I don't think that's relevant.

Recall why your program has to be GPL to begin with. Because you are using GPLed code you must comply with the license of that code. The license of that code says that if you make a derivative work of that code - and your whole app is a derivative work - you must only distribute it under the terms of the GPL. If you distribute your app under the terms of the GPL, that means you must distribute the source code for the entire app, including the neural network part. The whole app is certainly a copyrightable work, even if particular parts of it might not be copyrightable by themselves.

Besides, if it wasn't copyrightable by virtue of being the output , that would just mean it wasn't copyrightable by you. If you use a computer to ("mechanically") convert a .mp3 file to .wav, the copyright holder of the .mp3 file also owns the copyright to the .wav. It's not held by you, and it's not held by nobody. If this argument is valid, it would mean the neural network's copyright would be held by whoever held the the training data's copyright - assuming that the training data was in fact copyrightable.

@apsillers has also questioned whether a neural network model counts as code. I don't think that's relevant, either. The GPL applies to the entire app, not just the part that is labelled "code".

Besides, the GPLv2 gives you permission to distribute your work in source code form, or in "object code or executable form". The latter is a bit ambiguous, but it could be interpreted to mean that "object code form" and "executable form" are the same thing. In that case, you wouldn't have permission to distribute derivative works in non-code forms at all!

GPLv3 is clearer:

“Object code” means any non-source form of a work.

so your network has to either count as "object code" or "source code" in the GPLv3 - no ifs or buts.

This applies only if the model is copyrightable; if it's not, the GPL simply does not apply to it as it derives it power solely from copyright law. Can you provide some evidence that models are copyrightable? – Philip Kendall Jul 12 at 20:54

You say "The GPL applies to the entire app" but the full question I ask directly relates to what constitutes the "entire app" under copyright law: "are they code that directly combines with the GPL-licensed code under copyright?" If the answer is "no", then they are excluded from the scope of the GPL'd copyrighted work, and therefore not within the material under the GPL's copyleft obligations. (The GPL can only impose copyleft obligations to material within the same work under copyright law.) The answer may be "yes" but this answer currently doesn't present any argument toward that end. – apsillers♦ Jul 13 at 2:51
@apsillers What does the user get when they click the "download" button? That's the app – user253751 Jul 13 at 8:14

@user253751, "the app" can still be multiple works under copyright law, even if you download it as one package. For example, if your app consists of code and some images, then the thing you download will be a compilation of the code and the images (a mere aggregation) and each of them can have a different license that could even be incompatible with the other licenses. It is not like that the images need to be under the GPL just because the code is. – Bart van Ingen Schenau Jul 13 at 9:18

@user253751 The closest case law I know of is rather distant, about the limits of ShareAike across pages of an atlas (Drauglis v Kappa), but it is the opinion of the FSF that certain software arrangements can be coresident but legally distinct under copyright, including when one part is input for another part: (1) gnu.org/licenses/gpl-faq.en.html#MereAggregation (2) gnu.org/licenses/gpl-faq.en.html#GPLPlugins (3) gnu.org/licenses/gpl-faq.en.html#InterpreterIncompat – apsillers♦ Jul 13 at 11:37
Chess engines and dedicated chess computers fan since 1981 :D Mac mini M1 8GB-256GB, Windows 11 & Ubuntu ARM64.
ProteusSF Dev Forum TROLLS KINDERGARTEN
noobpwnftw
Posts: 560
Joined: Sun Nov 08, 2015 11:10 pm

Re: Stockfish: Our lawsuit against ChessBase

Post by noobpwnftw »

How funny it is to watch people arguing that since someone is not longer murdering people as we speak, therefore he is not guilty for murder, and so eager to wish people get over it. Nah, it ain't happening, check your German relatives :D
gaard
Posts: 447
Joined: Mon Jun 07, 2010 3:13 am
Location: Holland, MI
Full name: Martin W

Re: Stockfish: Our lawsuit against ChessBase

Post by gaard »

dkappe wrote: Seriously? Have you bothered to read anything? Check the original post in this thread and the Stockfish blog post(s) it points to. On the ignore list you go.
dkappe wrote: Mon Aug 30, 2021 5:43 am
gaard wrote: Mon Aug 30, 2021 5:37 am
dkappe wrote: Mon Aug 30, 2021 5:29 am Come on guys, it’s not that complicated. You say that FF2 is an ongoing GPLv3 violation. I say it isn’t. We’ll know sooner or later what the courts say.
It's not that complicated. Who said FF2 was an ongoing GPLv3 violation? And why?
Sweet! Let Vondele know he can drop the lawsuit. :lol:
Your ignorelistermachine is kaputt. Please contact IT at your earliest convenience.

Can you link me to Vondele's statement declaring FF2 an ongoing GPLv3 violation? I haven't seen it.
User avatar
Ovyron
Posts: 4556
Joined: Tue Jul 03, 2007 4:30 am

Re: Stockfish: Our lawsuit against ChessBase

Post by Ovyron »

Milos wrote: Fri Jul 23, 2021 12:33 am Computers can not create art (whatever they create can in no way be called art).
Aah, it's funny to come back to these threads and read comments like this. Back then I might have agreed with Milos, AI Art was deep on the uncanny valley, there was always something off, you could tell something wasn't right, like an annoying hiss that plays all along on a song and ruins the whole piece.

At the end of August 2022 a text to image generator called "Stable Diffusion" was released, and suddenly, learning to create prompts for it became very valuable, because anybody can ask it for an image and get crap, but if you know how to build a good prompt, then... well, let's see...

This is some sort of Turing test, 3 of the below images were generated by AI, the other was produced using traditional methods, according to the claim, only one of them is art, the rest can be thrown into the trash, because, indeed, once you know the prompt you can get them with one click...

Image

Which one is the only one that is art?
Your beliefs create your reality, so be careful what you wish for.
smatovic
Posts: 2645
Joined: Wed Mar 10, 2010 10:18 pm
Location: Hamburg, Germany
Full name: Srdja Matovic

Re: Stockfish: Our lawsuit against ChessBase

Post by smatovic »

Hehe, the AI overlords are taking over, they write Wikipedia articles, they paint, script, audio, video is coming too, and they philosophize ;-P

To stay on topic, ChessBase removed Fat Fritz from the shop as far as I can see.

Currently I am more concerned about things like GitHub Copilot, training large language models on open source projects w/o explicit consent, seems we are missing here some clear law interpretation that Copyright excludes consent for training NNs and alike.

--
Srdja