Presentation is loading. Please wait.

Presentation is loading. Please wait.

Copyright in Computer Programs

Similar presentations


Presentation on theme: "Copyright in Computer Programs"— Presentation transcript:

1 Copyright in Computer Programs
Michael I. Shamos, Ph.D., J.D. Institute for Software Research School of Computer Science Carnegie Mellon University LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

2 LAW OF COMPUTER TECHNOLOGY FALL 2015 © 2015 MICHAEL I. SHAMOS
Copyrightability Computer software is copyrightable This was not clear in the 1976 Copyright Act (and book authors argued to Congress against it) It was repaired by the Computer Software Copyright Amendments of 1980, which added a definition of “computer program” to the Copyright Act: “A ‘computer program’ is a set of statements or instructions to be used directly or indirectly in a computer in order to bring about a certain result.” Then a new section made it apparent by implication that computer programs were copyrightable LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

3 Computer Software Copyright
Special copyright provisions for computer programs Making of Additional Copy by Owner of Copy.— it is not an infringement for the owner of a copy of a computer program to make … another copy or adaptation of that computer program provided: (1) such a new copy … is created as an essential step in the utilization of the computer program in conjunction with a machine and … is used in no other manner, or (2) that such new copy … is for archival purposes only and that all archival copies are destroyed in the event that continued possession of the computer program should cease to be rightful U.S.C. §117(a) LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

4 Should Computer Software be Copyrightable?
Does the long term of copyright “promote the progress of science and useful arts” or hinder it? Are computer programs “works of authorship”? Isn’t it essential for programmers to use constructs created by others? Aren’t computer programs purely functional? They control machines, so aren’t they a “method of operation” and hence uncopyrightable? There is a constant tension between protecting expression and leaving methods of operation free of copyright LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

5 Protected Forms of Software
Source code Object code Is it a work of authorship? Is it a derivative work? Code in RAM Translations into other computer languages Bytecode? LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

6 LAW OF COMPUTER TECHNOLOGY FALL 2015 © 2015 MICHAEL I. SHAMOS
Functionality The “function” of a program cannot be copyrighted. (It might be patentable.) If the expression is “dictated” by the function, then there is no creative expression and no copyright LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

7 Idea/Expression Merger
If an unprotectible idea can be expressed in only one or a very limited number of ways, then the “idea” and the “expression” of the idea “merge” and no copyright is possible To hold otherwise would give a long monopoly on an idea or process, which should be protected, if at all, by a much shorter patent (20 years v. life + 70 years) LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

8 Nichols Abstractions Test
“When a plagiarist does not take out a block in situ, but an abstract of the whole, decision is more troublesome. Upon any work, and especially upon a play, a great number of patterns of increasing generality will fit equally well, as more and more of the incident is left out…there is a point in this series of abstractions where they are no longer protected.” [since they are ideas] Nicholls v. Universal Pictures (2d Cir. 1930) in situ = Latin for “in place” LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

9 Abstraction-Filtration-Comparison
A test for infringement of computer programs Takes into account different structures and computer languages From Computer Associates v. Altai (2d Cir. 1992) Abstraction: reducing the program to a set of functional processes (e.g. modules, procedures) Filtration: eliminating unprotectible elements Comparison: seeing if the remaining portions are substantially similar Very difficult in practice because the jury doesn’t understand abstraction and filtration LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

10 Abstraction-Filtration-Comparison
OVERALL PURPOSE SORTING PROGRAM SORT MERGE SAVE HIGH-LEVEL FUNCTIONS fillbuf fill a buffer from a file compare compare two lines mergelines merge arrays of lines into one array PROCEDURES, DATA STRUCTURES a.java b.java merge.java z.java MODULES RAW CODE 10,000 LINES OF SOURCE CODE LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

11 Abstraction-Filtration-Comparison
“A computer program may be thought of as a set of individual instructions organized into a hierarchy of modules. At a higher level of abstraction, the instructions in the lowest- level modules may be replaced conceptually by the functions of those modules. At progressively higher levels of abstraction, the functions of higher-level modules conceptually replace the implementations of those modules in terms of lower-level modules and instructions, until finally, one is left with nothing but the ultimate function of the program.... A program has structure at every level of abstraction at which it is viewed.” Computer Associates v. Altai LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

12 Abstraction-Filtration-Comparison
Dissect the allegedly copied program's structure and isolate each level of abstraction contained within it. The process begins with the code and ends with an articulation of the program's ultimate function. Along the way, it is necessary essentially to retrace and map each of the designer's steps--in the opposite order in which they were taken during the program's creation. LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

13 Abstraction-Filtration-Comparison
Eliminate unprotectible elements, such as those Dictated by efficiency Most succinct formula, best data structure for the task Dictated by external factors Programming standards Interface specifications, e.g. and API Problem constraints: must use a particular protocol Drawn from the public domain Computer Associates v. Altai LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

14 Abstraction-Filtration-Comparison
“There may remain a core of protectable expression. In terms of a work's copyright value, this is the golden nugget. … At this point, the court's substantial similarity inquiry focuses on whether the defendant copied any aspect of this protected expression, as well as an assessment of the copied portion's relative importance with respect to the plaintiff's overall program. (‘To determine whether similarities result from unprotectable expression, analytic dissection of similarities may be performed. If ... all similarities in expression arise from use of common ideas, then no substantial similarity can be found.’)” Computer Associates v. Altai LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

15 Lotus v. Borland 49 F.3d 807 (1st Cir. 1995)
Lotus Development created the successful spreadsheet program Lotus (a predecessor of Excel) 1-2-3 had 50 command menus with a total of 469 commands, such as “Copy,” Print,” “Quit” Borland created its own spreadsheet, Quattro To provide customers with a smooth transition path from to Quattro, Borland needed to support importation of files into Quattro. LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

16

17 Lotus v. Borland 49 F.3d 807 (1st Cir. 1995)
1-2-3 had a macro facility in which users could record sequences of menu selections To support macros, Quattro had to understand all commands LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

18 LAW OF COMPUTER TECHNOLOGY FALL 2015 © 2015 MICHAEL I. SHAMOS
Lotus v. Borland Borland copied the entire Lotus command hierarchy Borland did not have access to, and did not copy, ANY Lotus source code Is the menu hierarchy and command set copyrightable? It certainly contains creative expression The District Court found that there were many alternatives to the command names (e.g. “Exit” instead of “Quit”), so there was no idea/expression merger The District Court found that Borland infringed Borland appealed LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

19 LAW OF COMPUTER TECHNOLOGY FALL 2015 © 2015 MICHAEL I. SHAMOS
Lotus v. Borland Court of Appeals did not focus on idea/expression merger, but on functionality Is the menu hierarchy a “method of operation”? “We think that ‘method of operation,’ refers to the means by which a person operates something … a text describing how to operate something would not extend copyright protection to the method of operation itself; other people would be free to employ that method and to describe it in their own words.” LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

20 LAW OF COMPUTER TECHNOLOGY FALL 2015 © 2015 MICHAEL I. SHAMOS
Lotus v. Borland “We hold that the Lotus menu command hierarchy is an uncopyrightable ‘method of operation.’ The Lotus menu command hierarchy provides the means by which users control and operate Lotus If users wish to copy material, for example, they use the ‘Copy’ command. If users wish to print material, they use the ‘Print’ command. Users must use the command terms to tell the computer what to do.” “The Lotus menu command hierarchy does not merely explain and present Lotus ’s functional capabilities to the user; it also serves as the method by which the program is operated and controlled.” REVERSED. Menu hierarchy not copyrightable LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

21 LAW OF COMPUTER TECHNOLOGY FALL 2015 © 2015 MICHAEL I. SHAMOS
Lexmark Int’l, Inc. v. Static Control Components 387 F.3d 522 (6th Cir. 2004) Lexmark makes computer printers that use toner cartridges Static Control makes microchips used by companies who remanufacture toner cartridges Lexmark didn’t like customers to use alternative cartridges. It used technological means to prevent it. It had a “toner loading program” which measured the amount of toner remaining in the cartridge. The program is resident in the cartridge The program was 55 bytes long, much shorter than this slide LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

22 LAW OF COMPUTER TECHNOLOGY FALL 2015 © 2015 MICHAEL I. SHAMOS
Lexmark v. SCC A much longer “Printer Engine Program” drives the printer and resides on the printer Lexmark registered the code to both programs Lexmark sells two types of toner cartridges: “Prebate”: sold at a discount. User agrees to used the cartridge only once and return the used one to Lexmark “Non-Prebate”: no discount, no contractual restriction To enforce the Prebate agreement, the printer performs an authentication of the cartridge based on a hash value. If the hash value is incorrect, the printer will not operate LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

23 LAW OF COMPUTER TECHNOLOGY FALL 2015 © 2015 MICHAEL I. SHAMOS
Lexmark v. SCC SCC sells a “SMARTEK” chip which contains an identical copy of the Lexmark Toner Loading Program The SCC SMARTEK chip executes the Lexmark authentication sequence and fools the printer into thinking that the cartridge is from Lexmark SCC claims it is necessary for compatibility Lexmark claims copyright infringement circumvention of access controls on Toner Loading Program circumvention of access controls on Printer Engine Program District Court found a valid copyright in the Toner Loading Program (could be programmed in multiple ways) and enjoined SCC from copying LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

24 LAW OF COMPUTER TECHNOLOGY FALL 2015 © 2015 MICHAEL I. SHAMOS
Lexmark v. SCC On appeal. the Sixth Circuit found that the 55-byte program was uncopyrightable Former CMU Prof. Bruce Maggs (not at Duke) was Lexmark’s expert. He said the program could have been written 50 different ways (1) different constants and equations could be used (2) a lookup table could be used in lieu of equations (3) some measure other than torque could be used to approximate toner level (e.g., the number of pages printed); or (4) the same equations could be used in a different sequence. SCC’s expert testified that the code was determined by external factors (e.g. the printer only downloaded 55 bytes, so the program had to fit in that space) LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

25 LAW OF COMPUTER TECHNOLOGY FALL 2015 © 2015 MICHAEL I. SHAMOS
Lexmark v. SCC The appeals court sided with SCC “Dr. Maggs’ first and third suggestions—that different equations and values or a different means of measuring toner level altogether could have been used—do not appear to represent alternative means of expressing the ideas or methods of operations embodied in the Toner Loading Program; they appear to be different ideas or methods of operation altogether. Selection from among competing ideas or methods of operation generally does not result in copyright-protectable expression.” LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

26 LAW OF COMPUTER TECHNOLOGY FALL 2015 © 2015 MICHAEL I. SHAMOS
Lexmark v. SCC “When a work itself constitutes merely an idea, process or method of operation, or when any discernible expression is inseparable from the idea itself, or when external factors dictate the form of expression, copyright protection does not extend to the work.” The Toner Loading program was simply lockout code dictated by the authentication constraint Not copyrightable LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

27 LAW OF COMPUTER TECHNOLOGY FALL 2015 © 2015 MICHAEL I. SHAMOS
Major Ideas Computer software is copyrightable in many forms, including object code Software elements that are “dictated by external factors” are not protectible by copyright “Methods of operation” are not protectible by copyright Abstraction-Filtration-Comparison is a test for copyright infringement particularly appropriate for computer programs When idea and expression merge, there is no copyright LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS

28 LAW OF COMPUTER TECHNOLOGY FALL 2015 © 2015 MICHAEL I. SHAMOS
Q A & LAW OF COMPUTER TECHNOLOGY FALL © 2015 MICHAEL I. SHAMOS


Download ppt "Copyright in Computer Programs"

Similar presentations


Ads by Google