Software and computer programs respectively are protected by copyright law. However, the copyright protects the implementation, namely the program code, and not the method forming the basis of the computer program. Without infringing copyright law, it is thus possible to effect the same method with a different program code, or to reprogram the functionality of the software.
It would be obvious to protect software with patents. Patents protect technical inventions, thus new and non-obvious solutions of technical problems. By principle, computer programs as such cannot be patented under European law. A word processor software as such, for example, does not solve a technical problem and therefore is excluded from patentability. However, the situation is different if a computer program is used to solve a technical problem, for example with respect to control of a technical process. Such a "computer-implemented invention" may be patentable under European patent law.