NOTES

The Patentability of Software Data Structures After Lowry and Warmerdam

  Introduction

While patent-granting systems have existed since the Renaissance,(1) the concept of patents can be traced to ancient Greece.(2) A patent-granting system encourages inventors to publicly disclose the technical details of their inventions instead of keeping them secret forever.(3) In exchange for the exclusive right to profit from his invention for a certain period of time, the inventor must disclose the invention in sufficient detail to allow others to "practice" it through recreation and use of the invention.(4) Consequently, society benefits when others use the disclosed knowledge for further improvements and inventions.(5)

Computer technology is a relatively recent development.(6) A computer(7) is simply a machine capable of performing calculations.(8) However, a computer is only useful when running software to control its operations.(9) Not surprisingly, case law relating to software patents has a short and sporadic history.(10) In 1994, the United States Court of Appeals for the Federal Circuit (CAFC) decided In re Lowry(11) and In re Warmerdam.(12) The two cases involved software patents and were decided within two weeks of each other.(13) In both cases, the inventors were initially denied a patent for a commonly used software construct called a "data structure."(14) On appeal, the CAFC allowed the data structure claim in Lowry(15) but not in Warmerdam.(16)

Part II discusses general patent principles in two broad categories. Subsection A describes the patent application process and explains the most frequent grounds for rejection.(17) Subsection B details the relevant case law history regarding software patents.(18) Parts III and IV discuss, in detail, the Lowry(19) and Warmerdam(20) cases, respectively. Part V analyzes possible reasons for the two contradictory decisions.(21) Part VI summarizes the analysis on the patentability of software inventions involving data structures.(22)

  Background

A.  Patents in General

The U.S. Constitution gives the federal government the exclusive right to grant patents.(23) Since 1836, a federal agency, now called the U.S. Patent and Trademark Office (PTO), has managed this country's patent system.(24) Title 35 of the United States Code describes the conditions under which the PTO grants patents(25) while Title 37 of the Code of Federal Regulations describes the procedure for obtaining them.(26) A patent gives the inventor the exclusive right to profit from his invention for a period of twenty years from the filing date of the patent application.(27) When another makes, uses, or sells the invention without permission or license, the inventor can recover damages for infringement.(28)

1.  Patent Application

To obtain a patent, an inventor must file a patent application with the PTO.(29) A proper application must contain a descriptive title,(30) an abstract,(31) and a specification.(32) The specification must contain one or more claims.(33) Additionally, the specification normally contains an invention summary,(34) a detailed description,(35) and any needed drawings.(36) A patent claim legally defines the intellectual boundaries of an invention much as a deed describes the boundaries of a parcel of land,(37) and consists of a preamble,(38) a transition,(39) and a body.(40)

2.  Patent Prosecution

The process for obtaining a patent, known as a "prosecution,"(41) begins when an application is filed at the PTO. Once the application is filed, a PTO examiner reviews it to determine whether the invention meets the requirements of a valid patent.(42) If the application inadvertently claims more than the inventor is entitled to, the examiner then notifies the inventor by sending a written statement of objections.(43) To overcome these objections, the inventor will often reword, or "amend," or even remove claims from the application.(44) This negotiation over the patent application's claim language continues until the examiner either grants the patent or rejects the application.(45)

The PTO grants a patent only if the claimed invention satisfies all the requirements of patentability as defined by Title 35 of the U.S.C.(46) Common PTO rejections relate to invalid subject matter,(47) lack of novelty,(48) obviousness,(49) and inadequate disclosure.(50) The inventor can appeal a rejection to the U.S. PTO Board of Patent Appeals and Interferences (Board),(51) the CAFC,(52) and finally the U.S. Supreme Court, in that order.(53)

3.  Invalid Subject Matter

The PTO grants a patent only if the invention satisfies the subject matter requirements of 35 U.S.C. § 101.(54) Namely, it must be a man-made machine,(55) an article of manufacture,(56) a composition of matter,(57) or a process.(58) However, the courts have declared particular categories of subject matter to be unpatentable.(59) For example, inventions claiming laws of nature(60) and methods of doing business(61) are unpatentable if they claim nothing more. Inventions claiming naturally occurring plants, animals, and substances are unpatentable unless significant human effort is required for their production.(62) Furthermore, inventions that effectively claim only mathematical algorithms(63) or abstract ideas(64) are generally unpatentable.

An invention that uses a mathematical algorithm or abstract idea may still be patentable, however, if the inventor imposes sufficient limitations on the invention so as to avoid preemption of the claimed algorithm or idea.(65) Specifically, the PTO has identified several "safe harbors" where an invention can be patented if it: (1) incorporates sufficient "post-solution" activity;(66) (2) incorporates sufficient "pre-solution" activity;(67) or (3) is sufficiently limited to a practical application.(68) Sufficient post-solution activity exists if the invention performs physical operations after using the mathematical algorithm.(69) Merely conveying the result of a calculation, however, is not sufficient.(70) Sufficient pre-solution activity exists if the data used in the mathematical algorithm represents measurements of physical objects or activities outside the computer.(71) A mere data gathering step, however, is not sufficient.(72) The measurements must be transformed into data before being used in the mathematical algorithm.(73) Sufficient limitation to a practical application exists only when specified in the claim language.(74) However, a field of use declaration made in the preamble of the claim(75) is not sufficient.(76)

Additionally, the courts have identified a "printed matter" exclusion for 35 U.S.C. § 101 subject matter.(77) That is, even though new and useful, if an invention has letters, drawings, or markings printed on it, the inventor must prove that the invention is patentable because of its structure rather than the printed matter.(78) In order to disqualify an invention, however, the printed matter must convey "intelligence to a reader."(79) Furthermore, when examining the invention for novelty,(80) the courts will assess whether its structure and printed matter are functionally related to each other.(81) In other words, the court will determine whether the printed matter is needed to make the invention work. If not, then the printed matter may be disregarded(82) when comparing the claimed invention against prior art.(83) In other words, the invention is unpatentable if the printed content is the only difference between prior art and the claimed invention.(84) Otherwise, the printed matter must be included in the novelty analysis.(85)

4.  Lack of Novelty

A claimed invention must also be novel before the PTO grants a patent.(86) An invention lacks novelty when it is anticipated by prior art, that is, if it has already been invented(87) or disclosed.(88) For anticipatory prior art, which is defined in 35 U.S.C. §§ 102(a) and 102(e),(89) the courts apply strict identity requirements.(90) That is, the PTO will only reject a patent application as anticipated by prior art if they find a single reference disclosing every element of the claimed invention.(91) However, the reference must contain sufficient information to allow one "skilled in the art" to practice the invention(92) and must exist before the inventor's date of invention.(93) Any issued patent(94) or pending U.S. patent application filed by someone else(95) can act as anticipatory prior art.(96)

5.  Obviousness

A claimed invention must also be non-obvious, as defined by 35 U.S.C. § 103, before the PTO grants a patent.(97) The PTO will deny a patent if it is an obvious variation of a known invention.(98) To apply 35 U.S.C. § 103, the PTO determines whether the difference between the claimed invention and any relevant prior art would have been obvious to one "skilled in the art."(99) Under 35 U.S.C. § 102(a), the PTO can only disprove novelty using a single prior art reference that discloses every element of the claimed invention.(100) In contrast, under 35 U.S.C. § 103, the PTO can prove obviousness by using many prior art references in combination.(101) However, the PTO can only use prior art references from reasonably related technical fields, or "analogous art," that the inventor should have investigated.(102) The PTO may also consider secondary factors such as commercial success when assessing obviousness.(103)

6.  Inadequate Disclosure

In addition to the other statutory requirements, the inventor must also satisfy the disclosure requirements of 35 U.S.C. § 112 for enablement, best mode, and definiteness. The first paragraph(104) of this section specifies the enablement and best mode requirements, and demands both that the inventor describe the invention in sufficient detail to allow his peers to practice the invention without excessive experimentation,(105) and that the inventor disclose the preferred embodiment, or "best mode," for the invention.(106) These requirements operate to ensure that in exchange for the benefits of patent protection, the inventor actually discloses useful technical information.(107) The second paragraph(108) addresses definiteness and requires the inventor to draft claims with sufficient precision to allow the courts and others to accurately determine whether infringement occurs.(109)

B.  Software Patents in General

The PTO has struggled to find a workable approach for evaluating patent applications relating to computer software technology.(110) The current framework for evaluating software patents began with Gottschalk v. Benson,(111) in which the U.S. Supreme Court officially declared for the first time that software inventions might be patentable.(112) Despite this declaration, the Court affirmed the PTO's rejection of the software invention by creating a new subject matter exclusion for "mathematical algorithms."(113) Later, although once again affirming the PTO's rejection of a software invention, the Court refined their "mathematical algorithm" exclusion in Parker v. Flook,(114) holding that using a mathematical formula does not automatically preclude patentability.(115) Instead, it declared that patentability is determined by the invention, considered as a whole.(116) Then, in Diamond v. Diehr,(117) the Court moved toward greater recognition of software patents by reversing a prior PTO rejection, and holding that the software invention was patentable because the invention as a whole was limited to an industrial process.(118)

Meanwhile, based on the U.S. Supreme Court's rulings, the U.S. Court of Customs and Patent Appeals (CCPA)(119) developed the Freeman-Walter-Abele Test(120) for evaluating software inventions. In In re Freeman,(121) the CCPA declared that a two-step analysis must be applied to software inventions(122) and that they are non-statutory subject matter if: 1) the claimed invention directly or indirectly uses a mathematical algorithm, and 2) the overall invention "preempts that algorithm."(123) In In re Walter,(124) the CCPA further defined the preemption test by adding a "functional relationship" requirement which mandated that the mathematical algorithm used in the invention "define structural relationships between the physical elements" for machine claims,(125) or that the mathematical algorithm limit or refine physical process steps in process claims.(126) Then, in In re Abele,(127) the CCPA narrowed the scope of the preemption test.(128) Instead of requiring definitive structural relationships, the court declared that the inventor need only show some relationship to the physical elements of the claim.(129)

The primary issue in both Lowry and Warmerdam was the patentability of a data structure.(130) The patentability of this commonly used software construct was first acknowledged by the CCPA in In re Bradley.(131) Another important issue in Warmerdam was the patentability of mathematical algorithms.(132) In an important en banc decision,(133) in In re Alappat,(134) the CAFC scaled back the scope of the "mathematical algorithm" subject matter exclusion for software patents invented in Benson.(135)

  In Re Lowry

A.  History

Edward S. Lowry filed a software patent application of twenty-nine claims with the PTO(136) claiming an application program that managed database(137) information using software data structures called attribute data objects (ADO).(138) Lowry claimed that using ADOs provided more efficient methods for storing, retrieving, adding, and removing information from a database.(139)

The PTO examiner rejected the ADO data structure claims 1(140) through 5 as non-statutory subject matter,(141) and claims 1 through 19 for obviousness under 35 U.S.C. § 103 when compared to an earlier software patent for database access using schemas(142) stored in a data dictionary(143) that had been issued to inventor Kumpati.(144) The PTO examiner rejected the remaining claims, 20 through 29, because they were anticipated under 35 U.S.C. § 102(e) by the same Kumpati patent.(145)

On appeal, the Board sustained the rejection of all claims, but for different reasons.(146) They contradicted the PTO examiner, deciding that claims 1 through 5 were indeed statutory subject matter because they were articles of manufacture,(147) but classified the Lowry data structures as printed matter.(148) However, the Board still rejected these claims as non-statutory subject matter because they did not pass the functional relationship test for printed matter.(149) Although the claimed data structure was stored into memory, they held that it did not sufficiently interact with the memory to create functional relationships to each other.(150) Thus, the Board would not use the data structure claims to distinguish Lowry's invention from the Kumpati patent when examining for obviousness or against anticipatory prior art.(151) After categorizing the Kumpati database invention as "a CPU using a memory and containing stored data in a data structure,"(152) the Board held the two inventions to be so similar that Lowry claims 1 through 19 for a software data structure were unpatentable because they were made obvious by Kumpati.(153) Additionally, the Board affirmed that the Kumpati invention anticipated Lowry's claims 20 through 29.(154)

B.  Opinion

On appeal, the three judge panel of Circuit Judges Rader, Rich and Skelton reversed the Board's rejection, holding that all of Lowry's software data structure claims were patentable.(155) Based on the Board's grounds for rejection, the CAFC focused its discussion on the areas of printed matter and prior art.(156)

The CAFC stated several grounds for rejecting the Board's printed matter rationale. First, the court noted that the Board erred when it classified Lowry's claims as printed matter.(157) Specifically, a data structure stored in memory does not implicitly convey "intelligence to a reader."(158) Therefore, its content cannot be considered printed matter because it must "`be processed . . . by a machine, the computer.'"(159) Second, the CAFC argued that Lowry's claimed data structure did sufficiently interact with memory to meet the functional relationship standard.(160) The court remarked that, at the lowest physical level, storing data structures into memory actually imposed a physical organization on that memory,(161) and that storing Lowry's claimed data structure into memory resulted in more efficient computer operation.(162) Thus, the court concluded that a functional relationship existed between a data structure and memory even though a person cannot visibly detect such physical changes.(163) Moreover, the court asserted that this functional relationship is presumed non-obvious and patentable unless the Board proved otherwise,(164) which according to the CAFC, the Board failed to do.(165) Finally, the court chastised the Board for using the printed matter exception as grounds for claim rejection under 35 U.S.C. §§ 102 and 103, remarking that the Board ignored the Gulack court's warning that advised against such use.(166)

Although the Board held that an earlier Kumpati patent for a database management system using a data dictionary anticipated claims 20 through 29 of the Lowry invention,(167) the CAFC concluded that "Kumpati does not contain all the limitations of claims 20 through 29."(168) Specifically, the court stated that Kumpati failed to disclose apex, holder, or referent ADOs, or heirarchies of ADOs,(169) and that Kumpati's definition of attributes was different from Lowry's.(170) Therefore, the CAFC held that the Kumpati invention did not anticipate the Lowry claims 20 through 29 because it did not disclose each and every element of Lowry's invention.(171)

  In re Warmerdam

A.  History

In 1989, Thomas P.H. Warmerdam and Bernard J.H. Verwer filed a patent application of seven claims with the PTO.(172) The claimed invention involved technology called "bubble" systems,(173) which are used to avoid collisions between moving objects such as mobile robotic machines.(174) To improve the system efficiency of bubble systems, a more refined technique called "bubble-bursting"(175) was developed. Warmerdam's claimed invention was an improved bubble-bursting system that generated the bubbles along the medial axis(176) of the object.(177) His patent application disclosed both top-down(178) and bottom-up bubble generation methods.(179) Warmerdam also claimed the computer system(180) and data structure that was used to implement the invention.(181)

The PTO examiner rejected computer system claim 5 for indefiniteness under 35 U.S.C. § 112, paragraph 2.(182) The PTO examiner also rejected the bubble generation claims 1 through 4 and data structure claim 6(183) as non-statutory subject matter under 35 U.S.C. § 101.(184)

On appeal, the Board sustained the PTO examiner's rejection of the computer system claim for indefiniteness,(185) asserting that the claim did not sufficiently state how one skilled in the art would create a machine having memory containing the bubble hierarchy data.(186) The Board rejected the bubble generation claims as invalid subject matter because they recited a mathematical formula for locating the medial axis.(187) Additionally, the Board found that other software patent applications using similar language had been rejected for trying to patent a mathematical algorithm.(188) Finally, the Board rejected the data structure claim as invalid subject matter because it was not a "process, machine, manufacture, composition of matter, or improvements."(189)

B.  Opinion

The three judge panel of Circuit Judges Plager, Louri, and Clevenger issued the CAFC opinion on August 11, 1994, reversing the Board's rejection of computer system claim 5 for indefiniteness(190) because the mathematical formulas recited in the claims were easily implemented using known computer techniques.(191) However, the CAFC sustained the Board's rejection of the bubble generation claims 1 through 4 and data structure claim 6 as invalid subject matter.(192) Citing Diehr,(193) Benson,(194) and Flook,(195) the CAFC reiterated the rule that abstract ideas and mathematical algorithms are generally unpatentable.(196) It concluded that the bubble generation claims were unpatentable because they failed both steps of the Freeman-Walter-Abele Test(197) in that they were "mathematical in nature" and "involve[d] no more than the manipulation of an abstract idea."(198)

Warmerdam opposed the Board's grounds for rejection with three arguments. First, Warmerdam argued that these claims were patentable because they did not necessarily recite a mathematical algorithm where the process could be performed without solving a mathematical formula;(199) e.g., one could physically locate the medial axis of an object and generate the bubble hierarchy around it using a ruler and compass.(200) The CAFC rejected this argument because Warmerdam had disclosed a mathematical formula(201) as the preferred method for locating the medial axis.(202) Second, Warmerdam argued that the bubble generation claims were patentable because they "represent[ed] a sufficient level of physical activity";(203) i.e., the physical manipulation of data within a computer.(204) Although Judge Plager recognized that inventions using mathematical algorithms are patentable if they produce sufficient physical results,(205) he opined that the claim language in the Warmerdam patent application only described an idea.(206) Third, Warmerdam argued that the bubble generation claims were patentable because they required physical measurements of the object's shape;(207) i.e., measuring the contours of the object was sufficient "pre-solution" activity.(208) However, the CAFC dismissed this argument as well stating that a "data gathering step . . . was insufficient, standing alone, to impart patentability."(209) Finally, the CAFC held that the accompanying data structure claim was unpatentable because the underlying "bubble-burst" invention was unpatentable.(210)

  Analysis

Lowry and Warmerdam both claimed software data structures(211) as part of their invention. On August 26, 1994, the CAFC, following the Alappat court's earlier directive to give broader recognition for software inventions,(212) found Lowry's claims to be patentable subject matter.(213) In stark contrast, two weeks earlier, on August 11, 1994, the CAFC, apparently ignoring Alappat,(214) applied the stricter standards of pre-Alappat court decisions and rejected Warmerdam's claims as unpatentable subject matter.(215) Although these opposing outcomes are difficult to reconcile, several possible explanations exist.

A significant reason why the Lowry and Warmerdam courts reached opposite conclusions is that different judges decided these cases.(216) As noted by one commentator, the Warmerdam judges failed to follow the binding en banc ruling of Alappat(217) which was a complex case decided just two weeks prior on July 29, 1994.(218)

Of the important issues decided in Alappat,(219) one concerned the "mathematical algorithm" exclusion for statutory subject matter.(220) Two of the Lowry judges, Judge Rich and Judge Rader, wrote separate opinions in Alappat indicating a greater willingness to grant patents for software inventions.(221) While acknowledging that the categories of abstract ideas, laws of nature, and natural phenomena remain unpatentable,(222) Judge Rich stated that the "Supreme Court never intended to create an overly broad fourth category of subject matter [mathematical algorithm] excluded from § 101."(223) Instead, he declared that the "mathematical algorithm" exlusion only applied when it actually represents one of the other three categories.(224) Judge Rader narrowed the "mathematical algorithm" exclusion even further, asserting that it only applies to laws of nature.(225) Consequently, Judge Rich found the Lowry invention to be patentable subject matter because the mathematical algorithms used were not an abstract idea, law of nature, or natural phenomena.(226)

In contrast to Lowry and Alappat, the Warmerdam court viewed 35 U.S.C. § 101 more narrowly. For example, in Alappat, Judge Rich wrote that "it is improper to read into § 101 limitations as to the subject matter that may be patented where the legislative history does not indicate that Congress clearly intended such limitations."(227) In Warmerdam, however, Judge Plager wrote that "Congress did not so mandate" that "statutory subject matter `include anything under the sun that is made by man.'"(228) By taking a more rigid view of software patents, Judge Plager strictly applied the Freeman-Walter-Abele Test while in Alappat and Lowry, Judge Rich and Judge Rader did not apply the test at all.(229)

Additionally, where the PTO used different grounds to reject the applicant's claims, the Lowry and Warmerdam courts based their analysis on different tests for assessing patentability. That is, they focused on the specific grounds for rejection that the inventors argued against on appeal. For example, the PTO rejected the Lowry data structure claims because they considered them to be "printed matter."(230) Although this exclusion is normally used for subject matter rejections under 35 U.S.C. § 101, the PTO used it to reject under 35 U.S.C. §§ 102 and 103; i.e. the claims were anticipated and made obvious by an earlier Kumpati invention.(231) Consequently, Judge Rader focused on the deficiencies of using "printed matter" exclusions for novelty and obviousness rejections, rather than for subject matter rejections.(232)

In contrast, the PTO rejected the Warmerdam data structure claims as invalid subject matter under 35 U.S.C. § 101 because they considered the underlying invention to be simply a mathematical algorithm.(233) Consequently, Judge Plager focused on the Freemen-Walter-Abele Test and its underpinnings,(234) but did not discuss the printed matter exclusion at all.

The first step of the Freemen-Walter-Abele Test is to analyze whether the data structure claims directly or indirectly recite a mathematical algorithm.(235) The Warmerdam judges found that the Warmerdam invention directly recited a mathematical algorithm(236) because it suggested using a mathematical formula for locating the medial axis of an object(237) and described mathematical formulas for merging bubbles.(238) In contrast, because these formulas did not represent laws of nature, Judge Rader would have found the invention to be valid subject matter.(239)

The second step is to analyze whether the claimed invention effectively preempts use of the recited mathematical algorithm.(240) One way to avoid preemption is to impose sufficient limitations on the claimed invention so that others can still use the claimed algorithm in other patented inventions.(241) To evaluate the Warmerdam invention, the CAFC looked for claim limitations(242) using the "safe harbor" tests of "pre-solution" and "post-solution" activity.(243)

These tests ask whether the claimed software invention includes additional apparatus or operations that cause sufficient physical transformation to limit its scope.(244) But the Lowry and Warmerdam courts interpreted these "safe harbor" tests differently. For example, the Lowry court interpreted them to include physical transformations "inside" the computer,(245) which make it easier for standalone software inventions to pass the subject matter test for patentability. In contrast, the Warmerdam court limited its analysis to physical transformations occuring "outside" the computer.(246)

One "safe harbor" is the "pre-solution" activity test.(247) If the claimed invention includes physical transformations that occur "outside" the computer before using the mathematical algorithm, then sufficient "pre-solution" activity exists to make the software invention be valid subject matter for patentability.(248) But the outside physical transformation must represent real world quantities.(249) However, the claimed Warmerdam invention did not involve any explicit data collection apparatus.(250) Instead, Warmderdam argued that sufficient implicit "pre-solution" activity existed in his invention to be valid subject matter because "the claim implies physically measuring the contour of an object."(251) The Warmerdam court countered that physical measurement was equivalent to a data-gathering step which "was insufficient, standing alone, to impart patentability to a claim."(252) In contrast, the Lowry judges would not have been concerned about "pre-solution" activity "outside" the computer at all because they believed that a data structure "inside" the computer sufficiently interacts with computer memory to make the invention be valid subject matter.(253)

Another "safe harbor" is the "post-solution" activity test.(254) If the claimed invention causes physical transformations "outside" the computer after using the mathematical algorithm, then sufficient "post-solution" activity exists to make the software invention valid subject matter for patentability.(255) However, although Warmerdam mentions a "motion control machine" in a preamble,(256) the Warmerdam invention did not actually claim any computer-controlled apparatus. Instead, Warmderdam argued that the manipulation of data within the computer during its collision avoidance computations represents sufficient "post-solution" activity.(257) But the Warmerdam court insisted that the physical transformation must occur "outside" the computer.(258) In contrast, the Lowry court interpreted the "post-solution" activity test differently, holding that physical transformations "inside" the computer are sufficient.(259) In Lowry, Judge Rich declared that the same computer running two different programs must be considered to be two different machines for patent examination purposes because their computer memory was arranged differently.(260) Four weeks earlier, Judge Rich had employed the same reasoning in Alappat when he ruled that the Alappat software invention was valid subject matter.(261) Accordingly, the CAFC found the Lowry invention to be valid subject matter even though Lowry claimed nothing but the data structures "inside" a computer.(262)

A third "safe harbor" is the "application limitation" test.(263) A mathematical algorithm may be valid subject matter if it sufficiently limits the invention's scope to a specific field of use or application.(264) Doing so negates the PTO's preemption concern that granting a patent for the mathematical algorithm would make all unlicensed users liable for infringement.(265) However, the PTO warns its examiners to carefully interpret claim language limitations, "particularly when only presented in the claim preamble."(266) Additionally, the courts have held that limitations placed in preambles are ineffective.(267) Consequently, Warmerdam did not even attempt to offer an "application limitation" argument. Although the Claim 1 preamble mentions a "position and/or motion control system," the claims themselves did not specify any such apparatus.(268)

Finally, the Lowry and Warmerdam courts reached opposite conclusions because the respective data structure claims had different relationships to their underlying invention. Specifically, the Warmerdam data structure claims were incidental to the claimed invention(269) while the Lowry data structure claims were the invention.(270) For example, even though Warmerdam Claim 1 explicitly described a "method for generating a data structure," the underlying invention claimed was actually the method of finding the medial axis and creating a bubble hierarchy around the object.(271) That is, removing the data structure reference in Claim 1(272) and data structure Claim 6(273) would have still allowed Warmerdam to claim the improved "bubble-bursting" technique. Accordingly, the CAFC rejected Warmerdam's data structure claim because the claimed underlying invention was an unpatentable mathematical algorithm.(274) In contrast, the underlying invention in Lowry was the ADO data structure itself,(275) along with claimed methods for creating, organizing, and manipulating ADOs.(276) If the ADO data structure references had been removed, then Lowry would have had no invention to claim.(277)

  Conclusion

Historically, the courts had been reluctant to allow patents for software inventions unless they were claimed as components of a larger invention involving patentable non-computer technlogy.(278) However, led by Judges Rader and Rich, the CAFC continues to relax these standards as it moves towards greater acceptance of software patents.(279) In Alappat, the CAFC criticized the PTO for automatically rejecting software inventions as invalid subject matter simply because they consisted solely of a programmed general purpose digital computer.(280) Some CAFC judges now acknowledge that standalone software can be patentable provided it meets the other statutory requirements.(281)

Regarding data structure claims, the courts initially restricted their patentability to firmware(282) related inventions.(283) Viewed narrowly, Lowry merely holds that the PTO cannot apply "printed matter" rejections to them.(284) However, viewed more broadly, Lowry expands the patentability of data structures from firmware to pure software inventions.(285) In contrast, viewed narrowly, Warmerdam merely holds that a software data structure by itself is unpatentable.(286) However, Warmerdam unfortunately teaches little about their patentability because Judge Plager's rejection was not based on the invention's data structure claim but on the underlying bubble-bursting algorithm.(287) As claimed, Judge Plager believed that Warmerdam's invention needed to include patentable non-computer technology.(288)

Finally, the Warmerdam and Lowry opinions indicate that some philosophical differences still exist regarding the standards for software patentability, despite the supposedly binding nature of the en banc Alappat ruling.(289) Fortunately, the trend is greater acceptance of purely software data structures and standalone software as patentable subject matter. Eventually, every CAFC judge will recognize that software data structures and standalone software programs deserve further patent protection as software technology plays an ever larger and more crucial role in our society and economy.(290)

Carl Chan*

1. See Robert P. Merges, Patent Law and Policy 3 (1992) (describing the historical evolution of patent granting systems from fifteenth century Italy to present day America).

2. See Arthur R. Miller & Michael H. Davis, Intellectual Property 4 (2d ed. 1990); see also Merges, supra note 1, at 1.

3. See Kewanee Oil Co. v. Bicron Corp., 416 U.S. 470, 489-90 (1974) (discussing the merits of patent protection but holding that extending trade secret protection to patentable inventions does not conflict with the spirit of patent disclosure).

4. Id.; see also National Carbon Co. v. Western Shade Cloth Co., 93 F.2d 94, 96 (7th Cir. 1937).

5. See National Carbon, 93 F.2d at 96.

6. See Merges, supra note 1, at 46.

7. A basic personal computer system consists of a microprocessor or central processing unit (CPU), random access memory (RAM), a disk drive, an input device (e.g., keyboard or mouse), and an output device (e.g., printer or monitor). See Katherine Murray, Introduction to Personal Computers 60-61 (Que Corp. ed., 1990).

8. See IEEE Standard Dictionary of Electrical and Electronic Terms 180 (4th ed. 1988).

9. Software is defined as "[c]omputer programs; instructions that cause the hardware--the machines--to do work," Computer Dictionary 322 (Microsoft Press, 1991); or as a "[s]ystem, utility, or application programs expressed in a machine language." Bryan Pfaffenberger, Computer & Internet Dictionary 482 (Que Corp. ed., 6th ed. 1995).

10. See infra notes 110-35 and accompanying text.

11. 32 F.3d 1579 (Fed. Cir. 1994).

12. 33 F.3d 1354 (Fed. Cir. 1994).

13. See generally notes 11, 12.

14. Lowry, 32 F.3d at 1580; Warmerdam, 33 F.3d at 1355; see also Computer Dictionary 97 (Microsoft Press, 1991) (defining a "data structure" as "[a]n organizational scheme, such as a record or an array, applied to data so that it can be interpreted and so that specific operations can be performed upon that data").

15. See Lowry, 32 F.3d at 1584.

16. See Warmerdam, 33 F.3d at 1362.

17. See infra notes 23-109 and accompanying text.

18. See infra notes 110-35 and accompanying text.

19. See infra notes 136-71 and accompanying text.

20. See infra notes 172-211 and accompanying text.

21. See infra notes 212-78 and accompanying text.

22. See infra notes 279-91 and accompanying text.

23. See U.S. Const. art. I, § 8, cl. 8 (authorizing Congress "[t]o promote the Progress of Science and useful Arts, by securing for limited Times to . . . Inventors the exclusive Right to their respective . . . Discoveries").

24. See Miller & Davis, supra note 2, at 9.

25. See 35 U.S.C. § 100 et seq. (1994); see also Keith Stephens & John P. Sumner, Patenting Software Objects and Other Aspects of Object-Oriented Programs Under the New PTO Guidelines, 23 Am. Intell. Prop. Law Ass'n Q.J. 221, 237 (1995).

26. See 37 C.F.R. § 1.101 et seq. (1994); see also Stephens & Sumner, supra note 25, at 237.

27. See 35 U.S.C. § 154(a)(1)-(a)(2) (1994) ("Every patent shall . . . grant to the patentee . . . the right to exclude others from making, using, offering for sale, or selling the invention throughout the United States . . . . Such grant shall be for a term . . . ending 20 years from the date on which the application for the patent was filed."); see also United States Dep't of Commerce, Patent & Trademark Office, Manual of Patent Examination Procedure § 1309.01 (6th ed. 1995) [hereinafter MPEP].

28. See 35 U.S.C. § 271(a) (1994) ("Whoever without authority makes, uses or sells any patented invention, within the United States during the term of the patent therefore, infringes that patent."); see also 35 U.S.C. § 284 (1994) ("The court shall award the claimant damages adequate to compensate for the infringement . . . .").

29. See Merges, supra note 1, at 30.

30. 37 C.F.R. § 1.72(a) (1994).

31. See id. § 1.72(b).

32. See id. § 1.71(a)-(c).

33. See id. § 1.75.

34. See id. § 1.73.

35. See id. § 1.71.

36. See 37 C.F.R. § 1.81 (1994).

37. See Harrington Mfg. Co. v. White, 475 F.2d 788, 790 n.1 (5th Cir. 1973) (citing Motion Picture Patents Co. v. Universal Film Mfg. Co., 243 U.S. 502, 510 (1917)).

38. See Merges, supra note 1, at 11. The preamble describes the general type of invention claimed. See id.

39. See id. at 12. The transition is the word or phrase that connects the preamble to the body. It also identifies the claim type, which in turn determines the strength of infringement protection. Using "consisting of" identifies a closed claim, which is the weakest claim type because it only protects against the use of inventions having exactly the same elements. Id. For example, if a closed claim lists elements A and B, then an invention having elements A, B, and C does not infringe. In contrast, using "comprising" identifies an open claim, which is the strongest claim type because it protects against the use of inventions having additional elements as well. Id. Thus, if an open claim lists elements A and B, then an invention having elements A, B, and C does infringe. Finally, using "consisting essentially of" identifies an intermediate claim, which is a more restrictive form of an open claim. Id.

40. See id. at 12-13. The body lists all the elements of the invention and describes how they interact with each other. See id. An example of a claim might be: A computer system comprising elements monitor, processor, disk, keyboard and mouse. In this example, the preamble is A computer system while the transition is comprising and the body is the remainder of the claim.

41. Id. at 30.

42. See 37 C.F.R. § 1.104(a) (1994); see also supra Part II.A.1; infra Part II.A.3-6.

43. See id. § 1.104(b). This is called an "Office Action." Stephen A. Becker, Patent Applications Handbook 6-5 (1995).

44. 37 C.F.R. §§ 1.112, 1.124 (1994).

45. See Merges, supra note 1, at 31.

46. See 35 U.S.C. §§ 131, 154 (1994); see also 37 C.F.R. § 1.104(a) (1994).

47. See infra notes 54-85 and accompanying text.

48. See infra notes 86-96 and accompanying text. To be patentable, an invention must be novel (i.e. new).

49. See infra notes 97-103 and accompanying text. To be patentable, an invention cannot simply be an obvious variation or improvement over existing inventions.

50. See infra notes 104-09 and accompanying text. To be granted a patent, the application must provide sufficient detail to allow another to practice the claimed invention.

51. See 37 C.F.R. § 1.191 (1994).

52. See id. § 1.301.

53. See Stephens & Sumner, supra note 25, at 237 (citing Marbury v. Madison, 5 U.S. (1 Cranch) 137, 176-78 (1803) (explaining that the Supreme Court is the final authority for interpreting federal laws such as Title 35 of the U.S.C.)).

54. See 35 U.S.C. § 101 (1994) ("Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefore, subject to the conditions and requirements of this title.").

55. See Burr v. Duryee, 68 U.S. (1 Wall.) 531, 570 (1863) (defining a machine to be a "concrete thing, consisting of parts, or of certain devices and combinations of devices").

56. See American Fruit Growers, Inc. v. Brogdex Co., 283 U.S. 1, 11 (1931) (defining manufacture to be "the production of articles for use from raw or prepared materials by giving to these materials new forms, qualities, properties, or combinations, whether by hand-labor or by machinery").

57. See Shell Dev. Co. v. Watson, 149 F. Supp. 279, 280 (D.D.C. 1957) (defining a composition of matter to be one that "covers all compositions of two or more substances and includes all composite articles, whether they be results of chemical union, or of mechanical mixture, or whether they be gases, fluids, powders or solids").

58. See Diamond v. Diehr, 450 U.S. 175, 182-83 (1981) (quoting Cochrane v. Deener, 94 U.S. 780, 787-88 (1877).

A process is . . . an act, or a series of acts, performed upon the subject-matter to be transformed and reduced to a different state or thing. If new and useful, it is just as patentable as is a piece of machinery. . . . The machinery pointed out as suitable to perform the process may or may not be new or patentable.Id. at 183.

59. See Diamond v. Chakrabarty, 447 U.S. 303, 309 (1980); see also In re Taner, 681 F.2d 787, 789 (C.C.P.A. 1982).

60. See Chakrabarty, 447 U.S. at 309 (noting that the law of gravity "discovered" by Newton was unpatentable (citing Funk Bros. Seed Co. v. Kalo Co., 333 U.S. 127, 130 (1948))).

61. See Hotel Security Checking Co. v. Lorraine, 160 F. 467, 468-69 (2d Cir. 1908) (holding that a restaurant bookkeepping system was non-statutory subject matter where it simply recorded charge slip totals onto a common ledger having separate columns for each waiter).

62. See Chakrabarty, 447 U.S. at 310 (holding that a genetically engineered microorganism was patentable because it did not occur naturally, but was manufactured).

63. See Gottschalk v. Benson, 409 U.S. 63, 64, 71-72 (1972) (holding that a mathematical algorithm for converting a binary number into another form of representation called a binary-coded decimal (BCD) was non-statutory subject matter); see also Parker v. Flook, 437 U.S. 584, 590 (1973).

64. See Chakrabarty, 447 U.S. at 309; see also Taner, 681 F.2d at 789; Parker, 437 U.S. at 590.

65. See Diamond v. Diehr, 450 U.S. 175, 187 (1981) (holding patentable a rubber curing system even though it used a mathematical algorithm because it did not pre-empt the use of that algorithm). A patent will be granted if the inventor is not seeking to pre-empt the use of a mathematical algorithm or abstract idea, but rather seeks "only to foreclose . . . the use of that [algorithm] in conjunction with all of the other steps in [the] claimed process." Id.

66. Examination Guidelines for Computer-Related Inventions, 61 Fed. Reg. 7478, 7483 (1996) [hereinafter PTO Guidelines] (discussing "post-solution" in terms of "post-computer process").

67. Id. at 7484 (discussing "pre-solution" in terms of "pre-computer process").

68. See id.

69. See id. at 7483; see also Diehr, 450 U.S. at 188 (allowing a patent because the results of a mathematical computation were used to control the operation of a rubber curing machine).

70. See PTO Guidelines, supra note 66, at 7485; see also In re Abele, 684 F.2d 902, 909 (C.C.P.A. 1982) (rejecting one claim of a computerized axial tomography [CAT] scan invention that displayed a calculated result as a shade of gray in a CAT scan image).

71. See PTO Guidelines, supra note 66, at 7484; see also Arrythmia Research Tech. Inc. v. Corazonix Corp., 958 F.2d 1053, 1054, 1060 (Fed. Cir. 1992) (holding patentable a medical screening invention that identified heart attack victims at high risk for ventricular tachycardia by analyzing electrocardiograph signals because the mathematical computations used data representing the measurement of physical heart activity transformed into electronic signals). But see In re Gelnovatch, 595 F.2d 32, 41 n.7 (C.C.P.A. 1979) (holding unpatentable a process for determining a set of values for use in a mathematical model of a microwave circuit because the data collected did not represent physical phenomena).

72. See In re Meyer, 688 F.2d 789, 796 n.4 (C.C.P.A. 1982) (holding unpatentable a medical diagnostic invention that rated a patient's health based on the results of various patient examination tests such as tapping the knee and pricking the skin); see also In re Grams, 888 F.2d 835, 839 (Fed. Cir. 1989) (citing In re Christainsen, 478 F.2d 1392, 1394 (C.C.P.A. 1973) ("[T]he addition of the old and necessary antecedent steps of establishing values for variables in the equation cannot convert the (un)patentable method to a patentable subject matter."); In re Sarkar, 588 F.2d 1330, 1335 (C.C.P.A. 1978)).

73. See PTO Guidelines, supra note 66, at 7485.

74. See id.

75. For example, the claim, A robotic machine comprising elements X, Y, Z, declares a robotic machine as the intended field of use in the preamble.

76. See PTO Guidelines, supra note 66, at 7485; see also In re Walter, 618 F.2d 758, 767 (C.C.P.A. 1980) (stating that the field of use limitation had no effect); see also In re Waldbaum, 559 F.2d 611, 616 n.6, 617 (C.C.P.A. 1977) (rejecting some claims in a telephone switch system invention because they effectively claimed a general purpose computer instruction called "EXAMINE," which counted 1s and 0s in memory even though the preamble limited the field of use to a telephone switch system).

77. Merges, supra note 1, at 55 n.1 (citing In re Rice, 132 F.2d 140 (C.C.P.A. 1942); In re Russell, 48 F.2d 668 (C.C.P.A. 1931); Guthrie v. Curlett, 10 F.2d 725 (2d Cir. 1926)).

78. Compare Cincinnati Traction Co. v. Pope, 210 F. 443, 445-46 (6th Cir. 1913) (holding that a train ticket was patentable for its particular shape and use as a detachable coupon and not for the particular arrangement of patented fare and time information on its face), with In re Russell, 48 F.2d 668, 668-69 (C.C.P.A. 1931) (holding that an alphabetic list of surnames (e.g., a phone directory) was unpatentable).

79. In re Jones, 373 F.2d 1007, 1012 (C.C.P.A. 1967) (holding that opaque code markings printed on an analog-to-digital converter component were not considered printed matter because they were not human-readable).

80. See infra Part II.A.4.

81. See In re Miller, 418 F.2d 1392, 1396 (C.C.P.A. 1969) (holding that measuring cups for making fractional recipes were patentable because the sizes printed on the cups were functionally related to the other elements of the claimed invention).

82. See In re Gulack, 703 F.2d 1381, 1385 (Fed. Cir. 1983) (sustaining the Board's rejection of a recreational mathematical invention consisting of numbers printed on a band according to a mathematical algorithm because no functional relationship existed between the number markings and the band).

83. See Mohasco Indus., Inc. v. E. T. Barwick Mills, Inc., 221 F. Supp. 191, 195 (N.D. Ga. 1963) (defining prior art as "[g]enerally, all patents, publications and public uses which have been in existence prior to a patentee's date of invention . . . are referred to as `prior art'").

84. See Gulack, 703 F.2d at 1384.

85. See Miller, 418 F.2d at 1396.

86. See 35 U.S.C. § 101 (1994).

87. See, e.g., Monroe Auto Equip. Co. v. Heckethorn Mfg. & Supply Co., 332 F.2d 406, 415 (6th Cir. 1964) (voiding some claims of an improved automotive shock absorber invention because a similar device had previously been invented).

88. See, e.g., Midland Flour Milling Co. v. Bobbitt, 70 F.2d 416, 417-18 (8th Cir. 1934) (voiding a patent for a dust collector because a trade paper published 13 years earlier had fully described the claimed invention).

89. 35 U.S.C. § 102 (1994).

A person shall be entitled to a patent unless--

(a) the invention was known or used by others in this country, or patented or described in a printed publication in this or a foreign country, before the invention thereof by the applicant for patent, or

  . . . .

(e) the invention was described in a patent granted on an application for patent by another filed in the United States before the invention thereof by the applicant for patent, or on an international application by another.Id.

90. See Monroe, 332 F.2d at 414.

91. See Structural Rubber Prods. Co. v. Park Rubber Co., 749 F.2d 707, 715 (Fed. Cir. 1984) (citing RCA Corp. v. Applied Digital Data Sys., Inc., 730 F.2d 1440, 1444 (Fed. Cir. 1984)).

92. Seymour v. Osborne, 78 U.S. (11 Wall.) 516, 555 (1870).

93. See 35 U.S.C. § 102(a) (1994).

94. The issued patent, as well as the applicant's patent, can be domestic or foreign. See In re Jaeger, 241 F.2d 723, 726 (C.C.P.A. 1957) (rejecting inventor's argument that his own patented invention should be treated differently than prior art of others); see also Wittlin v. Remco, Inc., 132 F. Supp. 57, 60 n.1 (E.D. Ill. 1955) (citing a British patent as prior art).

95. See MPEP, supra note 25, § 706.02(f); see also Alexander Milburn Co. v. Davis-Bournonville Co., 270 U.S. 390, 402 (1926) ("A description that would bar a patent if printed in a periodical or in an issued patent is equally effective in an application . . . .").

96. See generally Miller, supra note 2, at 40. What constitutes valid anticipatory prior art depends upon its form, owner, and origin (i.e. whether inside or outside the U.S.). Any domestic or foreign publication can serve as prior art. See Bone v. Commissioner of Marion County, 251 U.S. 134, 144 (1919). Any invention "known or used" by others in the U.S. can serve as prior art. In re Lund, 376 F.2d 982, 991 (C.C.P.A. 1967) ("The `knowledge' required by that provision [35 U.S.C. 102(a)] to defeat another's patent rights has long been interpreted to mean public knowledge."); see also Carboline Co. v. Mobil Oil Corp., 301 F. Supp. 141, 148 (N.D. Ill. 1969) (citing Minneapolis-Honeywell Regulator Co. v. Midwestern Instruments, Inc., 298 F.2d 36 (7th Cir. 1961)).

97. See 35 U.S.C. § 103 (1994).

A patent may not be obtained . . . if the differences between the subject matter sought to be patented and the prior art are such that the subject matter as a whole would have been obvious at the time the invention was made to a person having ordinary skill in the art . . . .Id.

98. See Hotchkiss v. Greenwood, 52 U.S. 248 (1850) (holding that a claimed method for making clay cabinet knobs was obvious compared to an existing method for making wood cabinet knobs).

99. Environmental Designs, Ltd. v. Union Oil Co., 713 F.2d 693, 696 (Fed. Cir. 1983) (citing Orthopedic Equip. Co., Inc. v. All Orthopedic Appliances, Inc., 707 F.2d 1376, 1382 (Fed. Cir. 1983) (listing the factors to determine whether one is "skilled in the art")).

100. See supra note 87.

101. See Merges, supra note 1, at 444 (quoting In re Winslow, 365 F.2d 1017, 1020 (C.C.P.A. 1966) (depicting an image of an inventor at work in his workshop surrounded by prior art "hanging on the walls around him")).

102. In re Wood, 599 F.2d 1032, 1036 (C.C.P.A. 1979) (describing a two-step test to determine whether the prior art is analogous or non-analogous); see also Jurgens v. McKasy, 927 F.2d 1552, 1559 (Fed. Cir. 1991) (noting that non-analogous art cannot be used to analyze obviousness).

103. See Penn Int'l Indus., Inc. v. Pennington Corp., 583 F.2d 1078, 1081 (9th Cir. 1978) (citing Graham v. John Deere Co., 383 U.S. 1, 17-18 (1966)).

104. See 35 U.S.C. § 112, ¶ 1 (1994) ("The specification shall contain a written description of the invention . . . in such full, clear, concise, and exact terms as to enable any person skilled in the art . . . to make and use the same . . . .").

105. See In re Wands, 858 F.2d 731, 737 (Fed. Cir. 1988) (citing Hybritech, Inc. v. Monoclonal Antibodies, 802 F.2d 1367, 1384 (Fed. Cir. 1986)).

106. See In re Gay, 309 F.2d 769, 772 (C.C.P.A. 1962) (discussing the "best mode" requirement).

107. See Merges, supra note 1, at 513.

108. See 35 U.S.C. § 112, ¶ 2 (1994) ("The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.").

109. See In re Gaubert, 524 F.2d 1222, 1226-27 (C.C.P.A. 1975) (citing In re Hammack, 427 F.2d 1378, 1382 (C.C.P.A. 1970)).

110. See In re Walter, 618 F.2d 758, 764 (C.C.P.A. 1980) (commenting that the difficulty of software inventions is caused by the close relationship between software and mathematical operations).

111. 409 U.S. 63, 64, 71-72 (1972) (holding that a mathematical algorithm used as "a method of programming a general-purpose digital computer to convert signals from binary-coded decimal form into pure binary form" was unpatentable, because it was an idea, and "[o]ne may not patent an idea").

112. See id. at 71 ("It is said that the decision precludes a patent for any program servicing a computer. We do not so hold.").

113. Id. at 71-72. See generally Donald S. Chisum, The Patentability of Algorithms, 47 U. Pitt. L. Rev. 959, 974-77 (1986) (discussing the definition of mathematical algorithm as used in evaluating software inventions).

114. 437 U.S. 584, 594 (1978) (holding unpatentable an invention for a claimed improvement of detecting abnormal conditions during the catalytic conversion of hydrocarbons because the invention simply computed an "alarm limit" using a computer program).

115. See id. at 590 n.12 (citing Eibel Process Co. v. Minnesota & Ontario Paper Co., 261 U.S. 45 (1923) (holding that an invention is not disqualified simply because it used the natural law of gravity to improve the effectiveness of a well-known machine)).

116. See id. at 591-92 (citing Mackay Radio & Tel. Co. v. Radio Corp. of Am., 306 U.S. 86, 94 (1939) and Funk Bros. Seed Co. v. Kalo Co., 333 U.S. 127, 130 (1948)); see also id. at 594 n.16.

117. 450 U.S. 175, 177 (1981) (holding patentable an invention for a computer controlled rubber curing system even though it used a well known mathematical formula, because the computer automatically opened the curing mold doors when the rubber was fully cured).

118. Id. at 184 ("Industrial processes such as these are the types which have historically been eligible to receive the protection of our patent laws.").

119. Congress created the CAFC to replace the CCPA. See Federal Courts Improvement Act of 1982, Pub. L. No. 97-164, 96 Stat. 25 (codified at scattered sections of 28 U.S.C.); see also Stephens & Sumner, supra note 25, at 237 n.49.

120. See In re Warmerdam, 33 F.3d 1354, 1359 (Fed. Cir. 1994).

121. 573 F.2d 1237, 1247 (C.C.P.A. 1978) (holding patentable a computer controlled typesetting system for printing mathematical expressions even though it used a mathematical algorithm to decompose the expression to be printed into a logical hierarchy of typeset information because the invention as claimed did not prevent others from using the algorithm for other purposes).

122. See id. at 1245 (analyzing Freeman claims 8-10).

123. Id. (concluding that Freeman claims 8-10 did not recite an algorithm).

124. 618 F.2d 758, 770 (C.C.P.A. 1980) (holding unpatentable a seismic prospecting system that identified underground rock formations using a computer system, because the well-known mathematical formulas (Fourier transformations) used during seismic data analysis were not sufficiently limited to the seismic prospecting system).

125. Id. at 767.

126. See id.

127. 684 F.2d 902, 909 (C.C.P.A. 1982) (holding patentable improved computer-assisted tomographic scanning (CAT scan) invention even though it used a new mathematical weighting algorithm in a novel way to produce clearer images from less X-ray data because, like Diehr's rubber curing invention, the invention as a whole was a novel improvement of a conventional CAT scan system which was otherwise statutory subject matter).

128. See id. at 906-07 (discussing the Walter analysis).

129. See id. at 907.

130. See supra note 14 for a definition of a data structure.

As an analogy, one can view a software data structure in a computer system as a deck of playing cards. Each card represents a separate physical memory location within a computer while the face value (e.g., Jack of Clubs) of the card represents the contents of that memory location. A fully shuffled deck of randomly sorted cards represents computer memory that has no data structure imposed on it at all. One illustrative data structure would be a card deck ordered by suit. This data structure has four elements, one for each suit. Any Club is placed in the first 13 card positions (i.e. memory locations 0-12), and any Diamond is placed in the next 13 card positions, and so on. Likewise, a card deck ordered by rank (i.e., Jacks, Queens, Kings, etc.) is a data structure with 13 elements. Additionally, computer programs often define data structures within data structures. For example, each "rank" data structure element could contain a "suit" data structure. That is, within a "rank" element, the cards are ordered by suit. Finally, a data structure element can simply point to another data structure.

131. 600 F.2d 807, 812-13 (C.C.P.A. 1979) (holding patentable an improved method for switching between programs running on a computer by using a data structure to more quickly save the currently running program and then restore the state of the next program to run).

132. See In re Warmerdam, 33 F.3d 1354, 1359 (Fed. Cir. 1994) (discussing the Board's reason for rejection and Warmerdam's counter argument).

133. Most CAFC cases are decided by three judge panels. In contrast, en banc decisions involve all the CAFC judges. Most importantly, en banc decisions are binding on lower courts until overruled by the U.S. Supreme Court or Congress. See Stephens & Sumner, supra note 25, at 233.

134. 33 F.3d 1526, 1544-45 (Fed. Cir. 1994) (holding patentable an improved method for displaying a waveform on a digital oscilloscope screen more clearly by varying the brightness of individual points (called pixels) according to mathematical formulas used by a programmed computer because the software invention as claimed was sufficiently limited to a particular application).

135. See id. (citing Gottschalk v. Benson, 409 U.S. 63, 71-72 (1972)). See generally Mark Kittredge, Note, The Federal Circuit and Non-patentable Subject Matter under In re Alappat and In re Warmerdam, 11 Santa Clara Computer & High Tech. L.J. 261, 264 (1995).

136. See U.S. Patent Application No. 07/181, Data Processing System Having a Data Structure with a Single, Simple Primitive 105; see also In re Lowry, 32 F.3d 1579, 1580 (Fed. Cir. 1994).

137. See Pfaffenberger, supra note 9, at 129 (defining a database as "a collection of related information about a subject organized in a useful manner"); see also Computer Dictionary 92 (Microsoft Press, 1991) (defining a database as "a file consisting of a number of records (or tables), each of which is constructed of fields (columns) of a particular type, together with a collection of operations that facilitate searching, sorting, recombination, and similar activities").

138. See In re Lowry, 32 F.3d 1579, 1580-81 (Fed. Cir. 1994). Lowry defined an ADO as data stored in memory as a sequence of 1s and 0s and specified two types of ADOs. See id. One type is a "holder" ADO which can be organized hierarchically to form an inverted tree of ADOs. Id. The root (i.e. trunk) of the inverted ADO tree is called the apex ADO. See id. Then, much as a tree splits into branches that in turn split into other branches, the apex ADO can point to one or more second level ADOs which in turn can point to one or more third level ADOs, and so on. See id. A database application program can create as many levels of ADOs as it needs. See id. However, in order to maintain a pyramid structure, Lowry imposed a restriction that a lower level ADO cannot be pointed to by more than one higher level ADO. See id. Doing so allows an application program to simplify its search algorithms and consequently operate more efficiently and quickly. See id. The other type of ADO is called a "referent" ADO that simply points to itself or another ADO independent of any hierarchy. Id.

139. See id. at 1581.

140. See id.

1. A memory for storing data for access by an application program being executed on a data processing system, comprising:

a data structure stored in said memory, said data structure including information resident in a database used by said application program and including:

a plurality of attribute data objects stored in said memory, each of said attribute data objects containing different information from said database;

a single holder attribute data object . . . establishing a hierarchy of said plurality of attribute data objects;

a referent attribute data object . . . being nonhierarchically related to a holder attribute data object . . . ; and

an apex data object stored in said memory . . . .Id.

141. See id. at 1582.

142. See Computer Dictionary 307 (Microsoft Press, 1991) A schema is defined as:

[a] description of a database to the database management system (DBMS), generated using the data definition language provided by the DBMS. . . . [A] schema defines a particular view of some aspect of the database; that is, it defines the attributes (or fields) that will be visible, the domains (permissible values) of the attributes, and information concerning the form and location of the attributes).Id.

143. See id. at 93-94 ("[A database dictionary is a] database containing data about all the databases composing a database system. . . . [It] stores all the various schemas and file specifications and their locations. A complete data dictionary also includes information about which programs use which data and which users are interested in which reports.").

144. U.S. Patent No. 4,774,661, Database Management System with Active Data Dictionary, 1094-2 Official Gazette 2255 (Sept. 27, 1988). The Kumpati patent disclosed an improved method for updating a data dictionary whereby the data dictionary is itself treated as a database, defined by its own schema. See id. Thus, the administrator could then more easily update the data dictionary in the same manner as any other database. In the past, the administrator needed to recompile the database when adding to or modifying a schema. See id.

145. See In re Lowry, 32 F.3d 1579, 1582 (Fed. Cir. 1994).

146. See id.

147. See id.

148. See id. (citing In re Gulack, 703 F.2d 1381, 1385 (Fed. Cir. 1983)).

149. See supra notes 77-85 and accompanying text discussion of the "printed matter" subject matter exclusion.

150. See Lowry, 32 F.3d at 1582.

151. See id.

152. Id.

153. See id.

154. See id.

155. See id. at 1580.

156. See Lowry, 32 F.3d at 1580.

157. See id. at 1583.

158. In re Jones, 373 F.2d 1007, 1012 (C.C.P.A. 1967).

159. Lowry, 32 F.3d at 1583 (quoting In re Bernhart, 417 F.2d 1395, 1399 (C.C.P.A. 1969)).

160. See id. at 1582-83; see also Gulack, 703 F.2d at 1384.

161. See Lowry, 32 F.3d at 1583.

162. See id. at 1584.

163. See id. at 1583 (citing Bernhart, 417 F.2d at 1400).

164. See id. at 1584 (citing In re Oetiker, 977 F.2d 1443, 1445 (Fed. Cir. 1992); In re Gulack, 703 F.2d 1381, 1386 (Fed. Cir. 1983)).

165. See id. at 1584.

166. See Lowry, 32 F.3d at 1583 (citing Gulack, 703 F.2d at 1385, n.8).

167. See id. at 1582.

168. Id. at 1584.

169. See id.

170. See id.

171. See supra notes 82-92 and accompanying text for a discussion of novelty.

172. See In re Warmerdam, 33 F.3d 1354, 1355 (Fed. Cir. 1994).

173. See id. Conceptually, collision avoidance systems involve creating spherical safety zones, or "bubbles," around each moving object. Id. So long as the bubbles do not intersect during the computed paths of each object, then no collision can occur. See id. Such collision avoidance systems were called "bubble" systems. Id. An obvious inefficiency of such algorithms is that false indications of collision can occur; i.e. even though the objects will not actually collide, their bubbles intersect. See id. Moreover, the larger the bubble used, the less efficient the system, due to the greater frequency of false indications. See id.

174. See id.

175. Id. at 1356. "Bubble-bursting" uses multiple levels of bubbles during its collision detection computations. Id. At the highest level of a bubble hierarchy, an object is represented by a single "root" bubble. Id. At the second level, an object is represented by a group of smaller bubbles that more closely approximates the object's shape. See id. At the third level, an object is represented by a larger group of even smaller bubbles that approximates the object's shape even more closely. See id. Additional levels can be defined as desired. See id. To determine whether a collision will occur, if the computed paths of the two objects show that the "root" bubbles will intersect, then they are burst to reveal the second level of bubble groups. See id. If intersection still occurs using the second level bubble groups, then they in turn are burst to reveal the third level. See id. Analysis continues until collision avoidance is determined because the lowest level bubbles do not intersect or collision is detected because the lowest level bubble groups do intersect. See id.

176. See id. at 1356 (describing the medial axis of an object as the imaginary line running through the center of an object that is equidistant from all sides of its surface).

177. See id. at 1357.

[Claim] 1. A method for generating a data structure which represents the shape of [sic] physical object in a position and/or motion control machine as a hierarchy of bubbles, comprising the steps of:

[1] first locating the medial axis of the object and

[2] then creating a hierarchy of bubbles on the medial axis.Id.

178. See Warmerdam, 33 F.3d at 1357 (reciting Claim 2 as: "[t]he method of Claim 1 wherein the step of creating the hierarchy comprises a top-down procedure").

179. See id.

[Claim] 3. The method of Claim 1 wherein the step of creating the hierarchy comprises a bottom-up procedure of:

first representing the medial axis as [sic] large plurality of discrete points . . . .

[Claim] 4. The method of Claim 3 wherein two old bubbles are merged to yield a new bubble in accordance with the formulas . . . [formulas omitted].

180. See id. at 1358 (reciting Claim 5 as: "A machine having a memory which contains data representing a bubble hierarchy generated by the method of any of Claims 1 through 4").

181. See id. (reciting Claim six as: "A data structure generated by the method of any of Claims 1 through 4").

182. See id.; see also supra notes 100-05 and accompanying text for a discussion of inadequate disclosure.

183. See Warmerdam, 33 F.3d at 1358.

184. See supra notes 52-81 and accompanying text for a discussion of invalid subject matter.

185. See Warmerdam, 33 F.3d at 1358.

186. See id.

187. See id.

188. See id. at 1359 n.3 (citing In re Grams, 888 F.2d 835 (Fed. Cir. 1989); In re Meyer, 688 F.2d 789 (C.C.P.A. 1982); In re Johnson, 589 F.2d 1070 (C.C.P.A. 1978)).

189. Warmerdam, 33 F.3d at 1358.

190. See id. at 1362.

191. See id. at 1361.

192. See id. at 1362.

193. Diamond v. Diehr, 450 U.S. 175 (1981).

194. Gottschalk v. Benson, 409 U.S. 63 (1972).

195. Parker v. Flook, 437 U.S. 584 (1978).

196. See In re Warmerdam, 33 F.3d 1354, 1358-59 (Fed. Cir. 1994).

197. See supra notes 115-25 and accompanying text.

198. Warmerdam, 33 F.3d at 1360.

199. See id. at 1359.

200. See id.

201. See id. at 1360 (identifying the Hilditch Skeletonization method).

202. See Warmerdam, 33 F.3d at 1360.

203. Id.

204. See supra notes 63-72 and accompanying text for a discussion of the "post-solution" activity test.

205. See Warmerdam, 33 F.3d at 1360.

206. See id.

207. See id.

208. See supra notes 63-72 and accompanying text for a discussion of the "pre-solution" activity test.

209. Warmerdam, 33 F.3d at 1360.

210. See id. at 1362.

211. See supra note 140 (describing Lowry Claim 1); see supra note 181 (describing Warmerdam Claim 6).

212. See In re Allapat, 33 F.3d 1526, 1530 (Fed. Cir. 1994). See infra notes 221-27 and accompanying text for a discussion of how Alappat redefined the "mathematical algorithm" exclusion.

213. See In re Lowry, 32 F.3d 1579, 1585 (Fed. Cir. 1994).

214. See Kittredge, supra note 131, at 261, 267.

215. See Warmerdam, 33 F.3d at 1362.

216. Judge Rader wrote the Lowry opinion, joined by Judges Skelton and Rich. See Lowry, 32 F.3d at 1580. Judge Plager wrote the Warmerdam opinion, joined by Judges Lourie and Clevenger. See Warmerdam, 33 F.3d at 1355.

217. See Kittredge, supra note 135, at 262.

218. See In re Alappat, 33 F.3d 1526, 1526 (Fed. Cir. 1994).

219. For example, the Alappat court also addressed the issue of jurisdiction, holding that the Commissioner had the authority to constitute a new panel for purposes of reconsideration after a three member panel of the Board had previously made a decision. See id. at 1530-31.

220. Id. at 1544.

221. Judge Rich wrote the majority CAFC opinion, holding that the software invention was patentable. See id. at 1530. Judge Rader wrote a concurring opinion. See id. at 1581.

222. See id. at 1542 (citing Diamond v. Diehr, 450 U.S. 175, 185 (1981)).

223. Id. at 1543 (interpreting Diamond v. Diehr, 450 U.S. 175 (1981); Parker v. Flook, 437 U.S. 584 (1978); Gottschalk v. Benson, 409 U.S. 175 (1972)).

224. See Alappat, 33 F.3d at 1544 (arguing that Claim 15 is patentable).

225. See id. at 1582 (Rader, J., concurring).

226. See id. at 1536.

227. Alappat, 33 F.3d at 1542.

228. Warmerdam, 33 F.3d at 1358 (citing Diamond v. Chakrabarty, 447 U.S. 303, 309 (1980)).

229. Judge Rich mentioned the Freeman-Walter-Abele Test only once. See id. at 1543 n.21.

230. In re Lowry, 32 F.3d 1579, 1582-83 (Fed. Cir. 1994) (citing In re Gulack, 703 F.2d 1381, 1385 n.8 (Fed. Cir. 1983)); see also supra notes 77-85 and accompanying text for a discussion of the "printed matter" subject matter exclusion.

231. See Lowry, 32 F.3d at 1582.

232. See id. at 1582-83.

233. See In re Warmerdam, 33 F.3d 1354, 1359 (Fed. Cir. 1994) (referring to the invention's use of a "mathematical procedure known as the Hilditch Skeletonization method").

234. See id. at 1359.

235. See id.; see also supra notes 116-25 and accompanying text for a discussion of the Freeman-Walter-Abele Test.

236. See In re Warmerdam, 33 F.3d 1354, 1360 (Fed. Cir. 1994).

237. See id. at 1359.

238. See id. at 1357-58.

239. See In re Alappat, 33 F.3d 1526, 1582 (Fed. Cir. 1994) (Rader, J., concurring).

240. See In re Freeman, 573 F.2d 1237, 1245 (C.C.P.A. 1978).

241. See Melvin C. Garner et al., Advanced Claim Drafting and Amendment Writing Workshop For Electronic and Computer-Related Subject Matter, in Advanced Claim Drafting and Amendment Writing Workshop 1994, at 19, 30.

242. In re Warmerdam, 33 F.3d 1354, 1359 (Fed. Cir. 1994).

243. See supra notes 65-76 and accompanying text for a discussion of the PTO's "safe harbor" tests.

244. See Richard H. Stern & Edward P. Heller, III, In re Alappat: the Gordian Knot Retwisted, 2 Balt. Intell. Prop. L.J. 187, 191 (1994) (summarizing the legal standard for claiming algorithms).

245. In re Lowry, 32 F.3d 1579, 1583 (Fed. Cir. 1994) (citing In re Bernhart, 417 F.2d 1395, 1400 (C.C.P.A. 1969)).

246. See In re Warmerdam, 33 F.3d 1354, 1360 (Fed. Cir. 1994).

247. See PTO Guidelines, supra note 64, at 7484.

248. See id.

249. See In re Taner, 681 F.2d 787, 790 (C.C.P.A. 1982) (holding patentable an invention involving apparatus for collecting seismic data and a programmed computer for analyzing them because the data collected represented real world quantities); see also Arrythmia Research Tech. Inc. v. Corazonix Corp., 958 F.2d 1053, 1054 (Fed. Cir. 1992) (allowing a patent for a medical screening invention that identified heart attack victims at high risk for ventricular tachycardia by analyzing electrocardiograph signals because the mathematical computations used data representing the measurement of physical heart activity transformed into electronic signals).

250. See supra notes 185-206 for an analysis of the Warmerdam opinion.

251. See In re Warmerdam, 33 F.3d 1354, 1360 (Fed. Cir. 1994).

252. Id. (citing In re Grams, 888 F.2d 835, 840 (Fed. Cir. 1989)).

253. In re Lowry, 32 F.3d 1579, 1583-84 (Fed. Cir. 1994).

254. PTO Guidelines, supra note 64, at 7485.

255. Id.; see also Diamond v. Diehr, 450 U.S. 175 (1981) (holding an invention for a computer controlled rubber curing system to be patentable even though it used a well known mathematical formula because sufficient post-solution activity existed; i.e. the computer automatically opened the curing mold doors when the rubber was fully cured).

256. See supra note 176 (reciting Warmerdam Claim 1).

257. In re Warmerdam, 33 F.3d 1354, 1360 (Fed. Cir. 1994).

258. Id.

259. In re Lowry, 32 F.3d 1579, 1583-84 (Fed. Cir. 1994).

260. See id. at 1583 (citing In re Bernhart, 417 F.2d 1395, 1400 (C.C.P.A. 1969)).

261. See In re Alappat, 33 F.3d 1526, 1544 (Fed. Cir. 1994).

262. Lowry, 32 F.3d at 1583.

263. See PTO Guidelines, supra note 64, at 7484.

264. See id. at 7485.

265. See Garner et al., supra note 241, at 30.

266. PTO Guidelines, supra note 64, at 7485.

267. See In re Walter, 618 F.2d 758, 767 (C.C.P.A. 1980).

268. See supra note 176 (reciting Warmerdam Claim 1).

269. See id.

270. See supra note 136 (reciting Lowry Claim 1).

271. See supra notes 173-81 (describing the Warmerdam invention).

272. See supra note 176 (reciting Wamerdam Claim 1).

273. See supra note 181 (reciting Wamerdam Claim 6).

274. See In re Warmerdam, 33 F.3d 1354, 1362 (Fed. Cir. 1994).

275. See supra note 140 (reciting Lowry Claim 1); see also supra note 138 and accompanying text for a discussion of ADOs.

276. See In re Lowry, 32 F.3d 1579, 1582 (Fed. Cir. 1994). Claims 20-23, 25, and 28 specify methods of accessing, creating, adding, and erasing ADOs within the data structure. Claim 24 specifies a method for creating a data structure. Claims 26, 27, and 29 specify methods of creating and erasing non-hierarchical relationships between ADOs and referent ADOs.

277. See supra note 140 (reciting Lowry Claim 1).

278. See supra notes 65-76 and accompanying text for a discussion of the "post-solution" and "pre-solution" activity tests.

279. See supra notes 220-27 and accompanying text for a discussion of the Alappat opinion.

280. See In re Alappat, 33 F.3d 1526, 1544 (Fed. Cir. 1994).

281. See In re Prater, 415 F.2d 1393, 1403 n.29 (C.C.P.A. 1969).

282. See Computer Dictionary 147 (Microsoft Press, 1991) (defining firmware as "[s]oftware routines stored in read-only memory (ROM)").

283. See In re Bradley, 600 F.2d 807, 813 (C.C.P.A. 1979).

284. See In re Lowry, 32 F.3d 1579, 1583 (Fed. Cir. 1994).

285. See id. at 1583.

286. See PTO Guidelines, supra note 64, at 7481.

287. See id.

288. See supra Part IV.

289. See Kittredge, supra note 131, at 262.

290. See Maximilian R. Peterson, Note, Now You See It, Now You Don't: Was It a Patentable Machine or an Unpatentable "Algorithm"? On Principle and Expediency in Current Patent Law Doctrines Relating to Computer-Implemented Inventions, 64 Geo. Wash. L. Rev. 90-91 (1995) (describing the size and growth of the United States software industry).

* For Carol and Cathy.