1 + 1 (pat. pending) — Mathematics, Software and Free Speech
groklaw.net
groklaw.net
The fact that running a piece of software is predictable (the same program runs the same way with the same inputs), is not a strong argument. A machine (with physical gears) will perform the same function when run in the exact same conditions. Just because one is an analog machine and one is a digital machine doesn't change the concept of invention: making something new from existing parts.
Judges also need to be made aware just how much of the modern information age is built upon FOSS.
"This article provides a detailed factual explanation of why software is mathematics, complete with the references in mathematical and computer science literature. It also includes a detailed factual explanation of why mathematics is speech, complete once again with references."
The implication being that if software is mathematics (and/or speech), it can't be patented. IANAL but I've suspected that a clear and elaborate delineation of the equivalence of software and math/logic has been one big things missing in this debate, and its absence has allowed patent trolls to prosper much more than they would have otherwise.
Does anyone know of any other efforts like this to show software == math == logic?
> Then he goes on to do exactly that throughout the rest of the article.
Yes it somewhat contradicts my assertion that there's no way to tldr it, but good tldr's usually condense not just the author's thesis but some of the most pertinent details as well. But in this case that is very difficult, at best.
Then came Diehr, which didn't say anything had changed, but it was opportunistically read as if something had changed. Software is patentable today because our legal system is inconsistent. Law is not law.
In Diehr, the inventor claimed "algorithm + machine" where machine was a computer. The Court looks at a computer as an infinitely configurable machine, with each new software algorithm creating a new invention.
That is the distinction that the courts make between Benson/Flook and Diehr, which has allowed "software" patents to exist.
The rest of the Diehr patent included a combination of elements claimed to be novel, not a general-purpose computer.
Also, from my understanding an infinitely configurable computer and general-purpose computer aren't the same thing. Infinitely configurable means a new machine every time new software is installed, which would allow the invention to fall within the patent statutes. A general-purpose computer is not a new machine, has already been invented, and therefore trying to patent an "algorithm + GPC" would mean a patent on the algorithm, which is outside patent protection.
According to the respondents, the continuous measuring of the temperature inside the mold cavity, the feeding of this information to a digital computer which constantly recalculates the cure time, and the signaling by the computer to open the press, are all new in the art.
From the first line of the opinion, "We granted certiorari to determine whether a process for curing synthetic rubber which includes in several of its steps the use of a mathematical formula and a programmed digital computer is patentable subject matter under 35 USC 101." Diamond v. Diehr, 450 U.S. 175 (1981).
Rehnquist, who wrote the majority opinion, said it right there we are talking about "formula + computer."
Claim 1 of the patent itself reads, "1. A method of operating a rubber-molding press for precision molded compounds with the aid of a digital computer, comprising..." Diehr at Footnote 5. The formula is the Arrenius equation (everyone already did this), and then Diehr added a computer for continuous monitoring, calculating, and output (the novelty).
Diehr themselves claimed in their arguments that their novelty to is "the continuous measuring of the temperature inside the mold cavity, the feeding of this information to a digital computer which constantly recalculates the cure time, and the signaling by the computer to open the press..." Diehr at 178-179.
EDIT: You edited your previous comment to include the same line as me. It seems as though we actually agree on what was novel here.
Most software patents are essentially an algorithm attached to a general-purpose computer. This relationship cannot be claimed to be novel. Diehr could at least claim that their device as a whole was novel and nonobvious (though the Supreme Court case didn't examine those questions).
I agree on this point.
> I keep coming back to a recognition of every argument against software patents ultimately reducing to an argument against the concept of patents in general.
But I completely disagree on this one.
I think the 'software is math' argument is not convincing against patents (and I have a background in mathematics, so you would think I would like such an argument ;). But there are plenty of other excellent arguments against software patents in particular, that are not valid against other kinds of patents.
Patents make sense when progress is fairly slow, people read patents, and patents are granted for actual innovation. Then you do want to award a patent for the rare actual invention - it helps speed progress!. These 3 conditions used to be true, more or less, for patents in general. But today none of them are true for software patents:
1. Progress is ridiculously fast. The entire industry changes in just a few years. And patents last for decades!
2. Software engineers do not read patents. Both because there is no actual benefit to doing so, and because legal counsel always says "do not read patents."
3. A huge amount of patents are granted every year, and the quality is very low. We constantly hear about ridiculous patents being granted and enforced. (And yes, I know that headlines and Slashdot summaries are misleading - you need to read the claims. But even when you do read those claims, in most cases the ridiculous patents are still ridiculous.)
So I am against software patents, as they are harmful to the industry in their current form. That is more than enough of a reason, regardless of whether software is math or not (it is). Whereas, patents in general may still be useful in other fields, and my arguments against software patents are not relevant to them.
I'm far from an unbiased party on these issues. I've been thinking a lot on how they should be analyzed. There certainly have been quality issues, and it's vital that patents serve their intended purpose of nurturing and protecting innovation.
There are other arguments as to why it interacts with FOSS software (patent minefields etc) that affect regular software developers too, so there isn't a need to separate FOSS from regular software development. Those aspects should be the focus, not on the harm to the public.
If the goal of the patent system is to encourage innovation and patenting software or math accomplishes it, then patent it. If not, don't patent it.
The real difference is in how it's used and created. Generally speaking everyone uses math, so if you could patent it you'd slow innovation for everyone. If you're patenting algorithms that take a few days to create and they can be applied across many domains, you're slowing innovation. Today this applies to math and software. It will soon apply to engineering physical objects as 3D printers, nanotech, etc.. will make it easier and faster. Basically if innovation in a field is easy enough, patents will slow it down and should not apply.
Obviously programmers want software to be special but if it was, the patent system would be less consistent than it currently is. If you want software to make sense in the patent system, just redesign the whole thing.
If you go back to mathematics and consider (Newton's method)[http://en.wikipedia.org/wiki/Newtons_method], that seems like it might have been invented, but it's derived from a series of discoveries, and hence is considered a discovery rather than an invention. If you used the Newton-Rhapson method to calculate the zero of a function in code somewhere, you should feel safe that it's not protected by a patent (not to mention it was discovered ages ago).
Since computer science is applied mathematics, and mathematics are discovered rather than invented, it makes sense that it should be protected as well. I'm not the best at explaining things, but hopefully you can understand the difference.
It's all discovery.
This is just semantic wordplay. I bet the legal literature is the same way. Even if we somehow fit these clunky classifications to reality, we would be no closer to designing a sensible patent system.
Don't worry, I understand the semantic distinction when the case is clear cut. Lead is a discovery, lead pipes are an invention. Addition is a discovery, arabic numerals are an invention. (by today's standards)
This is a quite controversial philosophical claim you are making. Don’t be too hasty to state such claims emphatically. By reasoning surely similar to your own (unstated) reasoning, any formal model for anything is “discovered” rather than “invented”.
Consider the light bulb. It could be described that someone discovered that if you run so much current through this material you get light. And we can ask the same questions about math. Is the matrix a discovery or an invention? What about zero or logarithms or Aleph Null or electricity? The invention part is the series of steps that take you to the discovery, if these steps arrive at a construct then this construct is the invention. Invention is the centering of discovery to the human condition but everything is already there so to speak. Things like zero or a matrix or complex numbers or quaternions or taylor polynomials or the combustion engine are inventions or tools to allow us to see, do and think about certain things.
I am not for software patents because they are used in the opposite way than they were intended. Patents were an incentive to get people to share but now they are used as a tool to stop people from sharing and creating. People associate inventions with physical things and material costs but really every reproducible invention implicitly contains an algorithm and that is what the patent is on. The thing with software is that there are no material costs and so the constructs can be built and arrived at with pure thought like in maths (which makes sense since algorithms are about math in a constructive universe). Here the algorithm and the result are one and the same where as in the old world the algorithm yielded the result.
This means that a lot of its constructs can be arrived at with trivial costs and then hoarded and used as ammunition by better captilized entities. Counterproductive. In areas where costs are non trivial and barriers are high then patents make sense as a motive to share and incentivize. But information moves so well now that the old time scales no longer make sense. And in particular, because like maths nearly all software are constructs of thought progress is made very rapidly via composition of pure concepts and so the time scale must be zero or the opposite effect - one of anti progress - is had when patents are applied.
You assume that "patent(ing) it* will encourage innovation. I don't think that's in evidence. In fact, the exact opposite seems to be in evidence.
http://www.qwantz.com/index.php?comic=353
"Any series of 1s and 0s can be converted (quite easily) into a regular number! So, for instance, your favorite song is contained—quite literally—in one single, 4 million digit number."