Author Archives: Dana Morgenstein

Jarek Duda on software patents

Jarek Duda is a lecturer in Institute of Computer Science and Computational Mathematics of Jagiellonian University. He has education in computer science (PhD), physics (PhD) and mathematics (MSc), focusing mainly on widely understood information theory. He is mainly known from introduction of Asymmetric Numeral Systems, which are currently replacing Huffman and arithmetic coding in data compressors among others of Apple, Facebook and Google.

This article presents the views of Jarek Duda. The Free Software Foundation calls for the total elimination of patents from the software field.

Why does the patent system respect the will of the greedy, and not the will of the idealistic?

The patent system imposes the will of these who want to make money from their ideas, preventing others from using them, even those who discover the same ideas independently. What about respecting the will of those who, instead of pursuing their own income, idealistically just want their ideas to blossom in an unrestricted way?

Consider the thousands of programmers implementing their ideas as free/libre software, or academics presenting ideas in articles. Publishing a new idea this way can open a new world of possibilities — but they can be wiped out by others that patent them. For example if there appears new algorithm B, which does the same thing as A but faster and cheaper, patent vultures can rush to patent all the well-known applications of A, except using B instead -– leading to a situation where it is legally impossible to use the algorithm B for any of its natural uses, against the will and efforts of its original author.

Theoretically, the patent system should not allow those patents. They ought to be considered “obvious.” In practice, though, these patents can be issued, because the patent office’s criterion for “unobvious” has historically been astoundingly weak.

This has happened with my ANS coding system for data compression, which is replacing Huffman and arithmetic coding due to its greater speed and performance. Companies such as Apple, Facebook and Google already use ANS to encode users’ data.

I understand others’ choosing to patent software techniques, hoping to get rich, but that is not what I have chosen for ANS. The story of arithmetic coding, which was suppressed by patents for many decades, suggested to me that ANS might be nearly unused if it was patented. As it had the potential to enable worldwide savings in energy, time, transmission costs, etc., I decided to leave the idea unpatented and just made public the required materials. I think this decision accounts for the success of ANS, just as Tim Berners-Lee’s decision not to patent the World Wide Web permitted its success.

However, ANS creates many opportunities for patents on cases of “standard practice, except with A replaced by B,” and monopolizing them could be so profitable that they could attract patent vultures. I was well aware of this danger and tried to publish about as many uses of ANS as I could. Other authors have joined in to publish all basic related ideas, making them “prior art,” what legally should prevent anyone from patenting them.

Turns out, that’s not so easy to achieve: I am aware of two ANS-based patent attempts. One of them has recently succeeded to monopolize ANS with the most basic statistical modeling: that probability of a symbol depends on the previous symbol, while using combined with another basic technique of data compression, “escape codes” indicating to switch between multiple models.

The second patent attempt is by Google, which tries to monopolize the image/video compression application of ANS. I have originally suggested to them these applications (like using ANS for transform coefficients), and have helped them develop this adaptation for three years, communicating with them through their public forum –- hoping for a formal collaboration between my university and Google, to build a team to advance this area more efficiently.

Instead, I have accidentally found out that Google has filed a patent application for more than 100 countries, including the US and Poland. International Searching Authority (ISA) criticized the application in official opinion, saying it involves no “inventive step” and would be invalid, additionally pointing out materials like communication with me they originally did not disclose. However, even after wide media coverage, Google is not commenting or communicating regarding this case, and is probably currently rewriting the patent application, determined to reach the monopolization.

Dear patent officers and corporations: instead of scaring idealists from showing their ideas and crippling the development, please respect the discoverers’ will to make them free, allowing them to blossom in an unrestricted way.

A new idea often inspires others to develop consequent concepts, often multiple times independently – there is some period when allowing for their monopolization is unjustified and extremely bad for the general development.

If those who want to make money from their invention are given 20 years, please also give some protection period for those who just want their ideas to freely develop in society.

Implement and let implement!