Premise 2: Algorithms are pure mathematical objects.
Tentative conclusion 1: Algorithms cannot be patented.
Premise 3: Hahaha, lawyers don't know math but they do know billable hours.
Firm conclusion: See figure 1[1].
"Although the Supreme Court has not delimited the precise contours of the abstract idea exception, it is clear from the body of judicial precedent that software and business methods are not excluded categories of subject matter."
You could present any patent as a discovery of a "pure" fact about physics or mathematics: a particular configuration of physical objects would behave in this particular way according to the laws of physics, or, a certain abstract dynamical system described by this formula (i.e. algorithm) has these properties. The thing is, the patent doesn't protect the discovery or the knowledge or the fact itself. Even with a patent, anyone is free to study the design/algorithm, teach it, write about it, print it on a T-shirt etc.; in fact, patents are meant to help spread the knowledge they contain -- in exchange for a certain protection. What the patent protects is the exploitation of the discovery in some physical product for certain ends, i.e. not the fact about the universe/mathematics, but its practical implementation. So in this respect software patents and, say, mechanical patents are exactly the same: a monopoly is granted for some years on the practical exploitation of certain physical/chemical/biological/mathematical facts in certain ways and for certain means.
There are many possible programs, but only some are useful. In this sense, patents might protect only those useful programs, and not the useless programs. However, you'd have to write new law to cover this case.
Laws written before the advent of information theory are missing fundamental truths of mathematics. In this case, given that patent law already knows about mathematics, surely patent law is prepared to yield.
No, an algorithm is very much patentable (and not copyrightable, while a program is copyrightable but not patentable), it's just that the patent does not protect the notion or knowledge or mathematical fact of the algorithm -- in fact, it very much makes it public -- it's just gives a monopoly for exploiting the algorithm for some business benefit.
> Laws written before the advent of information theory are missing fundamental truths of mathematics. In this case, given that patent law already knows about mathematics, surely patent law is prepared to yield.
As I said, this reasoning is irrelevant. Every patent is some "truth" of physics, chemistry or mathematics, but the truth is not what's being granted a monopoly. Everyone is free to know it or teach it. Rather, it is its implementation for profit that's protected. Moreover, because I believe that in the US patents apply to physical inventions, the language of software always describes some computing device computing an algorithm. It seems that technically everyone is allowed to perform the algorithm by hand, even to exploit it for profit.
Software patents are therefore not different in principle than any other kind of patent, but they are different in practice, simply because of how they've come to be used.
IE: Fast Food Franchise "Secret Recipes"
Algorithms can actually produce a real physical result, whereas mathematics exists beyond pen and paper.
Algorithms that we (programmers) construct usually aren't done in terms of Turing machines or the lambda calculus. Therefore they're not purely mathematical.
> Premise 3: Hahaha, lawyers don't know math but they do know billable hours.
A patent lawyer I worked with had a mechannical engineering degree. I'm fairly sure he knew some math that I didn't.
You are confusing the algorithm, which is an abstract procedure with no physical existence, with the set of possible processes that can implement it.
> Algorithms that we (programmers) construct usually aren't done in terms of Turing machines or the lambda calculus. Therefore they're not purely mathematical
Sloppy math is still math. Any program that an interpreter or compiler will accept is a mathematical object. If it weren't, it couldn't be parsed. That said, it is possible for a mathematical statement to be undefined, ambiguous, or erroneous.