The defendants appeal from the June 24, 1992, order of the district court in which it found that the defendants had infringed Gates’ copyright on an engineering computer program and wrongfully misappropriated trade secrets. We conclude that the district court erroneously extended copyright protection to certain unproteetable elements of the computer program. We also conclude that the district court failed properly to determine the proteetability of many of the elements of Gates’ program which it found to have been copied by the defendants. Accordingly, we remand the copyright claims to the district court for a reconsideration of the programs in light of the test we set forth herein, which involves a determination of whether there was copying and a determination of whether the copying constitutes actionable infringement through application of the abstraction-filtration-comparison test.
Considering the trade secret claims, we conclude that Gates’ claims were not preempted by federal law, that Gates made an adequate showing that certain of its mathematical constants were valuable trade secrets, and that Gates took adequate steps to protect the confidentiality of such trade secrets below and on appeal. Accordingly, we affirm those portions of the district court’s opinion with respect to. the trade secret claims.
FACTS
The plaintiff-appellee, Gates Rubber Co. (“Gates”), is a Colorado corporation that manufactures rubber belts for use in industrial machinery. Gates leads the industry in sales of industrial machine belts. In order to determine the proper rubber belt for a particular machine it is necessary to perform complicated calculations involving numerous variables. The complexity of these calculations is such that they have customarily been performed by an engineer and significant variance in outcome often resulted. In order to facilitate the efficient and accurate selection of belts, and to boost the sales of their products, Gates developed a computer program entitled “Design Flex 4.0.” With this program a salesman can input a number of variables and thereby calculate the proper Gates belt for a machine. The program uses published formulas in conjunction with certain mathematical constants developed by Gates to determine belt size. Gates obtained a Certificate of Copyright Registration on its Design Flex program.
The defendant, Bando American (“Ban-do”), is a division of a Japanese corporation that competes with Gates in the manufacture and sale of industrial belts. Numerous Ban-do employees were formerly employees of Gates, including the defendants Allen Hana-no (Bando’s president), Ron Newman, and Steven Piderit.
Until 1988, the defendant, Steven R. Pider-it, was a Gates’ employee. 1 While at Gates, Piderit had access to Gates’ Design Flex program, including its components and the design and access codes. 2 In 1988, Bando hired Piderit away from Gates and assigned him to develop a program that would assist *831 in the selection of the proper belts for industrial machinery. In June of 1989, Bando introduced a demonstration copy of “Chauffeur,” a computer program similar to Gates’ Design Flex program. The Chauffeur program was made available in March of 1990. Piderit claims to be the sole author of the Chauffeur program.
Gates filed this action in the U.S. District Court for the District of Colorado on January 4, 1992, alleging unfair competition, misappropriation of trade secrets, infringement of copyright, and breach of contract. On January 28, 1992, the district court held a hearing on Gates’ request for a TRO, which was denied, and ordered experts appointed. On February 26, 1992, the plaintiff filed an amended complaint expanding its claims, naming additional parties, and requesting a permanent injunction. A hearing on the permanent injunction was held on March 26, 1992. On June 24, 1992, the district court issued its opinion finding that the defendants had infringed Gates’ copyright and willfully and maliciously misappropriated trade secrets. In an order dated August 12, 1992, the court amended typographical errors in its opinion, and denied the defendant’s motions to make additional findings, to alter and amend the judgment, for a new trial and to stay enforcement. This appeal was filed on August 26, 1992. The appellants claim that the district court erred when it (i) extended copyright protection to facts and ideas in the Design Flex program, and (ii) granted relief on Gates’ trade secret claim.
This case presents a number of issues that have never been squarely before a panel of this circuit, most notably the proper test to be applied to determine the scope of copyright protection for computer programs. In an attempt to aid the district courts in this determination and to bring clarity to this difficult area of the law, we first set forth what we consider to be the best means to determine the scope of protection. 3 In this first section, we seek to draw together the major issues that must be addressed and we try to organize the issues within a coherent framework that will be useable to the district courts that must address these claims in the first instance. We next briefly summarize the constitutional and statutory principles and the key judicial decisions that control and illuminate our analysis. As this analysis demonstrates, our approach is consistent with the evolving law in this area. We then apply our legal analysis to the facts in this ease, finding that, in several respects, the district court erred in its application. Finally, we consider the trade secrets issues raised by the appellants. 4
DISCUSSION
I. THE COPYRIGHT INFRINGEMENT ISSUE.
A. The Test for Determining Whether the Copyright of a Computer Program Has Been Infringed.
In order to prevail on a claim of copyright infringement, the plaintiff must show: (1) ownership of a valid copyright, and (2) copying by the defendant of protected components of the copyrighted material.
Feist Publications v. Rural Telephone Service Co.,
Williams Electronics, Inc. v. Artic International, Inc.,
Once the plaintiff has shown that it holds a valid copyright, it must next prove that the defendant unlawfully appropriated protected portions of the copyrighted work. This question involves two separate inquiries: 1) whether the defendant, as a factual matter, copied portions of the plaintiffs program;
6
and 2) whether, as a mixed issue of fact and law, those elements of the program that have been copied are protected expression and of such importance to the copied work that the appropriation is actionable. 3 Melville B. Nimmer, Nimmer on Copyright § 13.01[B], at 13-8 to 13-15 (1993) (hereinafter “Nimmer”);
see Arnstein v. Porter,
A plaintiff can establish that the defendant copied his program either through the presentation of direct evidence, or through indirect evidence that shows (1) that the defendant had access to the copyrighted program, and (2) that there are probative similarities between the copyrighted material and the allegedly copied material.
7
Auto
skill,
Although we suggest that it will often be helpful to make an initial determination of whether the defendant copied portions of the plaintiffs program before determining whether the copying involved protectable elements under the copyright law, there may be cases where the issue of protectability can more efficiently be addressed first. The order of the analysis will depend on the individual facts and issues in each case. Of course, even if generalized copying is established in the first instance, it will ultimately still be necessary to establish copying of precisely identified protected elements of a program before copyright infringement can be established.
The court’s inquiry does not end with a finding that the defendant copied portions of the plaintiffs program. Liability for copyright infringement will only attach where
protected elements
of a copyrighted work are copied.
Baker v. Selden,
The Copyright Act provides:
In no case does copyright protection for an original work of authorship extend to any idea, procedure, process, system, method of operation, concept, principle, or discovery, regardless of the form in which it is described, explained, illustrated, or embodied in such work.
17 U.S.C. § 102(b) (Supp.1993).
11
Accordingly, in order to impose liability for copyright infringement, the court must find that the defendant copied protectable elements of the plaintiffs program and that those protectable elements comprise a substantial part of the plaintiffs program when it is considered as a whole.
Autoskill,
Determining which elements of a program are protectable is a difficult task. However, an effective test can be formulated from constitutional and statutory constraints and guided by existing case law to determine the scope of copyright infringement. In substantial part, we adopt the “Abstraction-Filtration-Comparison” test which we previously approved for use in the context of a preliminary injunction ruling in
Autoskill,
First, in order to provide a framework for analysis, we conclude that a court should dissect the program according to its varying levels of generality as provided in the abstractions test. Second, poised with this framework, the court should examine each level of abstraction in order to filter out those elements of the program which are unprotectable. Filtration should eliminate from comparison the unprotectable elements of ideas, processes, facts, public domain information, merger material, scenes a faire material, and other unprotectable elements suggested by the particular facts of the program under examination. Third, the court should then compare the remaining protecta-ble elements with the allegedly infringing program to determine whether the defendants have misappropriated substantial elements of the plaintiffs program.
■ We now proceed to examine each of these steps in greater detail.
1. Abstraction
The first step in the analysis involves dissecting the allegedly infringed program according to the abstractions test. As Judge Learned Hand wrote in
Nichols v. Universal Pictures Corp.,
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. The last may be no more than the most general statement of what the play is about, and at times might only consist of its title; but there is a point in this series of abstractions where they are no longer protected, since otherwise the playwright could prevent the use of his “ideas,” to which, apart from their expression, his property is never extended.
Id.
at 121. The abstractions test is especially well suited to the dissection of computer programs because the test breaks down a program in a way that parallels the typical development of a program.
See Autoskill,
We agree with Professor Nimmer that “applying [the abstractions] test conscientiously and systematically can help a court separate ideas from expression and eliminate from the substantial similarity analysis those portions of a work that are not eligible for copyright protection.” 3 Nimmer § 13.03[F] 13-102.17. However, in and of itself, the abstraction test does not identify the protect-able elements of a program. Rather, it is merely one tool that can be utilized to accomplish this task. Abstraction is particularly useful in enabling a court to filter out ideas and processes from protectable expression.
Application of the abstractions test will necessarily vary from case-to-case and program-to-program. Given the complexity and ever-changing nature of computer technology, we decline to set forth any strict methodology for the abstraction of computer programs. See generally Andrew H. Rosen, Virtual Reality: Copyrightable Subject Matter and the Scope of Judicial Protection, 33 Jurimetrics J. 35 (1992). Indeed, in most *835 cases we foresee that the use of experts will provide substantial guidance to the court in applying an abstractions test. However, a computer program can often be parsed into at least six levels of generally declining abstraction: (i) the main purpose, (ii) the program structure or architecture, (iii) modules, (iv) algorithms and data structures, • (v) source code, and (vi) object code. See John W.L. Ogilvie, Defining Computer Program Parts Under Learned Hand’s Abstractions Test in Software Copyright Infringement Cases, 91 Mich.L.Rev. 526 (1992) (hereinafter “Ogilvie”).
The main purpose of a program is a description of the program’s function or what it is intended to do.
See
Ogilvie at 534;
Altai,
The program’s architecture or structure is a description of how the program operates in terms of its various functions, which are performed by discrete modules, and how each of these modules interact with each other. The architecture or structure of a program is often reduced to a flowchart, which a programmer uses visually to depict the inner workings of a program.
Paperback,
The next level of abstraction consists of the modules. See Steven R. Englund, Note, Idea, Process, or Protected Expression?: Determining the Scope of Copyright Protection of the Structure of Computer Programs, 88 Mich.L.Rev. 866, 871, 899 (1990) (hereinafter “Englund”). A module typically consists of two components: operations and data types. An operation identifies a particular result or set of actions that may be performed. For example, operations in a calculator program might include adding or printing data. A data type defines the type of item that an operator acts upon such as a student record or a daily balance. See Ogilvie at 534-36.
Algorithms and data structures are more specific manifestations of operations and data types, respectively. An algorithm is a specific series of steps that accomplish a particular operation. Ogilvie at 536;
see Whelan,
The computer program is written first in a programming language, such as Pascal or Fortran, and then in a binary language consisting of zeros and ones. Source code is the literal text of a program’s instructions written in a particular programming language.
Trandes Corp. v. Guy F. Atkinson Co.,
These generalized levels of abstraction will not, of course, fit all computer codes. Ordinarily, expert testimony will be helpful to organize a particular program into various levels of abstraction. In any event, as point *836 ed out earlier, the organization of a program into abstraction levels is not an end in itself, but it is only a tool that facilitates the critical next step of filtering out unprotectable elements of the program.
2. Filtration
Once a court has succeeded in identifying the various levels of abstraction of a computer program, it must filter out those elements of the program that are not protected by copyright. The Copyright Act provides that “idea[s], procedure[s], processes], system[s], method[s] of operation, concepts], principles, or discoveries]” are not protectable. 17 U.S.C. § 102(b) (Supp.1993). Accordingly, the court must filter out these unprotectable elements. In order to effectuate the purposes behind the copyright laws, it is also appropriate to apply the doctrines of merger and scenes a faire to filter out unprotectable elements.
(a) The Idear-Expression Dichotomy
One of the fundamental tenets of copyright law is that protection extends only to the author’s original expression and not to the ideas embodied in that expression. 17 U.S.C. § 102(b) codifies this tenet by denying copyright to ideas, concepts and principles. Numerous cases have expounded on the idea-expression dichotomy. See
e.g., Feist,
(b) The Process-Expression Dichotomy
Although it is the idea-expression distinction that has received the primary attention in the cases construing copyright protection, the Copyright Act denies protection to other equally important program elements. When considering utilitarian works such as computer programs one of the most important of these elements is process. See Englund, 88 Mich.L.Rev. 866. 17 U.S.C. § 102(b) denies protection to procedures, processes, systems and methods of operation. 13 The legislative history of the Copyright Act clarifies any ambiguity about the status of processes.
Some concern has been expressed lest copyright in computer programs should extend protection to the methodology or processes adopted by the programmer, rather than merely to the “writing” expressing his ideas. Section 102(b) is intended, among other things, to make clear that the expression adopted by the programmer is the copyrightable element in a computer program, and that the actual processes or *837 methods embodied in the program are not within the scope of the copyright law.
H.R.Rep. No. 1476, 94th Cong., 2d Sess. 57 (1976), reprinted in 1976 U.S.C.C.A.N. 5659, 5670.
The Supreme Court addressed the copy-rightability of a utilitarian process in
Baker v. Selden,
Returning then to our levels of abstraction framework, we note that processes can be found at any level, except perhaps the main purpose level of abstraction. Most commonly, processes will be found as part of the system architecture, as operations within modules, or as algorithms.
(c) Facts
The Copyright Act also denies protection to discoveries. 17 U.S.C. § 102(b). The Supreme Court squarely addressed the issue of the protectability of facts in its recent opinion in
Feist Publications, Inc. v. Rural Telephone Services Co.,
No one may claim originality as to facts. This is because facts do not owe their origin to an act of authorship. The distinction is one between creation and discovery: the first person to find and report a particular fact has not created the fact; he or she has merely discovered its existence. ... [0]ne who discovers a fact is not its maker or originator. The discoverer merely finds and records.
(d) Public Domain
“The two fundamental criteria of copyright protection [are] originality and fixation in tangible form_” H.R.Rep. No. 1476, 94th Cong., 2d Sess. 51 (1976),
reprinted in
1976 U.S.C.C.A.N. 5659, 5664. 17 U.S.C. § 102(a) establishes that copyright can only subsist in
“original
works of authorship.” (emphasis added). Originality in the field of copyright requires that the work be independently created by the author and that it possesses a minimal degree of creativity.
Feist,
Once a court has filtered out a program’s ideas, processes, facts, and unoriginal elements, it has eliminated most of those elements that are unprotected based on the first principles of copyright law. However, in order to give effect to these principles, the courts have devised two additional filtration doctrines. These are the doctrines of merger and scenes a faire.
(e) The Merger Doctrine
Under the merger doctrine, copyright protection is denied to expression that is inseparable from or merged with the ideas, processes, or discoveries underlying the expression.
Concrete Machinery Co. v. Classic Lawn Ornaments, Inc.,
(f) Scenes A Faire
Under the
scenes a faire
doctrine, we deny protection to those expressions that are standard, stock, or common to a particular topic or that necessarily follow from a common theme dr setting.
Autoskill,
The
scenes a faire
doctrine also excludes from protection those elements of a program that have been dictated by external factors.
See Plains Cotton Co-op Ass’n. v. Goodpasture Computer Serv., Inc.,
3. Comparison
After the court has filtered out those elements of the original program that it has found to be unprotectable, it is left with a
*839
core of protected elements that can be compared to the alleged infringing program. Ultimately the court must decide whether those protectable portions of the original work that have been copied constitute a substantial part of the original work — i.e. matter that is significant in the plaintiffs program.
See Altai
B. Review of Constitutional and Statutory Principles and Key Judicial Precedent.
The test that we adopt today is firmly rooted in traditional principles of copyright law. The Constitution establishes an affirmative duty for Congress “[t]o promote the Progress of Science and useful Arts, by securing for limited Times to Authors and Inventors the exclusive Right to their respective Writings and Discoveries.” U.S. Const, art. I, § 8, cl. 8;
see Sony Corp. v. Universal City Studios, Inc.,
In order to secure these goals Congress enacted The Copyright Act, 17 U.S.C. § 101 et seq., which establishes that
(a) Copyright protection subsists, in accordance with this title, in original works of authorship fixed in any tangible medium of expression, now known or later developed, from which they can be perceived, reproduced, or otherwise communicated, either directly or with the aid of a machine or device. Works of authorship include the following categories:
(1) literary works;
(6) motion pictures and other audiovisual works;
17 U.S.C. § 102(a) (Supp.1993).
Computer programs aré considered literary works for purposes of copyright analysis. 17 U.S.C. § 101 states:
“Literary works” are works ... expressed in words, numbers, or other verbal or numerical symbols or indicia, regardless of the nature of the material objects, such as ... film, tapes, disks, or cards, in which they are embodied.
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.
17 U.S.C. § 101 (1977 and Supp.1993).
Atari Games Corp. v. Nintendo of America, Inc.,
Much of the modern doctrine concerning the copyright of utilitarian works and the process-expression dichotomy owes its origins to the Supreme Court’s opinion in
Baker v. Selden,
The copyright of a work on mathematical science cannot give to the author an exclusive right to the methods of operation which he propounds, or to the diagrams which he employs to explain them, so as to prevent an engineer from using them whenever occasion requires. The very object of publishing a book on science or the useful arts is to communicate to the world the useful knowledge which it contains. But this object would be frustrated if the knowledge could not be used without incurring the guilt of piracy of the book. And where the art it teaches cannot be used without employing the methods and diagrams used to illustrate the book, or such as are similar to them, such methods and diagrams are to be considered as necessary incidents to the art, and given therewith to the public; not given for the purpose of publication in other works explanatory of the art, but for the purpose of practical application.
Baker,
One of the early attempts to apply the doctrine of copyright to computer programs came in
Whelan Assoc. v. Jaslow Dental Laboratory, Inc.,
[T]he line between idea and expression may be drawn with reference to the end sought to be achieved by the work in question. In other words, the purpose or function of a utilitarian work would be the work’s idea, and everything that is not necessary to that purpose or function would be part of the expression of the idea.
The Whelan court’s articulation of this general rule for distinguishing idea from expression has been criticized extensively. 17 However, Whelan did use the limiting doctrines of merger and scenes a faire to restrict the scope of protection. In any event, when a program is understood to encompass more than one idea, the general principle of Whelan provides a useful means to distinguish idea from expression. At its base, Whelan is premised upon traditional principles of copyright law, and its conclusion that the structure of a program may be protecta-ble is sound.
In
Lotus Development Corp. v. Paperback Software International,
The Second Circuit in
Computer Associates International, Inc. v. Altai, Inc.,
The Supreme Court’s most recent pronouncements in the area of copyright law came in
Feist Publications, Inc. v. Rural Telephone Service Co.,
A panel of this circuit recently considered computer program copyright infringement in
Autoskill, Inc. v. National Educational Support Systems, Inc.,
We find in these and other cases that have considered the copyrightability of computer programs that there has begun to be developed a coherent approach to the protectability analysis. The approach that we outline *842 today is consistent with this evolving approach to the copyright protection of computer programs.
C. Applying the Abstraction-Filtration-Comparison Test to the Computer Programs at Issue in This Case.
The district court undertook an analysis similar to that which we set forth today. First, it determined whether, as a factual matter, the Chauffeur program had been copied from the Design Flex program.
18
The court initially found that the defendants had access to the Design Flex program. It then considered the testimony of the expert witnesses and identified a number of similarities between the two programs. The court concluded that “the only explanation regarding the constants, the install files, and the overall data flow and presentation, is that the Chauffeur program was copied from the Design Flex program.”
Gates Rubber Co. v. Bando American, Inc.,
Next, the court applied the abstractions test to identify “unprotectable ideas.” The court dissected the program and considered whether certain of the elements more closely approximated idea or expression. The court concluded that the merger doctrine and the
scenes a faire
doctrine were inapplicable. Finally, the court evaluated what it regarded as the protectable elements and determined that they were sufficiently significant to the Design Flex program to conclude that the defendants had infringed on Gates’ copyright in the Design Flex program when it copied such elements.
Gates Rubber,
The copyright issues on appeal all revolve around whether the district court erroneously extended copyright protection to unprotectable elements of the Design Flex program. The appellants argue that the court failed to consider whether three of the elements of the Design Flex program were protectable, and that it applied the wrong legal standard in protecting certain elements of the Design Flex program. The appellants argue that if a proper filtration analysis were conducted, the Chauffeur program would not be found to have infringed any protectable elements of the Design Flex program.
The district court ultimately concluded that the defendants had misappropriated ten elements of the Design Flex program that were protected by Gates’ copyright. They included: menus, constants, sorting criteria, control flow, data flow, the engineering calculation module, the design module, common errors, fundamental tasks, and install files. We conclude that the district court failed to undertake a proper filtration analysis with respect to several elements and that it erroneously found other elements to be protecta-ble. Accordingly, we remand for further consideration by the district court. 19
Constants
Constants are the invariable integers that comprise part of the formulas used to perform the calculations in the programs. The district court failed to consider whether the constants were unprotectable processes or facts or whether they were subject to the merger doctrine. In failing to undergo the filtration process, the court skipped an essential step in the copyright infringement analysis and as a result extended copyright protection to an unprotectable element of Design Flex.
The record reveals that these constants are facts that are unprotectable under copyright law. The constants in the Design Flex program represent scientific observations of physical relationships concerning the load that a particular belt can carry around cer
*843
tain sized gears at certain speeds given a number of other variables. These relationships are not invented or created; they already exist and are merely observed, discovered and recorded. Such a discovery does not give rise to copyright protection.
See Feist,
Gates claims that the constants should be protected because it spent thousands of hours testing the relationships and because engineers ultimately had to determine the best figure to represent the test results.
20
However, this argument amounts to an assertion of the “sweat of the brow” doctrine which has been rejected by the Supreme Court.
Feist,
Accordingly, while the constants were probative of the factual question whether the defendants copied from the Design Flex program,
21
they were unprotectable and therefore should have been filtered out before the district court addressed the ultimate question of whether the defendants infringed on Gates’ copyright. Instead, the court relied heavily on the similarity of the constants in the two programs when it concluded that Chauffeur infringed on Gates’ copyright. It noted that the constants “he at the heart of the dispute,” and gave “special regard to the mathematical constants” in finding that the defendants had violated Gates’ copyright.
Gates Rubber,
Menus and Sorting Criteria
These terms are not defined in the district court opinion. However, menus may mean the visual screen displays that present a computer operator with a limited number of commands available at a given stage in the computer program’s operation.
Lotus Development Corp. v. Borland International, Inc.,
• The defendants claim that the menus and the sorting criteria are visual components of the programs as to which Gates has waived all claims of infringement. At trial, counsel for Gates stated that the “plaintiff is willing to stipulate that we are making no claim as to trade secret or copyright as to the screens of these computer programs ...” Aplt.Apx. at 266. When asked about its claims concerning the menus and sorting criteria at oral argument in this appeal, however, Gates asserted that it had only waived its claims concerning the visual screen displays, and that it maintained a copyright claim on the written elements of the program that created those displays.
The district court failed to clarify whether it was referring to the visual screen displays *844 or some other aspect of the program when it discussed the menus and sorting criteria, and it failed to address whether the visual screen display can be separated from the program generating the visual screen display for purposes of the stipulation. Accordingly, we remand for a clarification of the terms “menu” and “sorting criteria”; for a determination of whether Gates has waived its infringement claims with respect to these elements; and for a determination of the pro-tectability of such elements if Gates is determined not to have waived its infringement claim with regard to them.
Control and Data Flow
Control flow refers to the overall sequence of actions and events in a program. Data flow is the sequence of actions taken on each piece of information, that is, how the data travels through the program. The district court found that “the flow of these two types of information are closer to the expression of how the task is performed than the idea of undertaking calculation of belts and drives by use of a computer program.”
Gates Rubber,
A fair reading of the district court opinion suggests that the court recognized that a computer program may contain more than one idea, and that unprotected ideas may be found throughout the program. However, we are more concerned by the district court’s failure to examine the control and data flow in light of the process-expression dichotomy. Again, the district court failed to define exactly what it meant by control flow and data flow and the record is unclear. 22 We remand for clarification of the terms “control flow” and “data flow” and for reconsideration of these elements in light of the idea-expression and process-expression dichotomies as they have been set forth in this opinion.
Engineering Calculation and Design Modules
The program performs its calculations and selects the proper belt through a series of operating instructions contained in modules. The district court concluded that:
The modules of the program were also found to be substantially similar. These modules, like chapters of a novel or scenes from a play, performed particular functions — here the engineering calculations and the design aspect of the program (containing the V-belt design algorithms). Concerning the former module, it was noted that behavior was similar, and with the latter the similarity concerned overall structure and organization. With regard to the former module, this falls closer to the expression range because, although the pure engineering aspect in a broad sense may be more likely to be not protected, the relevant engineering modules in the two programs contain particular elements which perform in similar manners. The latter module is somewhat more difficult as it involves algorithms, or procedures for solving given types of mathematical problems. The Court here rejects the argument that while the remaining portion [of the program] is properly protected under copyright law, the algorithms, as a “process” can only be covered by patent law. Such a holding would tend to fragment further the rather tenuous continuity found in copyright law concerning computer programs. This conclusion is supported by the Whelan decision.797 F.2d at 1229 .
Gates Rubber,
The district court identified two modules— the engineering module and the design module — and it found them to be protected for different reasons. The appellant contests this finding, asserting that calculation module, design module, and engineering module *845 are just different names for the same module. Gates has failed to brief this issue. The expert testimony casts doubt on the district court’s interpretation that the engineering module and the design module are two separate modules; however, the record is not sufficiently clear to resolve the dispute.
The district court found that the engineering module was expression rather than idea because of “particular elements which perform in similar manners.”
Gates Rubber,
Common errors or misbehaviors are instances in which the two programs share similar errors when not performing correctly or as intended.
See Atari Games Corp. v. Nintendo of America,
While common errors may often be strong evidence of copying as a factual matter,
23
they do not assist in determining what material is protectable under copyright law.
BellSouth Advertising & Publishing Corp. v. Donnelley Information Publishing, Inc.,
Fundamental Tasks
We normally would associate the term “fundamental tasks” with the highest level of abstraction — that is, the ideas or purposes underlying a program. In the instant case, the district court found the fundamental tasks of the Design Flex program to be protectable expression, but it failed to explain what it thought the fundamental tasks of the Design Flex, program were. The district court stated that
*846 [although “fundamental tasks” may in a broader sense merely describe what are necessary means to effect a particular end, the term here is more specific due to the types of tasks which were available to achieve the particular end of designing belts and drives.
Gates Rubber,
Install Files
The install files here are separate utility programs that are used to load the program from a floppy disk onto a hard disk. They are part of the Disk Operating System and apparently are not part of the Design Flex program. Accordingly, it is not clear that Gates has a copyright claim on the install files. The district court failed to make adequate findings on this element to enable us to determine if the install files were covered by Gate’s copyright and it failed to engage in a filtration analysis as to this element. Accordingly, we remand for a determination of whether Gates held a copyright on the install files and for a reconsideration of the install files in light of the test we have set forth herein. 24
II. THE TRADE SECRET ISSUE.
The district court concluded that Bando had misappropriated trade secrets belonging to Gates and ordered Bando to “return any and all information containing the constants used in either the Chauffeur program or the Design Flex program ... [and] restrained [them] from further use of these constants.”
Gates Rubber,
A. Federal Preemption of the Trade Secret Claims
Bando contends that the district court incorrectly considered Gates’ state law misappropriation claim because the claim was preempted by 17 U.S.C. § 301. Section 301(a) provides that:
(a) On and after January 1, 1978, all legal or equitable rights that are equivalent to any of the exclusive rights within the general scope of copyright as specified by Section 106 in works of authorship that are fixed in a tangible medium of expression and come within the subject matter of copyright as specified by sections 102 and 103, whether created before or after that date and whether published or unpublished, are governed exclusively by this title. Thereafter, no person is entitled to any such right or equivalent right in any such work under the common law or statutes of any State.
17 U.S.C. § 301(a) (emphasis added). However, § 301(a) is qualified by § 301(b), which provides in relevant part:
(b) Nothing in this title annuls or limits any rights or remedies under the common law or statutes of any State with respect to—
(1) subject matter that does not come within the subject matter of copyright as specified by sections 102 and 103, including works of authorship not fixed in any tangible medium of expression; or
(2) any cause of action arising from undertakings commenced before January 1, 1978;
(3) activities violating legal or equitable rights that are not equivalent to any of the *847 exclusive rights within the general scope of copyright as specified by section 106; ...
17 U.S.C. § 301(b) (Supp.1993).
Thus, a state common law or statutory claim is preempted by Section 301 if: “(1) the work is within the scope of the ‘subject matter of copyright’ as specified in 17 U.S.C. §§ 102 and 103; and (2) the rights granted under state law are equivalent to any exclusive rights within the scope of federal copyright as set out in 17 U.S.C. § 106.”
Ehat v. Tanner,
In its amended complaint, Gates alleged that “the use of the proprietary data, engineering formula, and the code of the Design Flex and the Life in Hours computer programs constitute a misappropriation of the trade secret [sic] of The Gates Rubber Company as stated in the Colorado Uniform Trade Secrets Act, C.R.S. 7-74-102(2).” ApltApx. at 8. The parties do not dispute that the computer programs at issue in this case fall within the “subject matter of copyright” as specified by 17 U.S.C. §§ 102 and 103. Accordingly, the question before us is whether the rights granted by those provisions of the Colorado Uniform Trade Secrets Act, Colo.Rev.Stat. 7-74-102(2), upon which Gates relies, are equivalent to any of the exclusive rights granted by the Copyright Act, 17 U.S.C. §§ 102-103.
Section 106 of the Copyright Act grants to the copyright owner the exclusive rights to: (i) reproduce the copyrighted work; (ii) prepare derivative works; (iii) distribute copies of the work; (iv) perform the work publicly; and (v) display the work publicly. 17 U.S.C. § 106 (1977 and Supp.1993). In order to determine whether Gates’ misappropriation claim asserts rights equivalent to those delineated in Section 106, we refer to the elements of the state law cause of action. Federal law will preempt “a state-created right if that right may be abridged by an act which, in and of itself, would infringe one of the exclusive rights” established by federal law.
G.S. Rasmussen & Assoc. v. Kalitta Flying Service, Inc.,
Under Colorado law, to prove misappropriation of a trade secret, a plaintiff must show: (i) that he or she possessed a valid trade secret, (ii) that the trade secret was disclosed or used without consent, and (iii) that the defendant knew, or should have known, that the trade secret was acquired by improper means.
25
The breach of a duty of trust or confidence “is the gravamen of such trade secret claims and supplies the ‘extra
*848
element’ that qualitatively distinguishes such trade secret causes of action from claims for copyright infringement that are based solely on copying.”
26
Computer Associates International, Inc. v. Altai, Inc.,
The appellants suggest that this court’s opinion in
Ehat v. Tanner,
B. The Economic Value of the Constants
The appellants claim that the district court erred when it failed to set forth the elements of a trade secret claim and make specific findings as to each element. Further, the appellants argue that if the court had engaged in this analysis the constants would not have been found to be trade secrets because they had no competitive economic value.
What constitutes a trade secret is a question of fact that will only be disturbed if clearly erroneous.
Network Communications v. Boor-Crepeau,
1) the extent to which the information is known outside the business;
2) the extent to which it is known to those inside the business, ie., by the employees;
3) the precautions taken by the holder of the trade secret to guard the secrecy of the information;
4) the savings effected and the value of the holder in having the information as against competitors;
5) the amount of effort or money expended in obtaining and developing the information; and
6) the amount of time and expense it would take for others to acquire and duplicate the information.
Colorado Supply Co. v. Stewart,
C. Disclosure of the Trade Secrets at Trial
The defendants note that the numerical constants were revealed during the course of the permanent injunction hearing. They contend that as a result of these disclosures the constants lost their status as trade secrets and therefore it was inappropriate for *849 the district court to issue a permanent injunction.
Although the constants were disclosed at the permanent injunction hearing, we conclude that as a result of Gates’ post-hearing measures to protect the confidentiality of the constants, they retained their status as trade secrets. Gates evidenced a continuing intent to maintain the secrecy of the constants. Under Colorado law, the holder of a trade secret is only required to exercise reasonable efforts to maintain its secrecy.
See Colorado Supply,
The defendants point out that the record was not sealed until this appeal had already been instituted and the defendants had filed their opening brief. However, there has been no evidence that a competitor had access to or learned of the constants during the period after the hearing and before the record was sealed. As the case comes before us, the record has been sealed and Bando has been permanently enjoined from using or disclosing these constraints. Absent a showing that the constants were published outside the court records, we conclude that Gates’ inadvertent and inconsequential disclosure of the constants at trial and delay in sealing the record, are inadequate to deprive the constants of their status as trade secrets.
CONCLUSION
The district court failed adequately to filter those portions of the Design Flex program that it found to have been misappropriated. Thus, the court did not eliminate those elements that are unprotectable under copyright law. As a result, the court relied on unprotectable elements within the Gates program in determining that the defendants had infringed Gates’ copyright. Other elements were inadequately described and analyzed to permit us to review the district court’s determination of protectability. Accordingly, we VACATE the finding of copyright infringement and REMAND for reconsideration of the copyright infringement claim in light of this opinion.
We conclude that Gates’ trade secret claims are not preempted by federal law, that Gates made an adequate showing that the trade secrets were valuable, and that Gates took adequate steps to protect the confidentiality of the trade secrets below and on appeal. Accordingly, that portion of the district court’s opinion concerning the trade secret claim is AFFIRMED.
Notes
. Both Piderit and Newman signed written agreements not to reveal trade secrets and to return all materials used during their employment with Gates. Piderit however thwarted Gates' policy of requiring immediate departure from its plant upon resignation by waiting four weeks after accepting Bando's offer before informing Gates of his decision to leave.
. There was evidence that Piderit pirated a copy of the Design Flex program and brought it with him to Bando.
. The court was aided in its analysis of the copyright law concerning computer programs by briefs submitted by amicus curiae: the American Committee for Interoperable Systems; Computer and Business Equipment Manufacturers Association; the International Anticounterfeiting Coalition, Inc.; Adobe Systems, Inc.; Apple Computer, Inc.; Computer Associates International, Inc.; Digital Equipment Corporation, Inc.; International Business Machines Corporation; Lotus Development Corporation; Wordperfect Corporation; and Xerox Corporation.
. Before us is the appellee's motion to protect trade secrets and copyrighted and confidential materials. This court, in an order dated November 25, 1992, ordered the appendices on the appeal temporarily sealed until this motion could be considered. In light of our treatment of the trade secret issues, we grant this motion. Further, the "Second Supplemental Appendix of Ap-pellee the Gates Rubber Company” is accepted for filing and is ordered filed under seal.
. In the instant case. Gates presented evidence that it obtained a Certificate of Copyright Registration for the Design Flex Program. The district court held that the defendants had failed to present sufficient evidence to rebut the presumption of the copyright's validity.
Gates Rubber Co. v. Bando American, Inc.,
. Copying is used herein as a shorthand reference to any infringement of the copyright holder's exclusive rights that are set forth at 17 U.S.C. § 106.
Ford Motor Co. v. Summit Motor Products, Inc.,
Subject to sections 107 through 120, the owner of copyright under this title has the exclusive rights to do and to authorize any of the following:
(1) to reproduce the copyrighted work in copies ...;
(2) to prepare derivative works based upon the copyrighted work;
(3) to distribute copies ... of the copyrighted work to the public by sale or other transfer of ownership, or by rental, lease, or lending;
17 U.S.C. § 106 (1977 and Supp.1993).
. In examining the similarities between two programs under the indirect method of proving copying it is ordinarily important to compare the whole works.
Atari, Inc. v. North American Philips Consumer Electronics Corp.,
it is far preferable, especially in an area of legal and technological sophistication as complex as this area of copyright protection, to draw upon a larger arsenal of facts in order to design or derive the appropriate legally significant facts. Once these are gathered and expert testimony is heard, the court can then analyze which portions of the program, according to the expert testimony, infringes the protected expression.
Gates Rubber Co. v. Bando American, Inc.,
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. That is because, even if a court finds protectable elements of a program to be similar, it still must determine whether those elements were copied from the plaintiff's work, whether the duplication can be attributed to other factors, or whether its reproduction was pure chance. 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. That is because, in certain situations, it may be more likely that protected elements were copied if there is evidence of copying among the unprotected elements of the program.
. When a plaintiff relies on the indirect method of proving copying, he merely creates an inference that the defendant appropriated portions of the plaintiff's program. The defendant can come forward with evidence of independent creation to rebut the inference of copying created by the evidence of access and factual similarity.
Summit Motor,
. The degree of similarity between programs necessary to give rise to the inference that copying occurred will vary from case to case.
Amstein,
. In the instant case, the district court found that the defendants had access to Gates’ computer programs and that "the Chauffeur program was copied from the Design Flex program.”
Gates Rubber,
. As the 1976 House Report on this section noted
"Section 102(b) is intended, among other things, to make clear that the expression adopted by the programmer is the copyrightable element in a computer program, and that the actual processes or methods embodied in the program are not within the scope of the copyright law.”
H.R.Rep. No. 1476, 94th Cong., 2d Sess. 57 (1976), reprinted in 1976 U.S.C.C.A.N. 5659, 5670.
. However, we note that the appropriate test to be applied and the order in which its various components are to be applied in any particular case may vary depending on the claims involved, the procedural posture of the suit, and the nature of the computer programs at issue.
. For our purposes we consider each of these terms to refer generally to a method for achieving a particular result. For simplicity, we will refer only to "process.”
. We recognize that the scenes a faire doctrine may implicate the protectability of interfacing and that this topic is very sensitive and has the potential to effect widely the law of computer copyright. This appeal does not require us to determine the scope of the scenes a faire doctrine as it relates to interfacing and accordingly we refrain from discussing the issue.
. A number of tests have been proposed to give guidance to courts in making this determination. They include “total concept and feel,” "fundamental essence or structure," and the "iterative” tests. The “total concept and feel” .test was developed in different contexts and it is not very helpful in comparing similarities among protected components of computer codes. The other tests are artificially narrow and restrictive. Instead, the comparison must necessarily be an ad hoc determination of whether the infringed por *840 tion is a significant or important part of the plaintiff's code, considered as a whole.
. There is no dispute in this appeal that computer programs may be protectable under the copyright law.
.
See Altai,
. The court attempted to fit its analysis into the rubric of the "extrinsic-intrinsic” test. However, that effort largely overlaps the "abstraction-filtration-comparison” test we adopt today and it merely adds confusion to the existing plethora of terminology. For purposes of addressing the issue of copyright infringement of computer programs, we think it is better simply to use the terminology addressed in our opinion.
. We note that the court correctly found a number of the elements present in both the Design Flex and Chauffeur programs to be unprotecta-ble. It found the formulas used in the program to have been previously published and therefore in the public domain, and the level of complexity of the program to be more akin to the idea of the program than its expression.
Gates Rubber,
. As Gates explained in its submission to this court:
The engineering constants were derived by Gates based upon a large number of tests. The result of each test was plotted on a graph so that it could be compared with other results. Once all results had been collected, the constant was created by comparing and interpreting all results and determining which result best typified the group. The designated constant is representative of the group in the opinion of the engineer making the determination.
Aplee.Br. at 32. Gates mischaracterizes the derivation of the constants as having been "created.”
. The district court has found that the constants were trade secrets belonging to Gates, and in Part II of this opinion we uphold that finding. Thus, the fact that Bando used these constants in its program is strong evidence on the factual issue of copying.
. The district court merely summarized the testimony of one of the experts who found that several elements of the programs were similar including: "data flow, which he described as being analogous to 'recipe;' [and] control flow which is the sequence of events.”
Gates Rubber,
. In fact, common errors are not always probative of copying. For example, on the record before us, the testimony of the expert Dr. Dorn argued that the errors resulted from different sources in the programs.
. Except as stated above, we find no error in the remaining portions of the district court’s analysis of Gates' copyright claim.
. The Colorado Uniform Trade Secrets Act provides for damages and injunctive relief for misappropriation of trade secrets. Colo.Rev.Stat. 7-74-103 and 7-74-104. Misappropriation is defined as:
(a) Acquisition of a trade secret of another by a person who knows or who has reason to know that the trade secret was acquired by improper means; or
(b) Disclosure or use of a trade secret of another without express or implied consent by a person who:
(I)Used improper means to acquire knowledge of the trade secret; or
(II) At the time of the disclosure or use, knew or had reason to know that his knowledge of the trade secret was:
(A) Derived from or through a person who had utilized improper means to acquire it;
(B) Acquired under circumstances giving rise to a duty to maintain its secrecy or limit its use; or
(C) Derived from or through a person who owed a duty to the person seeking relief to maintain its secrecy or limit its use; or
(III) Before a material change of his position, knew or had reason to know that it was a trade secret and that knowledge of it had been acquired by accident or mistake.
Colo.Rev.Stat. 7-74-102(2).
. In its complaint, Gates alleges that (i) Bando officials knew that they possessed trade secrets belonging to Gates and that the trade secrets were used in the development of their computer programs, (ii) that the trade secrets were used in violation of Gates' rights and as a means of unfair competition, (iii) that the trade secrets were obtained in violation of confidentiality agreements, and (iv) the use of the trade secrets constituted a misappropriation under Colorado law. Amended Complaint, Aplt. Apx at 6-8.
