AustLII Home | Databases | WorldLII | Search | Feedback

Journal of Law, Information and Science

Journal of Law, Information and Science (JLIS)
You are here:  AustLII >> Databases >> Journal of Law, Information and Science >> 1993 >> [1993] JlLawInfoSci 21

Database Search | Name Search | Recent Articles | Noteup | LawCite | Help

Swinson, John V --- "Notes from the United States" [1993] JlLawInfoSci 21; (1993) 4(2) Journal of Law, Information and Science 293

Notes From the United States

by JOHN V. SWINSON[*]


Abstract

The following notes examine three recent developments in intellectual property law in the United States. The first note discusses a recent decision of the Board of Patent Appeals and Interferences in which the Board has, for the first time, issued a clear and definitive statement regarding the patentability of computer method claims directed to logic operations. The second note concerns a recent appellate decision regarding copyright protection of software and the abstraction-filtration-comparison test. The third note examines recent trends in the protection of software in light of statistics released by the US Patent Office.

1. Patent - Expert Systems - Logic Operations Are Not Mathematical Algorithms

In a decision publicly released on November 30, 1993, the Board of Patent Appeals and Interferences held that logic operations are not mathematical in nature, and therefore do not fall within the judicially defined test prohibiting the patenting of mathematical algorithms. Ex parte Barabash (unpublished, Appeal No. 93-1775, decided May 27, 1993).

The invention which was the subject of the appeal is directed to a method for determining an ancestral relationship between two objects in a database organised in a single inheritance type hierarchy. In summary, each object in the database is assigned a binary bit pattern and a mask related to the object's position in the inheritance hierarchy. According to the claimed method, a bit-wise AND operation is performed in relation to the bit pattern and mask of two objects to determine whether the first object is an instance (or ancestor) of the second object.

To explain the invention in more detail, in an inheritance type hierarchy, objects in the hierarchy are subtypes of other objects in the hierarchy. For example, the type CAT could be a subtype of the type MAMMAL which in turn could be a subtype of the type VERTEBRATE. In single inheritance type hierarchy, there is a further limitation: each subtype can only have one immediate parent. Thus, for example, type ORANGE could be a subtype of type COLOR but could not be a subtype of both type RED and type YELLOW.

The invention provides an improved method for determining whether an object in a database organised as a single inheritance type hierarchy satisfies a search request for a particular type. A request may be for objects of type MAMMAL, in which case any object of type CAT would satisfy the request; alternatively, the request may be whether an object of type CAT is a mammal. Prior systems, for example, compare the request with the object, and if they do not match, compare the request with the object's super-types until there is a match or no more super-types. Thus, in order to determine that the object CAT does not satisfy a request for VEGETABLE, the following four checks are made: CAT-VEGETABLE, MAMMAL-VEGETABLE, VERTEBRATE-VEGETABLE, and ANIMAL-VEGETABLE. The method of the subject invention allows this determination to be made with regard to any request in only two steps.

In accordance with the invention, each type is assigned a specific binary value, P. In order to determine P, each object is assigned a number A which is unique to that object with respect to its siblings. P is then formed by concatenating the values of A for the object and all its super-types. Each type is also assigned a mask, X, which indicates the number of bits of P that are significant for matching purposes. For example, assume CAT has a P value of 00000 and an X value of 11100, and TABBY has a P value of 00001 and an X value of 11111, then if one wishes to determine if an object TABBY is an instance or a subtype of an object CAT, the mask for CAT is ANDed bitwise with the P value for TABBY (i.e., 00001 AND 11100 = 0000) and if the result matches the P value for CAT, then the system knows that TABBY is an instance or a subtype of CAT. Therefore, since most of the work is done during the compilation of the database, the invention allows for the determination of whether an object satisfies a search request for a particular type in only two steps: a masking step and a comparing step.

The steps of the method were claimed as follows:

... organising the objects in the database according to a single inheritance type hierarchy having a plurality of levels;

providing each one of the plurality of objects in the database with a corresponding unique binary number, a binary bit pattern and a mask...;

operating the computer to perform a bit-wise AND of the binary bit pattern of the first object with the mask of the second object to produce a result; and

operating the computer to compare said result with the binary bit pattern of the second object... .

The examiner rejected the claimed invention on the basis that it preempted a mathematical algorithm. The examiner applied what is known as the two part Freeman-Walter-Abele test. That test has been described as follows:

It is first determined whether a mathematical algorithm is recited in the claims. If so, it is next determined whether the claimed invention as a whole is no more than the algorithm itself; that is, whether the claim is directed to a mathematical algorithm that is not applied to or limited by physical elements or process steps. Such claims are nonstatutory. Arrhythmia Research Technology Inc. v Corazonix Corp. [1992] USCAFED 298; 958 F.2d 1053, 22 USPQ 2d 1033, 1037 (Fed. Cir. 1992).

The examiner held that the claims indirectly recited the algorithm of performing a bit-wise AND on two binary patterns, followed by comparing the result of the bitwise AND with another bit pattern. Accordingly, the examiner rejected the claims under 35 USC §101 as failing to recite statutory subject matter.

On appeal, the applicant argued that bit-wise AND and compare operations are logical operations and, therefore, not mathematical algorithms. The result of a logical operation, it was argued, is a true/false indication which is not a numerical result as required according to any basic definition of a mathematical function.

The Board agreed with the applicant and concluded:

The examiner has not even made out a prima facie case. The operations to which the examiner refers as mathematical in nature are classical logic operations. Because mathematics follows the rules of logic does not imply that any logic operation is mathematical in nature. The examiner has failed to establish that any mathematical algorithm exists which is subject to preemption by the claims.

With this decision, the Board has, for the first time, issued a clear and definitive statement regarding the patentability of computer method claims directed to logic operations. As computer logic claims are fairly common, this decision can be regarded as an advance in the area of computer patent applications.

The patent which was the subject of the appeal, U.S. Patent No. 5,267,349, entitled "Fast Determination of Subtype Relationship in a Single Inheritance Type Hierarchy", issued November 30, 1993, and has been assigned to Digital Equipment Corporation.

2. Copyright - Filtering Out Unprotectable Elements

On October 19, 1993, the U.S. Court of Appeals for the Tenth Circuit held that unprotectable elements of a copyrighted computer program were not sufficiently filtered out by the district court in its finding of infringement. Gates Rubber Co. v Bando American Inc. 28 USPQ 2d 1503 (10th Cir 1993).

The plaintiff, Gates Rubber, is an industrial belt manufacturer whose field staff used two computer programs, "Design Flex", to determine the type of belt a customer required, and "Life in Hours", to determine when a replacement belt was needed. The defendant, Bando, headed by a former Gates employee, introduced similar software and was sued by Gates in the District Court of Colorado for (i) copyright infringement with respect to Design Flex and (ii) trade secret misappropriation with respect to "Life in Hours" and the mathematical constants in "Design Flex". Deciding the copyright issue in favour of Gates, the district court held that the menus, constants, sorting criteria, control flow, data flow, design module, engineering calculation module and install files of "Design Flex" were infringed by Bando. Further, the district court rejected Bando's argument that the federal Copyright Act preempted Gates' state trade secret claims. Accordingly, the district court found for the plaintiff on both claims and entered a permanent injunction against Bando.[1]

The main issue on appeal was whether the district court extended copyright protection to unprotected elements of the "Design Flex" program. The Tenth Circuit applied what has become known as the abstraction-filtration-comparison test which was introduced into copyright jurisprudence by the Second Circuit in Computer Associates Int'l v Altai Inc. 23 USPQ 2d 1241 (2nd Cir. 1992). Simply, this test requires the court to first decide on a level of abstraction that amounts to expression, not idea, (e.g., by considering the object code, source code, algorithms and data structures, modules and the desired goal of the program) and then filter out "unprotected elements" of the plaintiff's program. Finally, the court compares what's left of the plaintiff's program after filtration with the defendant's program.[2]

The Tenth Circuit explained in detail how to apply this test. A substantial similarity comparison should be made before filtering out unprotectable elements.

We acknowledge that unprotectable elements of a program, even if copied verbatim, cannot serve as the basis for ultimate liability for copyright infringement. However, the copying of even unprotected elements can have a probative value in determining whether the defendant copied the plaintiff's work. Where a court first extracts all unprotected elements of a work, and only compares protected elements, it deprives itself of the use of probative, and potentially essential, information on the factual issue of copying. ... The fact that non-protectable elements of the original program were also copied, although it cannot be the basis for liability, can be probative of whether protected elements were copied.

The abstraction-filtration-comparison test should be used to determine which elements of a program are protectable because the plaintiff will succeed only if there has been copying of protected elements of the plaintiff's program. "The court's inquiry does not end with a finding that the defendant copied portions of the plaintiff's program. Liability for copyright infringement will only attach where protected elements of a copyrighted work are copied."

The Tenth Circuit held that the protectable elements must comprise a substantial part of the plaintiff's computer program when considered as a whole.

Due to the complexity and changing nature of software, the court declined to set forth any strict methodology for the abstraction step. Abstraction is just one approach to help separate idea from expression.

With respect to the filtration step, the court stated that the main purpose of a program is always unprotectable and that the source code and object code is almost always protectable. No protection is available for expressions that are standard or necessary incidents of an idea which would effectively give the first programmer a monopoly over the expression of those ideas. Also unprotectable are "those elements of a program that have been dictated by external factors. ... In the area of computer programs these external factors may include: hardware standards and mechanical specifications, software standards and compatibility requirements, computer manufacturer design standards, target industry practices and demands, and computer industry programming practices." (The Tenth Circuit seems to misunderstand that copyright infringement requires copying. The first programmer is not given a monopoly, just a right to prevent others from copying that programmer's expression.)

What is left after the filtration process is compared with the allegedly infringing program to determine if that which was copied was a substantial part of the original work. This, said the court, is a qualitative, not quantitative, analysis.

In applying the abstraction-filtration-comparison test, the Tenth Circuit decided that the constants should have been filtered out, even though Gates spent thousands of hours testing to determine the best constants to use in its program. With respect to the other elements claimed to have been copied, the Tenth Circuit held that the district court failed to clarify whether these elements were idea or expression. For example, the Tenth Circuit pointed to the failure by the district court to consider whether the algorithms in the engineering module were ideas, processes or facts. If the algorithms are processes, the court stated, then they are not protectable; if they are expression, the district court must still carry out the filtration step. Accordingly, the copyright ruling was vacated and the case was remanded to the trial court.

However, the Appeals Court held that the constants were trade secrets. The fact that the constants might have been reverse engineered did not deprive the constants of their trade secret protection in this case. The trade secret decision was therefore affirmed.

This case continues the trend in the United States narrowing copyright protection for software. In many circuits it is becoming more difficult to obtain copyright protection for non-literal elements of a computer program. Even literal copying of a computer program may not amount to copyright infringement. A plaintiff should always be prepared to submit detailed expert evidence to show how the program was created. However, it would be fair to say that most courts seem not to understand this technical evidence or, given that evidence, how to apply the abstraction-filtration-comparison test.

What should one do to protect the investment in software in the United States? First, consider patent protection. It is becoming clear that copyright will not protect algorithms beyond the source code level of abstraction. If an algorithm is novel and not obvious, patent protection is available. Second, consider state trade secret law, which may protect the "structure" of a computer program, and other elements not copyrightable under the abstraction-filtration-comparison test, provided that these elements remain secret. Therefore, never disclose or distribute the source code, and when licensing software, obtain promises from the licensee to keep the object code secret and not to reverse engineer the object code.

As a final comment, Australian software developers should be concerned that the Australian Copyright Law Review Committee's Draft Report on Computer Software Protection (June 1993) states, without analysis, that the Committee regards the abstraction-filtration-comparison test as "a very practical and useful guide for determining infringement of computer programs and supports the approach adopted."[3] It would be helpful if the Committee gave reasons why it finds this test "very practical". Is the Committee endorsing a narrower scope of copyright protection for computer software in Australia? [4] Does the Committee agree with the comment that "[u]nless the judge is well-versed in software engineering, the possibilities for confusion [in applying the abstraction-filtration-comparison test] abound." [5]After taking five years to draft its report, one would have expected the Committee to undertake a more detailed analysis of this important issue.

3. Trends in Protecting Software and Works in Digital Form

As copyright protection for software narrows in the United States, more software developers are turning to patent law to protect their investment. This trend can be seen in figures recently compiled by the US Patent Office, showing that the number of software patent application filings have substantially increased in recent years.

The statistics relate to two Patent Office classifications, class 364 (Electrical Computers and Data Processing Systems) and class 395 (Computer Systems). Class 364 is described as including electrical apparatus and corresponding methods for performing data processing operations in which there is a significant change in data or for performing calculation operations. Subclasses in class 364 include certain application programs (such as application programs for accounting, games, reservations, medical imaging, route guidance systems and so on) and data processing control systems, as well as "electric digital calculating computers". Class 395 was created in 1991 and replaced selected art areas from class 364. Class 395 has subclasses directed to artificial intelligence, computer graphics, buffering functions, database and file management systems, task management, reliability, processing architecture and the like.

The statistics are current to April 30, 1993, and include the number of patents granted in each class each year and, for issued patents, the number of patents applied for in each class each year. Data for those applications which were filed but never issued (roughly 40% of total filings) are not included in the report. Also, since the average time period between filing for a patent and the issuing of the patent (a patent's "pendency") is now about 18 months, the patent application data for the last four or five years is incomplete.

In summary, in 1986, 563 patents issued that have been classified in class 395, and 935 patents issued in class 364. In the 1992 year, this had increased to 1474 patents in class 395 and 1358 in class 364.

When considering applications only for patents that have issued, 594 applications were filed in 1982 that issued as patents classified in class 395. For 1986, this had risen to 769 applications, and in 1989, 1276 applications. As of April 30, 1993, 341 patents had already issued for applications filed in 1991. Many more are still pending. For class 364, 831 applications were filed in 1982 that issued as patents. In 1986, 1118 applications were filed that issued as patents, and in 1989, 1560 applications. As of April 30, 1993, 340 patents had already issued for applications filed in 1991.

Another Patent Office report shows that for patent applications only (whether these applications issued as patents or not), 3,829 applications were filed in 1988 that were classified as falling within class 364 or 395. In 1990, this increased to 6,555 applications. In 1992, there were 7,552 such applications. (Most of these 7,552 applications are pending.)

As a benchmark comparison, the total US patent application filings in all classes (whether issuing as a patent or not) were 116,427 for 1985, 121,611 for 1986, 163,306 for 1989, 174,711 for 1990 and 185,446 for 1992.

Who is obtaining these patents? In class 395, IBM obtained the most patents in 1992, receiving 206 patents. Next was Hitachi (115), followed by Digital Equipment Corp. (68), NEC Corp (57), Toshiba (53) and Hewlett Packard (38). Also noteworthy was Apple Computer, Inc. (11) and Thinking Machines Corp. (7). In class 364, for patents issuing in 1992, the top five were Nissan Motor (44), Mitsubishi Denki (44), Toshiba (37), IBM (34) and Hitachi (32).

As of April 30, 1993, a total of 12,707 patents had issued in class 395, 8506 to United States entities, and 4201 to "foreign origin" entities. (Japan - 2787; UK - 339; France - 298; Germany - 273; Australia - 8). As of April 30, 1993, a total of 17,104 patents had issued in class 364, 9932 to United States entities, and 7172 to "foreign origin" entities. (Japan - 4320; Germany - 843; France - 545; UK - 542; Australia - 39).

Although class 364 is not limited to software related patents, the above figures show a clear increase (both in absolute terms and when compared with general trends in the Patent Office) in the number of software related patent applications and software related patents issuing. What these statistics do not show is the large number of small software companies applying for software related patents, making one or two patent applications per year. This continuing trend of relying on patent protection for software (in addition to copyright protection) is mostly due to the increasing awareness of software related patents amongst software companies and the lawyers who represent these companies.

With this in mind, it is disappointing that the Australian Copyright Law Review Committee's Draft Report on Computer Software Protection (June 1993) did not address in any detail the issue of patent protection for software related inventions. Clearly, patent protection is an important weapon for the protection of software, especially those facets of software not protected by copyright, such as interfaces, high level algorithms and data structures. The Committee's terms of reference included whether the Copyright Act "adequately and appropriately protects computer programs in human and machine readable form." The Committee did consider whether copyright should cover algorithms and non-literal elements of software. But how could the Committee decide whether copyright protection was adequate (especially for non-literal elements of software) without examining other complementary areas of protection, such as patent and the law of trade secrets/confidential information? At paragraph 4.21 of its report, the Committee seems to consider patent only as an alternative to copyright protection, which would be quite silly. At paragraph 4.22, the Committee states that patent is available in some cases (a development which the Committee does not support), but the Committee does not state when it believes patent protection to be available or what type of subject matter patent protects or should protect. Are Australian software developers to be afforded the same level of protection in Australia in this area as software developers are given in the U.S.?

However, whether the form of protection for software should be patent protection, copyright protection, both, or sui generis protection, is not the hot issue at the moment in the U.S. What is hot is issues relating to legal protection for works in digital form, including multi-media works.

There appears to be some popular support for sui generis protection for software in Australia. The Committee correctly rejects such an approach. [6]Most academics and practitioners in the U.S. have also rejected sui generis protection for software. What is interesting to note is that when considering sui generis protection, the Committee concentrated on computer software even though its terms of reference included whether the Copyright Act adequately and appropriately protects "works created by or with the assistance of computer programs." Only four pages of the 344 page report considered works created by a computer program. The Committee merely recommended that the author (i.e., the owner of the copyright) of such works be "the person responsible for running the data on the programmed computer, in order to create the new work", not the provider of the data or the programmer (paragraph 13.07). However, it is in this area of works in digital form, many of which are computer generated works, not computer programs, that sui generis protection seems most appropriate.

Consider works in digital form, such as a photograph stored on a CD-ROM or multi-media works. These works, when in digital form, do not fall within the traditional classifications of literary works, artistic works, musical works and the like, although they do have some features of such works. Nor are all works in digital form computer programs. When in digital form, how should these works be protected? In digital form, these works can often be considered to be computer-generated works, as a computer program takes "data" (for example, a photo and a song) and transforms these "traditional works" into digital information.

As a simple example, consider the Kodak Photo-CD. A photographer takes a photograph, gives it to a Kodak agent who, overnight, scans the photograph. The Kodak agent uses a computer program to transform the photograph into digital information, adds other digital information (such as a "photo" of a Kodak logo in digital form) to the digital information, and then compresses that information for storage on a compact disk. Many questions arise. Who is the owner of the digital information on the CD? The photographer, the Kodak agent or the Kodak programmer who wrote the computer program that created the digital representation of the photograph? Under the Committee's definition, it appears that the copyright owner of the digital information is the Kodak agent. Or, is the correct analysis that the digital work is merely a translation of the photograph; therefore, the copyright is owned by the photographer. But the Kodak programmer caused a photograph of a Kodak logo to be included on the CD; so is the work a compilation owned by Kodak? If the digital information on the CD is stored in a computer by the photographer, and accessed (but not copied) by another without permission over a telephone network using a modem, is there copyright infringement? What if that information is downloaded without permission from this computer to another computer located in Mexico; where does infringement (if any, and of what work) take place? What difference does it make if Kodak adds music (in digital form) to the digital information to accompany playback of the photographs? If the photographer manipulates the bits, is a new work created?

Obviously, many questions remain. For works in digital form, sui generis protection should at least be considered.


[*] Associate, Kenyon & Kenyon, New York City; Barrister-at-law, Queensland; B.A. (Computer Science), University of Queensland; LL.B (Hons), University of Queensland; LL.M, Harvard Law School.

[1] See 798 F.Supp 1499, 25 USPQ 2d 1161 (DC Colo. 1992).

[2] See Anne M. Fitzgerald, Square Pegs in Round Holes: Recent US Developments in Copyright Protection for Computer Software (1993) 4 J.L.I.S. 142; Arthur R. Miller, Copyright Protection For Computer Programs, Databases, And Computer-Generated Works: Is Anything New? 106 H.L.R. 977, 1001 (1993).

[3] Paragraph 9.28.

[4] See Miller, supra, at 1002, "But there is no question that the Gestalt of the Second Circuit's opinion [in computer associates] is more grudging towards software protection than that of the Third Circuit [in Whelan]."

[5] John H. Butler, Pragmatism In Software Copyright: Computer Associates v Altai, 6 Harv. J. L. & T. 183, 195 (Fall, 1992).

[6] The Committee incorrectly reasons that "the essence of a computer program in whatever code it is expressed is its form." paragraph 4.24.


AustLII: Copyright Policy | Disclaimers | Privacy Policy | Feedback
URL: http://www.austlii.edu.au/au/journals/JlLawInfoSci/1993/21.html