Computer Intelligence for Open Source Software

Carl Sommerfeldt
September 1/04

Computer intelligence is the best way to help the cause of open source software and eliminate the practice of patenting software. Once someone succeeds at creating intelligent computer programs, these programs could write patent-free open-source software with little or eventually even no human labor. Eventually, because so much patent-free high-quality software will be available, businesses will no longer be able to profit from software patents and will stop trying to patent software entirely.

The strategy that intelligent computer programs use to remove patents from open source software may be retroactive or proactive. In the retroactive strategy, programming comes after the patent. In the proactive strategy, programming comes before the patent.

In the retroactive strategy, for all applications that use patents or do not have an open source implementation, computer intelligence can search for methods that do not use patents and create programs from them. The applications and the methods may be known or unknown to the open source community. The computer intelligence can search through the openly available literature or with its own creativity.

If a company tries to take out a patent on the software, regardless of who created the idea behind it, the intelligent computer program can do some more creative work, which includes searching, writing, and programming, to return the application to the open source community. If the intelligent computer program is smart, efficient, and productive enough and can perform the creative work at a sufficiently low cost, it always can stay ahead of the patent attorneys. Hence, companies that acquire patents will waste all their money ineffectually, playing a losing game of catch-up for no profit.

In the proactive strategy, for every application, computer intelligence can create and publish a large number of relevant theorems and analyses of comparable function and performance. When the window of opportunity to patent them has expired, it can implement and code them and incorporate them into a GNU-Linux distribution.

Computer intelligence will make software patents obsolete. This includes both individual patents and the entire practice of patenting. When companies realize that they cannot make any profit from patents on individual software methods, they will give up trying to patent software entirely. Therefore, patents will no longer have any business advantages nor be a practical option worthy of consideration.

Some things could make the job of legal patent avoidance and replacement more difficult. For example, the patent lawyers could make unfair demands. The patent could concern things that cannot change quickly. Examples of such things include file formats, interfaces, and standards.

To use the intelligent software, users would only have to download the software, read the user manual, set up the configuration files to tell it what to do, turn it on, leave it alone to work, and reap the benefits. The intelligent software should reduce the workload of the user substantially and eventually even to near zero.

People will want to use computer intelligence because it will give them the things for which they ask, produce high quality programs and user manuals, and take up little of their time.

In addition to the practical benefits for users, human programmers who seek to understand software can find a satisfying relationship with intelligent computer programs that create software substantially by themselves. Computer intelligence can perform activities that enhance people's experience and appreciation of open source software, educate the public, and improve relations between people and software.

For inquisitive people, in addition to writing programs, intelligent computer programs also can write user manuals, programmer documentation, command summaries, and individual usage instructions. They can write documents that explain programming concepts, describe theories of computer science from personal viewpoints, and explain programming logic in various mathematical languages. This would not be a burden to the intelligent computer software because it would need to produce these things for its own sake anyways.


  1. Free Software Foundation
  2. Electronic Frontier Foundation
  3. League for Programming Freedom

Copyright © 2004, Carl Sommerfeldt.
The author grants everyone permission to copy and distribute verbatim copies of this document.