ESP Wiki is looking for moderators and active contributors!

Software does not make a computer a new machine

Revision as of 04:17, 24 November 2010 by Jose X (talk | contribs) (House: Reworded the analogy to make it clearer that we are contrasting the changing of hardware to form a new machine to the changing of software which never creates a new machine)

One method 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.”

The point of these analogies

Our goal is to show how computers are the same as other things whose use cannot be patented. When you use a record player, you get music. The music might be technical, innovative, new, etc. but no one will ever get a patent on use of a record player. This page collects other examples to show why running software on a computer can't be considered patentable.

Brief analogies

Calculator

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

Car

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.

Human

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.

Fingers v. fork

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

Long analogies

House

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.

Now we add software to this house. Adding software means reconfiguring the doors of the house. One group of doors in the house is never changed because they represent the "firmware" that allows the house to work as a general purpose computer. But every other door might potentially be set, either into the open position or into the closed position. This second group of doors represents the new software information added to this computing house.

When we flip the switch to start up the clock, the algorithms encoded into the doors' open-close state will be carried out. For example, at each clock tick, a typical sensor testing whether its door is open or closed will help potentially activate the motor controlling a different door to either open or close it.

What defines the behavior of each door-sensor pair depends on the design of the house (how it was wired) and essentially defines the instructions the house understands, whether it looks at doors in groups of 32 (32-bit computing), etc. Each such distinct new house would constitute a new "computer" that potentially would be patentable, but **if we keep the house's wiring, capabilities, limitations, etc (its entire potential behavior) identical and then add new software (ie, change the configuration of the doors prior to turning it on again), we have not created a new machine but have simply come upon a new way to use the existing 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).

Related pages on ESP Wiki

External links