You can’t patent simple math, judge tells patent troll Uniloc

A patent troll that accused Rackspace of violating a patent merely by selling Linux-based servers has seen its case thrown out. A judge ruled the patent claim invalid because it describes a relatively simple math operation.

The company in question is Uniloc, which has a long history of suing tech vendors. In 2009, a US District Court judge overturned a $388 million verdict Uniloc had won against Microsoft. That litigation was finally settled late last year for an undisclosed sum. Uniloc continues litigating, however, with at least a dozen lawsuits filed just last week.

Uniloc sued Rackspace in June 2012 in US District Court in Eastern Texas (PDF), claiming Rackspace violated its patent "by or through making, using, offering for sale, selling and/or importing servers running Linux Kernel (version 2.6 or higher), which is used to process floating point operations carried out on Rackspace’s servers including those servers used in conjunction with Rackspace’s hosting solutions/products."

Math operations aren't automatically unpatentable, but US District Court Judge Leonard Davis ruled yesterday (PDF) that this one isn't novel enough to deserve patent protection. Why not? Because the "invention" claimed was just a decision to round numbers before, instead of after, an arithmetic computation. Seriously.

Uniloc's patent, filed in 1995 and granted in 1999, covers a "Method and apparatus for handling overflow and underflow in processing floating-point numbers." Uniloc acquired this patent in January 2012 from inventor James Brakefield, who works as an expert witness. This is not the primary patent Uniloc uses to sue vendors, so the rest of its lawsuits will not be impeded by Davis's decision.

The patent asserted against Rackspace has 28 claims, with 20 of them being connected to claim #1, the only one Uniloc asserted. The judge's ruling knocks out most of the patent by striking down the first claim, which reads:

A method for processing floating-point numbers, each floating-point number having at least a sign portion, an exponent portion and a mantissa portion, comprising the steps of: converting a floating-point number memory register representation to a floating-point register representation; rounding the converted floating-point number; performing an arithmetic computation upon said rounded number resulting in a new floating-point value; and converting the resulting new floating-point register value to a floating-point memory register representation.

Uniloc was seeking a jury trial, but Davis granted Rackspace's motion to dismiss the complaint entirely "for failure to allege infringement of a patentable claim."

Rackspace is a customer of Red Hat, maker of Red Hat Enterprise Linux. Rackspace has said it would "love to get rid of software patents," and Red Hat routinely defends itself and its customers against patent attacks. In this case, Red Hat said it "provided Rackspace’s defense as part of Red Hat’s commitment to standing behind customers through Red Hat’s Open Source Assurance program."

Rackspace argued that the claim is unpatentable and Davis agreed. For one thing, the claim fails the "machine-or-transformation" test because it does not involve a machine, and the "the transformation portion of the test is not satisfied by the conversion of a number from one format to another," the judge wrote.

Rackspace also argued that the patent claim violates a Supreme Court "prohibition against patenting mathematical formulas and abstract ideas."

In describing just how simple the patent claim is, Davis summarized it as follows: “Claim 1 is, in essence, a formula to 'solve mathematical problems of converting one form of numerical representation to another.' Claim 1 recites a four-step method for processing floating-point numbers: (1) convert the floating-point number from a 'memory register representation' to a 'register representation'; (2) round the result; (3) 'perform an arithmetic computation' on the rounded result to obtain a new floating-point number; and (4) convert the result back to a 'memory register representation.'"

The "novelty" of the claim "is the rounding of the floating-point number before, rather than after, the arithmetic computation."

"Claim 1, then, is merely an improvement on a mathematical formula," Davis wrote. "Even when tied to computing, since floating-point numbers are a computerized numeric format, the conversion of floating-point numbers has applications across fields as diverse as science, math, communications, security, graphics, and games. Thus, a patent on Claim 1 would cover vast end uses, impeding the onward march of science. Under Flook, the improvement over the standard is insufficient to validate Claim 1’s otherwise unpatentable subject matter."

"Flook" refers to Parker v. Flook, a 1978 case in which "the Supreme Court found unpatentable claims directed to an improved method for calculating, using a generalized formulation for converting numbers," Davis wrote.

Not Uniloc's only patent—far from it

Unfortunately for the many companies sued by Uniloc, the patent in the Rackspace case is just a small piece of its portfolio containing more than 50 patents. Red Hat told Ars that it is not aware of any other lawsuits based on this patent.

Uniloc's most important patent is #5,490,216, covering a system for software registration designed to prevent software piracy. The '216 patent has been used in dozens of lawsuits.

The company's website promises continued battles based on this patent. "In 2003 Uniloc filed a patent infringement lawsuit against Microsoft for the unauthorized use of a product activation anti-piracy system on Microsoft’s Windows XP and Office XP products," the company states. "In 2009 a Federal Court jury in Rhode Island found Microsoft guilty of willful infringement and ordered Microsoft to pay Uniloc $388 Million in damages. ... Later that year the judge in the case overturned the jury’s verdict. Uniloc has appealed this decision to the US Court of Appeals for the Federal Circuit. Nevertheless, the Court maintained that Uniloc’s patent is valid, so Uniloc will continue to protect its patent and defend its intellectual property." Microsoft and Uniloc settled in March of last year.

Uniloc isn't kidding about pursuing new lawsuits. It filed 12 new suits on March 21 in the Eastern District of Texas against Activision Blizzard, Aspyr Media, Digital River, Electronic Arts, McAfee, Pervasive Software, Sony, Symantec, Gear Software, Sage Software, SolarWinds, and Wildpackets. Those suits are based on the '216 patent asserted against Microsoft.

Uniloc Luxembourg filed 16 suits in the Eastern District in December 2012 and about a dozen in October 2012. Several of those cases have been withdrawn by Uniloc, probably due to settlements.

While Uniloc's litigation days aren't over, Red Hat and Rackspace declared yesterday's ruling to be an important victory against companies that file patent lawsuits despite not making any technology of their own.

“NPE [non-practicing entity] patent lawsuits are a chronic and serious problem for the technology industry," Red Hat Assistant General Counsel Rob Tiller said in an announcement. "Such lawsuits, which are frequently based on patents that should never have been granted, typically cost millions of dollars to defend. ... Courts can help address this problem by determining the validity of patents early and with appropriate care. In this case, Judge Davis did just that, and set a great example for future cases.”

“The early dismissal of this case delivers a clear message that patent assertion entities can’t expect quick settlements on weak claims, a tactic many patent assertion entities use to monetize questionable patents,” Rackspace General Counsel Alan Schoenbaum said. “We salute Red Hat for its outstanding defense and for standing firm with its customers in defeating this patent troll. We hope that many more of these spurious software patent lawsuits will be dismissed on similar grounds."

We've asked Uniloc if it will appeal the case, but we haven't heard back yet.

Promoted Comments

I find this case particularly disappointing because there was a time when Uniloc was a 'real' company with genuine products they actively sold. This case suggests that they've long given up on that and descended into being a patent troll.

Their most important patent #5490216, mentioned in the article, was the basis for product activation software that they developed and actively sold (through IBM) in the 1990s. As far as I know it was a genuinely new product; there wasn't anything else like it available at the time. I'm not a fan of software patents, but if there is ever a software patent worth defending then it's one like this: an apparently innovative commercial product that was sold worldwide.

But that seems to be in the past now. I previously respected them for their work in the 1990s, but my respect has now been destroyed by reading about this case. The patent in this case, #5892697, seems too obvious to me to deserve any protection. A company that asserts such a ludicrous claim does not deserve my respect.

How did something like that get a patent in the first place?! What are the patent examiners smoking? What's it going to take to get meaningful patent reform in this country? Dear God! The stupid, it burns!

I thought that I've seen the dumbest patents issued already, but this one takes the cake by a long shot. Heck, when I'm doing calculations on my chemistry exams, I tend to round a little bit before I compute the answer since at some point extra decimal places don't really make a difference when calculating pH and equilibrium, so the idea isn't new and isn't limited to computers since I can do it with my brain.

I haven't heard back from the USPTO yet on my patent for this thing I invented I like to call "the number zero"...

You will be hearing from my lawyers, I clearly remember turning in my application the day before you, so you are an infringer...

I know you're probably joking, but afaik patent applications must be sent registered mail, so this kind of issue would be trivial to prove.

More on topic, why in hell would you do rounding before the calculation? Rounding after the calculation reduces accumulated errors. Also, you shouldn't be rounding anything (except when you have underflow/overflow) until you display the result to the user. If you encounter overflow/underflow, an exception should be thrown.

I get there could be memory constraints, but if you have more digits than you need for significant ones to start with, rounding after ensures that you only have one source of error, the rounding. Rounding before means you have two sets.

Rounding before the computation goes counter to every "best practice" I've ever heard of. Can somebody with a deeper understanding please explain how this constitutes an "improvement"? Or is it, as I suspect, a load of cr@p?

It makes me stick to my stomach to read about patent trolls. When you think about how successful those lawyers can be, based on obviously immoral and selfish behavior, and then compare that to the middle-class of America who work honestly and design a lot of that stuff fought over in patents, it's just disgusting.

Davis (whose son is the lawyer for another patent troll, Lodsys) is the chief judge in the district

How is this allowed? I mean even if there is no direct influence on one particular case, I can't imagine that the father wouldn't be unknowingly influenced by the career that his son has chosen to support himself. I know we can't remove Judges because their sons or daughters take up the legal profession, but this one just seems a little too close knit for comfort. He has a vested interest in keeping the system as is, and not dismiss the crap that passes his desk.

While I like this particular outcome, it still illustrates the fundamental issue that the courts have wrong.There is no such thing as "simple math" vs. "non simple math", there is just math. The designation of what is simple or not, is arbitrary and fundamentally based on peoples ignorance of the subject. None of this should ever be patented, and should have no place in court.

Perhaps, in any case based around patents, it should trigger a mandatory re-evaluation of the patent by the USPTO?

Accomplishes two things, hopefully:* Reduces the courts' workload for crap cases from patent trolls* Brings the onus onto the USPTO's doorstep, which might just encourage more careful evaluations of patents

I haven't heard back from the USPTO yet on my patent for this thing I invented I like to call "the number zero"...

You will be hearing from my lawyers, I clearly remember turning in my application the day before you, so you are an infringer...

I know you're probably joking, but afaik patent applications must be sent registered mail, so this kind of issue would be trivial to prove.

More on topic, why in hell would you do rounding before the calculation? Rounding after the calculation reduces accumulated errors. Also, you shouldn't be rounding anything (except when you have underflow/overflow) until you display the result to the user. If you encounter overflow/underflow, an exception should be thrown.

Converting a float to an int will truncate, while using rounding math before conversion will allow you to choose between truncation and proper-rounding. Well, one example anyway.

Congress needs to handle patents in the same way that trademarks are handled: if a company owns patents that it itself is not using to bring products and services to the marketplace then it will automatically lose them to companies that are bringing products and services to market, and so any company suing on behalf of patents it does not use will see such suits automatically tossed and the contested patents forfeited. How can these lawmakers be so smart with trademarks but so stupid with patents?

As a developer / interaction designer, this is really annoying and troubling. We usually take many things for granted such as common user flows, without knowing that we're infringing on patents.

Startups can spend years developing a product, and then get sued by patent trolls like these. Are there any tools out there that can help developers with this issue?

I'd strongly advise against going looking for patents you might be infringing. The fact that you did a search could be used as evidence against you of malicious infringement, even if you didn't turn up the patent you ran afoul of during your search. The penalties for malicious infringement of a patent are far heavier than the ones for simple infringement.

This is a slippery slope though. (While slippery slope arguments are usually silly, they do have a measurable affect in law) All algorithms are nothing but math. The difference between simple and complex math is just a matter of opinion. The fundamentals are the same. The complex math that drives most algorithms is nothing but a lot of little simple math statements. Any and all software can be broken down to this level. If you have a good enough lawyer and a bad enough judge, this decision would seem to invalidate ALL software patents.

For what it is worth, I am not saying that it would be a totally bad thing either. I'm still on the fence on the subject. There are too many moving parts to allow accurately judging the outcome of invalidating software patents.