The idea that software can be patentable is a fairly recent one, and still a somewhat controversial one. The US Patent and Trademark Office (USPTO) considers patents to cover processes, machines, articles of manufacture, and compositions of matter but not scientific truths or mathematical expressions. In the 1970s, the USPTO gave no protection for an invention that used a calculation made by a computer. In the 1980s, the US Supreme Court ruled on the case Diamond v. Diehr where a process implemented one of its steps using a computer program. This forced the USPTO to accept that some computerized inventions are patentable. In the 1990s, the US Federal Circuit Court ruled in State Street Bank & Trust v. Signature Financial Group that almost all software is patentable. Given that methods have always been patentable, this seems to be a reasonable conclusion because software is a method implemented on a computer.
The patentability of software varies from country to country. In the United States any kind of software is patentable, though the recent case of Bilski v. Doll requires that a patent meet the “machine-or-transformation test.” In other words, the patent must explicitly state that the method is implemented on a machine or must transform data in some way. Just this week, though, the Supreme Court agreed to hear the Bilski case, so stay tuned for further changes to U.S. patent law.
In the European Union software that solves technical problems is patentable but not software that solves business problems. In Japan software is patentable if it solves technical problems in a non-obvious way (though non-obviousness is a requirement for patentability of an invention in any country). In India, a change was proposed to the patent system to allow software patents, but it was killed by the Indian Parliament in April 2005. In Australia, like the United States, any software that solves technical problems or business problems is patentable.
There are a number of arguments put out by a number of groups for and against software patents. The debate is heated, and many groups are pushing for laws in the United States to disallow software patents, among several other proposed “reforms.” My own opinion is that the United States is the most innovative country in the world and the patent system, in effect since the founding of this country, needs only minor tweaking. The best solution would be to make patent examination more efficient in order to quickly eliminate bad patent applications and quickly issue good ones.