Patenting Software – Can You Protect Programming Inventions in the UK?

This article is a brief summary of the UK position on patenting inventions associated with computer programming.

Overview

In the UK, it may be difficult to obtain a granted patent for inventions relating to computer programming.

These inventions may not be allowed by the UK Patent Office on the basis that they relate solely to a “computer-program”, a “mental act”, a “business method” or a “mathematical method”.

However, while patent applications for application-level software are most likely to be refused, certain improvements at a low, technical level may be allowed.

Defining Cases: Symbian and Halliburton

The defining cases in this area are Symbian and Halliburton (see links for full references).

  • Symbian concerned adapted dynamic link libraries (DLLs) with two parts: a fixed part and an extension part. Even though it was directed to a method implemented in practice by a computer program, it was found not to be solely a computer program as it made a computer work better as a matter of practical reality. From this case, an improvement at the level of the operating system or below could form the basis of a granted patent. The UK Patent Office appears to dislike the citing of Symbian; frugal use is recommended.

 

  • Halliburton made it easier to obtain a granted patent for inventions that could be performed mentally. In the past, these would be rejected. Now, inventions that are described as “computer-implemented methods” are not rejected just because the “method” could be performed mentally.

Hearings from the UK Patent Office in this area suggest it will be difficult, but not impossible, to obtain a granted patent for a computer programming invention.

Much will depend on the language of the patent application and the particular examiner considering the case. It must be shown that there is more than would be expected when simply running a better program on a computer.

Useful Case Law

The cases below provide examples of the thinking of the UK Patent Office.

  • O/173/08: the invention involved “taking an existing computer program, analysing the instructions … and applying [parallel processing code] substitutions so that the program will operate more quickly”. This may be performed at runtime using a “rules-based system for converting the original code into more efficient code”. This was found to relate to “the generation of more efficient program code rather than an improvement in the operation of the computer system”, i.e. to be an improvement in “programming” and thus excluded for being a “compute program as such”.

 

  • O/066/06: in this case, data received from trace units associated with a processor was used to adapt compilation in real time. The Hearing Officer stated that compilers per se were not patentable for being a mental act; it is likely this is now overturned by Haliburton. The result of the invention was “a faster, more accurate compiler, able to adapt and improve in an iterative manner each time the compiler is used”. This was seen to be a “technical” rather than “cosmetic” advantage, and the case was allowed.

 

  • O/057/06: this case involved the application of a reduced set of Java® Bytecode instructions, i.e. multiple Bytecode instructions were reduced to a single virtual machine instruction. Even though the Hearing Officer acknowledged that Reduced Instruction Set Computers (RISC) were well known, he found that the application related to a non-obvious “invention” under UK patent law. Following from this a patent should be granted. His logic was that hardware-based RISC processors were unarguably patentable, providing a clear technical effect of being faster and more economical. Hence, a software-based version should not be excluded simply because it is implemented on a programmed computer.

 

  • O/036/10: this case involved a simulation system comprising a new arrangement for debugging software enabling a user to locate bugs more quickly and more effectively. Here, however, the computer running the software was “entirely conventional”. The software made “a computer, work differently in the sense of processing data in a different way, but it [did] not make it work better, faster or more reliably in terms of its performance”. No “deep level” technical improvement was located. Thus the application was refused.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s