Computer Ethics, Summer 2010

Week 5, Wednesday (class 14), June 23
Corboy Law Room 323


Patents



Reading original patent descriptions

You can look them up online. Follow uspto.gov -> patents -> patft (uspto.gov/patft). Or go directly to the search-by-patent-number page:
      http://patft.uspto.gov/netahtml/PTO/srchnum.htm


Some software patents

Here's an interesting list of some software patents, supposedly "random" though some particularly famous ones are sprinkled in:
    http://bat8.inria.fr/~lang/hotlist/free/licence/patents.html

Another list can be found at: http://www.textfiles.com/law/softpat.txt

xor cursor, patent 4197590 (below)
Method for dynamically viewing image elements stored in a random access memory array

cpu Stack Pointer register, patent 3794980, to George Cogar, 1971. Supposedly, though I can't find the source, this was purchased by DEC [?] and eventually placed in the public domain. Or not enforced. Or, possibly, it was in fact licensed by Intel/motorola/everyone_else.

ATT setuid-bit patent, # 4135240, invented by Dennis Ritchie, applied for in 1972 and later placed by AT&T in the public domain.

Using an xml document to describe the grammar of another xml document (Part of Scientigo's patent suite on xml)

British Telecom patent on the hyperlink, files 1976, granted 1989. Patent number 4,873,662. In 2000 they attempted to sue a large number of websites. The patent itself apparently refers to a system in which multiple remote users can access "blocks" of data on a central computer.

Altavista patents on "web searching". Altavista did have several such patents on basic web "crawling". Most were predated by the "archie" archive-searcher for ftp sites, developed by Alan Emtage in 1989. Altavista was purchased by CMGI, which some claim is a patent troll.


RSA encryption: patent 4405829

Choose primes p and q.
Reveal n=pq
Find e and d so x^(ed) = x mod n (this is not hard) Common values for e: 3, 5, 17, 257, 65537
(n,e) is the public key, d is the private key

RSA uses standard high-precision arithmetic in its calculations; the underlying number theory has been well-known for centuries. The patent was for the APPLICATION of these standard methods to encryption. That application was certainly novel.

The RSA patents finally expired, after much controversy. Part of that controversy was self-induced; the patent owner at one point appeared to grant a general license for noncommercial use, but then backed away from that.

The RSA idea is not "obvious-in-context". In fact, RSAis, for many people, the classic Good Example for why software patents are needed.

Compton 1989 patent on multimedia, despite Apple Hypercard in ~1987.

Steir's patent 5,060,171 on artificially adding hair to a person's image [Garfinkel article; obvious-in-context]

Eolas v Microsoft: About a way for running "applets" in a browser window. See below.

NTP v RIM: the blackberry patent

mp3: lots of development went into this

Lempel-Ziv / LZW compression, patents 4464650 [?], 4558302

This is the compression scheme in GIF file formats. The gif format was developed by CompuServe in 1987. A year later, they noticed that the algorithm was patented, and that the patent was currently held by Unisys. Allegedly, Unisys told Compuserve at that time that they would not need to pay royalties.

In 1999, Unisys demanded that some noncommercial websites pay a $5000 fee for hosting files in the gif format (an interesting strategy, given that the sites were not themselves rendering the images). Some commercial sites were asked for even more. It's not clear whether anyone paid it; most affected sites rapidly switched to .jpeg or .png. Some observers were especially offended by the fact that Unisys allowed the use of the GIF format as a free standard until it became well-established, and then demanded fees.

There's some question as to whether this was the only or even the dominant reason for the shift to PNG format; the latter does offer more features (especially alpha and gamma) than GIF, and is a lossless format unlike JPEG.

Note that LZW compression is not "obvious-in-context"; you can realize you need compression and still work very hard to develop LZW.

Natural-order recalculation in spreadsheets:

Patent 4398249
More below.

Cell A depends on B if A needs B's value in its formula
Rule: Before calculating A, calculate all cells A depends on.
Duh.
The algorithm is called "topological sort"; published in the CS literature in 1963.

Rene K. Pardo and Remy Landau filed for a patent in 1971: U.S. Patent 4,398,249. This was an important case in allowing software patents (initially their request was denied as an "algorithm")

Spreadsheets were a brilliant idea (Dan Bricklin, VisiCalc?), but not order of recalculation.


MS has patented the FAT disk format. Here is a summary of the events from the Public Patent Foundation, which had challenged that patent:

In April 2004, the Public Patent Foundation filed a formal request with the United States Patent and Trademark Office to revoke Microsoft Corporation's patent on the FAT File System, touted by Microsoft as being "the ubiquitous format used for interchange of media between computers, and, since the advent of inexpensive, removable flash memory, also between digital devices." In its filing, PUBPAT submitted previously unseen prior art showing the patent, which issued in November 1996 and is not otherwise due to expire until 2013, was obvious and, as such, should have never been granted. The PTO granted PUBPAT's request in June 2004 and provisionally rejected the patent in September 2004. In response to the rejection, Microsoft made amendments to the patent's claims. The PTO proceeded to allow the amended form of the patent. PUBPAT had no right to appeal that decision.

The fact that PubPat can't appeal or even respond to the decision is a serious due-process issue. If you are sued by Microsoft for using the FAT format, you will be allowed to respond to Microsoft's post-2004 amendments to the patent claims. But you will probably not.

Microsoft is now actively licensing the format to flash-card manufacturers. Why not switch to the free ext2 filesystem? Because that just is impossible, that's why.

It is unclear which patents Microsoft is most interested in pushing. While there are legitimate reasons for thinking that FAT itself might not be patentable, Microsoft later introduced a strategy for supporting both long filenames and also "8.3" filenames (8 char name, 3 char extension). The patent that covers the dual-name strategyis less vulnerable to "obviousness" or "prior art" challenges.

Microsoft sued the TomTom people (http://arstechnica.com/microsoft/news/2009/02/microsoft-sues-tomtom-over-fat-patents-in-linux-based-device.ars), because TomToms, although they are based on linux, use the FAT filesystem internally. The suit was settled two months later, after TomTom agreed to cut the FAT.

FAT is a good example of an idea that is obvious to anyone presented with the problem of how to create a simple filesystem suitable for small devices. However, there is the added problem of it's being standard (although an unofficial one); you can't just implement a workaround.


PTO (Patent & Trademark Office) problems:

ignorance is no defense: "submarine" patents
The entire process is secret: you can be making good-faith effort to be noninfringing and get hit with a huge verdict.

Infringement is considered willful if you had advance notice of infringing. Your belief that the patent was invalid is NOT a defense. Damages automatically triple.

Three groups of stakeholders:

Where do we fit in?

How large corporations manage:

small inventors:

Open source: voip

Legal advantage of small inventor: somewhat diminished with rise in legal fees & increased ambiguity

But small inventors can still sell to patent-holding companies.

Legal situation of large corporations:



Eolas v Microsoft

Patent 5838906: Distributed hypermedia method for automatically invoking external application providing interaction and display of embedded objects within a hypermedia document, filed in 1994.

The alleged invention is about a way for running "applets" in a browser window. Is this really an "invention" at all?

Back in 1992, browsers just displayed images and static text. However, it was clear by then that applications could display content in windows created and "owned" by other applications; for example, MS Word could at that time display an Excel subwindow.

What was not foreseen was that browsers would become universal viewers of just about everything.

Microsoft v Eolas (+ Univ of California, as part of UCSF):
MS lost this case in 2004; was ordered to pay $521 million.  They then won the right to a new trial, but settled in 2007 before the beginning of the new trial.

Patent covers

a system allowing a user of a browser program ... to access and execute an embedded program object [or small computer program, often referred to as "applets" or "plug-ins"]

Patent filed 1994, granted 1998, USPTO review 2004, upheld 2005

See http://cse.stanford.edu/class/cs201/projects-99-00/software-patents/hypermedia.html

"Viola" prior art: may or may not be relevant: see http://www.viola.org

The Viola browser project was found by the district court to have been "abandoned", but the circuit court found that Viola version 1.0 was "abandoned" only in the sense that it was replaced with version 2.0.

Part of the technical issue was about the meaning of the term "executable application". The court allegedly gave this broad meaning. Microsoft claimed it only meant "standalone applications".

Eolas started by Michael Doyle, faculty member of UCSF. UC Berkeley is apparently the owner of the patent.

Doyle certainly had some early ideas, that came before Java applets.

Had the Eolas patent been more aggressively enforced, it would have been a huge impediment to the world-wide web.

2007: MS has claim they invented it; this loses in Sept, but Eolas & MS settle in August

October 2009: Eolas has launched a major lawsuit against just about everyone: press release. The list of defendants includes lots of sites that use web-embedded objects: amazon, apple, eBay, and youtube.

View 1: Eolas developed some early web-embedding technology, and got really lucky
View 2: Eolas patented Microsoft's 1990 Object Linking and Embedding idea, and got a 20-year license to fleece us
View 3: Eolas may control a "critical" piece of the web standards.


Consider the actual Eolas patent claim again. They have allegedly patented the idea that an applet could be displayed automatically within a browser window. In a sense, they have patented the idea that browsers can display certain kinds of content.

(Actually, their claim oscillates between the idea of displaying an applet, and the idea of displaying it automatically. This is a tricky issue.)

Who had the idea that browsers could display any content, and thus that that was all you really needed? One version of VMware used a browser plugin to view your virtual machine's console!

Maybe the deepest problem with the Eolas patent is that the whole idea of embedding one window in another is trivial. It might not have been trivial back in 1994, but only because browsers weren't well understood. Normally, if you patent a technique or machine, it will almost always become at least somewhat obvious in retrospect, but here the issue is a little stronger. It's that the idea here was inevitable, once browsers grew to the point that they were used to view all sorts of things. It's as if someone tried to patent a handful of general browser strategies, without developing them, in the hopes that one of them would pan out and they could collect licensing fees. (Eolas did generate a working version of their embedding idea, but they didn't do anything to popularize it as part of the web.)

To try to put it another way, advances in software often lead to radical changes in how we use the software. Consider browsers, or wireless, for example. Radical change in use patterns often leads to demands for obvious new features, that previously were either impractical or simply irrelevant.

Here's the PTO review upholding the Eolas '906 patent in 2005.

One of the things to get out of this document is the sense in which the PTO process favors the inventor; they are legally bound to interpret the inventor's claims in the most favorable light.

See Page 3 (p 7 of the pdf) for a discussion of "obviousness".

See also Page 11 (15) for a discussion of the Toye reference, in particular the discussion on Page 13 of an early X-windows version of Object Linking and Embedding. The NoteMail viewer could display active content: "any application that displays through an X-server can insert its output ... dynamically onto a notebook page through an embedded 'virtual window'". The patent re-examiner then asks whether NoteMail is "equivalent to" a browser.

Further on (Page 17) it is stated that

MediaMosaic does enable interactive control and manipulation of objects embedded in what arguably may be construed to be a "browser-controlled window," BUT ONLY AFTER USER INTERVENTION, such as by making a selection with a mouse.

In other words, Eolas apparently has a patent on having something happen without having to click the mouse; their patent is for "zero-click" operation (one better than Amazon!). This was an important issue in 2003 as well. It is not a triviality. However, it is difficult to see how the invention of not having to click the mouse can be seen as deep. We're no longer talking about the idea of embedding applets; we're talking about automatically launching them.

Is not clicking the mouse worth half a billion dollars? That's more than the cost of every mouse in the US!



i4i xml patent, #5787449

Filed 1994, granted July 1998

A system and method for the separate manipulation of the architecture and content of a document, particularly for data representation and transformations. The system, for use by computer software developers, removes dependency on document encoding technology. A map of metacodes found in the document is produced and provided and stored separately from the document. The map indicates the location and addresses of metacodes in the document. The system allows of multiple views of the same content, the ability to work solely on structure and solely on content, storage efficiency of multiple versions and efficiency of operation.

The great mystery is what this has to do with XML. Virtually all flavors of xml use embedded tags, <foo>like this</foo>. The whole point of the i4i patent is that it doesn't use embedded tags.

Except that there are suggestions that Microsoft did in fact develop a format for creating "custom XML schemas" that used the i4i method. Any xml schema that lets you set the tag values in one place and one place only, as opposed to doing a global search-and-replace, could be said to violate the spirit of the i4i patent.

The following is from the blog of an Office product manager at Microsoft, Brian Jones, http://blogs.msdn.com/brian_jones/archive/2005/11/04/integrating-with-business-data-store-custom-xml-in-the-office-xml-formats.aspx.

XML Data Store

In Office 12, we've introduced a new feature to the formats that we're currently calling the XML data store, and the way it works is really simple. As you should all know by now, the new format consists of a ZIP file with a bunch of XML parts (files) inside. Up until now we've talked about all the parts that we in Office have defined to create our documents. You as a developer also have the ability to add your own parts though. You can take any XML file and put it inside the ZIP package. Then all you need to do is create a relationship from the main document part to your XML part, and the Office applications will roundtrip your XML with the file, which means:

Roundtripping your data: The ability to put your XML in the ZIP package means that you now have a place to store any data your solution may need. The data will travel with the document, but will always be stored as a separate XML part in the ZIP package. This means it's really easy to get to and modify without dealing with any of the application's data....

Separating data from the document: As well, because the information is stored in the data store, you benefit from the fact that the user cannot directly edit your data by editing the document (they can’t accidentally delete part of your data, since it’s stored separately.

This is kind of vague, but note that it may allow a separate XML area that is connected to the main document only via tags. However, the original i4i patent appeared to involve using the separate area for tag values; the Microsoft strategy on the face of it is for a separate area for entire XML files. The last paragraph is all about the real-world importance of separating the tags and storing them elsewhere.

See also Joe Wilcox's article at www.betanews.com/joewilcox/article/Is-Microsoft-violator-or-victim-in-i4i-patent-dispute/1250119565, in which he suggests that the Microsoft customers most interested in this new Office feature were those in the pharmaceuticals industry, which is exactly what i4i writes software for.

At the page www.afterdawn.com/news/article.cfm/2009/08/13/update_microsoft_knew_about_i4i_s_xml_patent, there is an alleged quote from Microsoft "newly leaked emails":

"We saw [i4i's products] some time ago and met its creators. Word 11 will make it obsolete," said one email from Martin Sawicki, a member of Microsoft's XML for Word development team.

That would make the '449 a defensive patent: one where the purpose is not to be a patent troll, but instead to allow you to launch defensive attacks against competitors that horn in on your market. This does not legitimize the patent completely, but does put it in a different context.

Another technical blog on the '449 patent is at http://broadcast.oreilly.com/2009/08/mircrosoft-and-the-two-xml-pat.html. There's a good example of what metacodes are all about, but also a somewhat cryptic discussion of point tags (like <b> in html) versus range tags (like <title> ... </title>, strictly hierarchical).


Photoshop and patents

It might seem reasonable that such a complex program as Adobe Photoshop has been effectively protected by patents. However, I can find no evidence that this is the case. I did find the following:

Macromedia has sued Adobe for patent infringement over some Photoshop options (http://www.managingip.com/Article/1327272/Macromedia-claims-Photoshop-patent.html)

The leading open-source alternative to Photoshop, gimp, may have had more trouble with Microsoft patents than Adobe's. In general, there are lots of notes out there from gimp developers discussing their patent woes. (I lost my specific reference, though.) Gimp has had to struggle with the LZW patent on the gif format (US expiration 2003, Europe 2004), and the possible jpeg patent.