-
Website
http://techliberation.com/ -
Original page
http://techliberation.com/2008/08/27/the-patent-system-is-a-hashtable-without-a-hash-function/ -
Subscribe
All Comments -
Community
-
Top Commenters
-
MikeRT
184 comments · 6 points
-
eee_eff
800 comments · 8 points
-
mwendy
73 comments · 2 points
-
Ryan Radia
176 comments · 5 points
-
Richard Bennett
612 comments · 1 points
-
-
Popular Threads
-
The Ugliness of Privacy Notices
4 days ago · 4 comments
-
Open Source is Not the Enemy
5 days ago · 3 comments
-
Broadband as a Human Right (and a short list of other things I am entitled to on your dime)
3 weeks ago · 18 comments
-
“Internet Freedom”: How Statists Corrupt Our Language
1 week ago · 7 comments
-
No, Seriously, U.S. Broadband Competition Sucks
3 weeks ago · 15 comments
-
The Ugliness of Privacy Notices
"The patent system acts like a problem cache, storing the solutions to specific problems for later recall."
First there is the implication that solutions would not be stored (ie every time a problem is faced a solution would have to be found anew by the entity facing the problem) in absence of a patent system, which seems absurd.
Second, there is the implication that the content of patents (which are after all what is stored and looked up by the system) contain solutions in a form actually useful to people who have problems, which also seems absurd, though admittedly I know nothing about pharma development practice.
So, in any field, does the patent system actually serve as a solution lookup mechanism for practitioners (and not merely for the purpose of finding out whether a potential solution is patented!)?
To me the more apt memoization analogy to the patent system focuses on the overlapping subproblems that you hinted at with the Fibonacci sequence example. Essentially, the patent system attempts to use a dynamic programing technique to speed-up innovation. The core problem is that the 20 intervening years during which the patent is valid makes whatever subproblem the patent solved worthless. As you mentioned, there are essentially no valuable software patents from the 1980's. Thus, no one would have a use for these patents irrespective of their ability to perform a lookup. I think this gets more to the core of why software patents really hurt innovation in software rather than the lookup concern.
Although, the lookup concerns are secondary in my mind, they are certainly important. For example, consider the situation that would happen if software patents were only valid for three years. Some of the subproblems those patents solved would still be relevant and important. This means that being able to find a fast solution to those subproblems would be useful. However, without being able to perform an easy lookup the software industry wouldn't be able to make use of any valuable solutions to subproblems with which they may be dealing. Thus, even if the core problem with the patent system didn't exist, the lookup concerns you mentioned would still render current patent system as useless.
This also fits with your discussion of the pharmaceutical industry. They actually benefit from the patent system not simply because they can perform a reasonable lookup, but also because they can potentially still make use of the solutions to subproblems they find to solve larger problems.
But there's no such thing as a "software patent" anyhow, just a lot of computer and electronics patents. But keep searching for that silver bulliet, you may find it one day.
Though, I do wish you were right about the existence of software patents. (Business method patents should probably also disappear for that matter.) I kinda like Ben Klemens' proposals, but we're certainly not there yet.
Now we can have an interesting discussion about improving the searchability of patents if you want, but let's get over the idea that the Patent DB isn't searchable at all.
Don't be so picky.
Also, the function might not be strictly O(1), but with a well-designed hashtable the average lookup time is basically independent of the number of elements. In any event, this doesn't really change my point. Substitute another data structure with constant-time lookups if you like.
What actually happens is that people search the patent data base using a variety of terms, find close matches, and ensure that their patent doesn't infringe by carefully distinguishing it. If you read any patents, you'll no doubt notice a list of similar patents and the explanation of why the patent in question is different. It's not a fool-proof system, but people seem to handle it.
So rather than there being no "hash function" there are several.
That's quite an understatement.