Software Patents and Copyleft

Posted 17 Apr 2002 at 16:54 UTC by sej Share This

What would you think of a company that grants no-cost licenses for its software patents to any copylefted free software, but not X11/MIT/BSD licensed software? Conversely, what would you think of a company that patents inventions embodied in their copylefted software, and dual-licenses the patent (at some cost) to proprietary software developers?

I don't have a thesis to present here. I'm using this article to get an idea of what others think in the free software community. Copyrights and patents are two forms of intellectual property (I distinguished them, so can I use the umbrella term please?). With Copyleft, the copyright law was cleverly used to protect source code availability. Advocates of this approach are comfortable with using copyright to this end, and comfortable with dual-licensing strategies upon which hybrid proprietary/free software businesses are built (maybe "comfortable" should be replaced with "willing to compromise").

Is there a similar territory of "compromise" or "comfort" available for software patents? One could argue that all software patents are a bad idea, and you should avoid trafficking in them. But many people have found at least one use of software copyright they wholeheartedly support, could there not be clever uses of software patents that receive the same support?

As a programmer of non-copylefted free software I've long had to accept that others were using copyright law to exclude me from incorporating their freely available work into my own. I would have the same concern with copylefted patents (with or without dual-licensing), and would prefer a no-cost license granted to all variants of free software. But I can understand that people use copyrights and patents to keep others from having access to information without agreeing to certain terms, and adherence to copyleft might be what it takes to get certain corporations to liberalize their software patents.

I know Bruce Perens was working on a free software patent pool a while back, and even considered starting a venture to run the pool for a profit. What became of that? What other synergies are ongoing between free software and software patents? What does RMS think? What do you think?

Patent copyleft, posted 17 Apr 2002 at 17:10 UTC by sab39 » (Master)

This seems like such an obvious idea that I don't quite understand why nobody's tried it. It's only tangentially related to the article, I'm afraid, although it is related to "Patents and copyleft".

The GPL says "if you use this copyrighted code in a product, you must release all the copyrighted code in said product under these terms or looser".

Why couldn't a patent be licensed under terms that say "if you use this patented technique in a product, you must ensure that all other patents covering said product are licensed under these terms or looser" (with "looser" of course including universal royalty-free licensing)? If you don't have the right to license those patents, you can't use this patent - just like if you don't have the right to license some copyrighted code, you can't combine it with GPLed code. By obtaining individual patents and releasing them under such terms, the patent system could be gradually co-opted in the same way the GPL is co-opting the copyright system - even more so in fact, because it could become impossible to do certain necessary tasks without using a patent licensed in this way (think LZW or RSA).

I don't see the patent system being reformed meaningfully through politics any time soon. Co-opting it just like the GPL co-opts copyrights would be a real step that could be started *today*.

raph?, posted 17 Apr 2002 at 17:18 UTC by yakk » (Master)

I think raph does exactly this.

Re: raph?, posted 17 Apr 2002 at 17:26 UTC by sej » (Master)

yakk, thanks for pointing that out. raph, I'm just curious, did you ever consider extending your grant to include the LGPL? Why or why not?

Commons, posted 17 Apr 2002 at 21:17 UTC by ftobin » (Journeyer)

The point of such a strategy is to encourage a commons, as described in Lawrence Lessig's book, "The Future of Ideas". The GPL, and to a lesser extent, the LGPL, have similar effects: they require that if you partake of the goods available to all, then you must contribute back.

A patent with terms that you describe has a similar effect; if you wish to use the patent, then you must be doing work that helps this commons. If you use a BSD or similar license, however, then you are helping both the people working in the commons, and indirectly those out of it, and the patent holders probably don't feel like benefiting those taking from the commons.

Of course, there is also the obvious feeling that the (L)GPL and similarly the said patent conditions can feed, "I'm not profitting from doing this, so you can't either."

I'm all for it, posted 17 Apr 2002 at 21:27 UTC by walken » (Master)

I think software patents are a bad idea; however I dont see any 'ethics' problems for a free software programmer or company to use the patent system to protect their interests. Just as proprietary software companies use patents, it's only fair game that free software companies should be able to use patents against proprietary software companies, using a selective licensing scheme as you described.

The reason I dont see it taking off though, is that patents are pretty expensive to obtain. For copyright protection the GPL works pretty nice because it's so easy to put something under the GPL - but, for patent protection the system is much more complex and expensive and I cant see myself doing this in my free time. Raph, what's your experience with this ?

Letter and a list for royalty free license for Free Software, posted 17 Apr 2002 at 21:50 UTC by adulau » (Journeyer)

As you know, software patents are bad and hurt the innovation in computer science.

For the moment, we are trying to have a list of patent owners allowing royalty free license for Free Software : .

We have trying to keep the list up to date to show that software patents are a real issue for Free Software and innovation in general. (as an argument for EU to NOT make a directive around software patents)

Re: Letter and a list for royalty free license for Free Software, posted 17 Apr 2002 at 22:17 UTC by sej » (Master)

I agree that software patents are bad when they apply to ideas or expressions of an idea, or to math, or to something obvious to a skilled practitioner in the field. But perhaps some software patents are as worthwhile as patents granted before the 1980's, when the Reagan administration switched the patent office over to funding itself from application fees. Prior to that there had been a knee-jerk restriction against all software patents. After that the floodgates were opened (too far).

It is the somewhat defensible software patents I'm interested in. The ones that embody a surprising and non-trivial invention.

adulau, will you make a distinction between no-cost licenses that are granted for all free software versus just copylefted free software?

Re: Re: raph?, posted 18 Apr 2002 at 01:34 UTC by jamesh » (Master)

sej: I think Raph doesn't include LGPL in his patent license, as it would allow a proprietary software company from writing a small LGPL library implementing the patented code, then linking that into the proprietary app. The MIT/X license has the same problem.

The idea being that people wanting to use the patents in proprietary apps would need a separate license for the patents. This is equivalent to companies licensing their GPL'd code under other terms to people willing to pay.

raph's patents and copyright versus patent licenses, posted 18 Apr 2002 at 16:14 UTC by sab39 » (Master)

WRT using patented code in non-free software, you could license the patent for use in all free software (including non-copyleft) but state that the patent itself can't be used if the non-copyleft code gets linked to non-free software. Obviously raph's patents are his to do with as he sees fit, but making the restriction part of the patent license seems preferable to only allowing copyright licenses that enforce the same condition separately.

I'm genuinely curious as to what people think about my proposal in the first comment to this article (which turns out not to be as off-topic as I thought - I misinterpreted the article as being just to do with patents and copyright licenses, not patent licensing in general). Is there some fundamental flaw in this?

It seems a lot simpler than setting up explicit patent pools and licensing to GPL-software only and things like that; it doesn't mingle patents with copyrights (thus perhaps giving some leverage with people who might be opposed to "free software" or "open source" but might be okay with "open patents" where you just license your patents freely, not your proprietary source code) and it self-organizes into a big global patent pool, much like there's a global "copyright pool" of GPL software today.

Am I missing something, or could it really work?

Re: Patent copyleft, posted 18 Apr 2002 at 16:31 UTC by sej » (Master)

sab39, your idea is interesting, but your paraphrasing of the GPL isn't accurate. It doesn't say you have to release derivative works under equal terms or looser. It says you have to release derivative works under the GPL, period.

But for patents maybe you can find a legalistic definition of "looser" that will hold up. Or maybe someone can write a dead-end copyleft-like license that creates a permanently fenced-off area of collaborative patents. And I'd guess to be a success that "someone", whether an individual or organization, would have to have "seed patents" of comparative value to the potential community as emacs, gcc, and gdb were to the free software community.

Patent copyleft, posted 18 Apr 2002 at 20:56 UTC by sab39 » (Master)

You're right that the GPL says that you must release derived works under the GPL, period, and that that makes my analogy a little less accurate, perhaps. However, the GPL does allow some scenarios that are analagous to my patent license.

Consider the situation where I want to release a work based on a GPL'd library A, and an X11 licensed library B. My work will involve making fixes to A and B, and writing some application code C which calls the libraries.

The GPL requires that I release "the work as a whole" under the GPL specifically. But the GPL doesn't preclude me also releasing the fixes to B under the X11 license, which is looser than the GPL. This is because my fixes to B are not derived works of A, but simply included in a work which is "as a whole" a derived work of A.

Whether a "looser" license is permissible for the application code C is a slightly grey area and I'm not sure I understand all the implications (or that those implications are legally well-defined yet). The application code C is only a derived work of A if you consider work that uses an API to be a derived work of that API, which legal precedent doesn't, as far as I can tell (are all Windows applications derived works of Windows, and hence © Microsoft?). So the application code itself can be licensed under whatever terms you like.

However, a binary of C, linked to A, is definitely a derived work of A. This, then, must be distributed under the GPL. But the GPL only requires that the source code be released under the GPL, and doesn't preclude releasing it under other terms as well.

So it is at least arguable that I can distribute the code to C under the terms of the X11 license, with the understanding that if you link C to A and produce a binary, you're bound by the GPL. But you could still remove all references to A in C (perhaps rewriting it to use a non-GPL'd library to get the same functionality) and distribute the result under a pure X11 license, untainted by the GPL.

The definition of "or looser" that I'd choose would be analagous to the way that the GPL deals with unrelated works that end up part of the same derived work as some GPL software. I'd define it something like this:

A patent is licensed freely enough to be acceptable under this license if and only if it may be used without royalties or other consideration in ANY product that is covered only by patents licensed under this license or other acceptable licenses.

That would mean that you could have:

The patent-GPL: the patent can only be used in products in which all the patents are acceptable (as defined above)

The patent-LGPL: the patent can only be used if all patents on the same part of the product are acceptable

The patent-BSD: the patent can be used royalty-free in any product but its use must be acknowleged

The patent-X11: the patent can be used royalty-free in any product

All of these are "acceptable" and thus compatible with the patent-GPL, except possibly the patent-BSD, which would depend on how the acknowledgement requirement was implemented - just like in the world of copyright licenses today.

Sleepycat?, posted 19 Apr 2002 at 17:21 UTC by Cantanker » (Journeyer)

Sleepycat develop and distribute the Berkeley DB product under a dual license.

What jamesh said, posted 24 Apr 2002 at 23:55 UTC by raph » (Master)

My patent grant extends only to the GPL for exactly the reasons that jamesh describes - otherwise, it is too tempting for a commercial user to create an LGPL'ed (or, more likely, RAPHSPAT.DLL), and link to their otherwise proprietary code.

I'm perfectly willing to consider other alternatives, but frankly the issue hasn't come up in a serious way yet. My patents tend to cover highly technical implementation details, rather than generic features. In particular, it is quite unlikely that anyone will find the need to either license or get around one of my patents for the purpose of interoperability. Thus, it is entirely plausible that the GPL-only grant is a good fit for my patents, but not necessarily others that may be worth granting to the free community.

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

Share this page