Informática geek, matemáticas, pensamiento crítico y alguna otra cosa de vez en cuando.

2010-01-02

The patent on Hexadecimal - We need more

Recently the GMP mailing list received an invitation for the developers to contribute to the recently created Peer-To-Patent Australia, because Hewlett-Packard had filed a patent application which could be related to the project.

I googled for the patent title (Binary representation of number based on processor word size) and, to my surprise, the patent was already granted in Europe and U.S.A. My surprise was even bigger after reading the patent.

The 'invention' covers storage of numbers that are to be represented in base B as numbers in base Bn, one digit per word, Bn being the biggest integer power of B which fits in a processor word. For example, to store a decimal number in a 16-bit processor the idea is to store the number in base 10,000, because 104 is the biggest integer power of 10 that can be represented in a 16-bit word (105=100,000 would not fit).

That happens to be the idea I used for simplicity for the cycle counter in my BF Debugger (brfd 1.0) back in 2001, which I called 'Petradecimal' (look for appearances of 'Petra' in the code). Actually I can only prove 2006, because that's the date in which it's filed in the Wayback Machine, recently admitted as proof by an U.S. court. Here's the Wayback Machine link: [1]. In the GMP mailing list I wrongly said it was in 2005 when I used it, but that was actually the date of a later version, 1.0.1. Time passes so fast...

Even worse, arguably the patent covers conversion to/from hexadecimal in processors with 8-, 16-, 32-, and 64-bit word sizes, when that conversion is done in blocks of one processor word each.

However, my point is not that this patent should not have been filed.

What Peer-To-Patent is doing is avoiding some patents with prior art so that the overall quality of the patents granted is enhanced, but it does not protect against triviality. However, the world does not need better-quality software patents. This is merely a step towards concealing the actual cause of concern, disguising the patents as something marginally acceptable. The world actually needs to be full of trivial, low-quality patents, so that more and more people realize just how silly the patent system is when applied to software and how software and patents should get a divorce, and loudly ask for it.

The Peer-To-Patent project is there to help the patent officers who are full-time dedicated to research patents, because even with their full-time dedication they can easily fail to identify what is already invented. This in itself exposes a good part of what's wrong with software patents. If full-time dedicated researchers can't know for sure whether a patent has no merit, how can, say, a free software programmer be sure not to be stepping on a patent mine while doing his everyday creative work? And regardless of whether that programmer did actually do even more careful research than the patent officers, there's the possibility of the idea being patented afterwards anyway, as has been my case. I'm lucky in this case to be able to prove 2006 as prior art date. What if I couldn't?

The existence of Peer-To-Patent is, thus, a symptom that the patent system is broken when applied to software, but not the only one. The existence of the Open Invention Network for building a patent porfolio aiming at the defense against patent suits, and the proposal of a patent insurance, mean that we're in a situation in which we are defending ourselves against the law instead of being protected by it. Improving patent quality is NOT a solution. Terminating patents on software, on the other hand, is. Software patents must be eliminated, not enhanced.

References

[1] http://web.archive.org/web/*/http://www.formauri.es/personal/pgimeno/prog/brfd10.zip

No comments: