Linked by Thom Holwerda on Fri 20th Jun 2014 19:30 UTC

The problem, at root, is that the courts are confused about the nature of software. The courts have repeatedly said that mathematical algorithms can't be patented. But many judges also seem to believe that some software is worthy of patent protection. The problem is that "software" and "mathematical algorithm" are two terms for the same thing. Until the courts understand that, the laws regarding software patents are going to be incoherent.

If you ever find yourself arguing with someone who supports software patents - just link to this article by Timothy B. Lee. An excellent and concise look at where software patents come from, the inability of courts to understand software, and why the Supreme Court of the United States seems so hesitant to reaffirm its own rulings about the intrinsic inability to patent software. Key passage:

One reason the courts might hesitate to do this [put an end to software patents] is that it would be a big blow to the bottom lines of some of the biggest companies in America. Such a ruling would have invalidated thousands of dubious software patents held by trolls, but it also would have invalidated's infamous 1-click patent, the "data detectors" patent Apple used to sue Samsung, and Google's patent on its search ranking algorithm. Invalidating software patents would have wiped billions of dollars off the balance sheets of some of America's largest technology companies. The Supreme Court generally tries to avoid making waves, and those would have been some very big waves.

And there you have it. Large American technology companies want to have their cake and eat too - they supposedly support patent reform, but only reform that weakens the position of small players (which happens to include non-practicing entities) while strengthening their own positions.

Lee ends with the simile that I have used on numerous occasions in the past - one that perfectly sums up the inherent ridiculousness of patenting software:

The mathematical ideas in software, like the literary ideas in novels, are part of society's common intellectual heritage. Neither should be eligible for patent protection.

Thread beginning with comment 591070
To view parent comment, click here.
To read all comments associated with this story, please click here.
Member since:

Let me nitpick too: these days almost nobody writes software in assembly

Reply Parent Score: 1

galvanash Member since:

Let me nitpick too: these days almost nobody writes software in assembly

Doesn't matter. If it is software, it can be expressed in assembly (which has a 1-to-1 correspondence to machine language, which is arguably nothing but math).

The point is no matter what language you are programming in, ultimately it becomes mathematical in nature when executed. The language you write in serves as an abstraction, usually a complex one, primarily to make performing mathematical operations more akin to communications - something most humans find less difficult and are really good at. That doesn't mean it is no longer math.

You don't get to redefine it as something else simply because you have abstracted it to the point that it is no longer recognizable.

Someone may someday write a language that has an method in it called MakeUserSmile() - which does exactly what it says it does (how I don't know - that isn't the point). Does that sound mathematical to you? Probably not - yet if that method is being run on what we currently call a computer it absolutely can't be anything but math - because that is the only thing computers can actually do... Just because all the math is hidden under layers of abstraction doesn't mean it no longer exists.

Software, no matter how high the level of abstraction becomes, is a set of mathematical operations to be performed and some numbers to perform it on.

Reply Parent Score: 8

Ithamar Member since:

So is creating any physical product then, a matter of adding or removing the right amount of atoms, sounds like math too ;)

I'm not saying I am pro-software-patents, just saying that the way things are reduced "to its basics" in these discussions, still rings a little silly to me...

Reply Parent Score: 4

WereCatf Member since:

Let me nitpick too: these days almost nobody writes software in assembly

Irrelevant. Regardless of what language you use in the end it's still broken down to the same instructions as assembler-language and as such it's all still just maths.

Reply Parent Score: 3

juzzlin Member since:

As a software engineer I just don't think one can directly compare software to math. Software is an arrangement of instructions. It has nothing to do with the fact that the *CPU* is actually based on math.

By this same software-is-math logic it wouldn't be possible to patent a machine or a car either, because you can disassemble it into nuts and bolts. It's just nuts and bolts!

And yes, I'm against patenting trivial and common sense solutions, but in my opinion there's nothing wrong with patenting a complex algorithm that requires a lot of research to develop. In many countries it's possible to patent methods (like in chemical industry) anyway and no-one complains about that.

Edited 2014-06-23 16:10 UTC

Reply Parent Score: 2

nicolasgoddone Member since:

Bad nitpicking, it doesn't matter in which language you write it still gets broken down to simplest "machine" language to execute mathematical instructions on registries (appropriately) patented by Intel/ARM etc...

Reply Parent Score: 3

JPollard Member since:

Let me nitpick too: these days almost nobody writes software in assembly

Every compiler does...

Reply Parent Score: 1

nicubunu Member since:

but any two different "hello world" programs will generate completely different assembly language sequences

Reply Parent Score: 1