The serious problem of proliferating bad software patents was not solved by the Supreme Court's Bilski decision, but now it's looking like it may be part of the solution. The early case law applying Bilski is much more encouraging than expected. The new Bilski test focuses on whether an application attempts to patent “an abstract idea.” That new test has already been applied to reject applications for quite a few bad software patents, and with more lawsuits, it could invalidate a lot more. To advance on this, we need to figure out out better ways to explain what software is and show when it is an unpatentable abstract idea.
When the Bilski decision was announced last June, at first, I was disappointed that the Supreme Court didn't address software patents directly, and disappointed that the Court's new Bilski test was not more clear. Instead of either adopting or rejecting the Federal Circuit's machine-or-transformation (“MOT”) test, the Court dubbed it “not the sole test,” though “a useful and important clue” as to whether a process involved patentable subject matter. The Court ultimately rejected Bilski's application on the ground that abstract ideas are not patentable.
Based on the Patent and Trademark Office's interim guidance on applying Bilski and the early case law, the test now seems to be MOT-plus-abstraction: check whether there's a particular machine or transformation, and then check whether the proposed invention is really an abstract idea. This could be good for the FOSS community and others concerned with the problems caused by bad software patents. It's easy to argue, at least as to a lot of software patents, that there is no a particular machine and no transformation of an article to a different state or thing, but instead a mere abstract idea.
That's basically the analysis of quite a few post-Bilski decisions from the Board of Patent Appeals and Interferences. I've tried to collect every one of those opinions on software patents, and came up with 25. Of the 25, the BPAI rejected software patent applications in 21. Several of these opinions state broadly that a claim that merely recites software is not patentable, because it is an abstract idea. This is helpful!
The difficult cases for the BPAI are applications that involve some sort of references to hardware as well as to software. These cases came down both for and against validity, and I couldn't discern a clear pattern. There are some decisions that take the view that a software patent cannot meet the subject matter requirement merely by referencing a general purpose computer. A few others seem to find any reference to hardware enough to satisfy the new Bilski test. In short, the BPAI cases are not consistent when there's a combination of software and hardware, but it looks like the issue is still up for grabs.
The first post-Bilski federal district court decision is also encouraging. Ultramercial, LLC v. Hulu, LLC, 21010 WL 3360098 (C.D. Cal. Aug. 13, 2010) considered the validity of a patent over a method for allowing web users to view content for free in exchange for watching advertisements. The district court recognized that the method could only be used on computers or a computer network, and considered various arguments that some part of this process involved a machine or transformation so as to satisfy the MOT-plus-abstraction test. In the end, the court found that there was no machine or transformation, and the process was an unpatentable abstract idea.
A big challenge for those facing the risk of being accused of infringing bad software patents is how to demonstrate that the patent is an abstract idea. The Bilski decision reaffirmed that abstract ideas are not patentable, but it didn't give a test for how to distinguish such abstract ideas. There are various possible paths on this. The Supreme Court has said that mathematical algorithms are not patentable, and Ben Klemens [PDF] and others have argued that software is at bottom indistinguishable from mathematical algorithms. Others have fashioned related arguments leading toward the conclusion that at least some software is too abstract to be patented. Some of the analysis of PoIR on GrokLaw is particularly interesting: Why software is abstract and An Open Response to the USPTO — Physical Aspects of Mathematics.
This is a discussion that needs to continue. I hope FOSS developers and others with deep knowledge of software technology will get involved. We need to get to a convincing explanation in terms that non-technical people (such as judges and juries) can understand of the nature of software and why it is at bottom an abstract idea. Anyone care to take a swing?