What Does Software Propagation Mean?
Software propagation refers to the changing existing application code and spreading copies of the altered code to other users. It was originally defined at the first international GNU General Public License Version 3 (GPLv3) Conference in 2006 to prevent GNU software from being covered under any nations copyright law. GNU software is meant to be free, so the improvement of software and the distribution of the improvements is encouraged under the GNU General Public License (GPL).
Techopedia Explains Software Propagation
Software propagation essentially means modifying a program and then sharing the modified code with others. For proprietary software, this would be a clear violation of copyright. The GNU project used the term software propagation as a workaround to prevent GNU code from becoming part of a copyrighted piece of software.
If a programmer takes GNU code and alters it, he is allowed to share it (propagate) but he has forfeited legal rights to it by doing so. If the programmer makes a claim of ownership, the original license he agreed to in order to get the code strips him of his rights to the code within 60 days of a violation (in this case, the ownership claim). The programmer is left owning the tweaks to a code base that he has no right to, thus preventing any commercial advantage to claiming ownership.
The GNU GPL already provides users the right to modify and execute the code as they see fit, so the software propagation language was added to head off any attempt to claim ownership when/if those modifications were shared.