Followup: Software required for Nanotech Dan Clemmensen (dgc@shirenet.com)
Search tool
12 May 1996 23:09:57 -0400

A week or so ago I speculated that the software development needed to reach the "assembler breakthrough" is so complex that we will first reach the "software development breakthrough."

The "software development breakthrough" will be the result of advances in software development tools. Since these tools are themselves software or (in the case of new computers) the result of the use of software tools, It seems to me that we have the basis for an inevitable feedback loop as we apply software developent tools to the development of other tools. I believe that this feedback will result in the emergence of a "superintelligence" (SI), probably as a human-computer collaboration.

This SI will emerge prior to the assembler breakthrough, because the software tools required for the assembler breakthrough are IMO sufficient for SI, while they are necessary but not sufficient for nanotech without SI.

I asked for comments and pointers to any other discussions of this topic, and offered to summarize.

I've received three responses, making several points.

Tom McKendree <tmckendree@msmail3.hac.com> points out that:
> This seems to have an implicit assumption that "superintelligence" is
> an easier software problem than nanotechnology (corrected for any
> differential time lag in implementing superintelligence given the software
> versus implementing MNT given that software). Do you have any argument,
> data, or other substantiation that superintelligence is easier than MNT?

Tom's point arises mostly from my overcompression of my first message. I used the term "superintelligence"(SI) to describe the immediate result of the "software development breakthrough," and failed to state that SI is not a goal, but a result. I have no data for my assertion, but I think that my summary above make my argument clearer.

David Stoner <dstoner@marlin.utmb.edu> wrote:
>Themes like this have been discussed in sci.nanotech before. You may
>want to look up the archives ...
>I took this advice. I found some thoughts on the subject in the
sngularity discussion. However, most such thoughts seem to be more broadly focused. I'm focusing narrowly on the software development tools feedback loop.

>I think your view of the matter is basically correct. There is an
>initial hardware hurdle to get over, i.e. the construction of the
>first more-or-less universal nano-assembler, driven by software.
>After that, the main problem is writing the software that drives
>the assembler.

This shows that my original post was insufficiently clear. David points out that even after we get the first assembler, we still have a big-time software problem. My point is that there's a serious amount of software to write as part of achieving the first assembler.

>.... The fundamental
>result so far from genetic programming is that software can indeed
>generate more software.

This is one if several new techniques for using software to develop software. I personally feel that we can make faster progress by continuing to automate the clerical portions of the task, while letting humans do the creative part. With good interface software, the human-computer combination will form a team, culminating in a collaboration that exhibits SI.

armstrong@fastnet.co.uk (David Armstrong) posted:
> The improvements over, say, the last decade have come about because of higher
>processor speeds and more RAM which make simulations better/faster
>thus improving our understanding more rapidly.
>This is quite true, but is only half of the story. In most critical areas,
algorithmic improvements account for about as much gain as hardware improvements. the most commonly-cited example is in linear programming algorithms. For many years, about half of the supercomputer cycles in the world were spent on LP of one sort or another. Improvements in the LP algorithms kept pace with improvements in the hardware, factor of ten by factor of ten. Improvements in compilers, performance analyzers, protocols, etc., have contributed further. Finally, the ability to improve the computer hardware depends on software simulation and other software design tools, all of which must keep improving to permit the design of the newer faster hardware.

>I don't think that any kind of superintelligence will be necessary;
>IMO the 'final' steps will actually be performed using 'evolutionary'
>software techniques. ie we just try lots of variations on whatever
>seems to work best at the moment and iteratively improve that.
>

The SI isn't necessary for he assembler breakthrough. Instead, IMO it's an inevitable result of tools which are necessary for the assembler breakthrough, and it will therefore precede it and precipitate it. If there were some cosmic force that precluded the emergence of SI, we'd still eventually get nanotech.

>>........................In fact, IMO nanotech development is almost
>>entirely a software problem.
>
>Once we can manipulate reasonably efficiently and reliably, definitely.
>In some ways I already think of MNT as a physical manifestation
>of software.

Again, my focus is more on the software needed to develop the first assembler.

Thanks for all your thoughts.