The patent system aims at protecting inventions. The requirement that a software invention should make ``a technical contribution'' turns out to be untenable in practice and this raises the question what constitutes an invention in the realm of software. We develop a classification of software inventions and use this classification to explore the meaning of the notions ``novelty'', ``inventive step'' and ``someone skilled in the art'' for software inventions. We come to the conclusion that no meaningful distinction can be made between a software invention and a software discovery, a distinction that is crucial in patent law. We also show that only in very few cases copyright is an alternative for patents to protect software inventions. Note that we completely decouple the question of what constitutes a software invention and the desirability to protect such an invention in any way.
After the recent rejection of the proposed directive on computer-implemented inventions by the European Parliament, the political turmoil and emotions surrounding the subject are cooling down. At the same time, the fundamental questions about intellectual property rights on software remain unanswered. This is, therefore, the right moment to resume the debate about the fundamentals of a patenting system and to explore the desirability and possibility to establish IPR on software and to consider new systems to do so. This symposium will contribute to identifying new ways to look at this old problem.
So-called ``trivial'' software patents undermine the patenting system and are detrimental for innovation. In this paper we use a case-based approach to get a better understanding of this phenomenon. First, we establish a baseline for studying the relation between software development and intellectual property rights by formulating a life cycle for the patenting system as well as three variations of the software life cycle: the defensive patent-aware software life cycle that prevents patent infringements, the more offensive patent-based software life cycle that aims both at preventing infringements and at creating new patents, and the IPR-based software life cycle that considers all forms of protection of intellectual property rights including copyright and secrecy.
Next, we study an application for a software patent concerning the inequality operator and a granted European patent on memory management. We also briefly mention other examples of trivial patents. These examples serve to clarify the issues that arise when integrating patents in the software life cycle.
In an extensive discussion, we cover the difference between expression and idea, the role of patent claims, software patents versus computer implemented inventions, the role of prior art, implications of software patents for open source software, for education, for government-funded research, and for the current debate on the proposed EU patent directive. We conclude the discussion with the formulation of an ``integrity axiom'' for software patent authors and owners and sketch an agenda for software patent research.
We conclude that patents are too important to be left to lawyers and economists and that a complete reinterpretation of the patenting system from a software engineering perspective is necessary to understand all ramifications of software patents. We end with 12 explicit observations and recommendations.