Relevant, but outside the scope of this project are legal and economic effects of patents. For economic effects we refer to [19,11] and for legal aspects to [30,5].
A survey of the state of the practice of software patenting can be found in [] and [24] gives a useful glossary for patent searches. A Software Engineering Body of Knowledge can be found in [32].
A crucial observation is that the requirement that a patent should make a ``technical contribution'' is hard to reconcile with software that lives in the realm of logical structures. In this way, software patents have to be expressed in unnatural ways that lead to under-protection as well as over-protection of certain inventions.
This is eloquently described by Plotkin [28], he proposes a complete reinterpretation of the patenting system from a software perspective. His observation is that there are crucial differences between the invention, description and patenting of electromechanical devices as compared to software programs. His key observation is that for electromechanical devices apart from a functional design, deriving a physical structural design is hard and also essential for obtaining patent protection. In the case of software, the logical structures described by the source code are the end point of human invention: the step to their physical realization is fully automated. In [29] this view is further elaborated.
Other interesting proposals exist for reforming the patent system or for providing other forms of legal protection for software but, for reasons of brevity, they cannot be further discussed here. A concise summary of the history and current status of software patentability can be found in [18]. A proposal for a ``third paradigm'' between copyright and patents can be found in [].
Although we have mostly argued for the elimination of trivial patents and do not draw the conclusion that software patents are a bad idea under all circumstances, we cannot resist to conclude this paper with a quote from the world-famous Donald Knuth, professor emeritus from Stanford University, in a letter to the US Patent Office [23]:
The basic algorithmic ideas that people are now rushing to patent are so fundamental, the result threatens to be like what would happen if we allowed authors to have patents on individual words and concepts. Novelists or journalists would be unable to write stories unless their publishers had permission from the owners of the words. Algorithms are exactly as basic to software as words are to writers, because they are the fundamental building blocks needed to make interesting products. What would happen if individual lawyers could patent their methods of defense, or if Supreme Court justices could patent their precedents?