Subject: Re: The term "intellectual property" considered useful
From: Seth Johnson <seth.johnson@RealMeasures.dyndns.org>
Date: Fri, 26 May 2006 05:51:10 -0400


"David H. Lynch Jr" wrote:
> 
> Seth Johnson wrote:
> > There are a couple kinds of abstraction: pure abstraction and
> > plain (or empirical) abstraction.
> >
> > Pure abstraction is independent of any empirical particular.
> > Math, logic, geometry are all bodies of pure abstract knowledge.
> >
> > On the other hand, you can generalize that "if I use this
> > doohickey like this and put it together with a thingamajig like
> > this, then I can make froblets."  This is also an abstraction,
> > but it refers to empirical particulars.
> >
> > Until computers came about, the two were separated intuitively,
> > and the distinction was not often spoken of.  But now we have
> > pure abstract algorithms that can also be used as and regarded as
> > plain abstract descriptions of (and controllers for) (ideas of)
> > processes that could be patented.
> >
> > Patents were for non-pure abstraction, discoveries about how
> > things can be done with real world stuff and real world forces.
> >
>  Originally patents were not for abstractions of anykind. To be
> patentable, the patented thing had to exist, and it had to solve a
> problem - there were other criteria too.
> 
> Only the specific implimentation of a solution to the problem was
> patentable, the general approach was not.


Well, yeah, and they were for the thing described, not the
description.  Many people have said that patents are the only way
to "protect" ideas, so that's supposedly why we need them for
software.  Nevertheless, the description represents an idea about
things, describing things.  When it's stipulated that it's not a
pure abstraction, but an empirical abstraction about
thingamabobs, that game is beat.  One still needs to say that the
description isn't the thing patented (even speaking of an
empirical generalization); it's the thing described that is --
and that gets it right where you stand.


>     Those distinction have long been lost, and in a way that they really
> have not been replaced. One of the other problems that the US Patent
> process has today is the absence of any cohesive framework defining what
> is and is not patentable.


Right.  They haven't (and most people in the software realm
haven't -- including many of those opposed to software patents,
and many people who explain that ideas aren't patentable haven't)
come to an understanding of the nature of the game software plays
on traditional patentability.  (No, I don't have it all down, but
I do have some insights)


>     My argument is that your catagorization of abstractions - as well as
> the distinction between an implimentation and an idea, is without meaning.
> 
>     What is problematic about software is that it shrinks the distance
> between the idea and the implimentation to nearly zero.
> 
>     Using the recent Microsoft FAT Long File Name to Short File Name
> patent as an example.
>     Is the patent for the mathematical algorithm or transformation ? Or
> is it for feeding text names through the algorithm and then writing them
> onto a disk ?
>     If it is the former why is it any different from trying to patent
> F=m*a ? If it is that latter does it then basically cover all many-one
> string transformations ?


If the instructions executed by the processor aren't patentable,
you have full freedom to use F=m*a .

Seems to me you got the distinction very well.  Is it actually
inventive to have devices write the results of algorithms?

The processor has no idea what the device is doing when it pokes
bits into a register -- even that there is a device there.  It
functions completely purely abstractly.  It happens to be that
(except for Mel, the Real Programmer) (See
http://www.cs.utah.edu/~elb/folklore/mel.html) when we write
code, we put names in the code to refer to empirical things that
we see ourselves mucking with by sending code through a processor
hooked to devices.  The instructions that are executed in the
processor have nothing to do with the devices being manipulated,
though.  The devices are themselves designed to be triggered by
code.  The code is ultimately pure.  The way you use it and the
way you interpret it, often isn't.


>     Regardless, the fundimental problem is there is no distance left
> between what is patentable and an idea.
>     I am also not sure I accept the distinction between pure abstraction
> and empircal abstraction for much the same reason.


I run into that a lot.  It's something else a lot of people have
forgotten.


>     Engineering patents are not fundimentally different either - except
> that for two hundred years the process of getting from the idea to the
> real world had sufficient
>     manual complexity that it was possible to believe there was some
> distance - maybe there was, but then the patent would not have been for
> anything meaningful.
>     In some ways engineering patents may be worse because many of the
> patents are for the physical properties of matter - what happens to a
> crystal structure when you add specific impurities ?
>     Finding a crystal structure that acts as a superconductor, may be
> brilliant and require great genius, but it is discovery not creation,
> and a patent issued is basically a patent on the underlying principles
> governing matter.
> 
> > It is possible to distinguish software patents from other
> > patents.  First, establish a definition for "generic logic
> > processor."  Then, for any given application, require that
> > claimants sign a statement to the effect that "there are no
> > instructions provided to a logic processor in this invention; and
> > if there are, they are not covered by the patent."  Then
> > examiners don't have to fret over that.
> >
>     I am not looking for a way to assure that a patent on software is
> not granted.
> 
>     I am looking for an explanation as to why those who beleive software
> should NOT be patented, but other things should, beleive that software
> is fundimentally different and deserves special protection.


Because, just like a written mathematical formula, it
*represents* pure abstraction.  It may be "written" in some form,
but it represents something non-empirical.

But most people answer your question the way you do, though you
have gone on to question that: "because software is ideas, and
patents don't cover ideas."  I submit that that's correct, but
you can get a real answer to your question by considering the
distinction between pure abstraction and empirical
generalization.

Personally, it took me a long time to kick loose from tendencies
to discount the notion of pure abstraction.  But it makes sense,
really it does.  I found that it took me many years to sort the
notion out.


> > In any contest, look for whether it has a generic logic processor
> > and then whether there are separate instructions provided to it
> > for execution (in whatever medium, RAM, FPGA, hard circuitry,
> > etc.).  Those instructions are pure logic and are not covered by
> > the patent.
> >
>     Pretty close to exactly that problem is what got us into the
> software patent mess in the first place.
>     Prior to 1981 an invention using a computer was not patentable.
>     After 1981 the mere presence of a computer and software was not
> determinative, but computer software and algorthims were not patentable.
>     In the early 90's the court's tried to distinguish between things
> that were purely computational and those that  related to  real world
> events. - pretty close to your empirical abstraction distinction.
>     In 1998 the Courts accepted the argument that an algorithm was
> patentable - in that instance a business method.


That's right.  A Federal District Court was established
specifically to horn those decisions through.  They sure did come
close, then lost it to political maneuvering.


>     What about a state machine ? Even a ROM can be used as a controller.
> You can make the equivalent of a ROM from a bunch of diodes.


If it has a processor that is generic in the sense that it can
execute arbitrary sequences of logic operations -- separated from
those operations -- and with those instructions (even a fixed set
etched in ROM -- it's the genericity of the processor that
counts) provided to that processor for execution, then sure.


>     Engineers create ciruits using software and build them into FPGA's.


Same difference.


> I can write a program in C that will be transformed into the connections
> for cells in a Gate array that will generate mandlebrots or process
> FFT's. Is that software ? Hardware ? Does it include a processor ? Is it
> patentable ?


Depends on the kind of circuit that the compiler produces.  I
would expect it probably does burn a sort of generic processor
and then turns the rest of your C code into circuits acting as
instructions provided to that processor.


>       My argument is that technology breaks laws because their
> underlying logic was flawed. Patent law depended on the existance of
> distance between an idea and something patentable. Software radically
> diminished that distance. Technology does not stop. In 10, 20, 100
> years, something will happen that will collapse the distance even further.


Yep.  And it *might* be a good idea to eradicate patents as
such.  But in practical terms right now, let me state that this
analysis will always pertain -- unless we start short circuiting
the space-time-matter continuum.  And even then, one has no
reason to think that pure logic would not still retain its
character.  You'd better hope it does, because if pure logic gets
screwed, then you're beyond your childhood mysteries ("gee whiz,
what if I'd never been born?" "Gosh, what is nothing?").

Think about that -- if pure logic doesn't hold (always, without
exception, with absolute certainty), you can't reason.  You can't
infer.  You can't propose that the way things behave once we
screw with the fundamental stuff of reality will obey any
principles or be explainable in any way.


>        But the argument is not restricted to patents. In general if the
> advance of technology causes a law to fail, something is wrong with its
> underlying premises. I do not really want to fork this into a plethora
> of other discussions.


Actually, in history you can find the rationality of law.  Mostly
because people have continually had to address it in reasoned
terms, in legislating, in the practice of law and in courtroom
argumentation.  For all the bogus arguments that win due to
political forces, you often find that somebody was there and that
person made a point of registering the right message at that
time.  Going back into history, you can often say "See?  Here's
where it went wrong!"


>     To use another computer analogy if moving to  computers with more
> memory, more cache, or a faster speed causes a program to fail we start
> looking for fault in the program, not the computer.


I could in some circumstances entertain a discussion that might
propose to eliminate patents altogether, without deciding on that
now.  But I also analyze to see the gamut of things that can be
done at the present.  I also try to articulate this so I can
offer explanations to people on a variety of bases.  I haven't
yet chosen elimination of patents as a position.

Computers are great.  Nothing wrong there!


Seth


-- 

[CC] Counter-copyright: http://realmeasures.dyndns.org/cc

I reserve no rights restricting copying, modification or
distribution of this incidentally recorded communication. 
Original authorship should be attributed reasonably, but only so
far as such an expectation might hold for usual practice in
ordinary social discourse to which one holds no claim of
exclusive rights.