Nope, the patent office should adopt a more sensible policy on what can or can not be patented. As another HNer pointed out in this thread, the European policy is pretty good:
1. Software for a general-purpose digital computer is equivalent to a mathematical algorithm, and therefore not statutory material for a patent.
2. If the all the novelty and non-obviousness in a claim is contained in software, then that claim is not patentable.
3. Software as an element of an otherwise patentable claim does not make the entire claim unpatentable. This is nothing more than the complement of 2. Don't read it in any way inconsistent with 2.
4. Don't read 3 in a way that's inconsistent with 1 and 2. Pay attention to 1, 2 and 3. They are the policy.
Like my policy? I hope so, but they'll never listen to it. If they don't listen to the Supreme Court, they won't listen to anyone. 1 is Benson, 2 is Flook, 3 is Diehr, and 4 is Bilski.
I'm not for software patent but I always found the "Software is a mathematical algorithm" thing annoying. I don't think it's a really good argument against software patents.
On the contrary. Since software source code is (at a fundamental level) math, it is purely informational in nature. One of the goals of the patent system in the first place was so that information would be shared rather than kept secret. The patent holder makes the information public, and in exchange he is granted a temporary monopoly over the physical manifestation of the information. But not the information itself.
This makes it really strange then when you attempt to patent a software algorithm. What is the physical part? Am I allowed to make a book containing original descriptions of patented algorithms? How is that different from sharing code on the web?
Patenting software algorithms is akin to patenting speech itself, which is protected under the first amendment. So I think the "math" thing does matter. A lot.
I just don't believe most software patent fit the description of an algorithm. The real problem with them is they are patents for idea an not for implementation as an algorithm might be considered.
When Amazon patented A 1 click button. They were not talking about an algorithm, they were talking about the idea of having a button which purchases the object I want with 1 click. Implementation of this is wide, this patent tells me nothing of what the process behind the patent should be. If it did then you could get around it. That's the fundamental issue with those patents as you've pointed out. I can't figure out what is or isn't an implementation of this patent because no real useful implementation instruction was given.
On the other hand The Marching Cube algorithm patent does fit what you are talking about, the is instruction on how to implement the algorithm and those kind of patents have some issue for sure too. The claim against it was that it's a completely obvious way to solve the problem. There are alternatives to this algorithm such as the (http://en.wikipedia.org/wiki/Marching_Tetrahedrons) which is just redoing the same thing another way, so it's at least better to me than the 1 click patent.
Software patents in general are wrong, I'm not arguing against that but saying all software patents do is patent algorithms is not strong enough an attack in my view. When people will look at it they will see putting multiple algorithms together to solve a problem in a non obvious way is in a way no different then putting a bunch of smaller components together to create a new device. I don't believe patenting either really helps promote innovation. (I'm pretty much anti all patents).
Computer programs are constructivist mathematical proofs. Why is this annoying? Why isn't this a good argument against software patents? Should I be able to patent a mathematical theorem and its proof?
Many, if not most, claims in SW patents are broad enough that they needn't specify if they are in SW or not. Almost any SW patent can be viewed as running entirely in HW.
The Patent Office itself should crowd-source the software community looking for prior art before a patent is issued in the first place.