On Not Patenting Software
Ben Klemens raises an interesting linkage when he suggests that software is pure
math and therefore unpatentable [Invention, August]. I wish to make another linkage.
Almost anything that can be done in software can also be done in hardware. I
had one of my earliest Aha! experiences back in the late 1970s, when I learned
how memory effectively substituted for connections and electronic circuit inputs
and outputs translated into memory addresses and stored values. This equivalence
is exemplified in your article on Larry Tesler ["Of Modes & Men," August],
which describes how 100-plus IC chips were reduced to 20 chips and a software
implementation of the Ethernet.
If Klemens's assertions [that software should be open to copyright and
not patents] would hold, then all electronic circuits should be copyrighted as
well. Anything beyond the fundamental resistors, capacitors, inductors, transistors,
and such would constitute just another interesting combination of words that
turn a phrase. Even Edison's light bulb would be a short copyrighted phrase
combining voltage and resistance.
I would hope that following this chain to its logical conclusion would demonstrate
the failure of its fundamental premise that invention must be tangible. It is
the idea that turns raw material into something useful, and that is the value
that is being rewarded by patent rights.
Mike Hammer
IEEE Associate Member
Reston, Va.
While Ben Klemens correctly shows that there is no clear boundary between math
and software [Invention, July], he misses the equally obvious fact that there
is no clear boundary between software and hardware.
Take his example of a field-programmable logic array (FPLA). Twenty-five years
ago, the FPLAs I used were designed with fusible links, so that each gate was
enabled or disabled by burning through a tiny solder wire on the chip. This is
clearly a hardware change to the part and not merely a [logic] state change:
the metal is melted and can never conduct electricity in that circuit again.
The hardware implementation of the fusing process is clearly patentable (and
probably was), but the choice of which wires to melt and which to leave in place
and conductive is no different from the choice to send an electric charge into
modern erasable FPLAs—and from the user's standpoint, essentially
identical. The inventive and mathematical work done by the logic designer using
a fusible-link FPLA is not even slightly different from what the same designer
would invent and program into an erasable part. Why is one patentable (in Klemens's opinion) and the other not?
Now let's replace the FPLA of gates with a read-only memory (ROM), to which
it is mathematically equivalent. The ROM code is tested in RAM, so it counts
as "states," but when the designer is finished, he sends off the
data file (the same one that was loaded into RAM) to the chip foundry. The foundry programs the ROM etching (masks) to leave some of the metalization layer out where there are zeros. The resulting part is completely stateless (like the fusible-link FPLA), but it is identical in every way to the RAM chip it replaces in the circuit design (except that the write pin is a no-connect). And this is now patentable?
The problem with software patents is not that software is indistinguishable from
mathematics, but that software is so complex that the patent examiners cannot
reasonably hope to assess whether it passes the nonobvious test. If Fairchild
has a patent for burning links in an FPLA, can I get another patent for choosing
a pattern of alternating ones and zeros to be burned into that FPLA? I hope not;
it's too obvious. But other patterns that might be programmed into the FPLA are not obvious, and the patent process was designed to reward that kind of ingenuity.
Let's not throw the inventive baby out with the trivial bath water.
Tom Pittman
IEEE Member
San Jose, Calif.