[OT] Free software versus software idea patents

Steven D'Aprano steve+comp.lang.python at pearwood.info
Mon Apr 11 11:10:34 CEST 2011

On Mon, 11 Apr 2011 00:53:57 -0700, geremy condra wrote:

> On Sun, Apr 10, 2011 at 7:49 PM, harrismh777 <harrismh777 at charter.net>
> wrote:
>> Chris Angelico wrote:
>>>> >      All software can be expressed as lambda calculus. The point
>>>> >      being,
>>>> > all
>>>> >  software is mathematics...
>>> With enough software, you can simulate anything. That means that the
>>> entire universe can be expressed as lambda calculus. Does that mean
>>> that nothing can ever be patented, because it's all just mathematics?
>>    Great question... the simple answer is, no. But the extended
>>    answer is a
>> little complicated and not well understood by most folks, so its worth
>> talking about, at least a lot. You may skip to the last paragraph for
>> the main point... or stay tuned for the explanation.
>>    Mathematical processes and algorithms are not patentable (by rule)
>> because they are 'natural' and 'obvious'. In other words, a natural set
>> of laws (mathematics, just one example) are universally used naturally
>> and obviously by all humans in the course of thinking, creating,
>> expressing, &etc., and therefore these ideas are not patentable because
>> they are the natural and obvious 'stuff' from which and through which
>> the human mind processes the natural world. You cannot patent the
>> Pythagorean theorem. You cannot patent addition, nor subtraction, nor
>> the logical concepts for boolean algebra.... nor can you patent lambda
>> calculus. These are just examples.
>>    You cannot patent the mathematical concept of nand gate; however,
>> Motorola may patent the mechanical electrical implementation of the
>> nand gate (CMOS 4011 quad nand). Also, Texas Instruments may patent
>> their mechanical electrical implementation of the nand gate concept
>> (TTL sn7400n quad chip). The chips are patentable, but the mathematical
>> concept 'behind' the chips is not patentable.
>>    Software is another sort of animal entirely. Because software is
>>    not just
>> based on mathematics--- IT IS mathematics.
> I am extremely skeptical of this argument. Leaving aside the fact that
> you've randomly decided to drop the "decidable" qualifier here- a big
> problem in its own right- it isn't clear to me that software and
> computation are synonymous. Lambda calculus only models computation, and
> software has real properties in implementation that are strictly
> dependent on the physical world. Since perfectly predicting those
> properties would seem to require that you perfectly model significant
> portions of the physical universe, I think it's quite reasonable to
> contend that the existence of lambda calculus no more rules out the
> applicability of patents to software (which I detest) than it rules out
> the applicability of patents to hardware (which I find only slightly
> less ridiculous) or other meatspace inventions.

I agree with all of this: I too detest software patents, and find 
hardware patents problematic but pragmatic. But if there's a reason for 
accepting one and rejecting the other, it's far more subtle than the hand-
waving about mathematics. I believe that the reason falls more to 
*pragmatic* reasons than *philosophical* reasons: software patents act to 
discourage innovation, while hardware patents (arguably) act to encourage 
it. After all, encouraging innovation is what patents are for.

M Harris' argument fails right at the beginning:

"Mathematical processes and algorithms are not patentable (by rule) 
because they are 'natural' and 'obvious'."

It's not clear to me how the Banach-Tarski paradox can be described as 

    Using the axiom of choice on non-countable sets, you can prove 
    that a solid sphere can be dissected into a finite number of 
    pieces that can be reassembled to two solid spheres, each of 
    same volume of the original. No more than nine pieces are needed.
    ... This is usually illustrated by observing that a pea can be 
    cut up into finitely pieces and reassembled into the Earth.


And I think anyone who knows the slightest bit of mathematics would be 
falling over laughing at the suggestion that it is 'obvious'.

Of course, some mathematics is obvious, or at least intuitive (although 
proving it rigorously can be remarkably difficult -- after 4000 years of 
maths, we still don't have an absolutely bullet-proof proof that 1+1=2). 
But describing mathematics as 'obvious' discounts the role of invention, 
human imagination, ingenuity and creativity in mathematics. There's 
nothing obvious about (say) asymmetric encryption, or solving NP-complete 
problems like the knapsack problem, to mention just two examples out of 
literally countless examples.[1]

If it were just a matter of joining the dots, there would be no unsolved 
problems, since Euler would have solved them all 200 years ago.[2]

Part of the patent problem is that the distinction between discovery of a 
fact (which should not be patentable) and invention (which, at least 
sometimes, should be patentable) is not clear. The iPod existed as a 
Platonic ideal in some mathematical bazillion-dimensional abstract design 
space long before it was invented by Apple; does that make it a discovery 
rather than an invention? On the other hand, it is doing Apple a great 
disservice to ignore their creativity in finding that design point, out 
of the infinite number of almost-iPods that suck[3] or don't work.

[1] Probably aleph-1 uncountably infinite rather than aleph-0 countably 
infinite, proving it is not obvious to me.

[2] In maths things are usually named after Euler, or the first person to 
discover them after Euler.

[3] Or suck worse than the iPod. YMMV.


More information about the Python-list mailing list