PartialConstructor - GollyGang/ruletablerepository GitHub Wiki

Introduction

Holistic self-replication is the familar concept where a machine constructs a copy of itself. More specifically, the child machine is entirely constructed by the parent machine. William R. Buckley has devised an alternative form of self-replication, where the child machine assists in its own construction.

Details

The parent machine constructs a seed, or 'zygote', which is itself incapable of self-replication. The zygote then 'grows' extra organs, which are dedicated to tasks such as tape-copying and rewinding. Partial construction is of interest because it more closely represents the devlopment of multi-cellular eukaryotic life. Holistic self-replication is closer to that of prokaryotes and protoctists.

Both Buckley and Adam P. Goucher have made working examples of partial constructors:

Buckley's partial constructor

William R. Buckley's partial constructor is very regular, and is based on a replicator that requires no signal crossing organs. The zygote begins with a tape-reading head, a construction arm and a single 'stage'. The machine then constructs the remaining stages, which are necessary for tape replication and other functions. It is implemented in von Neumann's original ruleset, and is considerably large.

Goucher's partial constructor

Adam P. Goucher sacrificed the regularity of Buckley's machine in order to reduce the size and replication time of the machine. His machine is implemented in Nobili32, and replicates roughly 800 times faster than Buckley's original partial constructor.

Kinematic partial construction

Partial Construction is not restricted to formal and biological systems. Researchers at Cornell University have built a mechanical self-assembler. It doesn't actually synthesise its component parts; it merely assembles them to produce another robot. Nevertheless, it could be used as a basis for a self-replicator. The description is available at this news article.

The fact that the daughter machine assists in its own construction makes it a valid partial constructor, even though it is a very trivial example of one. You can watch it in action by viewing this video.