A software product sold before the priority date of a patented computer-implemented method and admittedly executing said method when run anticipates the method by public prior use even if the program and the method as claimed are to be considered as two different forms of disclosure of the same subject-matter. Defining a known method in different terms does not give rise to a different method, just like giving a different definition of a chemical composition does not create a new chemical composition. By executing the program line-by-line, a skilled person would be able to see how the input data was processed and understand how the method implemented by the software product was carried out step-by-step. The information provided by the stepwise execution of the software product represented a form of disclosure of a specific embodiment of this method.
Moreover, any interested person who acquired the program and used it for the purpose for which it was commercialized automatically executed the method steps as defined in claim 1 of the patent. This fact is as such already sufficient for destroying the novelty of the claimed subject-matter.
Facts of the case
Claim 1 of the patent in suit related to a computer-implemented method of simulating a fluid flow within thin-walled three-dimensional geometries. Such methods are important for simulating an injection molding process of complex objects, the quality of which cannot be easily optimized by modifying the related molds on an experimental trial-and-error basis.
At the beginning of each simulation, it is necessary to prepare the geometry of the object so that the desired software can handle it. Input for the simulation is an outer skin or volumetric geometry description of the object, as it may be provided by standard CAD files. An appropriate mesh of finite elements is then generated on the CAD surfaces. As a simulation performed on the basis of a two-dimensional mesh generated only on the outer surface of a thin-walled object generally does not produce realistic results, the method of the invention builds a semi-volumetric mesh, by generating two-noded elements within the object volume like in a three dimensional framework.
The claimed method thus basically provided the steps of generating a two-dimensional finite element mesh on the surface of the outer skin of the object and supplementing the mesh generated with a "framework of internal rod elements", whereby each rod element extends between nodes of two opposite surface mesh elements along a direction essentially normal to these mesh elements.
It was undisputed between the parties that the patent proprietor had already commercialized a software product embodying the subject-matter of claim 1 as granted. The opposition division nevertheless rejected the opposition, arguing that a mere disassembly of an available program would not enable the person skilled in the art to reconstruct the underlying mathematical method for a finite element program. In particular, a skilled person would not be able to directly and unambiguously derive the feature “inside the surface mesh, a framework of internal rod elements is generated extending from node to node of the polygons”.
The patent proprietor relied basically on the line of reasoning followed by the Opposition Division and stressed that the essential teaching of the invention, namely the generation and use of two-noded rod elements between nodes of opposite mesh elements, could not be derived from the low-level language into which a disassembler might translate the computer code. The teaching made available to the public by means of the patent in suit was thus not anticipated by a software product which could not possibly provide the same information to a skilled person. Executing a complex software program on a computer could be compared to operating a "black box" with input and output terminals. The user might realize that, in response to a given input, the "black box" generated a certain output. However, this operation of the "black box" would, in general, not provide any information as to its way of working and, in this respect, would not contribute any teaching to the state of the art.
The appellant opponent argued that the present invention related to the particular geometry of the mesh used for a computer-implemented simulation of fluid flow and therefore was essentially of a mathematical nature. This kind of inventions could be expressed in formal mathematical language, in terms of a computer program or in the language of a claim. All these forms of expression constituted a disclosure if they were made available to the public and could, in principle, be "read" by the skilled user. This was certainly the case for a computer program that could be disassembled and translated into readable language.
Findings of the Board
The Board considered a computer program to be essentially a set of instructions given to a computer for performing a sequence of operations on input data and for delivering corresponding output data. These instructions expressed in machine code might indeed as such normally have no understandable meaning for the user. Nevertheless, as argued by the appellant, they could be easily converted by a disassembler into human readable language.
Furthermore, by executing an application line-by-line, a skilled person would be able to see how the input data was processed and understand how the method implemented by the software product was carried out step-by-step. The information provided by the stepwise execution of the software product represented, in the Board's opinion, a form of disclosure of a specific embodiment of this method.
The Board concurred with the patent proprietor that there was no evidence that the skilled person could extract from the disassembled software program or from its execution line-by-line on a computer the notion of "rod elements generated between nodes of the surface meshes" as recited in claim 1.
The Board considered, however, that what the skilled person obtained from a disassembled code or from the stepwise execution of a software product was indeed an "alternative" description, albeit very concrete and detailed (= low-level), of the method embodied by the software.
In the Board's opinion, defining a known process or method in different terms did not give rise to a different process or method, just like giving a different definition of a chemical composition did not create a new chemical composition. In the present case, the method implemented by the software product before the filing date of the patent in suit was expressed in computer-readable code, whereas in the patent the method was specified in much more abstract, even somewhat metaphorical language. If the machine code of the software can be translated into human-readable language, the two representations of the method should, in principle, be considered as two different forms of disclosure of the same method which are equally available to the public.
Even if decompiling or disassembling of computer programs was not allowed by European copyright law, as argued by the patent proprietor, this argument was not persuasive in the context of an international commercialization which was not restricted to Europe. Moreover, the patentee’s European customers were not prevented by law to load the computer program and run it line-by-line in order to determine its underlying principles.
The Board also found its conclusions to be in line with the opinion expressed by the Enlarged Board of Appeal in case G 1/92 “Availability to the public” (OJ EPO 1993, 277). According to G 1/92, the chemical composition of a product was state of the art when the product as such was available to the public and could be analyzed and reproduced by the skilled person, irrespective of whether or not particular reasons could be identified for analyzing the composition. Furthermore, the same principle applied mutatis mutandis to any other product, since the EPC did not make any distinction between chemical products and other products such as mechanical or electrical articles. In particular, the Enlarged Board observed that an essential purpose of any technical teaching was to enable the person skilled in the art to manufacture or use a given product by applying such teaching. Where it was possible for the skilled person to discover the composition or the internal structure of the product and to reproduce it without undue burden, then both the product and its composition or internal structure became state of the art. In the case of a software product, the "internal structure" was represented by the set of instructions which constituted a program to be run on a computer. As explained above, by executing the instructions line-by-line the skilled person could derive knowledge of all the operations to be performed in order to carry out the method embodied by the software product.
In summary, the point of contention in the present case was not whether the patentee's software product executed on a computer fell within the terms of the method according to claim 1 of the patent. It did, as this software product admittedly embodied the claimed invention. In the patentee's view, a software product would take away the novelty of a corresponding claimed method only if it disclosed to the skilled person the same features used in the claim to define the method. However, the Board concurred with the appellant that even a different "disclosure" of the method, as it could be obtained by executing it on a computer line-by-line without infringing copyright protection, was sufficient to take away the novelty of the method as claimed.
Hence, the Board concluded that the subject-matter of claim 1 was not new within the meaning of Article 54 EPC following the prior use of a software product which undisputedly embodied the claimed subject-matter.
Although the Board did not base its decision on the following argument (because it was not put forward by the parties), it nevertheless observed that any interested person who acquired the software product and used it for the purpose for which it was commercialized automatically executed the method steps as defined in claim 1 of the patent. This fact was as such already sufficient for destroying the novelty of the claimed subject-matter because the factual circumstances of the present case appeared to be different from a situation where an inventor (or another individual person) carried out a process in public which was later sought to be patented. In that situation, a novelty-destroying effect only occurred when cognitive information was transmitted to the public, since, without a proper understanding of the steps of the process, no member of the public would be able to carry out the process himself. The public prior use in the present case was, however, characterized by the commercial availability of a software tool that allowed the repeated execution of the patented method even without requiring any understanding of the steps performed by the software.
The decision must be considered to clarify the question of whether or not a pre-published computer program when executed can take away the novelty of a computer-implemented method disclosing the same subject-matter, albeit in different terms. Despite the fact that the information imparted in both cases normally will not be identical, the decision comes to the conclusion that the question must be answered in the affirmative since a different description of the same subject-matter cannot establish novelty.
Although the internal working, and thus a description of the program, are available by running it step-by-step, this does in fact not matter for a computer program as the Board obiter observes. A program which admittedly or demonstrably executes an underlying method will normally be novelty destroying as a "black box" since it suffices to load and run it in order to automatically execute the method without any further information for its proper execution being required. Hence, the “undue burden” requirement of G 1/92 would be automatically fulfilled because no burden was incurred.
Care should therefore be taken when a software product is to be put on the market while patent applications for the underlying method are still being considered. According to T 2440/12, it would be wrong to assume that a program embodying a computer-implemented method and the method defined by claim features can be distinguished when the program is executed. If the software is commercialized earlier and it can be established that it executes the method, a specific type of public prior use results.