The Idea of the self-reproducing computer program may be traced back to initial theories in regards to the operation of sophisticated automata.[11] John von Neumann showed that in principle a software could reproduce itself. This constituted a plausibility result in computability theory. Fred Cohen