🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.misc.discuss
Article #73448

What is software? (re patents)

#73448
From: L. Peter Deutsch
Date: Sun, 08 Sep 1991 15:12
150 lines
8416 bytes
I've been forcing myself to "sit on my hands" while reading the
software patent debate between Terry Ritter and most of the other
posters on this newsgroup, simply because I don't have enough hours
in the day.  For the record, I think Ritter's reasoning is mostly
sound, and his facts are mostly right as far as they go, but his
postings are based on a set of beliefs about law, society, and
invention that I (and many of the other counter-posters) don't agree
with and that are not very susceptible to rational influence (on
either side).

Finally, however, he made some statements about hardware vs. software
vs. algorithms that I can't restrain myself from wanting to correct.
The issue is whether these things can be distinguished.  I believe
they can, and I believe the distinguishing basis is whether what is
being patented is the transformation of *information* or not.

In article <9302@cactus.org>, Ritter says.

> In fact, the closer one looks, the harder it is to define a difference
> even between hardware and software.  [ Personally, I believe the reason
> for this is that, when "software" is executing, software *is* hardware.
> Thus, there *is* no difference. ]  But take a look:

>    Does "software" function only on a IC "chip," or would a
>    random-logic computer run software?  Naturally we take the second
>    case, but then how can we tell the difference between a computer
>    running software and any other logic machine?  If we can't, would
>    all hardware digital logic devices lose patent protection?

Software can run on any kind of hardware, and is defined independent
of hardware.  What I do not think you should be able to patent is the
algorithm or process for carrying out a function defined in terms of
information.  The Wegman-Miller patent (the "other LZW patent"), for
example, does just that, independent of physical realization.  And
yes, I have read this patent in its entirety.

Hardware digital logic devices should remain patentable because they
are defined as transforming particular electrical signals in a
particular way, not information regardless of its physical
representation.  You should be able to patent the specific Motorola
68000 nanocode design that interprets an instruction set presented as
a set of electrical signals in a certain way, but not the general
technique of using nanocode to interpret an instruction set.

Consider the "xor cursor" patent.  I admit to not having read it,
even the claims.  However, I would take the following approach to
evaluating it.  If it claims to patent the use of the "xor" function
to make a cursor appear and disappear on any bitmapped display
device, I do not think it should be allowed, because it is stated in
terms of a function of information -- bits -- independent of the
electrical or physical representation.  If it claims to patent a
particular hardware circuit that "xors" two signals together for the
purpose of making a cursor appear, it's a perfectly good patent, but
no software can violate it; nor can a substantially different circuit
for accomplishing the same purpose.

>    Is machine code in ROM "software"?  If so, then are all digital
>    hardware devices which use ROM using "software" (and would they
>    thus lose patent protection)?

Of course machine code in ROM is software.  The algorithms or
functions it implements, considered as such, should not be
patentable, regardless of whether they are implemented in ROM.  The
machine including the ROM could be patentable if its function is
defined in terms of physical inputs and outputs.

>    Is machine code in RAM "software"?  If so, then <as above>.  In
>    addition, it would be possible to get around a <ROM = hardware>
>    philosophy, simply by copying ROM to RAM.

What is being patented is the machine, consisting of hardware
including the parts of the hardware that physically encode software
(if any), as an entity that takes physical inputs and produces
physical outputs.  ROM vs. RAM is irrelevant to this.  You cannot
patent the machine independent of the contents of the RAM, unless of
course what you are patenting is the instruction set interpretation
mechanism (see the discussion of the MC68000 above).

>    (This is actually done now in most 386 machines.)

Not for any reason having to do with patenting, however.

>    Is machine code in random logic "software"?  If so, then, assuming
>    an infinity of possible software instruction sets, how could any
>    digital logic hardware device retain patent protection?

I don't think "machine code in random logic" is a meaningful concept.
"Machine code" intrinsically involves a fixed instruction set (even
if it's a microcoded instruction set underlying a changeable
macroinstruction set, and even if it's the set of possible wirings
defined by a plugboard).  Besides, as I've been trying to make clear,
it's not the *code* that is being patented.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Ritter has claimed that Diamond vs. Diehr and subsequent decisions
are consistent with the historical interpretation of patent law, and
not in conflict with the "no algorithms" provision.  I obviously feel
differently, and the above discussion is meant to substantiate that
view.  More generally, I believe Ritter claims software cannot be
distinguished from hardware, whereas I claim software cannot be
distinguished from algorithms or information-manipulating processes.

I enter this discussion with great reluctance, because as I remarked
at the beginning, it is based on premises with which I disagree
profoundly, and I don't want to spend a lot of time debating points
of detail while the underlying major issues are not being discussed.
Drawing the boundary between hardware and software is of secondary
importance, because I think "hardware vs. software" is not the issue.

Since I've gone this far, I will say what I think the real issues
are.  Please read them carefully, because they will be very easy to
distort or over-simplify in the heat of discussion.

	- Whether one believes that the *only* possible and desirable
process for bringing the fruits of invention to society is a
profit-based one, and whether therefore this process should be given
legal advantages over others.

	- Whether it is possible to "own" an idea or concept, and
whether it is appropriate to deprive originators of an idea (other
than those who have gone through a particular legally mandated
ritual) of the right to use it in practice.

	- Whether there are intrinsic qualitative differences between
the historical, actual, and desirable social processes surrounding
software invention and those surrounding other kinds of invention.
(Again, by "software invention", I mean the invention of algorithms
or processes for manipulating information.)

	- Whether the present U.S. patent system in general serves
society well.

	- Whether, assuming one believes that there *are* certain
qualitative differences between software and other kinds of
invention, the patent system in its present form can be expected to
serve society well when applied to software.

	- In particular, who can be expected to actually profit from
applying the present patent system to software.

For an argument to be rational, it must be based on evidence.
Unfortunately, many of the foregoing issues are of a nature such that
evidence is intrinsically difficult or impossible to present, or are
matters of faith or philosophy.  For that reason, I suspect the
heat-to-light ratio in the discussion is destined to continue high.

L. Peter Deutsch :: Aladdin Enterprises :: P.O. box 60264, Palo Alto, CA 94306
ghost@aladdin.com ; ...decwrl!aladdin!ghost ; 415-322-0103   8:30-11 AM M-F
	    "Implementation is the sincerest form of flattery."
Technical Details
Message-ID: <107.UUL1.3#5127@aladdin.com>
Path: arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!elroy.jpl.nasa.gov!decwrl!aladdin!ghost

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: 1025b4,cdb3af00096db891,start
X-Google-Attributes: gid1025b4,public
X-Google-ArrivalTime: 1991-09-08 13:46:52 PST
Path: arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!elroy.jpl.nasa.gov!decwrl!aladdin!ghost
From: ghost@aladdin.com (L. Peter Deutsch)
Newsgroups: gnu.misc.discuss
Subject: What is software? (re patents)
Message-ID: <107.UUL1.3#5127@aladdin.com>
Date: 8 Sep 91 15:12:24 GMT
Organization: Aladdin Enterprises, Menlo Park, CA
Lines: 150