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 >> 1999 >> [1999] JlLawInfoSci 2

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

Jones, Alex --- "The Protection of Computer Programs Under TRIIPS: The Subject Matter Issue" [1999] JlLawInfoSci 2; (1999) 10(1) Journal of Law, Information and Science 7

The Protection of Computer Programs Under TRIPS:
The Subject Matter Issue

ALEX JONES

Abstract

This paper examines the legal protection given to computer programs, arguing first that hard wired programs and code implemented programs are functionally equivalent and should be given the same intellectual property protection and secondly that, although computer programs as a whole ought to be given intellectual property protection, their underlying conceptual and functional elements should not be protected. The paper examines the treatment of computer programs under TRIPS, along with the steps taken to implement the agreement in Australia and argues that in order to avoid giving indirect protection to the underlying elements of computer programs, the law should recognise a general right of reverse engineering. By not recognising that general right, the Copyright Amendment (Computer Programs) Act hinders rather than encourages the development of the Australian software industry.

I Introduction

This paper examines the legal protection of computer programs. It begins with an examination of computer programming technology. On the basis of this examination, it is concluded that hard-wired programs and code implemented programs are functionally equivalent and should be treated as a coherent subject matter for the purposes of intellectual property protection. It is also argued that it is necessary to conceptually separate computer programs in their final implementational form from their underlying conceptual and functional elements. The paper then considers the economic justification for ‘fencing’ computer programs and their underlying elements. It explores the relationship between industry implemented physical fencing methods and legal fencing through intellectual property protection. It is concluded that computer programs as a whole should be protected from piracy by intellectual property protection but it is suggested that protection of their underlying elements is probably not justified. The treatment of computer programs under the TRIPs Agreement is examined, along with the steps taken to implement these obligations in Australia. The focus of this examination is the subject matter of intellectual property protection. It is submitted that if the underlying elements of computer programs are not directly protected subject matter, indirect protection should be avoided through the recognition of a general right of reverse engineering. Nevertheless, the Copyright Law Review Committee reached a different conclusion in its Report on Computer Software Protection and its recommendations will soon be implemented in the Copyright Amendment (Computer Programs) Set 1999. This will create a legal environment that hinders rather than encourages the growth of the Australian computer program industries.

II Computer Programs

1. The Technology of Algorithm Implementation

Computers are electronic machines capable of processing data. The data is processed according to algorithms. An algorithm is simply a method or set of steps for achieving a particular purpose of function.[1]

1.1 Basic Methods of Implementation

Algorithms are implemented in the computer using a complex series of digital switches, which form a digital-logic circuit. This digital-logic circuit may be hard-wired so that any given digital switch is dedicated the task of performing a particular step of a particular algorithm.[2] This is referred to as ‘hard-wired logic’ or ‘hardware implementation’. Alternatively, the digital-logic circuit may be temporarily created by the ‘execution’[3] of machine-readable code, which repeatedly assigns different algorithmic steps to general-purpose switches, thereby creating a ‘virtual machine’[4]. This is referred to as or ‘programmable logic’ or ‘code implementation’.

Both methods of algorithm implementation have advantages and correlative disadvantages, which must be traded off against each other in choosing an implementation method for any particular algorithm. The decision between hardware and code implementation for any particular algorithm involves issues of cost, speed, efficiency, reliability and frequency of expected change.[5] Most importantly, hardware algorithms are processed much more quickly than code implemented algorithms because the execution of code algorithms also requires considerable processing.[6] On the other hand, hardware algorithms require a separate binary switch for each step of the algorithm, where as code implemented algorithms use the same binary switches repeatedly, as they are processed.[7] Code implementation therefore allows more algorithms to be implemented for a given cost, thereby increasing the potential functionality of the computer.[8]

A functionally desirable result will usually require the completion of a series of smaller tasks and will therefore require the implementation of a whole hierarchy of algorithms.[9] Low-level algorithms can achieve only functionally simple results such as adding two numbers. High-level algorithms have increased functionality, due to their ability to call upon a combination of low-level algorithms in order to achieve their task. Where a computer is to serve as only as a component in a simple functionally specific device, this whole hierarchy of algorithms can often be hard-wired. On the other hand, where a computer is to serve as a complex multi-functional device such as a personal computer, sole reliance on hardware implementation is cost prohibited and code implementation must be used. However, even where code implementation is used, at least some very low-level algorithms called ‘primitive functions’ must be hard-wired.[10] These primitive functions must be implemented by hardware in order for the computer to be able to perform basic calculations and ‘call’ those algorithms that are code implemented.[11] Beyond this limitation, whether any particular algorithm is hardware implemented or code implemented will depend on the engineering concerns outlined above. As a general rule, low-level algorithms, that are simple but used repeatedly, are better implemented as hardware while high-level algorithms, that are more functionally complex are better implemented as code. The organisation of a computer’s algorithms into hardware and code implemented algorithms constitutes the computer’s ‘architecture’.[12]

1.2 Technical Means of Implementation

The issue of algorithm implementation is further complicated by the existence of different technological means of implementation as well as different methods of implementation.

Firstly, there are different technological means by which the binary switches forming the digital-logic circuits can be made. Technological development has allowed these binary switches to become smaller and cheaper over time and as size and cost restraints have been reduced, computers have become functionality more powerful. Originally, mechanical switches and then vacuum tubes were used but computers based upon these technologies were huge, slow, inefficient and prone to failure.[13] The invention of the transistor, the first static-state switch, in 1947 meant digital-logic circuits were reduced to the size of electronic circuits. Next, the development of the silicon chip, containing thousands of transistors, in the 1970’s further reduced the size and cost of digital-logic circuits and thereby increased the potential functionality of computers.[14] The digital-logic silicon chip is a miniature electronic circuit imprinted upon semi-conductive material.[15] This technology is still in use in today’s computers and it is steadily being improved so it will probably be relied upon for the foreseeable future.[16] Ultimately however, silicon chip lithography, by which the digital-logic circuits are imprinted upon silicon chips will reach its limits and be replaced by nano-technology.[17] Nano-technology involves building digital-logic circuits, molecule by molecule, out of ‘rod-logic switches’ which will reduce the size and cost of digital-logic circuits and increase computer power and functionality by incredible amounts.[18]

As well as different technological means by which the binary switches forming the digital-logic circuits can be made, there are also different technological media for storing code implemented algorithms within the computer. Early code implemented algorithms were stored on punch cards that had to be manually fed into the computer. Over time, these punch-cards were replaced by tape drives and then disc drives. Today, tape drives are still used for back up purposes and a variety of different disc drives are in use, including the floppy disc drive, the hard drive, the CD-ROM drive and now the DVD drive. Alternatively, the code can be stored upon a ‘ROM chip’.[19]

The choice of storage media for any code implemented algorithm involves the same engineering issues of cost, speed, efficiency, reliability and frequency of expected change. In today’s personal computers, certain ‘primitive functions’ must be hard-wired.[20] However, at the next level up, other low-level algorithms necessary for controlling the basic functioning of the computer, such as the BIOS[21] and other frequently used algorithms such as the MMX[22] instruction-set, are implemented as code stored in ROM because of the processing speed advantage.[23]

Where these are implemented in the CPU itself, they are termed micro-code.[24] All other high-level algorithms, including those incorporated into the operating system and the various application programs are implemented as code stored on computer drives.

1.3 Functional Equivalence

While there are two basic methods of implementation, and different technical means of implementation for both of these methods, the final implementations are all functionally equivalent. An algorithm can be implemented in any of these ways and while its various efficiencies might be different, its functionality remains the same.

With respect to the two basic methods of implementation, this functional equivalence is well illustrated by the fact that algorithms which will ultimately be hard-wired are usually first implemented as code for testing because it is much easier to alter code that it is to alter a hard-wired circuit. Further evidence of the functional equivalence of the two methods of implementation is the fact that the division between hard-wired implementation and code implementation is become increasingly blurred with the evolution of chips that have separate hard-wired cells of digital-logic which can be combined in different ways producing a chip that is partially programmable.[25]

With respect to the different technological means of implementation, this functional equivalence is well illustrated by the fact that, as the technology advances, the means of implementation will be upgraded even though the underlying algorithm remains the same. When silicon chip technology was introduced, the hard-wired circuit implementing any given algorithm remained the same. It was merely made out of different materials. Similarly, when disc drives were introduced, the code implementing any given algorithm remained the same. It was merely stored on different media.

Nevertheless, according to popular usage, there is a tri-partite distinction between hardware, firmware and software.[26] Hard-wired algorithms are commonly referred to as ‘hardware’.[27] Code implemented algorithms which are stored on ROM chips are commonly referred to as ‘firmware’.[28] Code implemented algorithms which are stored upon computer drives are commonly referred to as ‘software’. The courts and legislatures have tended to adopt this tri-partite distinction and consider the intellectual property protection of hardware, firmware and software separately. Largely, this has resulted from an unwarranted focus upon form rather than substance.[29] While the terms hardware, firmware and software are useful for the purposes of comparison, it should be appreciated that they are functional equivalents and that they are therefore conceptually similar.[30] In this context, ‘any legal distinction between hardware, [firmware] and software becomes meaningless’.[31] Furthermore, any legal distinction, which is technologically dependent, will inevitably limit the law’s ability to encompass future technological developments.[32]

Since an algorithm is purely functional and the different methods and technological means of implementation are functionally equivalent, from an intellectual property point of view, there is no prima facie justification for making any conceptual distinction between the different methods and technological means of implementation.

2. Computer Programs and their Underlying Elements

2.1 Computer Programs As Discrete Modules of Functionality

A functionally desirable result requires the implementation of a whole hierarchy of algorithms.[33] The use of different methods and technological means of algorithm implementation breaks this hierarchy down into separate modules of functionality. However, there is also a natural trend of modularization of the algorithm hierarchy beyond the division necessitated by engineering concerns.[34] This is because, with continued increases in computer power and the consequent increase in potential functionality, it has become impossible for a single computer manufacturer to provide the complex functionality desired by a diverse group of consumers. Personal computer manufacturers now merely supply a basic ‘platform’, which can be built upon by other program developers. A personal computer’s functionality is now generally provided for by a complex hierarchy of independently created and self-contained modules of functionality.[35] These discrete modules of functionality are known as ‘computer programs’.

2.2 Program Development

Broadly speaking, program development occurs in three basic stages – conceptualisation, design and implementation.

The first stage involves isolating the conceptual objectives of the program. Essentially, this will involve writing an outline of the overall purpose of the program. More specifically, the conceptual objectives of a program are the outputs it is to achieve from a given set of inputs. A program inputs data from and outputs data to the user and to other programs. Consequently, an outline of a program’s conceptual objectives will include basic specifications of the program interfaces and user interface that will be used.

The second stage of program development is designing the basic architecture, algorithms and data structures to be used in achieving the conceptual objectives of the program. This second stage revolves around the creation of flow charts representing how the data will flow through the program from input to output.[36] In effect, the architecture, algorithms and data structures are the method of achieving the desired purpose. There will often be numerous methods of achieving a particular task.[37] However, there are not an infinite number of solutions and different architectures, algorithms and data structures can lead to radically different efficiencies.[38] Consequently, much of the skill or art of programming lies in designing appropriate architecture, algorithms and data structures.[39]

The third stage of program development is creating the final implementational form, whether it is a hard-wired circuit or code. Rather than being directly created by reference to the selected architecture, algorithms and data structures, the final implementational form is first written as source code. Source code is the specification of the relevant algorithms in a particular computer language, which can be understood by humans.[40] Source code can be written manually or created using special timesaving tools, which come with the language and allow graphical programming and programming by example.[41] Writing and debugging source code is the most time consuming part of programming, but it is largely a menial task which requires only basic knowledge of the syntax used in the programming language.

Where a hard-wired implementation is required, this source code is then fed into a logic-circuit design program or silicon compiler, which produces a corresponding hard-wired circuit design.[42] On the other hand, in the case of code implemented programs, this source code is usually converted by a compiler program into object code, which is then embodied on the disc or ROM. Object code is machine readable binary language that uses 0’s and 1’s to indicate the high and low voltages of the open and closed switches of the virtual machine.[43] Alternatively, the source code itself may be embodied on the disc and ‘interpreted’ on the fly as the program is executed so that an object code version is made only temporarily.[44]

Just as any given objective can be achieved by a variety of methods, any given method can be achieved by a variety of implementations. This variety of implementations results not just from the existence of different methods and means of implementation, but also from the fact that the selected architecture, algorithms and data structures will not dictate a specific structure and detail of implementation. This mean for example that if two programers implement the same architecture, algorithms and data structures as code, their code will not be identical.

The process of developing a computer program is therefore one of gradual elaboration from a high level of abstraction to a low level of abstraction.[45] While each level of abstraction is implemented by the level of abstraction below it, each level of abstraction is ‘more independent than might be readily apparent’.[46] There is no direct correspondence between the levels of abstraction. A given purpose may be achieved by a variety of functional methods and each of those functional methods may be implemented in a variety of final forms.

2.3 Underlying Elements

The term ‘computer program’ refers to the program as a vendible product in its final implementational form. With respect to today’s hard-wired programs, the term ‘computer program’ refers to the digital-logic circuit etched into the silicon. With respect to code implemented programs, it refers to the code that is implemented through storage on the disc or ROM. Usually, a computer program is implemented as object code, in which case the term ‘computer program’ refers to the object code pattern of 0’s and 1’s. However, since computer programs can be implemented in source code form and translated into object code ‘on the fly’ when they are executed, a source code version of computer program is also potentially a computer program in its final implementational form. The term ‘computer program’ should therefore encompass both source code and object code versions of a code implemented program.

As there is no direct correspondence between the different levels of abstraction, it is necessary to recognise that a computer program contains underlying conceptual and functional elements.[47] The specifications of the program interfaces and user interface are underlying conceptual elements. The architecture, algorithms and data structures are underlying functional elements. It is possible to copy an underlying functional element, such as a particularly efficient algorithm, without copying the corresponding section of the computer program. Similarly, it is possible to copy an underlying conceptual element, such as a user interface metaphors like ‘trash-can’ or ‘cut & paste’, without copying the corresponding section of the computer program, or even the corresponding architecture, algorithms and data structures at the functional level.

This means that prohibiting the copying of a computer program will not, of itself, prohibit copying of the underlying conceptual and functional elements. Consequently, from an intellectual property point of view, it is necessary to conceptually separate the computer program from its underlying conceptual and functional elements. Whether a computer program deserves intellectual property protection is a totally separate issue from whether the underlying conceptual and functional elements deserve intellectual property protection.

III The Economics of Protection

1. The Policy Justification for Intellectual Property Protection

1.1 Moral Justification

One justification for intellectual property rights is the natural rights justification that intellectual property law is merely defining, validating and protecting a pre-existing fundamental or natural right to ownership of what we produce.[48] This natural rights justification has in fact been of limited import in common law systems and it has had particularly little support in Australia.[49] A moral entitlement should be absolute and does not allow for the many exceptions to intellectual property rights that exist in today’s regimes.[50] Furthermore, a good argument can be made that an individual does not in fact have a moral claim to the fruits arising from the exercise of genetically and environmentally arbitrary features such as IQ.[51]

In any event, the natural rights justification is of even more limited import in relation to computer programs for two reasons. Firstly, a huge team of employed developers usually designs computer programs and the company rather than individuals hold the intellectual property rights. Secondly, rather than being creative ‘works of art’, computer programs are commercial products developed using industry know-how, engineering skills, and incremental innovation.[52]

Both of these factors make the naturall rights justification for the recognition of intellectual property rights largely irrelevant.

1.2 Economic Justification

The economic justification for intellectual property law has received more support in common law countries than natural rights theory. The recent incorporation of intellectually property norms into GATT will no doubt increase worldwide recognition and acceptance of the economic basis of intellectual property rights. According to the economic justification, intellectual property law is necessary to encourage socially beneficial intellectual and industrial endeavour by preventing copying and ensuring that the endeavour leads to profitable returns and thereby creating an incentive for the investment of time and money in intellectual and industrial endeavour. Under the economic justification, the rights of creators are recognised not as an end in themselves but as a means of furthering the public interest. In the context of computer programs, the concern is not that computer program developers receive the profits they ‘deserve’, but that they receive sufficient incentive to ensure that the continual consumer demand for more advanced computer programs is satisfied.

2. The Public Goods Problem

2.1 Market Failure

In a world of scarce resources, society is forced to allocate resources amongst alternative uses. Capitalist economic theory posits that market forces, rather than centralised government planning, best ensures an economically efficient allocation of resources that maximises society’s well being.[53] When resources are allocated to the production of a particular good, there are both benefits to society in the increased supply of that good and also costs to society in the loss of the opportunity of using those resources for an alternative use. In a market economy, as long as the benefits of a given resource allocation are enjoyed solely by paying consumers and as long as the costs of a given resource allocation are born solely by the producer and thus ultimately the consumer of the good, they are internalised and reflected in the market price of the good.[54] In these circumstances, consumer demand and the private profit incentive achieves an economically efficient allocation of resources.[55] If on the other hand the benefits and costs of a given resource allocation are not born by the consumers of the good, but fall on others, there is an misallocation of resources. This is referred to as the externality problem. Where the production of the good involves an external cost that is born by others, the market will produce more of the good than is optimal.[56] Where on the other hand the production of the good results in an external benefit that is enjoyed by others, the market will produce less of the good than is optimal. Whenever there is external costs or benefits, there is market failure in resource allocation and intervention is necessary to cure the market failure. Even laissez-faire capitalists accept that it is necessary to intervene in the market to cure the market failure resulting from externalities.[57]

2.2 Public Goods

The public goods problem is an extreme example of a benefit externality. Public goods are goods that have two unusual qualities. The first quality is that public goods are ‘non-exhaustible’ or ‘non-rivalrous’, meaning that consumption does not deplete the quantity of the good available for others.[58] The second quality is ‘non-excludability’, meaning that it is difficult to exclude non-paying consumers from using the good.[59] Non-exhaustibility is potentially a great benefit because on it own it tends to make the good widely and cheaply available. In combination with the second quality of non-excludability, however, it means that non-paying consumers can enjoy the benefits of the public good. This ‘free-rider problem’ or ‘appropriability problem’[60] means that potential producers of public goods are unable to secure sufficient returns to justify their investment and the good is under-supplied. Some examples of public goods include military defence, broadcasts, street lighting, the legal system and public parks.[61]

However, the public goods problem is also experienced somewhat by any consumer product that can be easily reproduced such as books and tapes. With these products, any consumer can make a reproduction of an original without paying the producer of the original. Similarly, pirate producers can make reproductions of an original and, after a very short lead-time, sell them in competition with the original. Since the pirate copier has insignificant costs to recoup, they can undercut the price of the original. In both these circumstances, there is no incentive for consumers to actually buy an original and consequently, the producer of the original product is unable to secure sufficient return to justify their investment. Consequently, the good is under-supplied.

The public goods problem also applies to innovative ideas because innovative ideas are not consumed as they are used and it is difficult to exclude others from using them.[62] Innovative ideas are of enormous social value both directly when they are practically applied in useful products or processes and indirectly as a contribution to the pool of knowledge from which further innovation can occur. Innovative ideas are subject to the public goods problem because neither the direct nor the indirect social benefit of the innovation is accurately reflected in opportunities for profit.[63] First, the innovator has no means of securing any return with respect to the indirect benefits of the innovation as a basis for future innovation.[64] Secondly, the innovator has only a limited ability to secure any return through the practical application of the innovation because when the innovative idea is practically applied, it is disclosed and ultimately disseminated throughout the world. The innovation is then available for anyone else to practically apply the idea, either for a competing use or for an alternative use. This can occur immediately if the application of the innovation bears it know-how on its face and after a short lead-time if the product or process has to be reverse engineered before the innovation is revealed. The innovator has no means at all of securing any return in respect of alternative applications of his innovation. Furthermore, the innovator may only have a limited opportunity to secure any return in respect of his original application of the innovation. The innovator may well be able to secure some return from his product or process before the innovation is discovered and applied in a competing product or process. After this lead-time however the innovator will face competition from producers who do not have to recoup similar research and development costs and can therefore under-cut the innovator. Innovation requires a significant investment of time and money in research and development and the innovator’s returns may not cover this investment, let alone provide sufficient incentive profits to justify the risk that the research and development will not lead to an exploitable product or process. Consequently, because of the public goods problem, innovation will tend to be under-supplied in the market place.

2.3 Fencing

Where the public goods problem arises, it is necessary to intervene in the market place to remedy the market failure. There are a variety of ways of remedying the public goods problem including public production or procurement, public subsidy, physical fencing and legal fencing. Often these remedies are used in combination. Fencing methods are the most important solution with respect to the public goods problems relating to computer programs.[65]

Fencing refers to any attempt to fence out non-paying consumers. If non-paying consumers are excluded, consumers have the necessary incentive to pay and the producer is able to recoup sufficient profits to justify their initial investment. Fencing can involve self-help on the part of producers through the implementation of mechanisms that physically exclude non-paying consumers.[66] Alternatively, it can involve government intervention in the recognition of a legal right to exclude non-paying consumers.[67] Since the problem is the exclusion of third parties that have not contracted with the producer of the public good, proprietary rights are need rather than mere personal rights. Where the public good is the result of intellectual endeavour, a special intellectual property regime is needed. Fencing solutions are usually used with respect to the public goods problem associated with consumer products that can easily be copied such as tapes and books and also with respect to the public goods problem associated with innovation.

The success of any fencing solution depends upon the height of the ‘fence’. In practice, any physical fencing mechanism can be circumvented and any intellectual property rights can simply be ignored. Consequently, the effectiveness of fencing will depend upon the degree to which circumvention or infringement is prevented. Apart from this limitation, the problem with fencing as a solution to the public goods problem is that it fails to take advantage of the inexhaustibility of public goods. The fact that public goods are inexhaustible or non-rivalrous means that in theory everyone can have access to them. Fencing takes away this quality and instead of being part of the common heritage of humanity, public goods become rivalrous commodities.[68] This has a number of negative implications.[69]

Firstly, the exclusion of others gives the creator monopoly power over the public goods. This monopoly power allows the creator to charge supra-normal profits to the detriment of consumers. Monopoly pricing is a form of market failure that is referred to as ‘deadweight loss’. In effect, fencing solves the public goods market failure problem with respect to the creation of the public goods, but it introduces a monopoly market failure problem with respect to the dissemination of the public good.[70] Obviously, it is always better that public goods are produced for supra-normal profits than they are not produced at all.[71] However, from a policy point of view, it is beneficial to compromise and fence the public goods in a way that minimises the effect of the monopoly market failure and encourages efficient dissemination, at the expense of some innovation.[72]

Secondly, it can lead to a wasteful doubling up of efforts.[73] This happens in two circumstances. Even before monopoly power has been acquired, the fact that fencing creates the opportunity for monopoly profits means that producers of public goods will participate in ‘rent-seeking’.[74] Rent-seeking refers to the fact that creators compete for the opportunity to obtain monopoly profits with the result that they may simultaneously and independently expend efforts on creating the same public goods. Secondly, even after one creator has acquired monopoly power, others may be excluded access from the public goods. They will be forced to ‘re-invent the wheel’ and independently create an alternative public good, which may again constitute a wasteful doubling up of creative efforts. This wasteful doubling of efforts should be avoided because it ultimately increases the cost of public goods for the consumer.[75]

Thirdly, the reduction in access to the public good will tend to hinder the future creation of public goods that involve incremental improvements upon existing public goods.[76] This is particularly the case with respect to innovation because it is cumulative in nature.[77] “Technologies … undergo … a gradual, evolutionary development which is ultimately bound up with the course of their diffusion.”[78] Innovative ideas are of indirect but important social benefit as a contribution to the pool of knowledge from which further innovation can occur. Although fencing increases the amount of innovation in the short term, fencing reduces public access to innovation and reduces the pool of knowledge from which further innovation can occur. Consequently, it tends to reduce the amount of innovation that will occur in the long term. An effective system must operate over time.[79] Consequently, it is necessary to make a compromise between innovation today and innovation tomorrow. The situation is similar for all public goods because a reduction in access limits the opportunity for new public goods to be modelled upon old public goods.

Due to these three effects, the absolute fencing of public goods can cause more market inefficiency than it solves. Consequently, fencing solutions should only be used where necessary and where they are necessary, it is usually preferable to compromise and fence the public good to only a limited degree.[80] The particular balance that is appropriate in any given circumstances depends upon the public goods in question. One advantage of government imposed intellectual property fencing over producer imposed physical fencing mechanisms is that a fencing solution can be imposed which resolves these competing policy concerns in the public interest. Intellectual property protection is therefore the solution of choice.[81] To some extent however, the effectiveness of the intellectual property regime can be strengthened by the parallel use of physical fencing mechanisms, but there is a risk that independently imposed physical fencing mechanisms may destroy the public policy balance. Consequently, it is often necessary to regulate the use of physical fencing methods which are used in conjunction with an intellectual property scheme, either to limit their use, when they disrupt the policy balance achieved by the intellectual property regime, or to prohibit their circumvention, when their use supports the balance achieved by the intellectual property regime.

IV Computer Programs and the Public Goods Problem

1. Computer Program Copying

Computer programers are faced with a combination of two public goods problems. Firstly, the computer program as a whole suffers from the public goods problem like all consumer goods that can be easily reproduced such as books and tapes. Secondly, the underlying conceptual elements and functional elements of the computer program are applied ideas that suffer from the public goods problem experienced by all ideas. These are two separate and unrelated problems.[82] While all technological utilitarian products potentially suffer from the public goods problem in respect of the applied ideas embodied within them, technological products cannot generally be easily reproduced so they do not suffer from the public goods problem themselves. Computer programs are unique in that they are affected by both of these public goods problems.

1.1 Reproduction of the Whole Computer Program

All products that can be easily and cheaply reproduced suffer from the public goods problem.[83] Computer programs are no exception. A computer program is time consuming and costly to develop, but once it has been developed, the original can be easily and cheaply reproduced in the same implementational form.[84]

With respect to code implemented programs, reproduction in the same form is particularly easy because the program is stored digitally. Copying usually involves no more than using the copy command on a computer to make a reproduction of the digital file. The only cost involved with reproduction is the cost of the media for storing the reproduction. Code implemented computer programs are therefore easily reproduced by non-paying consumers with the result that there is little incentive for consumers to pay the program developer, resulting in reduced returns. They are also easily reproduced by pirates who can, after a short lead-time, sell the reproduction in competition with the original developer. Since pirates have no development costs, they are able to greatly undercut the original developer, which further reduces the returns that the original developer can expect from their investment of time and money in the development of the original.

With respect to hard-wired programs, reproduction in the same form is not quite so easy. In relation to digital logic chips, it requires the use of a special machine to ‘photocopy’ the hard-wired circuit. This means that consumers are generally unable to make reproductions. However, there is still a significant threat from pirate competitors. The cost of the machine is considerably less than the cost of developing the original. This means that pirates are still able to undercut the original developer, which again reduces the returns that the original developer can expect.

There is therefore considerable justification for fencing computer programs to prevent unauthorised reproductions in the same implementational form. Unusually, with respect to the reproduction of the whole program, there is little competing policy concern opposing fencing. Firstly, although fencing creates a monopoly in the product, monopoly pricing will be controlled by other competing products. Secondly, it is not necessary to allow unauthorised copying in order to satisfy consumer demand because the original developer will generally satisfy this demand, due to an economy of scale. This occurs because development costs are high but manufacture and distribution costs are low. This means that as production increases, the cost of each product decreases dramatically and marginal profit increases. This is particularly the case with code implemented programs that may be digitally reproduced and then distributed over Internet at virtually no cost. Finally, from a moral point of view, there is no reason why consumers should be allowed to receive something for nothing or pirates should be able to misappropriate the developer's returns.

Consequently, to reduce the impact of the public goods problem resulting from the reproduction of the whole program in the same implementational form, program developers implement a number of measures. Firstly, program developers commonly up-grade their products regularly and offer special upgrade prices to encourage consumers to purchase the original.[85] Secondly, they attempt to physically fence their programs, by utilising technical protection methods such as program locks, which prevent non-paying consumers from using the program.[86] However, because these measures are of only limited success, it is necessary for the government to intervene and provide legal fencing in the form of intellectual property rights.[87]

The reproduction of computer programs in a different implementational form does not pose so much of a problem. In order to convert a hard-wired program into a code implemented program or convert a code implemented program into hard-wired program, it is necessary to de-compile the program into source code and then re-compile the program into the different form and this is a costly and time consuming process.

1.2 Appropriation of Underlying Elements

While computer programs are different from other technological products in that they can be easily reproduced, they are the same as other technological products in that they contain applied ideas. Where these ideas are innovative, they are the creations of the programer and the public goods analysis is applicable in order to determine whether fencing is appropriate. With respect to computer programs, innovation can occur at either the conceptual level in the form of innovative user and program interfaces or at the functional level in the form of innovative architectures, algorithms and data structures. Innovative conceptual elements and innovative functional elements both suffer from the public goods problem to a certain degree. Whether fencing is necessary with respect to these elements, and the degree of fencing necessary, depends upon a careful analysis of the type of innovation in question. The most important considerations are how easily the innovation can be appropriated, and the extent to which excluding others from appropriating the innovation will have other negative policy implications.

1.2.1 Physical v Legal Fencing

Where the underlying innovative elements are revealed on the face of the product, they can be easily appropriated and will suffer from the public goods problem to a greater extent. For example, user interface elements can be easily appropriated because they are visible to anyone who uses the computer program. To some extent, program interfaces can also be revealed and appropriated by systematic testing of the outputs that result from various inputs.[88] Usually however program interfaces are only revealed by an examination of the source code of a program. Since computer programs are rarely distributed in source code form, this usually requires that the computer program is reverse engineered. Similarly, innovative functional elements such as the program’s architecture, algorithms and data structures are generally only revealed when the program is reverse engineered and a source code version is examined.

Both hard-wired programs and code programs can be reverse engineered. Reverse engineering is usually undertaken with the aid of a special computer program called a de-compiler. Reverse engineering is arguably a more difficult process with respect to hard-wired programs, but this may just be a result of a technological lag in the sophistication of the de-compilation programs. At present, where reverse engineering is necessary, the public goods problem is quite limited because reverse engineering is time consuming, with the effect that the program developer will get significant lead time, and also costly, with the effect that competing programs that utilise the appropriated elements cannot be sold at a price that significantly undercuts the original product. It is however likely that as de-compilation technology improves, de-compilation will become easier and the public goods problem relating to computer programs will become greater.

Effectively, the need to reverse engineer the product to reveal the underlying innovations constitutes a form of physical fencing. To some extent, implementation in a non-source code form is a conscious attempt at physical fencing. Although one of the main justifications for this is increased processing efficiency, computer programers also prefer non source code implementation for the very reason that it hides the underlying innovative elements and makes it harder for them to be appropriated by others. Where non-source code implementation can be considered a physical fencing mechanism, de-compilation programs constitute circumvention devices. It must be recognised that any legal fencing is merely adjusting the fencing balance achieved within the industry. Consequently, if greater access to the underlying innovative elements is justified by competing policy concerns, the issue may not be whether the law should intervene to provide greater fencing, but whether the law should intervene to reduce the existing level of fencing.

This is particularly evident where the fencing of underlying innovative elements in considered in a context where an intellectual property regime has been implemented to solve the separate public goods problem relating to the reproduction of the program as a whole. If intellectual property rights prevents reproduction of computer programs as a whole, this can further limit access to the underlying innovative elements of the computer program because reverse engineering a computer program into source code involves making a reproduction of the program. In order to allow access to the underlying innovative elements of a program it becomes necessary to allow reverse engineering as an exception to the prohibition against reproduction. This problem is unique to computer programs. With most technical products, although the derivative product resulting from reverse engineering may infringe intellectual property protection, the actual process of reverse engineering does not.[89]

1.2.2 Underlying Functional Elements

Generally, technological products have to be reverse engineered before any underlying functional innovations are revealed. Consequently, the functional innovations in technological products do not generally require intellectual property protection. The only time protection is conferred upon them is when they are particularly innovative.[90] At first sight, innovative functional elements in computer programs, such as the architecture, algorithms and data structures, should be treated no differently because computer programs are technological utilitarian products.

However, since the functional elements of a computer program are merely logical problem solving methods, it is arguable that they are not innovations but obvious laws of nature. However, it should be recognised that even if there is no innovation in discovering the logical problem solving method, there can be innovation in applying it to solve a practical problem. In fact, much of the art of programming lies in designing these functional elements because different data structures and algorithms can lead to radically different efficiencies.[91] However, while there may be numerous functional methods of achieving a particular task, there will not be an infinite number of solutions. This means that to exclude competitors from re-using a particular functional method could ultimately prevent them from making a competitive product.[92]

Furthermore, functional innovation in computer programs tends to be particularly incremental.[93]

To protect innovative functional elements could greatly hinder the transfer of programming technology and therefore the growth of the industry. It would seem that the justification for protecting the underlying functional innovations in computer programs is even weaker than the justification for protecting the underlying functional innovations in other technological products. A much more extensive analysis is necessary before it can be conclusively determined that innovative functional elements require intellectual property protection.[94] Certainly, if protection is to be conferred upon these elements, it must be carefully justified on policy grounds.

1.2.3 Underlying Conceptual Elements

With respect to program interfaces, which are conceptual elements of the program, there are strong policy reasons for denying protection. Computer programs must function within in a whole hierarchy of programs.[95] Established program hierarchies develop a network of consumers who have committed to the hierarchy through their prior purchases. In order to interact with an existing program hierarchy and enjoy the network effects flowing from the established consumer support, a computer programer must achieve ‘inter-operability’ through the use of a compatible program interface.[96] Program interfaces provide for the transfer of data between programs and include such things as language syntaxes, data structures, transfer protocols and file formats. It is critical to a programer’s ability to compete in the computer program market that they have access to and the right to use standard program interfaces.

A strong argument can therefore be made that access to program interfaces should not be limited by intellectual property protection. Denying protection to program interfaces should not significantly hinder their development because their development does not usually require the investment of substantial time and money. Their value derives not so much from how innovative they are, but from the degree to which they are adopted as de facto standards. To allow proprietary control of program interfaces tends to hinder their emergence as de facto standards, to the detriment of consumers. The only beneficiaries of proprietary interfaces are large firms with sufficient market power to set de facto standards on their own and then benefit from the exclusion of other program developers. Denying intellectual property to program interfaces is therefore justifiable from a pro-competition point of view. It reduces competition between competing standards to the benefit of consumers and encourages competition within de facto standards.

Although user interface elements are revealed on the face of the product, there are also strong policy reasons for denying protection to certain user interface elements. As well as transferring data to and from other programs, most programs also have to transfer data to input data from and output data to the user, through what is referred to as the user interface of the program. The user interface gives a program its particular ‘look and feel’.[97] Often this ‘look and feel’ involves the use of conceptual metaphors such as the ‘desktop’, ‘windows’, the ‘trash can’ and ‘cut & paste’ that make the program easy to understand and use.[98]

The protection of purely aesthetic elements of the user interface such as non-interactive screen displays may well deserve protection.[99] With respect to interactive user interface elements however there are strong arguments to the contrary. Admittedly, an innovative interactive user-interface element is one of the most valuable types of program innovation.[100] However, denying them protection would probably not hinder innovation because innovation in this area does not require the investment of a lot of time or money and it tends to be very incremental in nature because of the network benefits to programers of adopting popular standard user interface elements. The use of standard interactive user interface elements makes the program of more value to consumers who are already familiar with and trained in the use of those interface elements. The standardisation of interactive user interface elements is of considerable benefit to consumers because they not required to retrain. Conferring intellectual property protection upon interactive user interface elements would merely prevent standardisation, to the detriment of all but the industry leaders.

2. Subject Matter Implications

This extensive examination of the policy justification for protecting computer programs and their underlying elements was necessary because the conclusions reached have significant implications for the subject matter issue.

2.1 The Subject Matter Issue Generally

Ideally, every new creation, which requires fencing, should be given specially tailored protection, determined on a case by case basis, which carefully resolves the competing policy concerns as they are applicable to that particular creation. Unfortunately, a creation-specific approach to legal fencing is impractical today because of the incredible complexity and the huge costs of administration it would entail. Consequently, it is necessary to formulate a regime of generally applicable fencing rules. Where different types of creations raise different policy concerns and consequently require significantly differing levels or types of fencing, it will generally be necessary to formulate separate regimes applicable to the different types of creations. Careful definition of the subject matter to which each regime will apply is critical if there is to be a clear and appropriate line of delineation between the different regimes.

2.2 The Subject Matter Issue and Computer Programs

First, it is necessary to conceptually separate the computer program from its underlying conceptual and functional elements.[101] Computer programs as products in their final implementational form are a separate subject matter for protection from any underlying innovative elements. Whether a computer program deserves intellectual property protection is totally divorced from the issue of whether the underlying conceptual and functional elements deserve intellectual property protection. Just because a computer program should be protected against reproduction does not mean any underlying innovative elements should be protected from appropriation. While both of these subject matters could be protected by a single piece of intellectual property legislation, this is not necessary.

2.2.1 Computer Programs

It is evident from the policy discussion above that computer programs in their final implementational form are a subject matter that are worthy of intellectual property protection to prevent their unauthorised reproduction.[102] The point has also been made that hard-wired programs and code implemented programs are functionally equivalent.[103] At first sight, it might therefore be assumed that hard-wired and code implemented programs should receive identical protection. Both hard-wired programs and code implemented programs suffer from the public goods problem because they can be reproduced by pirate competitors.[104] With respect to code implemented programs, this problem is compounded, by the fact that the program can also be reproduced by non-paying consumers. The public goods problem suffered by code implemented programs is therefore greater in extent than that suffered by hard-wired programs. However, while the public goods problem suffered by code implemented programs is greater in extent than that suffered by hard-wired programs, the problem is of the same nature and it requires an identical fencing remedy. It is therefore submitted that all computer programs, whatever the method and technological means of implementation, can be treated as a single subject matter for intellectual property purposes.

2.2.2 Innovative Elements Embodied in Computer Programs

It is not so clear whether innovative elements embodied in computer programs deserve intellectual property protection.[105] It is possible that innovative functional elements do, but a much more extensive analysis is necessary before this can be ascertained.[106] What is clear is that if any innovative functional elements deserve intellectual property protection, no distinction needs to be made between the underlying elements of a hard-wired program and the underlying elements of a code implemented program. This is because computer programs, whatever the method and technological means of implementation, are functionally equivalent.[107] The same innovative element could be embodied in a hard-wired program or a code implemented program. If innovative functional elements require fencing, the same fencing solution will be appropriate for innovative elements embodied in both hard-wired and code implemented programs. It is therefore submitted that if intellectual property protection of innovative functional elements is required, then the functional elements underlying hard-wired and code implemented programs can be treated as a single subject matter for intellectual property purposes.

V Protection Under the TRIPs Agreement

On 15 December 1993 representatives of the contracting nations who are party to the General Agreement on Tariffs and Trade (GATT) 1947, agreed on the Final Act embodying the results of the Uruguay Round of Multilateral Trade Negotiations, which included an Agreement on Trade-Related Aspects of Intellectual Property Rights, commonly referred to as the TRIPs Agreement. The TRIPs Agreement imposes obligations on more than 115 member countries, including Australia, in relation to “Copyright and Related Rights, Trademarks, Geographical Indications, Industrial Designs, Patents, Layout-Designs (Topographies) of Integrated Circuits, Protection of Undisclosed Information and Control of Anti-Competitive Practices in Contractual Licences”. The obligations with respect to Copyright, Layout-Designs (Topographies) of Integrated Circuits, Protection of Undisclosed Information and Control of Anti-Competitive Practices in Contractual Licenses, all effect the protection that member nations have conferred upon computer programs and their underlying innovative elements. Of most vital importance are the obligations with respect to Copyright protection and the protection of Layout-Designs (Topographies) of Integrated Circuits.

1. Protection Of Layout-Designs (Topographies) of Integrated Circuits

Article 36 (1) of the TRIPs Agreement provides that ‘members agree to provide protection to the layout-designs (topographies) of integrated circuits’ in accordance with the provisions of the Washington Treaty, as supplemented by other provisions of the TRIPs Agreement.

1.1 Computer Programs

Article 3(2)(a) of the Washington Treaty obliges members to protect layout-designs (topographies) that are ‘original’ and not ‘commonplace’. Article 2(ii) of the Washington Treaty defines ‘layout-design (topography)’ to mean “the three-dimensional disposition, however expressed, of the elements, at least one of which is an active element, and of some or all of the interconnections of an integrated circuit”. Article 2(i) of the Washington Treaty defines ‘integrated circuit’ to mean any integrally formed product, with at least one active element, which is intended to perform an electronic function.[108] The term ‘integrated circuit’ thus encompasses, but is not limited to, products embodying digital-logic circuits or hard-wire computer programs. Layout-designs of products that embody hard-wire computer programs are therefore protected under Article 3(2)(a) of the Washington Treaty.

Article 6(1)(a)(i) of the Washington Treaty prohibits the unauthorised reproduction of any original part of a protected layout-design, whether by incorporation in an integrated circuit or otherwise. Consequently, it is an infringement to reproduce part of a layout-design that represents an original hard-wired program. This clearly prevents the reproduction of a hard-wired program in hard-wired form. It thereby solves the public goods problem resulting from the piracy of hard-wired programs.[109] In contrast, it would not appear to explicitly prevent the reproduction of a hard-wired program in code form because although a code version of a hard-wired program would be a reproduction of the hard-wired program, it would not be a reproduction of the layout-design of the hard-wired program. It would however seem to prevent it in practice because the production of a code version of a hard-wired program requires de-compilation of the hard-wired program and de-compilation of a hard-wired program inevitably involves making a reproduction of the layout-design as an intermediate step. This type of reproduction would not be for the ‘the sole purpose of evaluation, analysis, research or teaching’ and it would therefore be outside the reverse engineering exception in Article 6(2) of the Washington Treaty.

1.2 Underlying Innovative Elements

Since the Washington Treaty protects the circuit-layout of a hard-wired computer program in its final implementational form, there is no question that protection does not extend to directly protect the underlying innovative elements of the program. The reverse engineering exception in Article 6(2) of the Washington Treaty is included specifically to ensure that the legal fencing provided to prevent reproduction of the product as a whole does not also indirectly protect any innovative underlying elements. Paragraph (a) permits the unauthorised reproduction of layout-designs for ‘the sole purpose of evaluation, analysis, research or teaching’ and Paragraph (b) permits the creation of a derivative but original layout-design, on the basis of this evaluation or analysis, and the incorporation of that layout-design in an integrated circuit. Consequently, it is not an infringement to de-compile a hard-wired program to evaluate, analyse and then appropriate any underlying innovative elements, whether they be conceptual elements such as user or program interfaces or functional elements such as the architecture, algorithms or data structures.

2. Copyright Protection

Article 9(1) of the TRIPs Agreement obliges members to adopt the regime of copyright protection provided for in the Berne Convention as supplemented by other provisions of the TRIPs Agreement.

2.1 Computer Programs

Article 2 of the Berne Convention obliges members to protect literary and artistic works which have been fixed in some material form, including every production in the literary, scientific and artistic domain, whatever may be the mode or form of expression. It is unclear whether or not this includes computer programs. Consequently, Article 10(1) of the TRIPs Agreement provides that for the purposes of the TRIPs Agreement, computer programs ‘shall’ be protected as literary works under the Berne Convention.[110]

Unfortunately, there is no definition of ‘computer program’ in the TRIPs Agreement, so it is not clear what the term encompasses. The only clarification given is in Article 10(1) of the TRIPs Agreement, which provides that computer programs are protected ‘whether in source or object code’. The fact that Article 10(1) of the TRIPs Agreement makes reference to only code implemented programs suggest that hard-wired program are not protected as literary works under the TRIPs Agreement. This inference is probably supported by the fact that hard-wired programs receive protection independently as elements of integrated circuits under Article 36(1) of the TRIPs Agreement.

Article 9 of the Berne Convention confers upon the copyright owner the exclusive rights to authorise the reproduction of a code implemented computer program in ‘any manner or form’. This clearly prohibits the unauthorised reproduction of a code implemented program in code form. This basic right or reproduction is expanded upon and perhaps extended by Article 8 of the Berne Convention which confers the exclusive right to authorise the translation of a code implemented computer program, and by Article 12 which confers the exclusive right to authorise the adaptation or alteration of a code implemented computer program. When these prohibitions are considered in combination with Article 8, it is clear that unauthorised source code versions of object code programs and unauthorised object code versions of source code programs are also prohibited. These exclusive rights would also appear to directly prohibit the unauthorised reproduction of a code implemented program in hard-wired form. A hard-wired version of a code implemented program would be a reproduction in ‘any manner or form’, if not also a translation or adaptation.

2.2 Underlying Innovative Elements

Article 9(2) of the TRIPs Agreement provides inter alia that ‘copyright protection shall extend to expressions and not to ideas’. It is submitted that the conceptual elements of a program, including the overall purpose, the user interface and the program interfaces are ideas. They do not have any concrete existence; they are merely abstract concepts. It is submitted that this conclusion is well supported by the exhaustive discussion of computer program technology above. Consequently, the underlying innovative conceptual elements of a code implemented computer program are not directly protected as part of the expression of a literary work under the TRIPs Agreement.

The Japanese draft text for the TRIPs Agreement also proposed the inclusion of an article providing that the copyright protection of computer programs ‘shall not extend to any programming language, rule or algorithm used for making such works’.[111] Michael Blakeney has argued that: ‘This exception, not being included may raise an inference that these matters fall within the protection envisaged in Article 10(1).’ It is respectfully submitted, to the contrary, that a specific computer program exception was in fact not needed because the generally applicable exception in Article 9(2) of the TRIPs Agreement excepts these elements from protection. Article 9(2) of the TRIPs Agreement provides, inter alia, that copyright protection shall not extend to ‘procedures, methods or operation or mathematical concepts as such’. It is submitted that, pursuant to Article 9(2), the underlying innovative functional elements of a computer program, including the architecture, algorithms and data structures are not directly protected as part of the expression of a literary work under the TRIPs Agreement.

The point was made above that if intellectual property rights prevents reproduction of computer programs as a whole, this can limit access to the underlying innovative elements of the computer program because reverse engineering a computer program into source code, to reveal the underlying innovative elements, involves making a reproduction of the program.[112] In effect, unless a reverse engineering exception is allowed, fencing the computer program also indirectly fences the underlying innovative elements. Neither the Berne Convention nor the TRIPs Agreement specifically provide for a reverse engineering exception. Rather, Article 9(2) of the Berne Convention gives national legislatures a general power to permit the unauthorised reproductions in certain special cases. However pursuant to Article 9 of the Berne Convention and Article 13 of the TRIPs Agreement, these exceptions must not conflict with the normal exploitation of the work or unreasonably prejudice the legitimate interests of the rights holder. It is submitted that a general reverse engineering exception allowing access to the underlying innovative elements is acceptable because the ‘work’ in which the right holder has ‘legitimate interests’ is the computer program as a product and not the underlying innovative elements. In fact, a reverse engineering exception is necessary to maintain the policy balance sought by Article 9(2) of the TRIPs Agreement in specifically excluding these underlying elements from protection. Although, pursuant to Article 1(1), the TRIPs Agreement merely provides minimum standards of protection, it is not open to members to confer more extensive protection if that protection contravenes the TRIPs Agreement. Consequently, it is probably not open to national legislatures to indirectly protect the underlying innovative elements of computer programs by refusing to recognise a general reverse engineering exception, when Article 9(2) explicitly provides that these underlying innovative elements are not directly protected.

3. Comparison of the Two Fencing Regimes

The TRIPs Agreement protects computer programs in both hard-wired and code implemented form. In both cased, it confers exclusive rights of reproduction, which effectively solve the public goods problem relating to the piracy of the computer program.

In neither case does this protection directly extend to the underlying innovative elements of the program. Furthermore, under both regimes, it appears that these underlying elements will not necessarily be indirectly fenced by the fencing of the computer program. With respect to hard-wired programs, a reverse engineering exception is specifically provided for and with respect to code implemented programs, it is open to the national legislature to provide for a reverse engineering exception.

A related difference between the fencing regimes is that the registration of code implemented programs is not required under the Berne Convention, but in respect of hard-wired programs, Article 7(2) of the Washington Treaty provides that national legislatures may provide that protection does not arise until the program is registered. However, it would appear that this distinction does not have major implications with respect to the relative degree of fencing for hard-wired and code implemented programs. Registration under the Washington Treaty would appear to be more of an administrative aid than a disclosure requirement. Article 7(2)(a) of the Washington Treaty provides that the applicant need only file sufficient material with the application to allow identification of the layout-design. Registration does not involve the disclosure of any information that is not readily available on the face of the product. Consequently, reverse engineering is still necessary in order to reveal the underlying innovative elements, just as it is with respect to code implemented programs under the Berne Convention.

One apparently significant difference between these fencing regimes is the term of protection. Pursuant to Article 38 of the TRIPs Agreement, the term of protection for hard-wired circuits is a minimum of 10 years. Pursuant to Article 7 of the Berne Convention, the term of protection for code implemented programs is 50 years from the date of the author’s death. While the terms of protection are considerably different, it is submitted that this is of little practical significance because the commercial life of all computer programs is generally shorter than the minimum 10 year term of protection provided for hard-wired programs. Computer programming technology is developing so quickly that programs are generally made obsolete by new versions within a few years. Once this occurs, piracy will not occur and legal fencing is not necessary.

It can be seen that while the hard-wired programs and code implemented programs are protected as separate subject matter under the TRIPs Agreement, the level of fencing protection provided for both types of computer programs is essentially the same. The only significant difference is that with respect to code implemented programs, a reverse engineering exception to allow access to the underlying innovative elements is not specifically provided for although it is open to the national legislatures to provide a reverse engineering exception and a reverse engineering exception is arguable required to prevent indirect protection of these underlying elements and uphold the policy balance sought by the TRIPs Agreement, which specifically excludes the direct protection of these underlying elements.

It should be noted that Article 4 of the WIPO Copyright Treaty, which was passed after the TRIPs Agreement, provides that computer programs are protected as literary works under the Berne Convention. It should be noted that the WIPO Copyright Treaty does not actually amend the Berne Convention.[113] Consequently, it has no effect on the scheme of protection under the TRIPS Agreement. This is evident from Article 1(1) of the WIPO Copyright Treaty, which provides that: “This Treaty shall not have any connection with treaties other than the Berne Convention, nor shall it prejudice any rights and obligations under any other treaties”.

In contrast to the TRIPs Agreement, Article 4 of the WIPO Copyright Treaty protects computer programs “whatever may be the mode or form of their expression”. Consequently, it would appear that, under the WIPO Copyright Treaty, both code implemented and hard-wired programs are protected as literary works. This extension of protection to hard-wired programs was obviously necessary within the context of the WIPO Copyright Treaty because the WIPO Copyright Treaty does not separately provide for the protection of hard-wired programs as elements of integrated circuits as the TRIPs Agreement does.

4. Conceptual Severance Under the TRIPs Agreement

It can be seen that all computer programs and also their underlying innovative elements both deserve and, under the TRIPs Agreement, receive basically the same level of legal fencing. However, they are conceptually separated and protected as different subject matter under the TRIPs Agreement. Given that all computer programs and also their underlying innovative elements both deserve and, under the TRIPs Agreement, receive basically the same level of legal fencing, it is curious that they are protected as different subject matter under the TRIPs Agreement. This conceptual severance is largely a historical legacy of the fact that the emerging software and integrated circuit industries in the US pushed separately for the protection of their products at a time when policy makers and courts had little understanding of the technology.

Where as code programs generally constitute independently vendible products, hard-wired programs are often just one element of integrated circuits. The integrated circuit industry needed protection for all integrated circuit elements, so it was natural that the protection of all integrated circuit elements was considered together. The issue was not how hard-wired programs and code programs should be protected, but how software and integrated circuits should be protected. A print out of software source code looked very like a conventional literary work to policy makers and courts who were struggling to come to terms with the technology.[114] Copyright had certainly proved flexible enough to accommodate new technology in the past.[115] A world-wide consensus that copyright was the appropriate form of protection for code implemented programs emerged almost by default.[116] In contrast, integrated circuits were considered technological hardware that was unlike traditional copyright subject matter. There was much more resistance to the protection of integrated circuit layouts under copyright.

Nevertheless, in the US, where the integrated circuit industry emerged, the government was pressured to provide adequate protection. If the US government had adopted copyright protection, it would have been required, because of the national treatment obligation under the Berne Convention, to protect integrated circuits made by the nationals of other countries, even if that country did not itself copyright integrated circuits.[117] Given the likelihood that other countries would deny copyright protection to integrated circuits because they were akin to technological hardware, this was clearly contrary to the interests of the US industry. The enactment of sui-generis integrated circuit legislation in the US was calculated to take the protection of integrated circuits outside the scope of the existing international intellectual property conventions and free the US from the national treatment obligation.[118] This allowed the US to enter into bilateral agreements providing for the reciprocal protection of integrated circuits made by the nationals of both countries.

While the sui-generis protection of integrated circuits was being debated, the fact that one element of integrated circuits were functionally equivalent to code programs went largely unnoticed. In effect, the early failure of the policy makers to come to terms with computer programming technology led to the conceptual severance of hard-wired programs and code implemented programs and their treatment as separate intellectual property subject matter. While this conceptual severance was politically expedient in the short term, with the incorporation of integrated circuit protection into the TRIPPS agreement, all members have to protect integrated circuits and this conceptual severance is not necessary.

5. Conceptual Unity Under Implementing Domestic Legislation

Although hard-wired programs and code programs are still treated as separate subject matter under the TRIPs Agreement, there no obligation under the TRIPs agreement that hard-wired and code programs are treated as separate subject matter in implementing domestic legislation. Article 4 of the Washington Treaty permits members to implement the protection of hard-wired programs through sui-generis legislation or through their laws on copyright, patents, utility models, industrial designs, unfair competition, or any other law, or a combination of those laws. Consequently, it is open to national legislatures to protect both hard-wired and code implemented programs under copyright legislation.

Furthermore, the TRIPs Agreement does not specifically require that hard-wired and code programs be given a different level of protection in any respect. Pursuant to Article 1(1), the TRIPs Agreement merely provides for minimum standards of protection, so it is possible for the level of protection offered to one type of program, to be raised to the minimum level required with respect to the other type of program. Consequently, it would also be possible for hard-wired and code programs to receive identical protection as a single copyright subject matter. The only provisos would be that registration could not be required, because although this is optional with respect to hard-wired programs it is prohibited with respect to code programs, and a reverse engineering exception would have to be provided, because this is required with respect to hard-wired programs. It is submitted that this is the most appropriate level of protection for all computer programs anyway.

The only obstacle to protecting both hard-wired and code implemented programs under copyright as a single subject matter, is that they would have to be protected as literary works because this is specifically required with respect to code implemented programs pursuant to Article 10(1) of the TRIPs Agreement. While it is difficult to conceive of even code implemented programs as ‘literary works’, it is certainly difficult to conceive of hard-wired program as ‘literary works’. There is however no reason why even hard-wired programs cannot be deemed to be ‘literary works’, as they have been in the WIPO Copyright Treaty.

VI The Implementation of TRIPs in Australia

The TRIPs Agreement was signed by representatives of the member nations on 15 December 1993 and formally signed by Ministers representing the member nations on 15 April 1994, after the public release of the Copyright Law Review Committee’s Draft Report on the Protection of Computer Programs in June 1993, but before the public release of the Final Report on the Protection of Computer Programs in 1994. The Committee gave much consideration to the obligations imposed on Australia by the TRIPs Agreement in its final report. Most notably, in its draft report, the Committee expressed a preference for the introduction of sui generis copyright-style protection for computer programs, although it concluded that the introduction of a sui generis regime would risk contravention of existing obligations under the Berne Convention, inconsistency with the approach of Australia's major trading partners and possible damage to trading relationships.[119] However, in its final report, it decided that the TRIPs Agreement, by emphatically requiring all forms of computer programs to be protected as literary works, ‘put an end to all argument’.[120] Nevertheless, it appears that in some respects, the Committee’s recommendations may not properly implement Australia’s obligations.

1. The Protection Of Computer Programs

In Australia, pursuant to s32(1) of the Copyright Act copyright subsists in an original ‘literary work’. Section 10 of the Copyright Act explicitly provides that ‘literary work’ includes ‘a computer program or compilation of computer programs’. At present, ‘computer program’ is defined in s10 of the Copyright Act to mean an expression, in any language, code or notation, of a set of instruction intended to cause a device having digital information processing capabilities to perform a particular function, either directly or after conversion to another language, code or notation or after reproduction in a different material form.

The only case to have raised the issue in Australia is the Autodesk Case. In that case, the courts considered whether the Autodesk Lock, which contained a hard-wired circuit including a clock, a shift register and an OR gate, constituted a ‘computer program’ for the purposes of the Australian Copyright Act. At first instance, Northrop J held that it did.[121] On appeal to the Full Court, Lockhart and Sheppard JJ took a contrary view, but Beaumont J did not consider the issue.[122] On further appeal to the High Court, the issue was not decided, but Dawson J expressed doubts as to whether the Autodesk Lock was a computer program.[123] Dawson J was of the opinion that the Autodesk Lock contained such simple digital-logic that it did not constitute an expression of a ‘set of instructions’, with the effect that the Autodesk Lock was not a ‘computer program’, within the meaning of s10 of the Copyright Act.[124] Nevertheless, Dawson J appears to have accepted, as a general proposition, that hard-wired digital logic constituted an ‘expression’ of ‘instructions’.[125] As a result of Dawson’s J comments, it has been suggested that it is arguable, but far from certain, that hard-wired computer programs are ‘computer programs’ for the purposes of the Australian Copyright Act.[126]

If this were the case, it would appear that in Australia, hard-wired programs receive dual protection under the Copyright Act and also under the Circuit Layouts Act.[127] The Circuit Layouts Act, provides protection to ‘circuit layouts’ of ‘integrated circuits’ in very similar terms to the Washington Treaty. There are minor differences in language used to define the subject matter, but it would not appear that there are any differences in the subject matter protected.[128] Hard-wired computer programs are of course one possible element of integrated circuits. With the introduction of the Circuit Layouts Act, the Copyright Act was amended in an attempt to take circuit layouts outside the scope of the Copyright Act. The definition of ‘artistic work’ in s10(1) of the Copyright Act excludes ‘a circuit layout within the meaning of the Circuit Layouts Act 1989’. There is however nothing to stop the hard-wired program elements of integrated circuits from being protected as literary works, if in fact hard-wired programs fall within the definition of ‘computer program’ for the purposes of the Copyright Act. It is submitted that hard-wired programs should be considered ‘computer programs’. However, under the current definition, they cannot be, because although they are an ‘expression’ of a ‘set of instructions’, they are not in the form of ‘language, code or notation’, as required by the definition. The definition makes explicit reference only to code implementations of programs and by implication, it does not encompass hard-wired implementations of programs.

In its Report on Computer Software Protection, the Copyright Law Review Committee recommended that the current definition of ‘computer program’ be replaced with the definition employed in the US Act.[129] In pursuance of this recommendation, Item 7 of the Copyright Amendment (Digital Agenda) Bill 1999 proposes the adoption of the following definition: ‘Computer program means a set of statements or instructions to be used directly or indirectly in a computer in order to bring about a certain result.’ This new definition will clearly not encompass hard-wired programs because hard-wired programs are not in the form of a ‘set of statements or instructions’. With a code implemented program, it is a set of statements or instructions that tell the computer how to temporarily create a digital circuit that implements the logic. With a hard-wired program, no statements or instructions are involved because the logic is hard-wired as a digital circuit.

Unbelievably, in its Report on Computer Software Protection, the Copyright Law Review Committee did not even consider the position of hard-wired programs, either under the existing definition, or under its proposed definition. Admittedly, its reference was to consider the protection of software, but it is surprising that the Committee did not even consider the relationship between hard-wired programs and code programs. The purpose of substituting the new definition was just to simplify the law and resolve a number of other uncertainties.[130] It seems that not even the Copyright Law Committee appreciated that hard-wired programs and code implemented program are functionally equivalent. At one point they even described code implemented programs and the subject matter protected under the Circuit Layouts Act as being of an ‘inherently different nature’.[131] This is simply incorrect.

The treatment of hard-wired and code programs as separate subject matter is not a problem of itself, except from the point of view of conceptual coherence. However, where it results in dual protection or the inconsistent treatment of hard-wired and code programs, it is potentially a problem.

2. The Protection Of Underlying Functional Elements

Under the Circuit Layouts Act, the underlying innovative elements of hard-wired computer programs are not directly protected because the protection is merely conferred upon the ‘circuit layouts’.[132] Under the Copyright Act, whether the underlying innovative elements of code implemented programs is protected depends upon the application of the idea/expression dichotomy. The application of the idea/expression dichotomy to resolve this issue has proved to be extremely difficult for the courts, both in Australia and overseas. It is submitted that the underlying conceptual and functional elements of computer programs are ideas and consequently they should not be protected by copyright. However, the courts, especially early on, have not always reached this conclusion. Nevertheless, the Copyright Law Review Committee reached the conclusion that these underlying elements are not directly protected by copyright currently and neither should they be.[133] However, while the underlying elements of computer programs are not directly protected by the intellectual property protection conferred upon the implementational form of the computer program, it will be recalled that these elements will be indirectly protected if there is not a reverse engineering exception to the exclusive rights.[134]

Under s23 of the Circuit Layouts Act, there is a wide reverse engineering exception in similar terms to the Washington Treaty. Consequently, under the Circuit Layouts Act, it is not an infringement to de-compile a hard-wired program to evaluate, analyse and then appropriate any underlying innovative elements, whether they be conceptual elements such as user or program interfaces or functional elements such as the architecture, algorithms or data structures.

Under the Copyright Act, there is not presently a specific reverse engineering exception. More generally, S40(1) of the Copyright Act does provide that fair dealing with a literary work for the purposes of research or study does not constitute an infringement. However, this fair dealing exception only applies in respect of ‘non-commercial’ activities, so any reverse engineering carried out by commercial programers would fall outside the scope of this provision.[135] Consequently, at present, the underlying innovative elements of code-implemented programs are indirectly fenced by the anti-piracy protection of the program.

A major part of the Copyright Law Review Committee’s Report was dedicated to the reverse engineering issue.[136] Ultimately, the Committee decided that reverse engineering should be prohibited, except to the extent that it is required for inter-operability or error correction. The Copyright Amendment (Computer Programs) has largely implemented these recommendations, although it will also allow reverse engineering for the purposes of security testing. That reverse engineering should be permitted for these limited purposes is not disputed. What is disputed is that reverse engineering should not be allowed to for the more general purpose of revealing the underlying innovative elements.

The Committees recommendation is surprising because it appears to be at odds with the basic conclusions it reached in the course of its discussion. Firstly, the Committee recognised the importance of providing access to the unprotected ideas, knowledge, concepts and principles underlying the computer program, if the industry is to progress. [137] Secondly, the Committee appears to have recognised that the underlying elements of the program, which it had already concluded were not directly protected, should not be indirectly protected by a prohibition on reverse engineering.[138] Thirdly, the Committee recognised that reverse engineering is only a problem where it resulted in the creation of an infringing reproduction and that the creation of an infringing reproduction was already prevented by the exclusive rights.[139] Since the Committee had already concluded that the underlying elements of the program were not, and should not be, directly protected, presumedly, the only time decompilation would result in an infringing reproduction would be if it resulted in a reproduction of a substantial part of the code of the program. Nevertheless, the Committee ultimately recommended that there be no general right of reverse engineering to provide access to the underlying elements of the program, which it had already concluded were not directly protected and should not be directly protected.

The Committee appears to have been swayed by IBM’s argument that reverse engineering was a concern in that it allowed a competitor to produce a ‘clone’ program that involved a reproduction of a substantial part of the code of a program, but in which the code was manipulated to hide any similarity with the original program.[140] The Committee apparently accepted that since a clone program might easily escape recognition as a reproduction, a general reverse engineering exception would ‘conflict with the normal exploitation of the work’ and ‘unreasonably prejudice the legitimate interests of the author’, contrary to Article 9(2) of the Berne Convention and Article 13 of the TRIPs Agreement.[141]

In effect, the Committee concluded that since reverse engineering allowed clones to be made that might escape recognition as reproductions, it was necessary to offer a further layer of protection and prevent reverse engineering, except for very limited circumstances. The adverse ramification of this is that by preventing reverse engineering, indirect protection has also been conferred on the unprotected underlying conceptual and functional elements. While the Committee might have believed that its recommendations were complying with Article 13 of the TRIPs Agreement, it failed to realise is that, its recommendation arguably contravene Article 1(1) of the Agreement. Although, pursuant to Article 1(1), the TRIPs Agreement merely provides minimum standards of protection, it is not open to members to confer protection that is more extensive if that protection contravenes the TRIPs Agreement. Consequently, it is submitted that it is not open to national legislatures to indirectly protect the underlying innovative elements of computer programs by refusing to recognise a general reverse engineering exception, when Article 9(2) explicitly provides that these underlying innovative elements are not directly protected. The caveat on more extensive protection in Article 1(1) of the TRIPs Agreement is intended to preserve the policy balance agreed upon in the TRIPs Agreement. Part of this policy balance was that the underlying elements of computer programs should not be protected. If this policy balance is to be preserved, they should not be indirectly protected either.

It is a pity that the Copyright Law Committee did not pay more heed to the submissions of LCA and Mr Dan Hunter that copyright law should make the same concession in respect of understanding elements as is made by s.23 of the Circuit Layouts Act.[142] Instead, the Committee, in not adopting a general reverse engineering right, has provided indirect protection for the underlying elements of computer programs. This indirect protection has been conferred despite the fact that the Committee concluded that direct protection was not justified on policy grounds and it has occurred at a time when the courts were beginning to reach the same conclusion.

3. Adverse Consequences

The Copyright Law Revue Committees Report on Computer Software Protection and the subsequent Copyright Amendment (Computer Programs) Bill are a step backwards, which will hinder the development of the Australian software industry. IBM submitted to the Copyright Law Committee that the recognition of a general reverse engineering exception would place Australian developers at an advantage relative to competing developers in other countries where such an exception does not exist.[143] In fact, quite the contrary is true. The recognition of only a limited reverse engineering right places Australian developers at a disadvantage when compared with their counterparts in the US, where a broader right of reverse engineering has been recognised by the courts under the fair use doctrine.[144] The Australian industry is still in its infancy and it needs a legal environment that will foster its development rather than hinder it. Unfortunately, the US industry was able to convince the Copyright Law Review Committee to adopt laws that benefit the established US industry rather than the emerging Australian industry.

As well as being inappropriate, the indirect protection conferred upon the underlying elements of code implemented programs may cause harm merely because it is inconsistent with the lack of protection conferred upon the underlying elements of hard-wired program. The choice between code and hard-wired implementation for an algorithm should by dictated by engineering concerns of cost, speed, efficiency, reliability and frequency of expected change, not by the fact that indirect legal protection is conferred upon code implemented program. There are documented instances in the past where the method of implementation has been influenced by the degree of protection available.[145]

This is another very real concern.

VII Conclusion

This examination of the protection of computer programs and their underlying elements demonstrates the importance of formulating appropriate subject matter definitions if a correct policy balance is to be achieved. This has proved particularly difficult with respect to computer programs because of their highly technical nature. To some degree, the failure of policy makers to come to terms with computer programming technology is not their fault. Rather, “a major problem is the lack of precision in many of the terms used within the industry. Computer scientists do not have the same needs as lawyers for precision in defining their terms, and they approach the subject matter for a different purpose.” [146] Nevertheless, these are difficulties that must be overcome if appropriate protection is to be conferred upon computer programs. The Copyright Law Review Committee’s Report on Computer Software Protection is flawed in this regard.

Hard-wired programs and code implemented programs should be treated as a coherent subject matter for the purposes of intellectual property protection and if the underlying elements of computer programs are not directly protected subject matter, indirect protection should be avoided through the recognition of a general right of reverse engineering.

References

Anonymous 'Computer Intellectual Property & Conceptual Severance' (1991) 23 IPLR 165

Blakeney, M Trade Related Aspects of Intellectual Property Rights: A Concise Guide to the TRIPS Agreement (London: Sweet & Maxwell, 1996)

Breyer, S 'The Uneasy Case for Copyright: A Study of Copyright in Books, Photocopies and Computer Programs' (1970) 84 Harv L Rev 281

Christie, A 'Designing Appropriate Protection for Computer Programs' (1994) 11 EIPR 486

Christie, A Integrated Circuits and their Content: International Protection (Sydney: LBC, 1995)

Christie, A and K Fong 'Copyright Protection for Non-Code Elements of Software' (1996) 7 JLIS 149

Cifuentes, C and A Fitzgerald 'Reverse Engineering of Computer Programs: Comments on the CLRC's Final Report on Computer Software Protection' (1995) 6 JLIS 241

Copyright Law Review Committee Report on Computer Software Protection (Canberra, 1995)

Dam, K 'The Economic Underpinnings of Patent Law' (1994) 23 J Legal Studies 247

Dam, K 'Some Economic Considerations in the Intellectual Property Protection of Software' (1995) 24 J Legal Studies 321

Duigan, A 'Why the Copyright of 'Look & Feel' is not Applicable to Australian Law' (1994) 5(1) J of L & IS 78

Foray, D 'The Economics of Intellectual Property Rights and Systems of Innovation: The Persistence of National Practice Verses the New Global Model of Innovation' in J Hegendoorn (ed.) Technical Change and the World Economy: Convergence and Divergence in Technology Strategies (London: Edward Elgar, 1995), 109

Galler, B Software and Intellectual Property Protection (Westport: Quorum Books, 1995)

Gaze, B Copyright Protection of Computer Programs (Sydney: Federation Press, 1989)

Gordon, W 'On the Economics of Copyright, Restitution and Fair Use: Systematic Verses Case-by-Case Responses to Market Failure' (1997) 8 J of L & IS 7

Jacobs, M 'Copyright and Compatibility' (1989) 30 Jurimetrics J 91

Karjala, D 'Copyright, Computer Software, and the New Protectionism' (1987) 28 Jurimetrics J 33

Karjala, D 'Theoretical Foundations for the Protection of Computer Programs in Developing Countries' (1994) 13 UCLA Pacific Basin L J 179

Knight, P 'The Circuit Layouts Act: A Model For Sui Generis Legislation?' Copyright Law & Practice Symposium (Sydney: 1989)

McKeough, J Intellectual Property: Commentaries & Materials (Sydney: LBC, 1992)

Menell, P 'The Challenges of Reforming Intellectual Property Protection for Computer Software' (1994) 94 Colum L Rev 2644

Menell, P 'Tailoring Legal Protection for Computer Software' (1987) 39 Stan L Rev 1329

Nelson, R 'The Simple Economics of Basic Research Industries' in E Mansfield and E Mansfield (eds.) The Economics of Technical Change (Aldershot: Edward Elgar, 1993) 106

Samuelson, P 'CONTU Revisited: The Case Against Copyright Protection of Computer Programs in Machine Readable Form' (1984) Duke LJ 663

Samuelson, P et al. 'A Manifesto Concerning the Legal Protection of Computer Programs' (1994) 94 Colum L Rev 2308

Spector, A 'Software, Interface & Implementation' (1989) 30 Jurimetrics J 79

Spivack, P 'Does Form Follow Function: The Idea/Expression Dichotomy in Copyright Protection of Computer Software' (1988) 35 UCLA L Rev 723

Stern, R 'The Bundle of Rights Suited to New Technology' (1986) 47 U Pitt L Rev 1220

Valasco, J 'The Copyrightability of Non-Literal Elements of Computer Programs' (1995) 27 IPLR 329

Vinje, T 'A Brave New World of Technical Protection Systems: Will there still be Room for Copyright' (1996) 8 EIPR 431

Ward, R et al Economics (Longman, 1996)


[1] A Spector 'Software, Interface & Implementation' (1989) 30 Jurimetrics J 79, 80.

[2] A Christie 'Designing Appropriate Protection for Computer Programs' (1994) 11 EIPR 486, 493.

[3] When machine-readable code is ‘executed’ by the computer’, it is actually processed by more basic low-level algorithms which are themselves implemented in the computer.

[4] A Spector 'Software, Interface & Implementation' (1989) 30 Jurimetrics J 79, 80.

[5] Anonymous 'Computer Intellectual Property & Conceptual Severance' (1991) 23 IPLR 165, 167.

[6] In fact, early on in the development of computers, technological constraints on processing power totally prohibited the use of code implementation. See P Menell 'Tailoring Legal Protection for Computer Software' (1987) 39 Stan L Rev 1329, 1333.

[7] P Samuelson et al. 'A Manifesto Concerning the Legal Protection of Computer Programs' (1994) 94 Colum L Rev 2308, 2320.

[8] D Karjala 'Copyright, Computer Software, and the New Protectionism' (1987) 28 Jurimetrics J 33, 37.

[9] P Samuelson 'CONTU Revisited: The Case Against Copyright Protection of Computer Programs in Machine Readable Form' (1984) Duke LJ 663, 680.

[10] B Galler Software and Intellectual Property Protection (Westport: Quorum Books, 1995), 142.

[11] P Menell 'Tailoring Legal Protection for Computer Software' (1987) 39 Stan L Rev 1329, 1332.

[12] B Galler 'Software and Intellectual Property Protection' (Westport: Quorum Books, 1995), 143.

[13] P Menell 'Tailoring Legal Protection for Computer Software' (1987) 39 Stan L Rev 1329, 1332.

[14] P Menell 'Tailoring Legal Protection for Computer Software' (1987) 39 Stan L Rev 1329, 1333.

[15] There are two basic types of silicon chip – the digital-logic chip and the memory chip. The digital-logic chip mentioned here is a hard-wired method of algorithm implementation. In contrast, the memory chip is a storage bank that can be used to store machine-readable code and is therefore a code method of algorithm implementation. See P Knight 'The Circuit Layouts Act: A Model For Sui Generis Legislation?' (Copyright Law & Practice Symposium: Sydney, 1989).

[16] According to Moore’s law, the number of transistors per square inch on integrated circuits doubles approximately every 18 months. Most experts, including Moore himself, expect Moore's Law to hold for another two decades.

[17] See J Storrs Hall ‘Overview of Nano-Technology’ @ http://nanotech.rutgers.edu/nanotech/intro.html.

[18] Used in parallel, one million rod switches could fit into a space less than a half a millionth of a meter (10 times smaller than a human blood cell) and perform at a billion times faster than today’s average desktop. See the Nano-Technology Magazine News-Page @ http://nanozine.com/NEWS.HTML#team.

[19] ROM chips or ‘Read Only Memory’ chips are one of two types of memory chip. Memory chips are silicon chips but they are different to digital logic chips. See supra n 15. Rather than being miniaturised electronic circuits, they are essentially arrays of on/off switches. See also P Knight 'The Circuit Layouts Act: A Model For Sui Generis Legislation?' Copyright Law & Practice Symposium Sydney. ROM chips must also be distinguished from RAM chips or ‘Random Access Memory’ chips, which are a different type of memory chip that store data temporarily during processing rather than permanently.

[20] See supra p 10.

[21] BIOS stands for ‘Basic Input/Output System’ not ‘Built-In Operating System’ as is sometimes claimed.

[22] MMX stands for Multi-Media Extensions.

[23] B Gaze Copyright Protection of Computer Programs (Sydney: Federation Press, 1989), 11.

[24] Ibid.

[25] See The Economist ‘Fitting Chips’ in The Australian ‘Computers – The Cutting Edge’, 1.

[26] See diagram in M Jacobs 'Copyright and Compatibility' (1989) 30 Jurimetrics J 91, 96.

[27] It must be recognised that the term ‘hardware’ is used in a limited sense to refer to just digital-logic circuits – the form of hardware that does implement algorithms – and not all computer hardware.

[28] See A Christie and K Fong 'Copyright Protection for Non-Code Elements of Software' (1996) 7 JLIS 149, 150.

[29] See Anonymous 'Computer Intellectual Property & Conceptual Severance' (1991) 23 IPLR 165, 168, 171.

[30] See Anonymous 'Computer Intellectual Property & Conceptual Severance' (1991) 23 IPLR 165, 167.

[31] Anonymous 'Computer Intellectual Property & Conceptual Severance' (1991) 23 IPLR 165, 174.

[32] P Menell 'The Challenges of Reforming Intellectual Property Protection for Computer Software' (1994) 94 Colum L Rev 2644, 2648.

[33] See supra p 9.

[34] A Spector 'Software, Interface & Implementation' (1989) 30 Jurimetrics J 79, 87.

[35] As Pamela Samuelson argues: “[W]e must realise that it is not the application program alone that performs the task we ask the computer to do. Nor is it the hardware alone. Rather, it is the complex hierarchy of programs and hardware that, while interacting with one another, works as a unit to perform a particular application task.”: P Samuelson 'CONTU Revisited: The Case Against Copyright Protection of Computer Programs in Machine Readable Form' (1984) Duke LJ 663, 680.

[36] J McKeough Intellectual Property: Commentaries & Materials (2nd ed.) (Sydney: LBC, 1992), 211.

[37] A Spector 'Software, Interface & Implementation' (1989) 30 Jurimetrics J 79, 83.

[38] P Spivack 'Does Form Follow Function: The Idea/Expression Dichotomy in Copyright Protection of Computer Software' (1988) 35 UCLA L Rev 723, 730.

[39] P Samuelson et al. 'A Manifesto Concerning the Legal Protection of Computer Programs' (1994) 94 Colum L Rev 2308, 2328.

[40] B Gaze Copyright Protection of Computer Programs (Sydney: Federation Press, 1989), 8.

[41] A Spector 'Software, Interface & Implementation' (1989) 30 Jurimetrics J 79, 84.

[42] See B Gaze Copyright Protection of Computer Programs (Sydney: Federation Press, 1989), 9. See also A Spector 'Software, Interface & Implementation' (1989) 30 Jurimetrics J 79, 85.

[43] P Spivack 'Does Form Follow Function: The Idea/Expression Dichotomy in Copyright Protection of Computer Software' (1988) 35 UCLA L Rev 723, 728.

[44] See B Gaze Copyright Protection of Computer Programs (Sydney: Federation Press, 1989), 9. Compilation to object code is preferred because object code programs are processed more quickly because they do not have to be translated on the fly. Program developers also prefer to distribute programs in object code form because the ‘secrets’ of the program cannot be learned without de-compilation of the program.

[45] P Spivack 'Does Form Follow Function: The Idea/Expression Dichotomy in Copyright Protection of Computer Software' (1988) 35 UCLA L Rev 723, 729.

[46] P Samuelson et al. 'A Manifesto Concerning the Legal Protection of Computer Programs' (1994) 94 Colum L Rev 2308, 2317.

[47] See A Christie and K Fong 'Copyright Protection for Non-Code Elements of Software' (1996) 7 J or L & IS 149. Others merely make a distinction between ‘function’ and ‘implementation’: see for example A Spector 'Software, Interface & Implementation' (1989) 30 Jurimetrics J 79, 79. However this terminology fails to recognise the difference between the functional aim of the program and the functional method of achieving this aim. A similar distinction between ‘literal’ and ‘non-literal’ elements: see for example J Valasco 'The Copyrightability of Non-Literal Elements of Computer Programs' (1995) 27 IPLR 329. This distinction is subject to the same criticism. An alternative distinction is often made between ‘code’ and ‘non-code’ elements: see for example R Stern 'The Bundle of Rights Suited to New Technology' (1986) 47 U Pitt L Rev 1220. This is similar to a distinction between ‘text’ and ‘behaviour’: see P Samuelson et al. 'A Manifesto Concerning the Legal Protection of Computer Programs' (1994) 94 Colum L Rev 2308. However, both of these terminologies are even more inappropriate once it is accepted that the term ‘computer program’ includes hardware implementations.

[48] Support for the moral rights justification could be found in the fact that it is recognised as an inalienable right by Art 27(2) of the Universal Declaration of Human Rights which states that ‘Everyone has the right to the protection of the moral and material interests resulting from any scientific, literary or artistic production of which he is the author’.

[49] Nevertheless, it does receive passing recognition in the case law. For example, in Millar v Taylor, Willes J argued that: “It is not agreeable to natural justice that a stranger should reap the pecuniary produce of another’s work”.

[50] P Spivack 'Does Form Follow Function: The Idea/Expression Dichotomy in Copyright Protection of Computer Software' (1988) 35 UCLA L Rev 723, 761.

[51] See J Rawls A Theory of Justice (Oxford : Clarendon Press, 1972).

[52] B Gaze Copyright Protection of Computer Programs (Sydney: Federation Press, 1989), 19.

[53] For a good introduction to market economics see R Ward et al Economics (3rd ed) (Longman, 1996).

[54] R Nelson 'The Simple Economics of Basic Research Industries' in E Mansfield and E Mansfield The Economics of Technical Change (Aldershot: Edward Elgar, 1993), 107.

[55] Ibid.

[56] One example of an external cost is pollution caused during the manufacture of a good.

[57] R Ward et al Economics (3rd ed) (Longman, 1996), 53.

[58] P Spivack 'Does Form Follow Function: The Idea/Expression Dichotomy in Copyright Protection of Computer Software' (1988) 35 UCLA L Rev 723, 762.

[59] P Menell 'Tailoring Legal Protection for Computer Software' (1987) 39 Stan L Rev 1329, 1337.

[60] See K Dam 'Some Economic Considerations in the Intellectual Property Protection of Software' (1995) 24 J Legal Studies 321. See also K Dam 'The Economic Underpinnings of Patent Law' (1994) 23 J Legal Studies 247.

[61] See P Menell 'The Challenges of Reforming Intellectual Property Protection for Computer Software' (1994) 94 Colum L Rev 2644, 2645.

[62] The public goods analysis only applies to innovative or new ideas, not ideas in general, because it is only innovative ideas that are the creations of individuals, which can be exploited in the market.

[63] R Nelson 'The Simple Economics of Basic Research Industries' in E Mansfield and E Mansfield The Economics of Technical Change (Aldershot: Edward Elgar, 1993), 114.

[64] Ibid.

[65] This paper focuses on legal fencing in the form of intellectual property rights. However, it is impossible to consider the intellectual property fencing of computer programs without reference to the various methods of physical fencing used to protect computer programs, so reference will also be made to physical fencing. It should also be recognised that the other public goods remedies, especially public subsidy through tax concessions, are also used to some extent with respect to the public goods problem associated with computer program.

[66] One example is the building of a wall around a public garden and the issue of keys for admission. With respect to computer programs, digital technology provides a variety of physical exclusion mechanisms. See infra …

[67] W Gordon 'On the Economics of Copyright, Restitution and Fair Use: Systematic Verses Case-by-Case Responses to Market Failure' (1997) 8 JLIS 7, 12.

[68] B Gaze Copyright Protection of Computer Programs (Sydney: Federation Press, 1989), 20.

[69] For a detailed discussion see K Dam 'The Economic Underpinnings of Patent Law' (1994) 23 J Legal Studies 247.

[70] P Spivack 'Does Form Follow Function: The Idea/Expression Dichotomy in Copyright Protection of Computer Software' (1988) 35 UCLA L Rev 723, 763.

[71] K Dam 'The Economic Underpinnings of Patent Law' (1994) 23 J Legal Studies 247, 251.

[72] P Menell 'Tailoring Legal Protection for Computer Software' (1987) 39 Stan L Rev 1329, 1364.

[73] P Spivack 'Does Form Follow Function: The Idea/Expression Dichotomy in Copyright Protection of Computer Software' (1988) 35 UCLA L Rev 723, 752.

[74] K Dam 'The Economic Underpinnings of Patent Law' (1994) 23 J Legal Studies 247, 251.

[75] P Spivack 'Does Form Follow Function: The Idea/Expression Dichotomy in Copyright Protection of Computer Software' (1988) 35 UCLA L Rev 723, 755.

[76] Ibid.

[77] D Foray 'The Economics of Intellectual Property Rights and Systems of Innovation: The Persistence of National Practice Verses the New Global Model of Innovation' (J Hegendoorn) Technical Change and the World Economy: Convergence and Divergence in Technology Strategies London, 113.

[78] P Menell 'The Challenges of Reforming Intellectual Property Protection for Computer Software' (1994) 94 Colum L Rev 2644, 2646.

[79] K Dam 'The Economic Underpinnings of Patent Law' (1994) 23 J Legal Studies 247, 266.

[80] D Foray 'The Economics of Intellectual Property Rights and Systems of Innovation: The Persistence of National Practice Verses the New Global Model of Innovation' in J Hegendoorn Technical Change and the World Economy: Convergence and Divergence in Technology Strategies (London: Edward Elgar, 1995), 113.

[81] Nevertheless, some commentators argue that with respect to certain public goods such as computer programs, physical fencing mechanisms exist which make intellectual property protection unnecessary. See for example T Vinje 'A Brave New World of Technical Protection Systems: Will there still be Room for Copyright' (1996) 8 EIPR 431 and S Breyer 'The Uneasy Case for Copyright: A Study of Copyright in Books, Photocopies and Computer Programs' (1970) 84 Harv L Rev 281.

[82] See D Karjala 'Copyright, Computer Software, and the New Protectionism' (1987) 28 Jurimetrics J 33, 41.

[83] See supra p.20.

[84] D Karjala 'Theoretical Foundations for the Protection of Computer Programs in Developing Countries' (1994) 13 UCLA Pacific Basin Law Journal 179, 183.

[85] P Menell 'The Challenges of Reforming Intellectual Property Protection for Computer Software' (1994) 94 Colum L Rev 2644, 2645.

[86] T Vinje 'A Brave New World of Technical Protection Systems: Will there still be Room for Copyright' (1996) 8 EIPR 431.

[87] 30 years ago, it was argued that the widespread availability of these physical-fencing mechanisms made the intellectual property protection of computer programs unnecessary: see S Breyer 'The Uneasy Case for Copyright: A Study of Copyright in Books, Photocopies and Computer Programs' (1970) 84 Harv L Rev 281. More recently, however, with the expansion of the industry into the mass market, this argument is probably untenable: see B Gaze 'Copyright Protection of Computer Programs' Sydney Federation Press 1989, 21. The international intellectual property norms applying to computer programs provided under the TRIPS agreement are examined in the next chapter.

[88] This is known as block-box testing.

[89] Copyright Law Review Committee Report on Computer Software Protection (Canberra, 1995) , [10.23].

[90] In which case they satisfy the high standards required for patent protection.

[91] P Spivack 'Does Form Follow Function: The Idea/Expression Dichotomy in Copyright Protection of Computer Software' (1988) 35 UCLA L Rev 723, 730.

[92] P Samuelson et al. 'A Manifesto Concerning the Legal Protection of Computer Programs' (1994) 94 Colum L Rev 2308, 2329.

[93] Ibid.

[94] Due to the constraints of space, this can be explored no further. The present analysis has gone far enough to reveal the important policy implication in relation to the subject matter issue, which is the topic of this paper.

[95] See supra p 15.

[96] P Samuelson et al. 'A Manifesto Concerning the Legal Protection of Computer Programs' (1994) 94 Colum L Rev 2308, 2321.

[97] See A Duigan 'Why the Copyright of 'Look & Feel' is not Applicable to Australian Law' (1994) 5(1) JLIS 78.

[98] P Samuelson et al. 'A Manifesto Concerning the Legal Protection of Computer Programs' (1994) 94 Colum L Rev 2308, 2324.

[99] Non-interactive screen displays are creative rather than functional in nature. They should be treated as independent ‘works’, the protection of which should be considered under the copyright Act.

[100] P Samuelson et al. 'A Manifesto Concerning the Legal Protection of Computer Programs' (1994) 94 Colum L Rev 2308, 2326.

[101] See supra p 17.

[102] See supra p 26.

[103] See supra p 13.

[104] See supra p 26.

[105] See supra p 28.

[106] See supra p 29.

[107] See supra p 13.

[108] The definition is in fact more complicated than this, but this is an accurate summary of the definition. See A Christie Integrated Circuits and their Content: International Protection Sydney LBC 1995, 40; and M Blakeney Trade Related Aspects of Intellectual Property Rights: A Concise Guide to the TRIPS Agreement (London: Sweet & Maxwell, 1996), 98.

[109] See supra p 26.

[110] The TRIPs Agreement could not purport to amend the Berne Convention because the convention provides for its own amendment procedures, requiring revision conferences in one of the conferences of the Berne Union with voting proceeding on the basis of unanimity. Consequently, Article 10(1) of the TRIPs Agreement must be read with the prefatory words ‘for the purposes of this agreement’. See M Blakeney 'Trade Related Aspects of Intellectual Property Rights: A Concise Guide to the TRIPS Agreement' London Sweet & Maxwell 1996, 45.

[111] See Main Elements of a Legal Text for TRIPs, Communications from Japan, GATT Doc. No. MTN.GNC/NG11/W/74 (May 15, 1990), 1(3)(i)-(ii); as cited in M Blakeney Trade Related Aspects of Intellectual Property Rights: A Concise Guide to the TRIPS Agreement (London: Sweet & Maxwell, 1996), 50.

[112] See supra p 28.

[113] According to Article 1(1) of the WIPO Copyright Treaty, it is merely a ‘special agreement’ between Berne members, authorised by Article 20 of the Berne Agreement, that provides more extensive rights than those granted by the Berne Convention. Signatories to the Berne Convention who are not signatories to the WIPO Copyright Treaty are not obliged to confer the more extensive protection.

[114] A Christie 'Designing Appropriate Protection for Computer Programs' (1994) 11 EIPR 486, 487.

[115] B Gaze Copyright Protection of Computer Programs (Sydney: Federation Press, 1989), 181.

[116] Ibid.

[117] M Blakeney Trade Related Aspects of Intellectual Property Rights: A Concise Guide to the TRIPS Agreement (London: Sweet & Maxwell, 1996), 96.

[118] J McKeough Intellectual Property: Commentaries & Materials (2nd ed.) (Sydney: LBC, 1992), 206.

[119] Copyright Law Review Committee 'Report on Computer Software Protection' , [4.21-4.27].

[120] Copyright Law Review Committee 'Report on Computer Software Protection' , [4.05].

[121] Autodesk v Dyason [1989] FCA 295; (1989) 15 IPR 1, 25.

[122] Dyason v Autodesk [1990] FCA 469; (1990) 24 FCR 147, 151 & 167-168.

[123] Autodesk v Dyason [1992] HCA 2; (1992) 173 CLR 330, 343-344.

[124] Ibid, 344.

[125] Ibid, 343.

[126] A Christie 'Designing Appropriate Protection for Computer Programs' (1994) 11 EIPR 486, 491.

[127] J McKeough Intellectual Property: Commentaries & Materials (2nd ed.) (Sydney: LBC, 1992), 238.

[128] Section 5 of the Act defines ‘circuit layout’ to mean ‘a representation, fixed in any material form, of the three-dimensional location of the active and passive elements and interconnections making up an integrated circuit’. S5 defines ‘integrated circuit’ to mean: ‘a circuit, whether in final form or an intermediate form, the purpose, or one of the purposes, of which is to perform an electronic function, being a circuit in which the active and passive elements, and any of the interconnections, are integrally formed in or on a piece of material’. These definitions are very similar to the definitions in the Washington Treaty. See supra p 34.

[129] Copyright Law Review Committee Report on Computer Software Protection (Canberra, 1995), [6.32].

[130] Copyright Law Review Committee Report on Computer Software Protection (Canberra, 1995), [6.32].

[131] Ibid, [10.89].

[132] See supra p 35.

[133] Ibid, [9.09-9.40].

[134] See supra p 28. See also C Cifuentes and A Fitzgerald 'Reverse Engineering of Computer Programs: Comments on the CLRC's Final Report on Computer Software Protection' (1995) 6 J of L & IS 241, 266.

[135] C Cifuentes and A Fitzgerald 'Reverse Engineering of Computer Programs: Comments on the CLRC's Final Report on Computer Software Protection' (1995) 6 J of L & IS 241, 268.

[136] See Copyright Law Review Committee Report on Computer Software Protection (Canberra, 1995), [10.21-10.105].

[137] Ibid, [10.86, 10.88].

[138] Ibid, [10.104].

[139] Ibid, [10.33, 10.39, 10.105].

[140] Copyright Law Review Committee Report on Computer Software Protection (Canberra, 1995), [10.38].

[141] Copyright Law Review Committee Report on Computer Software Protection (Canberra, 1995), [10.33, 10.103].

[142] Copyright Law Review Committee Report on Computer Software Protection (Canberra, 1995), [10.89].

[143] Ibid, [10.32].

[144] C Cifuentes and A Fitzgerald 'Reverse Engineering of Computer Programs: Comments on the CLRC's Final Report on Computer Software Protection' (1995) 6 J of L & IS 241, 261-267.

[145] P Samuelson et al. 'A Manifesto Concerning the Legal Protection of Computer Programs' (1994) 94 Colum L Rev 2308, 2320.

[146] B Gaze Copyright Protection of Computer Programs (Sydney: Federation Press, 1989) 5.


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