This is an interesting decision for programmers, since the EPO Board of Appeal 3.5.06 had to decide whether the reduction of the execution time of a computer-implemented method is a technical effect and thus potentially patentable.
Talking about software patent eligibility, allow me a quick rant about the flaws of the USPTO‘s infamous “abstract idea” test:
Honestly, I believe the Mayo/Alice two-step test causes much more harm than good: Continue reading Why software patent eligibility is not an issue at the EPO — and what the USPTO can learn from this
Is software patentable in Europe?
Well, the short answer is “Yes”, but only if it provides a non-obvious technical contribution:
In other words, the invention needs to solve a technical problem in a clever way.
For example, if the software runs
- more efficiently,
- more secure,
- more robust,
- more scalable, or
- more user-friendly ,
your software patent is in pretty good shape! (provided that the solution is somewhat “clever”)
On the other hand, if the unique thing about the software product is really in the business idea, and the technical implementation of that idea in software is trivial, you won’t get a software patent in Europe.
Find out more in my article “How to get your software patent allowed in Europe”.
Are you up to date?
As the skilled reader will know, at the EPO only features which make a technical contribution enter into the examination of inventive step (obviousness) whereas non-technical features are disregarded.
In this decision, the EPO board of appeal had to decide whether a computer program that it is faster than an earlier one makes the required technical contribution.
The board’s answer in a nutshell:
The improved speed of a computer program is not by itself a technical contribution to the art.
In detail, the board held the following:
10. In the board’s view, the argument that a computer program or computer-implemented method is inventive because it is faster than an earlier one is on its own insufficient to establish an inventive step. More specifically, the improved speed of a computer program is not by itself a technical contribution to the art.
10.1 By way of illustration, let it be assumed that the method in question is a non-technical one, for example a mathematical method or a method of doing business.
10.2 Under Article 52(2)(a) and (c) and (3) EPC, this method will not be regarded as an invention in the sense of Article 52(1) EPC.
10.3 Any computer program implementing that method will, of necessity, need a particular amount of computing resources, in particular time. This is merely a consequence of the “normal” physical interactions between program (software) and computer (hardware) (see T 1173/97, OJ EPO 1999, 609; headnote and reasons 6.6, 9.6, 13). According to established jurisprudence of the boards of appeal, the computer program would thus be found not to comply with Article 52(2)(c) and (3) EPC for lack of a “further” technical effect. And because the computing time does not contribute to the technical character of the computer program, it could not support the presence of inventive step of a corresponding computer-implemented method (see T 641/00, OJ EPO 2003, 352; headnote 1).
Accordingly, speeding up the response time of e.g., a software controlling a production plant is patentable, but speeding up a business method is not.
10.4 These findings cannot be changed by a document which discloses an alternative, earlier non-technical method which takes longer to carry out on a computer. In other words, it cannot be argued that a computer program must be regarded as an invention in the sense of Article 52(1) EPC, i.e. as a technical invention, for the sole reason that an earlier computer program happens to exist which solves the same, non-technical problem more slowly (see also T 42/10, reasons 2.12, for a similar conclusion). Otherwise, the exclusion of computer-implemented methods under Article 52(2) and (3) EPC would become meaningless, because for any given computer program a less efficient one is either known or conceivable. As a consequence, a computer-implemented method cannot be found to show an inventive step for the sole reason that a slower computer-implemented method exists in the prior art.
10.5 Therefore, for a computer-implemented method or a computer program to be patentable it must be established that it has a “further” technical effect and solves a technical problem independently of its absolute or relative computing time. Only then, and only if the alleged speed-up affects an established technical effect, can it be argued that the speed-up contributes to a technical effect and thus to inventive step (see again T 641/00, headnote 1).
11. Returning to the claimed invention (see point 9.2), the board accepts that certain kinds of cache may well be accepted as the technical solution to a technical problem. This may be the case, for instance, for a fast page cache in RAM to avoid repeated access to a slow peripheral hard disk.
11.1 However, the claimed “cache” is not such a cache. In fact, little detail of the cache is claimed. For example, the claims cover the possibility that each object stores the values of its dependent properties in place along with a flag indicating their validity, and that the term “cache” is merely a way of referring to the totality of these local property copies.
11.2 Thus, the claimed concept of caching does not go beyond the idea of memorising a value that one might need again and its validity, so that the effort involved in obtaining it need not always be repeated. In the board’s view, this idea is obvious from first principles.
11.3 Moreover, the claimed method of “caching” a value and its validity achieves, if anything, a speed-up of an entirely abstract method (see point 5 above) and thus is, as argued above, insufficient to establish that the claimed computer-implemented method solves a technical problem.
12. In summary, the appellant did not convince the board that the claimed invention had any genuinely technical effect over D2. In fact, it also failed to show that the claimed method could be considered to have any “further” technical effect beyond being computer-implemented.
13. Therefore, the board finds that the subject-matter of claim 1 according to the main request lacks inventive step, Article 56 EPC 1973.
This post summarizes the prosecution process of German patent applications and the enforcement of German patents. The explanations mostly apply to software-related patents as well as to any other German patent regardless of its technical field.
How to get a German software patent?
Patent protection in Germany can be obtained either nationally by filing a national German patent application with the German Patent and Trademark Office or by designating Germany in a European patent application and subsequently validating the granted European patent in Germany. This post is restricted to German patent applications that have been filed nationally. The provisions of the EPC and the case law of the EPO concerning software are discussed in other places of this blog.
German patent applications are filed with the German Patent and Trademark Office (GPTO) in Munich, which examines patents before granting a patent thereon (or rejecting the application). In contrast to many other countries, a request for examination can be postponed up to seven years after the filing date, allowing the evaluation of the economic relevance of an invention before investing the costs for the examination procedure. The official fees for filing a national German patent application with ten claims including the examination fee are presently EUR 390.00.
Once a request for examination has been filed, the examination procedure is very similar to the US examination procedure. The examining division typically issues one or more official actions to which applicant can respond with arguments and/or amendments of the claims and the description within the limit of the original disclosure. If considered meaningful for an effective examination, the examiner may also hold an oral interview with applicant.
In 2014, 65,958 patent applications were filed with the German Patent and Trademark Office, including 59,916 direct national German filings and 6,042 PCT applications entering the German national phase (see the GPTO’s annual report). There are no official data available concerning the average time period of the examination. General experience, however, shows that it takes between three and four years after the examination request before a case is granted (or rejected).
If a German patent application is rejected, one can file an appeal with the Federal Patent Court (Bundespatentgericht), which is also based in Munich. An appeal senate of the Federal Patent Court will then fully review the case. If requested, an oral procedure will be part of the appeal procedure. You can find discussion of almost all software patent-related decisions of the Federal Patent Court here in this blog.
The appeal senate comprises three technically trained judges who have typically been experienced examiners at the Patent Office before being promoted as a patent judge, and a legally trained judge. In view of a considerable backlog of appeal cases accumulated at the Federal Patent Court, the appeal procedure takes several years.
If the application is still rejected, a legal appeal to the German Federal Court of Justice can be filed, provided it is admitted by the appeal senate of the Federal Patent Court that rejected the application. The appeal senate will admit the legal appeal only if the decision concerns a legal question of fundamental importance or if a decision of the Federal Court of Justice is needed for a consistent interpretation of the statutes — for example, if there are conflicting decisions of different appeal senates of the Federal Patent Court. Of course, also the highest instance decisions of the Federal Court of Justice with a relation to software inventions are covered in this blog.
A major part of the relevant decisions concerning software patents are decisions of the Federal Court of Justice on such legal appeals admitted by the Federal Patent Court. The X. (10th) senate of the Federal Court of Justice, which decides about such a legal appeal, also decides on the appeals in nullity procedures and legal appeals in infringement procedures.
After publication of the grant of the patent, there is a nine-month opposition period, during which anyone (except the patentee) can raise an opposition against the patent, which leads to a (post-grant) opposition procedure to decide the validity of the patent. As a result, the patent can be maintained, restricted, or revoked. After the opposition period has lapsed or an opposition procedure has terminated, anyone can still challenge the validity of a granted patent by a nullity action filed with the Federal Patent Court.
German applicants do not need professional representation at the Patent Office or the Federal Patent Court, whereas foreign applicants must have a professional representative — that is, a German patent attorney or a German attorney at law. This applies to all procedures concerning a patent (application) in front of the German Patent and Trademark Office, the Federal Patent Court, and the civil courts.
How is a software patent application examined in Germany?
The criteria of technical character and technical contribution are examined by the German Patent and Trademark Office (GPTO) along with the standard criteria of novelty and inventive step (see below). Procedurally, a software patent application is examined in the same way as any other German patent application.
Similar to the situation at the European Patent Office (EPO) or the US Patent and Trademark Office (USPTO), there are guidelines (“Prüfungsrichtlinien”) for the examiners of the GPTO. However, in contrast to the examination procedure at the EPO, the guidelines are not very detailed and somewhat outdated (the current version is from March 2004).
Sections 188.8.131.52.1 and 4.3 of the examination guidelines provide a summary of the decisions of the Federal Court of Justice issued before March 2004. Thus, recent decisions which are particularly important in the software field are not reflected.
As a result, the guidelines do not have a substantial significance for the examination of a patent application. On the contrary, German examiners tend to either directly apply the statutes of the German Patent Act or the decisions of the Federal Patent Court and the Federal Court of Justice. With respect to software-related patent applications, the decisions of the Federal Court of Justice are therefore of primary importance. They clarify the understanding of the statutes in the Patent Act (PatG), in particular of section 1 PatG.
What does novelty mean?
According to section 1(1) PatG, a German patent is granted on an invention only if it is new and involves an inventive step. The general concept of novelty of an invention under the German Patent Act is defined in section 3(1), which reads as follows in an English translation:
(1) An invention shall be considered to be new if it does not form part of the state of the art. The state of the art shall be held to comprise everything made available to the public by means of a written or oral description, by use, or in any other way, before the date determining the priority of the application.
Since the patent statutes have been harmonized throughout Europe, the same or very similar provisions can be found in the patent acts of many other European countries and, in particular, in the European Patent Convention (EPC; cf. Article 54).
Section 3 PatG defines the first-to-file principle. The actual date an invention is made is not relevant to assess the novelty of an invention. By contrast, it is its filing date with the German Patent and Trademark Office that counts, or the filing date of an earlier application, the priority of which is claimed. Anything that was published before this date is prior art and will be taken into account when assessing novelty and inventive step of the subject matter claimed in an application. Later publications are irrelevant.
There are a few exceptions to this general rule, which are defined in the further parts of section 3 PatG. First, any German patent application that has an earlier priority date than the priority date of the application to be examined is also prior art, even if it is only published at a later day. This applies not only to earlier nationally filed German patent application, but also to European applications and International patent applications that designate Germany. However, such an earlier patent application is relevant for novelty only; it is not taken into account with respect to the examination for inventive step. In other words, if the claimed subject matter differs only in a small and even obvious feature from the overall disclosure in the earlier patent application, a German patent can still be granted (if there is no other relevant prior art).
Another exception is that a disclosure of the invention shall not be taken into consideration for the novelty examination, if it occurred no earlier than six months preceding the filing of the application and if it was due to, or in consequence of, an evident abuse in relation to the applicant or her or his legal predecessor. Such a situation may occur if somebody obtains knowledge of the invention or publishes it in a manner that violates a contractual or legal obligation with respect to the inventor with the intent to cause damage to the inventor. Since this is an exception to the general first-to-file principle, it is restrictively applied and by no means a real grace period (as in the case of a German utility model).
Finally, similar to Article 55 of the EPC, section 3 PatG contains a provision that the disclosure of the invention based on a presentation of the invention on certain exhibitions is not novelty-destroying, if the applicant can prove that the invention was actually shown on the exhibition.
What does inventive step mean?
In addition to novelty, the claimed invention must satisfy the further requirement of an inventive step in order to be patentable.
The harmonized European patent law comprises a legal definition of the inventive step, which can be found in section 4 PatG of the German Patent Act and reads as follows in an English translation:
An invention shall be considered as involving an inventive step if, having regard to the state of the art, it is not obvious to a person skilled in the art.
Traditionally, the German Patent and Trademark Office and the Federal Patent Court have applied a comparatively high standard for the inventive step. One reason is that the problem-solution approach developed by the European Patent Office (EPO) is not strictly followed.
On the contrary, the person skilled in the art is often considered to have a substantial amount of skill. Patent applications can be rejected and granted patents revoked even if the prior art in one document or a combination of two documents does not disclose all features of a claim.
It is often sufficient if the examiner of the German Patent and Trademark Office or the judges of the German Federal Patent Court reach the conclusion that the missing feature could have been found by the person skilled in the art based on his general knowledge, when faced with the underlying problem of the invention. That said, inventive step is regularly the most challenging test for any patent application.
Are software patents enforceable in Germany?
There are no restrictions or special provisions for enforcing software patents in Germany.
The protection provided by a German software patent therefore depends (as in the case of any other German patent) on the scope of the independent claims interpreted in light of the description, provided the claims are found to be valid during litigation.
However, the question of a general exclusion of a software-related invention from patent protection may come up again during a nullity procedure initiated by an infringer. This applies even if during its initial examination the German Patent and Trademark Office (GPTO) considered the invention to have a technical character and to provide a technical contribution.
What is your experience with the German office and courts when prosecuting or enforcing software patents? Let me know in the comments!
This is an excerpt of the “Germany” chapter of “Software Patents Worldwide” by Dr. Hans Wegner and Bastian Best. Reprinted from Software Patents Worldwide, Suppl. 22, December 2015, with permission of Kluwer Law International.
Originally published at www.europeansoftwarepatents.com on March 14, 2016.
While the impact of Alice on US software patents is still heavily discussed, 2016 has so far not produced any revolutionary software-related decisions by the Boards of Appeal of the European Patent Office (EPO) or the German Federal Court of Justice (BGH). The German Federal Patent Court (BPatG), however, has been quite busy. Here’s a quick roundup:
- Cryptography: Improving the level of trust in a digital certificate — not inventive
- Controlling task execution for multimedia source encoding — not inventive
- Implementing virtual storage pools — not inventive
- Mathematics: Validating atomic operations in multiprocessor systems — technical and inventive!
- Data retrieval: Generating boolean queries for clustered documents — technical? (in any case not novel)
- Mathematics: Prioritizing virtual machine execution based on counters — technical (but inventive?)
- Image processing: Determining optimal candidate colors — not inventive
- Image rendering: Parallel job execution — technical? (in any case obvious)
New EPO software patent case law
Cryptography: Improving the level of trust in a digital certificate — not inventive
Decision T 2558/12 concerned an examination appeal against the rejection of European patent application No. 06 019 603.7 (“A digital certificate that indicates a parameter of an associated cryptographic token”) for lack of inventive step. Claim 1 was directed to a method for determining by a challenger a level of trust to put in a digital certificate, the challenger allowing/disallowing a trusted action dependent from a predefined level of trust.
Relative to the closest prior art the Board of Appeal identified three differences defined in claim 1, none of which could ultimately establish an inventive step:
- The challenger allows or disallows an action according to whether the determined “level of trust” is greater or less than a given threshold: Not inventive, since thresholding is an obvious way of arriving at a binary decision. For example, if keys were trusted the more the longer they are, the “trust level” associated with a key would be effectively the key length. If, then, a policy requirement was a minimum key length it would be obvious for the skilled person to evaluate whether the key length exceeded the minimum length threshold and allow or disallow the requested action accordingly.
- The token information contained in the licence is cryptographically signed: Not inventive, since digital signatures are an obvious solution to the problem of ensuring the integrity of the policy-relevant information.
- The digital certificate contains physical parameters of the cryptographic token: Here, the invention at stake proposed a set of policy criteria different from those disclosed in the closest prior art. The Board of Appeal, however, took the view that the choice of policy, in itself, does not contribute to the technical character of the invention and thus could not enter the examination of inventive step.
The latter point is interesting, since the Board held that:
[10.2] If one were to introduce the policy that a certain action should only be carried out with a particular kind of tamper-resistant token, then this choice itself would not solve a technical problem. In particular, the security advantage of tamper resistance is achieved by the token rather than the policy decision to require it. Coming up with a new policy thus does not solve a technical problem but expresses the wish to exploit a known advantage.
[10.3] It is noted in passing that a policy need not imply any specific technical advantage. For instance, if one were to decide that only cryptographic tokens of a particular manufacturer were to be trusted […], then this might in itself express some form of “trust” in that manufacturer but leaves open what technical properties it might have to guarantee so as to earn and maintain that trust.
The Board also made some interesting statements regarding the objective technical problem formulated by the appellant:
[7.1] The appellant argues that the invention solves the problem of “provid[ing] an improved approach for determining the level of trust in a digital certificate” (see grounds of appeal, page 5, paragraph 3).
[7.2] The board considers that this formulation is unsuitable for defining the objective technical problem solved by the invention, firstly because, as argued above, the concept of “trust” has no clear, if any, technical meaning, secondly because the level of trust is not “determined” in a technical sense, and, thirdly and foremost, because it is not clear in what manner the invention “improves” the way of “determining the level of trust”.
Read the full decision here.
New German software patent case law
Controlling task execution for multimedia source encoding — not inventive
Case 18 W (pat) 74/14 concerned an examination appeal against the rejection of German patent application No. 10 2007 010 127.0–53 (“Task execution control method for e.g. multimedia source encoding”). Claim 1 was essentially directed to a method for controlling execution of a first and second task in a periodic time frame based on a comparison of the tasks’ priorities. The overall objective was to maintain a quality of service even for tasks with low priority, in particular in streaming data systems. Relative to the prior art, the court considered the claimed subject-matter obvious. Questions like technical character or exclusion from patentability were not addressed. Read the full decision (in German) here.
Implementing virtual storage pools — not inventive
Case 17 W (pat) 13/13 concerned an examination appeal against the rejection of German patent application No. 11 2009 000 411.3–53 (“Method and system for implementing a virtual storage pool in a virtual environment”). Claim 1 was essentially directed to a system for implementing distributed non-transitory data storage with multiple virtual servers and a virtual storage pool, where virtual storage machines cooperate to implement the virtual storage pool without external shared memory. The court did not identify any non-obvious teaching in view of the cited prior art. Read the full decision (in German) here.
Mathematics: Validating atomic operations in multiprocessor systems — technical and inventive!
Case 18 W (pat) 68/14 concerned an examination appeal against the rejection of German patent application No. 10 2007 009 909.8–53 (“Time stamping transactions to validate atomic operations in multiprocessor systems”). Claim 1 was directed to a multicore processor where a buffer stores a time-stamp for each transaction packet and where a probability is calculated for a failure in an atomic transaction based on the time distance between packets. Notably, the court held that all features of claim 1 — albeit their relation to mathematics — had to be examined for inventive step since they served the solution of the technical problem of properly validating a multi processor system based on “natural forces” (i.e. measurement values). The claimed subject-matter was also not rendered obvious by the prior art and thus the patent was granted. Read the full decision (in German) here.
Data retrieval: Generating boolean queries for clustered documents — technical? (in any case not novel)
Case 17 W (pat) 46/13 concerned an examination appeal against the rejection of German patent application No. 10 2010 007 302.4 (“System and method for generating queries”). Claim 1 was essentially directed to a system for generating a boolean query where a cluster manager clusters training documents based on training tokens and a query manager generates a boolean query based on the occurence of the training token in the clustered training documents. The court saw the objective problem in generating boolean queries which can later be used for returning cluster-relevant documents. The claimed subject-matter was considered to lack novelty relative to the prior art at hand, so that the court left open whether it was excluded from patentability per se or not. Read the full decision (in German) here.
Mathematics: Prioritizing virtual machine execution based on counters — technical (but inventive?)
Case 18 W (pat) 72/14 concerned an examination appeal against the rejection of German patent application No. 11 2006 000 016.0–53 (“Information terminal and virtual machine execution switching method”). Claim 1 was essentially directed to an information terminal with multiple virtual machines where the virtual machines are switched and executed based on a continuously selectable counter. The court held that the claimed subject-matter is not excluded from patentability per se since it solved the technical problem of ensuring the operability of multiple virtual machines without using operating system functionality and based on a prioritization of the virtual machines depending on their resource consumption. The claimed subject-matter was also considered to involve an inventive step over the prior art at hand, however, the court remitted the case back to first instance to perform another search. Read the full decision (in German) here.
Image processing: Determining optimal candidate colors — not inventive
Case 17 W (pat) 56/13 concerned an examination appeal against the rejection of German patent application No. 10 2006 045 416.2 (“Image processing apparatus”). Claim 1 was essentially directed to an image processing method where a color histogram was calculated and a candidate color was determined based certain thresholds. The claimed subject-matter was considered not inventive by the court. Read the full decision (in German) here.
Image rendering: Parallel job execution — technical? (in any case obvious)
Case 17 W (pat) 30/13 concerned an examination appeal against the rejection of German patent application No. 10 2010 028 364.9 (“System, method and computer program for decomposing a sampling task into a plurality of jobs”). Claim 1 was essentially directed to a method for the parallel execution of a sampling task where a sampling task was divided into multiple jobs, each job was executed in parallel using a parallel processing architecture and each job was terminated independently of the other jobs. The court saw the overall objective in the efficient parallelization of processing tasks during image rendering. The court held that the method was rendered obvious in view of the prior art, so that it left open whether the claimed subject-matter was excluded per se from patentability. Read the full decision (in German) here.
What’s your take on software patents in Europe?
Originally published at www.europeansoftwarepatents.com on March 1, 2016.