The software patent debate is the argument about the extent to which, as a matter of public policy, it should be possible to patent software and computer-implemented inventions. Policy debate on software patents has been active for years. The opponents to software patents have gained more visibility with fewer resources through the years than their pro-patent opponents. Arguments and critiques have been focused mostly on the economic consequences of software patents. One aspect of the debate has focused on the proposed European Union directive on the patentability of computer-implemented inventions, also known as the "CII Directive" or the "Software Patent Directive," which was ultimately rejected by the EU Parliament in July 2005. Arguments for patentability There are several arguments commonly given in defense of software patents or defense of the patentability of computer-implemented inventions. Public disclosure Through public disclosure, patents encourage the open sharing of information and additional transparency about legal exposure. Through public disclosure, patents encourage the transfer of mechanical technology, which may apply more broadly. Economic benefit Software patents resulting from the production of patentable ideas can increase the valuation of small companies. Software patents increase the return on investment made, which includes government funded research. Encouragement of innovation The ability to patent new software developed as a result of research encourages investment in software-related research by increasing the potential return of investment of said research. Copyright limitations Patents protect functionality. Copyright on the other hand only protects expression. Substantial modification to an original work, even if it performs the same function, would not be prevented by copyright. To prove copyright infringement also requires the additional hurdle of proving copying, which is not necessary for patent infringement. Copyright law protects unique expressions, while patent law protects inventions, which in the case of software, are algorithms; copyright cannot protect a novel means of accomplishing a function, merely the syntax of one such means. This means that patents incentivize projects that are unique and innovative in functionality rather than simply form. Copyrights, in turn, only incentivize uniqueness in form. Protection for small companies Software patents can afford smaller companies market protection by preventing larger companies from stealing work done by a smaller organization, leveraging their greater resources to go to market before the smaller company can. Hardware patents analogy Hardware and software are sometimes interchangeable. If people can patent hardware, then ideas describing software implemented by that hardware should also