Fat Fritz 2

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

Moderator: Ras

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

Re: Fat Fritz 2

Post by gaard »

twobeer wrote: Wed Feb 10, 2021 11:33 pm
AndrewGrant wrote: Wed Feb 10, 2021 2:05 am A question back to Dkappe -- Is it a violation of (whomever; Albert?) trained the Network to reverse engineer the binary and extract the weights into a typical Stockfish form? To distribute that?
I would suggest anyone extracting or downloading then change some weights by a single RL run and then release it for free, . call it "Slim Shady Fritz", and then let see CB lawyers try to "prove" these new weights net infringe their "copyright" -IPs of the net...

Similar thinking here as the excellent work with the Rocket (houndini) engine.. "Slim Fritoz 2" :-)
That seems like a lot of work to go through to put something together that is likely already inferior to freely available software. I like Cash Grab 3 over Slim Shady Fritz, anyways :D

Edit: Reverse engineering of GPL derived works is not only allowed, but often encouraged, for the purpose of interoperability when sources are not immediately available.
gaard
Posts: 463
Joined: Mon Jun 07, 2010 3:13 am
Location: Holland, MI
Full name: Martin W

Re: Fat Fritz 2

Post by gaard »

dkappe wrote: Wed Feb 10, 2021 3:28 am
gaard wrote: Wed Feb 10, 2021 2:43 am
dkappe wrote: Wed Feb 10, 2021 1:58 am
gaard wrote: Wed Feb 10, 2021 1:27 am And more to the point, ChessBase is supposed to provide all sources required to build the software, compilation scripts and networks included, regardless of what license the network falls under, as required by the GPL, to whomever it distributes the software.
Which network? Any old arbitrary network?
No. If I were to find a bug in FF2, I should be able to rebuild it with all else being equal, minus the bug, for example.

See https://github.com/official-stockfish/S ... opying.txt

Look for the part that begins as such:

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.
Just checked it out and compiled it. Loaded a 512 mirrored network and ran it. Looks ok.
12. No Surrender of Others' Freedom.

If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program.
If ChessBase can't provide said sources, due to incompatible license restrictions, they are legally required to "... refrain entirely from conveying the Program." Whatever network you are personally able to load and run separately has _zero_ bearing here.
dkappe
Posts: 1632
Joined: Tue Aug 21, 2018 7:52 pm
Full name: Dietrich Kappe

Re: Fat Fritz 2

Post by dkappe »

gaard wrote: Thu Feb 11, 2021 12:49 am
dkappe wrote: Wed Feb 10, 2021 3:28 am
gaard wrote: Wed Feb 10, 2021 2:43 am
dkappe wrote: Wed Feb 10, 2021 1:58 am
gaard wrote: Wed Feb 10, 2021 1:27 am And more to the point, ChessBase is supposed to provide all sources required to build the software, compilation scripts and networks included, regardless of what license the network falls under, as required by the GPL, to whomever it distributes the software.
Which network? Any old arbitrary network?
No. If I were to find a bug in FF2, I should be able to rebuild it with all else being equal, minus the bug, for example.

See https://github.com/official-stockfish/S ... opying.txt

Look for the part that begins as such:

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.
Just checked it out and compiled it. Loaded a 512 mirrored network and ran it. Looks ok.
12. No Surrender of Others' Freedom.

If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program.
If ChessBase can't provide said sources, due to incompatible license restrictions, they are legally required to "... refrain entirely from conveying the Program." Whatever network you are personally able to load and run separately has _zero_ bearing here.
The net isn’t part of the source. Please pay attention.
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".
gaard
Posts: 463
Joined: Mon Jun 07, 2010 3:13 am
Location: Holland, MI
Full name: Martin W

Re: Fat Fritz 2

Post by gaard »

dkappe wrote: Thu Feb 11, 2021 12:57 am
gaard wrote: Thu Feb 11, 2021 12:49 am
dkappe wrote: Wed Feb 10, 2021 3:28 am
gaard wrote: Wed Feb 10, 2021 2:43 am
dkappe wrote: Wed Feb 10, 2021 1:58 am
gaard wrote: Wed Feb 10, 2021 1:27 am And more to the point, ChessBase is supposed to provide all sources required to build the software, compilation scripts and networks included, regardless of what license the network falls under, as required by the GPL, to whomever it distributes the software.
Which network? Any old arbitrary network?
No. If I were to find a bug in FF2, I should be able to rebuild it with all else being equal, minus the bug, for example.

See https://github.com/official-stockfish/S ... opying.txt

Look for the part that begins as such:

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.
Just checked it out and compiled it. Loaded a 512 mirrored network and ran it. Looks ok.
12. No Surrender of Others' Freedom.

If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program.
If ChessBase can't provide said sources, due to incompatible license restrictions, they are legally required to "... refrain entirely from conveying the Program." Whatever network you are personally able to load and run separately has _zero_ bearing here.
The net isn’t part of the source. Please pay attention.
I read it was embedded in the binary. Is that not correct? If it's not, great. If it is, then the net is part of the "Corresponding Source" that should be available to those that ChessBase distributes FF2 to, to fulfill the license requirements.
User avatar
MikeB
Posts: 4889
Joined: Thu Mar 09, 2006 6:34 am
Location: Pen Argyl, Pennsylvania

Re: Fat Fritz 2

Post by MikeB »

gaard wrote: Thu Feb 11, 2021 12:59 am
dkappe wrote: Thu Feb 11, 2021 12:57 am
gaard wrote: Thu Feb 11, 2021 12:49 am
dkappe wrote: Wed Feb 10, 2021 3:28 am
gaard wrote: Wed Feb 10, 2021 2:43 am
dkappe wrote: Wed Feb 10, 2021 1:58 am
gaard wrote: Wed Feb 10, 2021 1:27 am And more to the point, ChessBase is supposed to provide all sources required to build the software, compilation scripts and networks included, regardless of what license the network falls under, as required by the GPL, to whomever it distributes the software.
Which network? Any old arbitrary network?
No. If I were to find a bug in FF2, I should be able to rebuild it with all else being equal, minus the bug, for example.

See https://github.com/official-stockfish/S ... opying.txt

Look for the part that begins as such:

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.
Just checked it out and compiled it. Loaded a 512 mirrored network and ran it. Looks ok.
12. No Surrender of Others' Freedom.

If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program.
If ChessBase can't provide said sources, due to incompatible license restrictions, they are legally required to "... refrain entirely from conveying the Program." Whatever network you are personally able to load and run separately has _zero_ bearing here.
The net isn’t part of the source. Please pay attention.
I read it was embedded in the binary. Is that not correct?
I don think that really matters ...and I'm with you. A gray area for sure, but the risk to CB is low in my non-legal opinion. I'm sure they weighed the risks and came to the same conclusion. That fact that nothing happened with FF1, probably bolstered their confidence. But this is a Stockfish clone - there is no question about that. A different NNUE doesn't change that.
Image
gaard
Posts: 463
Joined: Mon Jun 07, 2010 3:13 am
Location: Holland, MI
Full name: Martin W

Re: Fat Fritz 2

Post by gaard »

MikeB wrote: Thu Feb 11, 2021 1:06 am
gaard wrote: Thu Feb 11, 2021 12:59 am
dkappe wrote: Thu Feb 11, 2021 12:57 am
gaard wrote: Thu Feb 11, 2021 12:49 am
dkappe wrote: Wed Feb 10, 2021 3:28 am
gaard wrote: Wed Feb 10, 2021 2:43 am
dkappe wrote: Wed Feb 10, 2021 1:58 am
gaard wrote: Wed Feb 10, 2021 1:27 am And more to the point, ChessBase is supposed to provide all sources required to build the software, compilation scripts and networks included, regardless of what license the network falls under, as required by the GPL, to whomever it distributes the software.
Which network? Any old arbitrary network?
No. If I were to find a bug in FF2, I should be able to rebuild it with all else being equal, minus the bug, for example.

See https://github.com/official-stockfish/S ... opying.txt

Look for the part that begins as such:

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.
Just checked it out and compiled it. Loaded a 512 mirrored network and ran it. Looks ok.
12. No Surrender of Others' Freedom.

If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program.
If ChessBase can't provide said sources, due to incompatible license restrictions, they are legally required to "... refrain entirely from conveying the Program." Whatever network you are personally able to load and run separately has _zero_ bearing here.
The net isn’t part of the source. Please pay attention.
I read it was embedded in the binary. Is that not correct?
I don think that really matters ...and I'm with you. A gray area for sure, but the risk to CB is low in my non-legal opinion. I'm sure they weighed the risks and came to the same conclusion. That fact that nothing happened with FF1, probably bolstered their confidence. But this is a Stockfish clone - there is no question about that. A different NNUE doesn't change that.
It only matters in regards to the GPL if they aren't providing all corresponding sources required to build the software. I'm sure you're correct about their risk-reward assessment. In any case, I don't have a dog in the fight, that is, my name isn't on the copyright; I have zero standing in any legal action.
connor_mcmonigle
Posts: 544
Joined: Sun Sep 06, 2020 4:40 am
Full name: Connor McMonigle

Re: Fat Fritz 2

Post by connor_mcmonigle »

dkappe wrote: Thu Feb 11, 2021 12:07 am Well, inciting others to break the law doesn’t strike me as very clever.

I don’t know that FF2 behaves the same way, but it’s very easy to detect that Night Nurse is trained from mcts data rather than ab data. Also, RL training a mcts trained net will make it weaker in a hurry.

So good luck with that...from prison. 😂
I don't see how extracting the weights would be breaking the law, but I'm, like the rest of us, no legal expert.

As the weights are included inside a GPLv3 licensed binary, anyone who purchases said binary has full ownership of the binary and reserves the right to convey the binary to others free of charge. The GPL language is exceedingly clear on this point as far as I can tell:
https://www.gnu.org/licenses/gpl-faq.en ... RequireFee.
https://www.gnu.org/licenses/gpl-faq.en ... Prohibited

Furthermore, anyone who has had the binary conveyed to them is completely free to both modify it and share it. There is no conceivable way sharing a copy or copied portion (the parameters) could be illegal given the GPLv3 license as far as I can see.

From where is the idea that this would be a criminal offense originating?
dkappe
Posts: 1632
Joined: Tue Aug 21, 2018 7:52 pm
Full name: Dietrich Kappe

Re: Fat Fritz 2

Post by dkappe »

connor_mcmonigle wrote: Thu Feb 11, 2021 1:34 am
dkappe wrote: Thu Feb 11, 2021 12:07 am Well, inciting others to break the law doesn’t strike me as very clever.

I don’t know that FF2 behaves the same way, but it’s very easy to detect that Night Nurse is trained from mcts data rather than ab data. Also, RL training a mcts trained net will make it weaker in a hurry.

So good luck with that...from prison. 😂
I don't see how extracting the weights would be breaking the law, but I'm, like the rest of us, no legal expert.

As the weights are included inside a GPLv3 licensed binary, anyone who purchases said binary has full ownership of the binary and reserves the right to convey the binary to others free of charge. The GPL language is exceedingly clear on this point as far as I can tell:
https://www.gnu.org/licenses/gpl-faq.en ... RequireFee.
https://www.gnu.org/licenses/gpl-faq.en ... Prohibited

Furthermore, anyone who has had the binary conveyed to them is completely free to both modify it and share it. There is no conceivable way sharing a copy or copied portion (the parameters) could be illegal given the GPLv3 license as far as I can see.

From where is the idea that this would be a criminal offense originating?
Go back and read the post on promissory estoppel. In short, if a work is in violation of the GPL, it doesn’t put all of its parts under the GPL unless a few things are true, such as the violating party owning the copyright to all of the parts that make up the work. So, for example, MikeB distributes some Android apps that use some of my nets. I own the copyright on those nets. If MikeB is found to be violating the GPL (unlikely, but for argument’s sake), that doesn’t change the fact that I own the copyright on those nets.
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".
gaard
Posts: 463
Joined: Mon Jun 07, 2010 3:13 am
Location: Holland, MI
Full name: Martin W

Re: Fat Fritz 2

Post by gaard »

dkappe wrote: Thu Feb 11, 2021 1:54 am
connor_mcmonigle wrote: Thu Feb 11, 2021 1:34 am
dkappe wrote: Thu Feb 11, 2021 12:07 am Well, inciting others to break the law doesn’t strike me as very clever.

I don’t know that FF2 behaves the same way, but it’s very easy to detect that Night Nurse is trained from mcts data rather than ab data. Also, RL training a mcts trained net will make it weaker in a hurry.

So good luck with that...from prison. 😂
I don't see how extracting the weights would be breaking the law, but I'm, like the rest of us, no legal expert.

As the weights are included inside a GPLv3 licensed binary, anyone who purchases said binary has full ownership of the binary and reserves the right to convey the binary to others free of charge. The GPL language is exceedingly clear on this point as far as I can tell:
https://www.gnu.org/licenses/gpl-faq.en ... RequireFee.
https://www.gnu.org/licenses/gpl-faq.en ... Prohibited

Furthermore, anyone who has had the binary conveyed to them is completely free to both modify it and share it. There is no conceivable way sharing a copy or copied portion (the parameters) could be illegal given the GPLv3 license as far as I can see.

From where is the idea that this would be a criminal offense originating?
Go back and read the post on promissory estoppel. In short, if a work is in violation of the GPL, it doesn’t put all of its parts under the GPL unless a few things are true, such as the violating party owning the copyright to all of the parts that make up the work. So, for example, MikeB distributes some Android apps that use some of my nets. I own the copyright on those nets. If MikeB is found to be violating the GPL (unlikely, but for argument’s sake), that doesn’t change the fact that I own the copyright on those nets.
At least you are now acknowledging the fact (or possibility) that someone's work has been hijacked to be used in a GPL infringing software distribution money making scheme. I would call that progress. 😂
dkappe
Posts: 1632
Joined: Tue Aug 21, 2018 7:52 pm
Full name: Dietrich Kappe

Re: Fat Fritz 2

Post by dkappe »

gaard wrote: Thu Feb 11, 2021 2:05 am
At least you are now acknowledging the fact (or possibility) that someone's work has been hijacked to be used in a GPL infringing software distribution money making scheme. I would call that progress. 😂
I am acknowledging nothing of the sort. Just doing the lord’s work disabusing people of their magical GPL thinking.

There’s nothing wrong with people making money from GPL’d software. The GPL in fact calls for it. If you didn’t want that to happen, you should have used a different license.
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".