en.swpat.org is a wiki.   You can edit it.   May contain statements End Software Patents does not endorse.

November 2014: About Microsoft’s patent licence for .NET core

SitemapCountriesWhy abolish?Law proposalsStudiesCase lawPatent office case lawLawsuits

Software does not make a computer a new machine

From en.swpat.org
Revision as of 11:53, 23 November 2010 by Jose X (Talk | contribs)

Jump to: navigation, search

One method to used to circumvent the limits of software patentability, is to claim not "software" but "software and a computer". The goal is to present one non-innovative object (the computer) and one non-patentable object (the software) and get a patent on the combination. The argument made is that, when the software is put on the computer, the computer becomes a "new machine".

One example of this logic being rejected by the US CAFC (appeals court), is the in re Alappat decision, which said:

"As the player piano playing new music is not the stuff of patent law, neither is the mathematics that is Alappat’s “rasterizer.”"

[A second and perhaps more effective way patent authors sidestep this problem is to use a process patent which arguably applies to a computer and peripheral devices being used in the patented way. The US Bilski case addressed these two options with the useful but imperfect Machine or Transformation test. The main problem with process patents is not about defying Webster's Dictionary, but about not being fair, not promoting the progress, and arguably not being allowed by current US law when it comes to processes like the creation and use of software for non-manufacturing scenarios.]


Analogy 1

If we have patented an automobile which can drive anywhere, we cannot then come back and file patents for driving from Albequerque to San Diego, etc. -- the more general patent already applies.

Analogy 2

A full working computer can be made from a house with a great many doors and door sensors, a central clock, lots of wires, and a motor per door to open and close that door. This house is the computer, made and patented once. From that point forward, every single case of this house "becoming" a new machine is absolutely nothing but a reconfiguring of its doors into the open or closed position. That's it. We aren't creating a new machine. We are simply opening and closing the doors to match the new program this house will run to effect a new set of logical steps needed to effect a new computation (ie, to simulate a particular analog machine that might be built just for the occasion).

Does it make sense that by changing which doors are open and which are closed (and doing nothing else), that we are creating a new machine? Maybe it takes creativity, luck, analysis, etc, to find a good set of doors to open and close (for example, mathematicians and physicists try to solve new problems by coming up with such a configuration), but we are most certainly not creating a new machine. We are reconfiguring the state of the machine, reconfiguring its doors to be either opened or closed. And, further, the machine, in any of its states, does nothing but process information in a way any human could by knowing the initial state of the doors. Since this is just information processing (digital in nature) coupled with ordinary conversion to (from) analog form through standard peripheral devices (see below), we do not need a slow human or a bulky house for the digital processing, but can instead use a modern digital calculator (the "computer") which uses very tiny parts that use up very little energy and have very little mass so can move very fast.

This modern computer already exists and can be bought very inexpensively in many stores around the US. It's just a glorified pocket calculator. That same modern computer can run essentially an infinite number of distinct algorithms. We just have to set the initial configuration of "open or closed doors" appropriately and the computer will do the rest automatically. We are not creating a new machine. We are configuring an existing machine's "doors" to the *exact* same opened or closed position as we would if we were dealing with a computing house.

To see the results and interact with the gigantic computing house more easily we take a standard display monitor, keyboard, mouse, etc, and attach it to the doors that are responsible for holding the values inputted into and outputted from these peripheral devices. We would use ordinary peripheral devices for this in the expected way and for the designed purpose. These all might have been patented. What goes in and out of them is just data in the proper understood format, eg, to be directly displayed on the screen as colors. Every image can be trivially digitized to be seen or vice-versa to be marked as door open/close configuration. At the time we built (and perhaps patent this computing house), we also create the adaptors that change the electrical signals of these peripheral devices to signals that drive the motors corresponding to the proper set of doors. We note that because the house will be very slow in comparison to a modern computer, the display screen will be updated very slowly (so we won't be able to watch a film except over a long time like perhaps months). We note as well that we would need to use at least about the number of doors as we might find inside all the houses that exist in the US today (and this would run only very crude programs with low resolution graphics).

Analogy 3

A human performing a set of steps does not become a different human when he or she changes to perform a new set of steps. The human is simply following a new configuration in his or her head.

Similarly, a computer system running different software is still the same (already patented) computer system.

Analogy 4

A human using his/her fingers to scoop up food does not become a fork. Similar effects can be achieved through completely different "machines".

Similarly, using an existing computer system to simulate some invention does not mean that computing system becomes the new invention (if in fact the patent actually describes a new invention).

Analogy 5

A basic calculator does not become a new calculator when you punch in a new calculation for it to perform.


The general purpose computer, which can perform any computation, is not new. Filing additional patents on particular subsets of that general computing ability of the computer is like filing for a patent on driving a car from one particular place to another -- it is a subset of the capabilities which have already been patented. It is in fact simply filing for a patent on a table of numbers which happens to make a given computer perform a given computation -- yet the general property of being able to perform any computation which can be expressed as a table of numbers has already been patented. Thus any patent on software is redundant.

Related pages on en.swpat.org

External links

This wiki is part of the End Software Patents (ESP) campaign (donate). For more information, see:
>> endsoftwarepatents.org (Main ESP website) <<
>> endsoftwarepatents.org/news (News) <<

This wiki is publicly editable. (See: en.swpat.org:About) It's a pool of information, not a statement of ESP's views or policies, so no permission is required. Add your knowledge! (See: Help:How to make a good contribution)