Note that it’s legal to sell stockfish as long as you’re compliant with GPLv3. ChessBase seems to be compliant.
Stockfish argues that ChessBase isn’t compliant because they refuse to release the weights. But this makes no sense; the weights are distributed with every copy of Fat Fritz 2. (Otherwise, how would the program run? It’s not cloud-based, as far as I can tell.)
Stockfish may be trying to say “you must open source any training code used to make the weights.” But this claim falls flat; you could use this same argument to say that any GPLv3 codebase must be fully open source in order to sell it, including all DLLs used by the program.
Stockfish seems to be saying that they have grounds for lawsuit because they have terminated ChessBase’s license. But GPLv3 doesn’t give you the ability to terminate a license arbitrarily; it requires you meet some specific criteria, and it’s unclear that ChessBase meets it.
I think it’s lame that ChessBase sold stockfish for $80. But that’s different than being illegal, and we should worry about the precedents set here.
> Stockfish argues that ChessBase isn’t compliant because they refuse to release the weights.
No. The first license violation was that ChessBase released FF2 without source code for their modified Stockfish, and without the GPL license. This was later fixed after we reported it. The second license violation was Houdini, which contains Stockfish code, and even today is not a available under the GPL.
> But this makes no sense; the weights are distributed with every copy of Fat Fritz 2. (Otherwise, how would the program run?
This reasoning isn’t correct.
The weights may be as object code not as source. Simply saying the program runs doesn’t mean you’ve distributed the weights anymore than it means your distributed the code.
Last time this came up people pointed at the installation information clause
> “Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made.
> Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying.
While it seems plausible that the network weights would fall under the "installation information" clause - the intention seems to be to limit this clause to consumer products (e.g. a Digital Video Recorder) and it's not clear that it can apply to Fat Fritz 2.
They probably intend to apply this clause (under Termination) to terminate ChessBase's license: "Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third
paragraph of section 11)."
> Note that it’s legal to sell stockfish as long as you’re compliant with GPLv3. ChessBase seems to be compliant.
Unless your license has been terminated by the copyright holders, in which case you cannot be compliant with the license because don't have a license to distribute the material at all.
> Stockfish argues that ChessBase isn’t compliant because they refuse to release the weights.
I haven't seen them argue this anywhere. You've linked to their previous statement in which they only say that they "condemn" the fact that the weights are not being released.
The announcement says that they've filed the lawsuit "to enforce the consequences of the license termination" because "ChessBase is ignoring the fact that they no longer have the right to distribute Stockfish, modified or unmodified, as part of their products."
> But GPLv3 doesn’t give you the ability to terminate a license arbitrarily; it requires you meet some specific criteria, and it’s unclear that ChessBase meets it.
"Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice."
I have no clue about all these copyright litigations and most make no sense to me anyway, but when you put it that way, yeah, that sounds like a weak claim. Again, no idea if a court would see it that way, but if you take it a step further you can almost claim that software is not GPL-3 compliant, because it's being developed using non open-source IDE. Oh, we cannot prove it? But then, we also cannot prove these NN weights are not crafted by hand, I guess.
That’s actually been an issue for some non-GPL Smalltalk systems. What does it mean to distribute the “preferred form for modification” when that’s an image file for a closed-source interpreter? Same deal with GPL’d Mathematica code.
> I think it’s lame that ChessBase sold stockfish for $80.
I’m interested to know how ChessBase was able to charge $80. If their software were licensed under GPL then couldn’t anyone have asked for its source code and compiled it themselves, for free?
Lots of people (Red Hat, Richard Stallman...) charge money for open-source software, so this seems a moot question.
This case is a bit different though: Chessbase (unlike RH and RMS) didn't tell anyone their product was open source, but pretended it was their own proprietary work and that it was better than the leading open source engine that it was stolen from.
I don't think so. Red Hat Linux - the software - is free under GPL. Red Hat the company charges for support, training, and documentation. ChessBase charges for the software, which means they're either not compliant with the terms of GPL, or there's some other aspect of the software they're not obligated to share. I'm particularly interested if it's the latter.
But I'm just wading into this subject matter, so others chime in if I'm missing something :)
> ChessBase charges for the software, which means they're either not compliant with the terms of GPL, or there's some other aspect of the software they're not obligated to share.
It's very clear from the story that it's the first one: they're not compliant with the GPL. At least that's what the Stockfish authors are claiming. They're pretty obviously acting in good faith and appear to be correct in their claim. ChessBase haven't laid out their side of the story other than their marketing materials saying "we developed the software in house and it's better than that open source stuff" and I wouldn't expect them to have a defence based on anything other than technicalities. You won't be seeing a blog post from them, because their lawyers have told them to say nothing.
It’s very clear that Stockfish _claims_ ChessBase violated the terms of the license (and by corollary, ChessBase claims they didn’t) but it’s not at all clear who’s right until the litigation process plays out. One thing I will say is the perceived superiority of ChessBase’s fork (“better than the open source stuff” as you say) has no bearing on either claim.
The point is, Red Hat is not a comparison because users can build, understand, and redistribute their version of Linux for free (in accordance with GPLv2). Not so with ChessBase.
The point being made is that the "for free" part of that sentence doesn't actually exist in the GPL. You can modify GPL code, then charge for access if you want (which, IIUC, Red Hat does). You just have to give it to whoever you sell it to under the terms of the GPL, which means your customers could give it away for free if they so choose.
> which means your customers could give it away for free if they so choose
If you’re only guaranteed one sale before your first customer undercuts you, then it is free “in the limit”. That is why Red Hat sells everything ancillary to the software itself (quality assurance, training, documentation, support, etc.)
ChessBase is selling the software, and they aren’t getting undercut because they are not redistributing everything the customer needs to rebuild it from source. It will be interesting to find out what that is (neural net weights, or whatever) and whether the court upholds that this is not copylefted under the GPL.
Not my business model guys, but a business model used by parties out there that decide to misuse open source licenses and charge for basically a layer on top of the open source.
If this company has two products that under the hood seem to rely heavily on open source but they don't mention it, then it sounds this is their business model.
I'm definitely not a lawyer/expert on this, even less about Germany specifically, but isn't actual financial damage required for financial compensation? While Stockfish might have suffered damage from ChessBase's behavior, if it can't be clearly specified as monetary damage, I don't really see how they could make money from this.
On the other hand, if ChessBase is found (and ruled) to have distributed software illegally, the company and its executives might have another problem. I don't know the specifics of German law, but I believe that distributing software (or any product) illegally is actually a criminal offense (no longer a civil dispute). That could (theoretically/eventually) lead to criminal prosecution and who knows .. jail time?
Not a lawyer, but I think there's a weak argument for actual financial damages here.
There was only one legal way for ChessBase to do what it did (rebrand stockfish without attribution), and that was to acquire a (non-gpl) license from all the stockfish developers. That was almost certainly possible, for enough money. Stockfish developers could arguably sue for those lost licensing fees.
I don't know about German law specifically, but damages can be shown in a variety of ways. In the US, courts have recognized publishers of open-source software as receiving value from having made source code available at no charge, such as reputational gain or adoption leading to future sales of related products or services.
I would suggest that they could ask for an injunction as well as restitutionary/disgorgement damages (give back their ill-gotten gains) and possibly punitive damages (to discourage others from violating the GPL).
> I'm definitely not a lawyer/expert on this, even less about Germany specifically, but isn't actual financial damage required for financial compensation? While Stockfish might have suffered damage from ChessBase's behavior, if it can't be clearly specified as monetary damage, I don't really see how they could make money from this.
In the US there are statutory damages for copyright infringement ($50k per act of infringement, tripled if wilful) so you're entitled to that much without having to prove any actual damages.
In German court proceedings you can only recover attorney fees up to the (pretty low) legal fee schedule (RVG). Anything above that you will have to pay yourselves
GP’s joke, I suspect, was that in practice every bit of money they get from the lawsuit, whether it is labeled “attorney fees” or not, is likely to go towards compensating the legal team, and not to the actual injured party. Which does not contradict your statement.
(Part of the point of having a legal fee schedule is, I suppose, to put a damper on the prices of legal help, because, like in medicine, the demand is otherwise extremely inelastic: when you need it, you really need it. That does not appear to work. I wonder if there is an approach that would work.)
The German legal system does put somewhat of a damper on "every bit of money". First, it can only be charged as attorney fees, and if it exceeds the legal schedule, it needs to be very clearly called out as an attorney fee agreement. So "or not" is off the table.
Secondly, there is a morality clause with regards to attorney fees, so usurious rates like some US attorneys charge are harder to achieve.
This doesn't mean German attorneys are cheap. It's just not quite as out of control as the US legal system. (Though attorney's professional bodies are obviously lobbying to make it easier to charge more)
The legal fee schedule does put a damper on attorney work, and more importantly, makes it somewhat easier to predict costs should you need an attorney. If it's enough of a damper is open to interpretation. I
The short answer would be to make legal representation less valuable. Ensure that all cases (civil, criminal or otherwise) are tried and concluded quickly including appeals and streamline the law so that there is a lot less maneuverability. Lawyers wouldn't vanish (having someone knowledgeable and with proper negotiating distance will always be valuable), but they would lose a lot of leverage.
Of course, if there's one thing that lawyers are less likely to do than cap the earnings of their profession, it's to devalue it entirely.
You could also increase supply by reducing the level of qualification needed to become a lawyer. Increased competition would drive prices down. That too is highly unlikely.
Note that Germany generally has a loser pays system (there are some caveats), so this will definitely not be true, because they can recover the legal costs from Chessbase.
(Simplifying:) Fees are set by law and derived from the value/damages they’re suing over (Streitwert). The winner can recover the costs up to that fee. However, attorneys can charge more, that difference is on the party that hired the attorney.
Costs are compensatory in nature, not punitive. This is a risky gambit, pardon the pun.
Also, in Australia, you'll only recover a portion in accordance with scale limits (party-party costs). Indemnity costs (100% recovery) is rarely awarded. What's the case in the US?
It will be interesting, depends where jurisdiction falls and how that jurisdiction interprets any alleged damages since GPL content is normally released free of charge.
Germany does not appear to have statutory damages the way the US does, but they have something else that could work here. They seem to have three kinds of damages possible [1].
1. Lost profits due to the infringement.
2. The profits the infringer made from the infringement.
3. The amount the infringer would have had to pay to license the work to use the way they did it if they had requested such a license from the copyright owner.
The first one would likely not apply to something that is solely licensed under GPL, but the other two might, especially #2.
I'm curious how #3 is determined.
There is something similar in the US for patent infringement damages. That involves the court trying to determine what would have happened in a hypothetical negotiation if the patent owner had been willing to license the patent and the infringer had wanted to license the patent.
That can work because usually with patents you can compare to other patent in the same or related field that are about as valuable and have been licensed out. I don't think that there are a lot of open source world class chess engines that are dual licensed for proprietary use that a court could use for comparison.
Case in point, the awards given against people who pirate something like a movie which are completely detached from the actual damage caused by the piracy.
Yeah, that's what "statutory damages" means. In the US, if you have registered your copyright (distinct from the automatic copyright that attaches at creation), you are entitled to damages up to $150,000 per infringement. If 1,000 people can be proven to have downloaded that movie from you, that would be an unwelcome bill indeed. If 10,000, well then now you're starting to talk about real money.
Statutory damages are per work infringed, not per infringement.
They are normally from $750-30000 per work infringed.
The lower limit can be lowered to $200 if the defendant can prove that they were an innocent infringer (they were not aware and had no reason to believe they were infringing). The defendant has the burden of proof for this.
The upper limit can be raised to $150000 if the infringement is "willful". The statute does not define "willful". Courts have taken it to mean reckless disregard. The defendant knew they were infringing and did it anyway.
The jury decides where in the range you end up, and they certainly might take into account the magnitude of your infringement so 10000 downloads might cost you more than 1000 by convincing the jury to choose somewhere high from the range, but the cap on the total will be $30k (or $150k if it was willful).
Note that this means that willfully distributing 10000000 copies of one movies is going to be a lot better for the defendant than distributing a single copy each of 300 different movies, if the plaintiff elects to ask for statutory damages.
The 10000000 copies of one movie is just one work infringed, so you are looking at $150000 worst case.
The single copy each of 300 movies is 300 works infringed, so best case (assuming you are not an innocent infringer) is the minimal amount of statutory damages per work, $750, times 300 works = $225000.
(But remember that the plaintiff gets to choose between statutory damages and actual damages. If you've distribute 10000000 copies of their movie, they'll probably go for actual damages which could be considerably more than $150000!)
It seems there has already been one similar case in Germany where an open source copyright violation occurred but no damages could be awarded. Specifically, a higher court overturned the damages permitted by a lower court.
But crucially, in that case the infringer did not make money based on their infringement, and the actual infringement was minor. (Specifically, a university failed to provide a copy of the GPL license alongside a download of the software, which they offered free of charge.)
Most of the prior GPL cases ruled on (including the one you linked) were about redistribution of modified works without providing source and about who actually has standing to sue regarding GPL violations.
This case however brings two new (as far as I'm aware) questions to the table:
- Whether the permanent license revocation clause holds up
- Whether the neural networks is considered a part of the covered work (and must therefore be provided in "source" form, rather than just a trained network)
The second one is especially interesting, since the court will likely have to go into how far the GPLs coverage extends into other parts of a covered work.
> Thus, to enforce the consequences of the license termination, we have filed a lawsuit... We believe we have the evidence, the financial means and the determination to bring this lawsuit to a successful end.
The part about financial means stood out for me. All societies should work harder to ensure that money is not an impediment to obtaining justice.
I filed a lawsuit against someone who is using the money they stole frome to defend themselves. Basically if I win the money I get will be essentially gone and the Defendant will not have the means to pay anything back.
Two brothers defrauded the government by forging signatures of the owners and notaries for the transfer of property deeds and took several hundred thousand Euros worth of land from various people.
My friend's family has been in court for 10 years trying to get it back.
The brothers mortgaged the properties to pay for litigation.
The real shit sandwich is that one brother died, and if the other brother dies, they start the proceedings all over again. If they win, it's purely in the name of justice; the lawyer will keep most of the money as payment for 10 years of litigation.
They wouldn't since the property deed was transferred; as long as a court doesn't rule that the transfer was illegal because of forged signatures, the bank won't / shouldn't do anything - what if the accusation is baseless. If a court does rule that the transfer was fraudulent, the bank can cancel the mortgage and demand immediate repayment.
Of course, once it's time for a criminal to pay up, both they and the money mysteriously vanishes.
TL;DR, identity verification should be improved. Signatures are not working.
> They wouldn't since the property deed was transferred; as long as a court doesn't rule that the transfer was illegal because of forged signatures, the bank won't / shouldn't do anything - what if the accusation is baseless.
The bank isn't under any obligation to give you a mortgage. From their point of view they're lending you a big wedge of cash with the property as collateral, so they should be trying to satisfy themselves that the collateral is enough to cover the loan in case you default. If there's a non-negligible chance that the person they're lending the money to doesn't actually own the property (e.g. they're tied up in a legal dispute over ownership) then the bank has no collateral and is taking on a big risk.
> If a court does rule that the transfer was fraudulent, the bank can cancel the mortgage and demand immediate repayment.
What if the person doesn't have any means to pay back the mortgage? The bank has then just made a chunky loss. This is why the bank will typically do background checks on the property to establish ownership, condition of the property, environmental risks etc. (though this doesn't seem to have happened here, or the checks weren't overly thorough).
In the USA a title company that validates the ownership provides a title insurance for exactly this case. If the true owner of the house is determined (typically in court) not to be the one the title company claims, then the title insurance pays the damages to the injured party. Or at least this is the theory.
In the US anyway, most banks will require the buyer to purchase something called "title insurance" -- which is basically insurance against unknown claims against the property. That insurer will generally look into things at least a little bit.
Obviously it could be different in the Czech Republic.
They took out a mortgage after being served but before they ever got in a court room. The law is so slow here that it could've taken years just to settle that issue. Probably easier to address post victory.
Isn't it in the duty of care of the bank to make sure that the property they give a mortgage on is actually owned by the mortgagee?
I would assume that you should get the land and the bank can then sue the brothers to get their money back. Why should the mortgage be transfered to the original owners, they never agreed to it.
Just to be clear, I'm not saying this is at all the desired outcome, that the people who have been swindled out of their property lose all their money.
In Federal court the U.S. Supreme Court has set a high burden of proof for a plaintiff seeking an injunction. Unfortunately, once case law is established its nearly impossible to change. In this instance, in a civil case based on diversity it would be really difficult to prove public interest. Generally injunctions in federal courts are used to prevent states from doing things, like proceeding with an execution or changing voting laws.
The more relevant question is: who is backing them and what do they hope to get out of this lawsuit? I wouldn't be surprised if this is paid for by some venture fund and that they are seeking financial compensation of some sort. I call BS on them trying to somehow helping the open source community by dishing out lawsuits. It's rather doing the opposite. Anyone using GPL-licensed software is going to be dead-scared to get sued by some copyleft fundamentalists.
Yeah, the system is worthless and nothing can fix it. So why try? This is the kind of nihilistic ideation that leads to a generation of basement troglodytes waiting for their mom to die so they can own a house. The system is definitely here to stay, so either working harder to fix said system is a notional good or else we're all supposed to give up. This is the problem with quests for justice being entirely online and not based in any kind of daily reality.
Beyond the bar of affording a decent attorney, money really isn't an obstacle to obtaining justice in America, and I can only think the reason they wrote that into their press release was because their lawyers wanted to impress upon everyone that they wouldn't be limited or badgered in their methods of pursuit. It's far too early to cry foul or assume that the system is rigged against them.
Yes. I have several hundred Steam games that have been removed from the store (dozens due to DMCAs), and the only game I'm aware of having ever been removed from user's libraries was The Culling 2.
Worth pointing out that ChessBase isn't strictly a game, it's more a research tool aimed at pros and club players. That said, it is a pretty poor UI even for those purposes.
You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11).
However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice.
Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10.
I think they've revoked even Chessbase's license to use the code. So, not like a book, where if you have the physical copy you can generally read it, but more like a pirated copy of Windows or Oracle, where you owe license fees per user, per core, per day.
It's not settled law, but IMO probably not, I don't believe it's ever been tested in court.
Windows comes with a click-wrap contract that you agree to when you install it, that restricts certain things you could usually do. So it's a bit of a bad example... but I'll use it anyways.
What does (generally, not legal advice, not a lawyer) need a license is making a copy of the software, i.e. installing windows onto your computer actually makes a copy, or making a copy of the installer for your friend - makes a copy. Just booting up the machine that already has windows installed on, that's (probably) not copyright infringement even if you don't have a valid license. It might be breach of contract depending on what contracts you have agreed to though! Physically giving your friend the computer with windows already installed on it, is similarly not copyright infringement. Cloning the hard-drive so you now have two hard-drives with windows installed, that's copyright infringement.
I don't think it quite works that way: the license is really just an agreement between the user and the rights holder that they will not sue for infringement. So use without license really means "you may expect to be sued". The outcome of that suit would determine whether or not you "need to license to use code". I'm guessing there have been many cases where the copyright owners for some code sued someone for using it and won.
Using software is not one of the enumerated rights reserved to a copyright owner. Copying and distributing it are. So it's unclear whether a copyright owner has standing to sue you for using their software without a license. In the US there is conflicting caselaw, hinging on the legal status of the temporary copy made in the computer's RAM when a program is launched.
For distributing it, making copies of it, and violating contacts, definitely. For using a program already on a computer with no click through contract that you agree to to run it (or other contractual obligation), I'm not aware of any cases.
That they can sue is a non statement, you can sue for anything, but I don't believe it is obviously (or even likely) copyright infringement...
To be clear, it would be ChessBase that would be sued, not individual users. And ChessBase would be the one allegedly in violation of "distributing it, making copies of it, and violating contracts". Since their license to use Stockfish seems to be revoked, it seems like it would fall under copyright infringement at that point (although up to the courts to decide, of course).
Even if you could execute the code you somehow obtained, but for which you've somehow lost the license, for ChessBase it becomes worthless, as they can no longer distribute - whether sell or give away - anything building up on it.
They do also have a cloud offering - you pay them to evaluate a chess position on their computer - so I could see the license to use the code being important, though it's separate to their flagship offering of shrinkwrap software.
Even then, IIRC CC0 is not that easy to apply to code (even CC do not recommend it for that: https://creativecommons.org/faq/#can-i-apply-a-creative-comm... ), WTFPL is entirely untested (even more so than GPL/MIT which are also not entirely tested in courts) and some regions do not recognize public domain. For example sqlite sells a license for what is public domain code partially for the reason of "You are using SQLite in a jurisdiction that does not recognize the public domain" and "You are using SQLite in a jurisdiction that does not recognize the right of authors to dedicate their work to the public domain".
Also, when it comes to code dedicated to public domain it is good to consider what wikipedia says about implied warranty: "The licensing process also allows authors, particularly software authors, the opportunity to explicitly deny any implied warranty that might give someone a basis for legal action against them." It is always good to include a clause saying that there is no warranty, implied or otherwise (unless of course you provide a warranty, which you probably should not do without restrictions on OSS code).
CC0 and WTFPL are also copyright licenses. Works available under these licenses can be used with very few restrictions (basically, as few as permitted by law), but the works are still copyrighted.
It’s simplified, but more or less accurate. CC0 is an attempt at making a public domain deed possible for jurisdictions that do not know public domain deeds like the US does. German Urheberrecht is not entirely like US copyright, some rights of the author are impossible to waive. So CC0 has a fallback for those jurisdictions, it grants a license to the fullest extend possible under the law. https://creativecommons.org/publicdomain/zero/1.0/legalcode
"Unlike the Public Domain Mark, CC0 should not be used to mark works already free of known copyright and database restrictions and in the public domain throughout the world. However, it can be used to waive copyright and database rights to the extent you may have these rights in your work under the laws of at least one jurisdiction, even if your work is free of restrictions in others. Doing so clarifies the status of your work unambiguously worldwide and facilitates reuse."
As I understand it, you can't just waive copyright on your own work - copyright is something you get automatically in most jurisdictions on the planet. Licenses like CC0 and WTFPL are operating within the copyright regime - they use the laws to make your work behave as if it was not subject to copyright - but they can't actually make your work not copyrighted.
It's like a difference between simulation and reality. CC0, WTFPL, etc. are simulating a copyright-free reality on top of the copyright system. No matter how close to perfect they get, it's still a simulation, and copyright is the underlying runtime.
It depends on jurisdiction. Some places (I think the US is one of these) do allow you to put works in the public domain, and CC0 does that where possible. The “as if” license is a fallback.
As seen in the section a sibling comment posted, the GPL terminates itself during certain conditions. So, they're either confused or trying to play lawyer a bit too hard. (IANAL)
No. Stockfish owns the copyright to their code. You can't copy stockfish code without a license from stockfish. There's no provision in the GPL for some third party to re-grant a GPL license to someone else after their license was terminated.
"In particular, the license states that if one redistributes a program derived from our work, the corresponding modifications of our sources and all information needed to build that program must be made available. Only after explicitly informing Albert Silver (the author of the net in Fat Fritz 2) of a license violation have matching C++ sources, but not the net weights, been made available. Obviously, we condemn the approach taken."
Say I use GNU licensed software to train a neural net, using data I collected and labeled. I am completely transparent about the code I used, and cite/share any ad hoc code modifications...
Should I be legally compelled to share the net weights of my trained NN?
There are long running disagreements about what this means under GPLv2 in various cases.
Under GPLv3, the answer is explicitly clear:
"The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work."
Sorry, but could you clarify whether the NN weights constitute a covered work? If so, why? If not, what sort of output would constitute a covered work?
An example of an output constituting a covered work might be that if you use a GPLv3-licensed library to output a timezone database shipped with the library in a JSON format, because the content of the JSON output is itself a derivative of a GPLv3 work, not only an output, it would be covered by the GPLv3.
In order for NN weights to be covered, the weights would need to be in themselves a derivative of a GPLv3-licensed work.
Training a NN on GPLv3 licensed training sets would (IMHO) make it a derivative work, that's what a lot of the Copilot uproar is about.
The GPL's Termination clause allows Stockfish to terminate ChessBase's use of the license, but does anything prevent someone from forking the code and licensing it to Stockfish as an end around? It seems like it would be very difficult to enforce.
Forking the code doesn't fork the copyright ownership. Stockfish still owns the code under their copyright regardless of whether it lives in their repository or in some fork of their codebase.
A forked project doesn't have the right to grant people licenses to code which they don't own.
Licences can give the right to sublicense under the same terms. But the GPL does not, and each licensor gets the licence directly from the copyright holder.
That would be a separate infringement. Once Stockfish wins their case against ChessBase, it would likely mean easier wins on any other infringement cases.
The viral nature of the GPL and other copyleft licenses expressly allow this and put a healthy fear of improper OSS reuse and deployment in most rational software companies.
The copy would be a derivative of Stockfish, and (IIUC) (NOTALAWYER) I believe by terminating ChessBase's use of the license directly they would also prevent ChessBase from using a derivative product. It shouldn't be any harder to enforce than any other copyright violation (and I'd bet the court would not be amused by ChessBase trying to do an end-run around their license issues by introducing a third party.
Surprisingly, I find myself slightly skeptical of Stockfish's claims, which is... a disquieting feeling. Could someone help me out by finding the flaw in my logic?
2. But the weights are already being released with the program they're selling. Otherwise, how would the program run? Why would they refuse, when they already distribute the weights with every copy of the program? I thought maybe Fat Fritz 2 was a cloud-hosted solution (weights aren't provided locally), but https://en.chessbase.com/post/running-leela-and-fat-fritz-on... seems to indicate it can run on a laptop with a GPU.
I suspect Stockfish may be trying to argue that whatever code was used to generate the weights is also covered under GPL, and that ChessBase is in violation because they refuse to release this code. I hope they don't try that argument, because it's certainly not true; you're free to train a chess engine however you want, insert the weights into a GPL'd program, and then are under no obligation to release the code to train the weights.
3. Setting aside the question of copyright entirely, it's unclear that Fat Fritz 2 is actually worse. Stockfish references https://www.sp-cc.de/ as an independent rating system, but if you look at the detail view (https://www.sp-cc.de/files/programs.dat) Fat Fritz 2 only seems to be compared to Stockfish 13 (210218) and not the latest versions of Stockfish.
I'm on Stockfish's side here, because I suspect ChessBase simply duplicated StockFish's training methodology and tried to pass it off as their own. (The engine's performance seems almost identical.) But I hope Stockfish has an airtight case for court. It'd be a bad idea to hinge the GPL violation on "they refused to release the neural net weight training code."
Typically you have stockfish source code, and human readable model file with weights. Build system and compiler bakes them together to produce binary. Inside the binary, the NNUE weights are no more readable than the source code, which is to say none at all (unless you have reverse engineering expertise). If providing the final binary counted, then there would be no such thing as GPL violation?
>> 2. But the weights are already being released with the program they're selling. Otherwise, how would the program run?
In the same way that, e.g. Windows can run from binaries, without distributing the source code? That is to say, the weights are in a binary format that is not amenable to re-use without decompilation and reverse-engineering.
The reason why they're going after them is because of their refusal to publish the weights of their network, yes, but that's not the basis for this lawsuit. After violating the GPL license, StockFish has terminated ChessBase's license. They are no longer allowed to run or distribute StockFish's code.
Given that the chess engine in question is just a tweaked version of Stockfish, this will have a severe impact on their ability to sell their product.
I'm not sure how this would work with derivative code, though. I wonder if they could take a fork of StockFish, which is not StockFish and therefore subject to a different license agreement, and go on their merry way. I don't think that tactic would work (the original author can still claim copyright over the code from the forked repository, I believe) but it might be a possible defence? I think? Not a great one, though.
I don't see any other way ChessBase can get out of this, unless the court decides that the termination clause is unlawful for some reason.
They mean that the weights are not open sourced. If the weights are distributed separately and not considered part of the "Corresponding Source", that may not be a GPL violation, and the blog post does not imply that it is. (They only say that they condemn the approach.)
> 2. But the weights are already being released with the program they're selling. Otherwise, how would the program run? Why would they refuse, when they already distribute the weights with every copy of the program? I thought maybe Fat Fritz 2 was a cloud-hosted solution (weights aren't provided locally), but https://en.chessbase.com/post/running-leela-and-fat-fritz-on... seems to indicate it can run on a laptop with a GPU.
The GPL can be interpreted to require that all the input necessary to reproduce and run a functioning binary must be distributed. If the weights and engine are integrated in one binary, and not "all the source code needed to generate, install, and run the object code and to modify the work, including scripts to control those activities" is provided, that could be a GPL violation. This does not apply if the weights are distributed separately under a different license.
> I'm on Stockfish's side here, because I suspect ChessBase simply duplicated StockFish's training methodology and tried to pass it off as their own. (The engine's performance seems almost identical.) But I hope Stockfish has an airtight case for court. It'd be a bad idea to hinge the GPL violation on "they refused to release the neural net weight training code."
They may have terminated the license in response to the Houdini revelations[1] which is another chess engine based on Stockfish that Chessbase has sold as original work, disguising its Stockfish origins in violation of the GPL.
As the GPLv3 says under Section 8 [2] the license can be reinstated if "this is the first time you have received notice of violation of this License (for any work) from that copyright holder" - the first violation would have been Fat Fritz 2.
FYI if anybody’s looking for a chessbase alternative I use a combination of SCID vs. PC, Caissabase, and Stockfish to roughly clone it. I’m sure chessbase has a lot more features but these alternatives are good enough for an amateur like me.
Opening Tree is great and I use it a lot but it does not persist my games - I have to download them every time I use it. But I'd love an app with that interface that could persist the data and cross-check it with my repertoire. I guess it would not have to be same tool as the repertoire trainer, it just seems cleaner to have it all in one tool. But you are right Listudy can help with the spaced repetition, it just doesn't know anything about my games :)
In an online course recently, one module involved an API with an attribution requirement that neither the instructor nor any student was aware of - they specifically described it as free use, no attribution required, because they were unaware. Despite there having been more than 20k previous students, I was the first person to mention mention this and link to the clause, and the instructor was surprised.
Almost everybody skips reading the terms and licenses of things
In the chess case, the team probably assumed that open source meant “do whatever you want,” and nobody dug any deeper than that, and now they’re getting sued
Edit: the comments below say that they knew about the license issue for years
This is a possibility in general, but not here. Chessbase has a long history with this sort of thing, and they've been called out repeatedly. They've even settled before, if I recall correctly.
This is entirely inaccurate. Chessbase is a company, and has been well aware of these licensing issues. They've purposefully renamed and scrubbed OS code to sell it for profit and pass it on as their own.
Just look in the about/credits link in just about any studio's game or software product and you will see it is standard practice to look over and include licenses as needed of all 3rd party libraries and code bases used in development and credit them as appropriate.
While the end user might be sloppy on checking the license aspect, developers certainly are aware at some stage, especially commercial developers by the time they create or modify their about dialog.
> Almost everybody skips reading the terms and licenses of things
Yeah, nobody reads this stuff. I've even seen developers fail to understand the implications of the license they're applying to their own code and then get mad when people do things that are allowed.
Most people will not actually go to court over any of this stuff either. Surprising to actually see someone getting sued over licenses nobody reads.
Any company past circa 2002sh or so, and definitely by 2005, is intimately aware of their intellectual property responsibilities, and, it's the opposite problem that I've run into - in which tons of strawmen are thrown up as to the danger of infecting products with open source licenses makes it dangerous to touch the code. One of the reasons why BSD licenses are so attractive to corporations, is that they run the lowest risk. GPLv3 is obviously a non-starter for most companies, with GPLv2 falling somewhere in the middle.
> GPLv3 is obviously a non-starter for most companies
"Non-starter" is a gross mischaracterization for GPLv3 for most companies, even most software companies, considering there is quite a bit of GPLv3 software in a modern GNU+Linux distro that they likely rely on.
I think the parent is referring to the code they ship as part of their own products, which for most companies is definitely not GPL3 if they can avoid it.
Thanks for clarifying that. I'm also definitely referring to the software that companies ship that is not meant to be open source. GPLv2 is mostly safe as long as you don't link to it (Unless its LGPL and you dynamically link).
Try and find a single major corporation in the world that is willing to bind it's proprietary intellectual property to GPLv3. It's a tribute, honestly, to that license that most companies realize that they have to go all-in on open-source (at which point GPLv3 is fine)
> leading developers of Stockfish have terminated their GPL license with ChessBase permanently.
Does this wording seem extremely weird to anyone else?
According to the GPL:
> You may not propagate or modify a covered work except
> as expressly provided under this License. Any attempt
> otherwise to propagate or modify it is void, and will
> AUTOMATICALLY TERMINATE your rights under this License
Capitalization added by me. Maybe it's a nitpick, but it seems to me that the "termination clause" as people are calling it, isn't something you "invoke" or a sword you use to slay people who violate the GPL. It's an automatic process which you, the copyright holder, don't really control in any way.
There is little practical difference between asking a court to enforce an automatic termination clause and asking a court to enforce the exercise of an option to terminate. One will require showing the automatic termination clause is triggered, the other will require showing the right to terminate arose. In either case they’re trying to get ChessBase to cease any use of the software, and they want a court to order them to stop because the consequences of violating a court order are substantial.
In a technical sense yes, the GPL avoided giving rights holders an option to terminate. There’s no such thing as automatic enforcement of these things though (well, not for GPL, music industry is a different story), so it is not a big difference. I’m pretty sure you could just send a violator a fresh copy of the code and establish a new license agreement with them, so it’s still up to the rights holder if they want to continue.
While I think it’s a shame that nobody has been able to sue ChessBase for their software being utter garbage, I will cheer on this equally worthy endeavour.
The database is good. It's large, well curated and annotated.
The UI is terrible, a sad relic from the MDI era. It's absolutely _not_ quick (you can constantly see it repainting, for example), search is extremely clunky, tools for match prep are awful, and it doesn't really have any good learning features. There's some vaguely interesting recent stuff like novelty mining but it's very limited (and why charge so much for database subscriptions only to make people do so much local eval?)
I dunno, I still pay for it because the database is nice to have, but I'm always astonished by its success. YMMV.
> leading developers of Stockfish have terminated their GPL license with ChessBase permanently.
Can the developers do this? I was under the impression that when code is published on the web GPL licensed, the developers cannot retroactively withdraw the license...
Or perhaps they are withdrawing the license for all new code... To publish some code as "GPL, available for all except this person"? Is that allowed? Even if that were allowed, someone else could use their rights under the GPL to redistribute it to that person...
See the termination clause. V3 provides some ways to get a terminated license reinstated, v2 is a bit different I think. This pull quote is from v3.
> 8. Termination.
> You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11).
If the court tells you to prove that you're holding copyright, and you just say "go on GitHub and see for yourself" (yes, really!) and the court even gives you another chance with another deadline and you don't reply, then yes, I fully expect the court to say "if you don't want to show central prerequisites of the case (standing), then you do you."
I see lots of claims that there are no damages since Stockfish is free. I'm not a lawyer, but I don't think that argument is the end of the story. Google Vs Oracle was over code that was public and given away for free, and Oracle was asking for $8.8 Billion US. They didn't get anything on account of copyright not applying in the case, but there's no doubt some very significant money would have changed hands if it went the other way.
"Notwithstanding this literal understanding of the license terms, the harshest constructions of the termination provisions of the GPL have not been enforced in practice."
Even if it was tested in one jurisdiction, it might not apply in others.
The license itself may not discriminate, but they may issue (and subsequently revoke) the license to whom they will. It's like some companies licensing with AGPL and then issuing LGPL or even proprietary licenses to whoever pays them for it (so they can use it in their projects at their own discretion).
I see "The license itself may not discriminate, but they may issue (and subsequently revoke) the license to whom they will." meets the letter-of-DFSG but does it meet the spirit?
If I choose to grant a GPL license to only green-eyed people, would that meet DFSG's defintion of non-discrimination? By your argument, yes: the license itself is not discrimination.
Goes to show that the GPL is a fantastic source of revenue for law firms. I can only hope that they don't settle and we get a court ruling that offers some legal interpretation of the GPL.
I've read through this thread and I haven't seen a simple summary of the situation as it stands with respect to copying and the GPL violation. Here's what I believe to have happened:
1. ChessBase began selling the Fat Fritz 2 chess engine.
2. It came to the attention of Stockfish developers that FF2 is a Stockfish derivative "with a few lines of code modification". [1]
3. Stockfish notified ChessBase of the violation and demanded that they comply with the terms of the GPL. ChessBase responded by releasing the source code of Fat Fritz 2, but not the neural net weights created for use and distributed with FF2. [1]
4. Key Stockfish developers regard the distribution of FF2 without the neural net weights used in creating the work to be a violation of their rights under the GPL. ChessBase (apparently) disagree - I don't see a press release on their website to confirm their take on this.
This question appears to hinge on whether the weights constitute part of a derived work under the GPL. This may depend on whether the weights are "output" from running a covered program. Under the GPL 3, the output of a program is only covered only if, given its content, it constitutes a covered work (i.e. a part of a GPL 3 covered program).
The exact technical details still aren't clear to me. If ChessBase is willing to release any software that actually ships with FF2 (e.g. the NNUE file) under the GPL, I think that would cure their violation even if they don't release the code used to produce the NNUE file. It's not clear to me whether or not they have been willing to do this (I'm not totally sure what's meant by "weights").
5. Regardless of this, Stockfish developers likely have the right to invoke the nuclear option (license termination). Even though ChessBase have ceased their license violations, a GPL 3 copyright holder may terminate your license under 2 conditions:
* If you have been notified of a GPL 3 license violation by the same copyright holder (for any work) before, and the copyright holder notifies you of the violation within 60 days after you cease to violate the terms of the license.
* If you do not cure your violation of the GPL within 30 days of notification, the copyright owner may terminate your license regardless of whether you have previously been notified.
6. There are two ways Stockfish potentially wins this lawsuit. Either
(1) they argue that violation of the GPL license is ongoing, and thus ChessBase have not cured their violation of the license within 30 days and therefore they are within their rights to terminate. This would hinge on the licensing status of the neural net weights, as discussed above.
(2) They argue that at least one Stockfish copyright holder involved in the lawsuit has notified ChessBase of a violation of the GPL 3 before, and thus has the unconditional right to terminate the license because ChessBase was notified within 60 days. This seems plausible enough given ChessBases's previous use of their code [2] but I haven't found any statement that outright says that they have previously notified ChessBase of a violation of their GPL 3 licensed work.
The current title is "Our lawsuit against ChessBase – Stockfish – open-source Chess Engine", which I found confusing. Is Stockfish being sued? Does it belong to ChessBase? I suggest sticking with the simpler title from the blog, "Our lawsuit against ChessBase".
You're right. I didn't see that text anywhere on the page, but it indeed comes from the title element. It doesn't fit in the tab, but I see it now in the tooltip when I hover over the tab in Firefox.
I bet it’s next to impossible to prove copyright in this case.
You would need to track down every last contributor and create a legally valid authorship evidence that is recognized under German legal doctrine.
I would bet that having a email or even full name in a git repository is certainly not enough.
This is exactly why for serious open-source projects that big companies depend on, they always creat a legal body, usually consortium and formally establish legal ownership of rights
Other way around. Just a single contributor who licensed their changes under the GPL can sue. The fact that it's a larger work doesn't matter, because each contributor's rights were infringed, so they have the right to sue.
Come to think of it - I agree. Anyone whose rights where violated can sue.
The challenge of proving authorship and copyright still remains. Honestly not sure what if any available options (git commits, file headers) are really recognized.
Basically I can claim that it is I that committed the code under a pseudonym that matches someones real name. Also you can find someone’s namesake etc.
It's more of a technicality than a challenge in the vast majority of cases.
> Basically I can claim that it is I that committed the code under a pseudonym that matches someones real name. Also you can find someone’s namesake etc.
I mean, you can claim obvious falsehoods if you want, but especially doing so in court isn't going to be a good idea.
> I bet it’s next to impossible to prove copyright in this case. You would need to track down every last contributor and create a legally valid authorship evidence that is recognized under German legal doctrine.
I don't see why they would need every last contributor. They only would need the contributors of the specific code that they allege was copied. That Stockfish contains other code by other contributors that may or may not have been copied would not be relevant.
>Due to Chessbase’s repeated license violations, leading developers of Stockfish have terminated their GPL license with ChessBase permanently. However, ChessBase is ignoring the fact that they no longer have the right to distribute Stockfish, modified or unmodified, as part of their products.
Can they just do that? How can software really be considered free if the maker can later take away your permission to use it?
The copyright holder can choose to do that only after violations have occurred (and choose to permanently terminate the license even after curing the violation). See the verbatim quote from GPL3 in my other comment https://news.ycombinator.com/item?id=27897105
GPL and other copy-left licenses work in that way. If StockFish was MIT licensed before, then ChessBase can use the latest version with that license. They could even fork the repo at that point and continue developing. If StockFish was always GPL, then the license can be terminated.
Reading that, I don't see anything about the copyright holder being able to manually terminate a license. Rather the copyright holder can notify a party that is violating other sections of the GPL3, and then the party can either remedy those violations or lose their license to use the software.
Is ChessBase violating the GPL3?
EDIT: oh, I should read the article. They are saying ChessBase modified the GPL software then redistributed it without the original attribution or copyright.
Has the GPL ever really been tested in a US court?
My non-expert impression has been that open source licenses and "licenses" that aren't ... explicit contractual agreements between parties (i.e. not just click through or some text in a download) do not have a particularly strong backing with law or case law. Whether or not you "can or can't" do something with regards to effectively making up rules that will be enforced by courts with a blob of text in source code or a check boxes on websites is still somewhat up in the air (somebody who knows things feel free to correct my impressions).
Please note that without any license, the default in the US would be all rights reserved for the copyright holder, and thus does not permit you to redistribute without author's permission. Therefore, that particular argument alone (without some additional fair use or other claim) would likely not fly in court in the violator's favor (i.e. if you did not agree to the GPL attached to it, which license did you think you have that permitted you to redistribute the copyrighted work?)
Most lawyers who read the GPL are not excited to go to court. They will advise you are settle without going to court. Lawyers generally want to feel like they have a chance at winning a case in court before bothering, it doesn't feel good to lose - even when you know in advance the case is lost.
Don't read that as lawyers never go to court unless they will win. This is obviously not true: there are many reasons to take a case to court knowing you will lose it. However if a case will be lost in court they will avoid court if possible.
The OpenWRT project is the result of a GPL enforcement action in the USA against Linksys and Software Freedom Conservancy is planning another enforcement action in the IoT space:
I don't think they can do that for already-released code unless there's some clause in the licensing. For future code, they can opt to change the licensing as long as it follows the existing licensing and their possible code contribution agreements.