On July 4th this 12 months, after a whole lot of ready, Stockfish and Chessbase lastly received their first day in courtroom. The battle between the 2 software program makers started when ChessBase launched a chess engine known as “Fats Fritz 2” that was allegedly a repackaged model of Stockfish. This led to some important recrimination, together with on this very web site. The case was of curiosity to free software program advocates and chess gamers all over the place, so we despatched a Lichess developer to the courtroom in Munich to witness occasions firsthand and report on them. We additionally spoke with ChessBase CEO Matthias Wüllenweber. (Full textual content of the interview)
The character of this dispute could be tough to clarify to people who should not accustomed to the Free Software program design course of. This course of not solely produced Stockfish and Lichess, however different well-liked software program like VLC, Firefox, and the Linux OS that most likely runs the servers of all of your favourite web sites.
In contrast to proprietary software program, the code from free software program can be utilized freed from cost in another mission, however you should fulfill different non-financial necessities of the license. Within the case of the “GPLv3” license that Stockfish makes use of, meaning you should inform customers clearly that the software program they’re utilizing is free software program, and make the supply code, with any modifications you’ve made, publicly obtainable to make use of in the identical approach that the unique is. On this case, neither the Fats Fritz 2 code nor the license textual content was made obtainable.
Shortly after Fats Fritz 2 was launched, the Stockfish staff despatched a stop and desist letter to ChessBase asking that they fulfill the necessities of their license for Fats Fritz 2, and, very importantly, additionally fulfill the license for another ChessBase merchandise that may include Stockfish code. After receiving the letter, Chessbase launched a brand new product “Fats Fritz 2 SE”, packaged with a duplicate of the GPLv3 license and a duplicate of the supply code with what seems to be a distinct, and weaker, neural web. The code for the unique Fats Fritz 2 has but to be launched.
ChessBase admits they violated the license, though by mistake, and solely briefly. In response to Wüllenweber: “With Stockfish we didn’t fulfill the GPLv3 necessities and frantically scrambled to repair this inside days of the primary publication. The fault that almost all aggravated me was that the unique model someway entangled the brand new neural community in a approach with the engine that made it unusable in another context. A transparent violation. We fastened it instantly, but it surely was [in]appropriately perceived as unhealthy intention. As soon as in your life, you have got this mission the place every little thing that may go unsuitable goes unsuitable.”
Along with the lacking authorized necessities, ChessBase additionally didn’t give Stockfish a lot public recognition for his or her contribution both. The ChessBase homepage known as Fats Fritz 2 “the brand new #1” engine.” Presumably, supplanting the now “inferior” Stockfish. Fats Fritz 2 creator Albert Silver did interviews the place he mentioned what it was wish to “begin nearly fully from scratch.” This stuff triggered important resentment among the many Stockfish staff. In response to Wüllenweber; “Within the publication means of Fats Fritz 2, I made a number of errors. Consequently, the Stockfish authors are actually fairly offended at us, and I can totally perceive this. Probably the most severe error was to not describe the mission to them beforehand. If that they had objected, we might have canceled it. One other error was to do overzealous boasting about Fats Fritz on our website online. Whereas we believed that the brand new neural web was authentic and useful, this advertising and marketing downplayed Stockfish in an unacceptable method. These articles have been naturally learn and quoted extensively, whereas no person noticed the official promoting and packaging which at all times mentioned “Primarily based on the open-source engine Stockfish” because the very first declare.
The again of the packaging of a bodily copy of Fats Fritz 2
The Stockfish staff was equally unflattering of their communication in regards to the concern. On the official Stockfish weblog Joost VandeVondele wrote: “ChessBase’s communication on Fats Fritz 2, claiming originality the place there’s none, has shocked our neighborhood. Moreover, the engine Fats Fritz 2 fails to persuade on impartial score lists, casting doubt on the usefulness of these modifications. Certainly, we really feel that clients shopping for Fats Fritz 2 get little or no added worth for cash. Claims on the contrary seem deceptive.”
The stop and desist letter wouldn’t be the tip of the authorized wrangling. Whereas some steps had been taken to convey Fats Fritz 2 into compliance, there was nonetheless an issue with one other ChessBase product. “Houdini 6” is one other older engine that ChessBase has been promoting since 2017. What was claimed to be supply code for Houdini, acquired by unclear strategies, was posted anonymously on GitHub, and it bore a placing resemblance to Stockfish code. Six weeks after the primary stop and desist letter, the Stockfish staff ready one other for Houdini, and this one would carry a distinct demand that might turn into the important thing concern within the upcoming lawsuit; GPLv3 license termination.
Any license has to have some enamel; a selected penalty for not following its necessities. The GPLv3 wouldn’t be price a lot if the one penalty for violating it was to shrug, apologize, and do the identical factor once more later. To this finish, the second Stockfish stop and desist letter didn’t demand achievement of the license necessities for Houdini, it knowledgeable ChessBase that attributable to repeated violations, their license to make use of Stockfish code had been revoked and so they should stop distributing any Stockfish derived software program completely. When ChessBase refused, the Stockfish staff determined to implement their license termination with a lawsuit.
We requested a Lichess dev to examine the alleged Houdini code that the Stockfish staff submitted to the German courtroom and his opinion was clear. In response to him: “It is not an entire 1-to-1 copy. He (Robert Houdart, The Houdini developer) added customized components, and modified some components, however massive and important components of the code, undoubtedly greater than 1000 traces, are plainly and clearly the identical as Stockfish code. It additionally comprises 1-to-1 copied and really particular feedback which in components even reference Stockfish (e.g. “To compile stockfish…” within the Makefile) and Glaurung (the Stockfish predecessor)”
Nonetheless, Wüllenweber insists that there’s something authentic in Houdini “A few weeks in the past, I regarded on the code samples demonstrated by the plaintiffs. I assume that from Stockfish’s viewpoint they supplied the stuff that involved them most. To me it appeared clear that each applications use the identical concepts in these code snippets. Concepts of originality and worth. To me it additionally appeared clear that Houdart expressed these concepts in his personal phrases, the place his implementation was generally fairly environment friendly or at the least totally different from the Stockfish pattern.”
A code comparability between Stockfish and alleged Houdini from the Stockfish staff’s courtroom submissions. In addition they included proof that the compiled program behaves in follow just like the commercially launched Houdini binary.
A German civil courtroom is a much more informal affair than it’s possible you’ll count on, there are not any hovering Hollywood speeches, or witnesses cracking below a shrewd lawyer’s interrogation. As an alternative, the 2 events in a lawsuit meet with the decide in a quiet room to debate the case. She asks inquiries to each events, and after the assembly is over she’s going to both make a ruling or request additional proof. Though the decide on this case made no formal ruling, she did clearly state her opinion on sure particular questions. It’s additionally doable to make extremely educated guesses on her view of issues from the traces of questioning she chooses and the topics she finds essentially the most related. In response to our on-site reporter, the decide on this case is satisfied that Houdini comes from Stockfish and explicitly put the accountability to show in any other case on ChessBase. She additionally appeared to agree that a number of license violations happened, and that revocation was not solely legitimate usually, however an affordable end result on this specific case as nicely.
A German civil courtroom appears extra like a classroom.
Her fundamental concern appears to be the precise scope of any potential revocation. A German courtroom ruling must be outlined in a approach {that a} bailiff can perceive nicely sufficient to implement, and with a Stockfish codebase that’s continually rising and altering this may very well be tough to do. The Stockfish staff appeared pleased with the results of the primary listening to. In response to VandeVondele on the Stockfish Discord: “I feel usually we’re fairly comfortable about the way it went. The decide was very educated and understood our arguments and proof fairly nicely. The burden of proof has been reversed for Houdini, and we perceive that termination by few copyright holders is feasible. The scope of termination is one thing that wants additional work (which variations, which code, and so forth). The choice can be to settle, with phrases that we have to replicate on, and particularly additionally talk about with Tord. (Romstad, a Stockfish Developer)“
German civil courts strongly encourage the events to discover a settlement, and the decide on this case was no exception. She spoke to each events to push them in that path. Nevertheless, it appears that evidently a settlement won’t be simple to rearrange. When requested why not merely conform to not promote Stockfish-derived software program if he regrets doing it within the first place, Wüllenweber admitted that there was some unhealthy blood on his aspect too: “Stockfish’s public response to Fats Fritz 2 was fairly painful and damage us. Perhaps we deserved some punishment. Nevertheless, now singling us out whereas rivals drive many monetization schemes primarily based on Stockfish appears like one thing one ought to stand as much as.”
The courtroom will meet once more on March twentieth, 2023 until a settlement is reached first. If a ruling is made there may very well be appeals afterwards. Altogether, this case may take years to resolve. Keep tuned to all the usual Lichess communication channels for updates on this case because it develops additional.