Universal Construction and Exact Self-Reproduction in Ternary McCulloch-Pitts Networks
Abstract
A fixed network of McCulloch-Pitts threshold units with weights in {-1,0,1} can hold other threshold networks in its state and run them: the state is a ring of banks of records, each record a unit of a stored network, and each step evaluates one record. We use such a network to carry out von Neumann's universal construction and self-reproduction exactly. As a cellular automaton keeps its rule, the fixed network keeps its weights, and what reproduces is a stored network. A constructor of 143 records reads the description of a network from its tape, builds that network in the next bank, copies the description onto the next tape and hands control to what it built; started on its own description, it rebuilds itself, weights included, in every generation. The scheme scales to a universal computer. A SUBLEQ computer of 17,598 ternary units, stored as 36,080 records and running a program of 27 instructions, builds any network that fits a bank and reproduces itself in the same way, at every word width from eight bits on; run directly, it emits the serialization of its own weights, memory and tape. Integer pre-activations give every orbit a margin of 1/2, and replicating each unit r times multiplies it by r. That suffices against noise of any size on the pre-activations, but against von Neumann's output flips only below a threshold inversely proportional to the fan-in. These results are proved in Rocq.
Figures & tables
| Address | Symbol | Role | Effect |
|---|---|---|---|
| 0xF9 | write request | value emits and clears it | |
| 0xFA | end-of-tape status | set by a read at , cleared by a read at | |
| 0xFB | rewind request | value sets | |
| 0xFC | read request | value loads and advances | |
| 0xFD | input register | written by the device | |
| 0xFE | output register | written by the program, cleared on emit |
| Block | Units | Layer | Computes |
|---|---|---|---|
| 1 | decode lines of | ||
| 1 | |||
| 2 | |||
| 2 | bit of | ||
| 3 | the operands , , | ||
| , | 4 | decode lines of and |
| addr | effect | ||||
|---|---|---|---|---|---|
| 0 | 0x00 | T2 | T2 | 0x03 | |
| 1 | 0x03 | T1 | T1 | 0x06 | |
| 2 | 0x06 | NEG1 | 0x09 | read request | |
| 3 | 0x09 | T1 | 0x0C | ||
| 4 | 0x0C | T1 | T2 | 0x0F | |
| 5 | 0x0F | Z | T2 | 0x15 | branch if or |
Appendix figures & tables4 assets
Supplementary material from the paper’s appendix.
Appendix
| Deviated | Exposure | Measured rate, interval | ||||
|---|---|---|---|---|---|---|
| 0/256 | 768,000 | , | ||||
| 7/256 | 1,008,916 | , | ||||
| 202/256 | 496,131 | , | ||||
| 256/256 | 29,384 | , | ||||
| 256/256 | 3,325 | , | ||||
| 256/256 | 714 | , |
| Failed | Exposure | Measured rate, interval | Restoration bound | ||
|---|---|---|---|---|---|
| — | — | — | |||
| — | — | — | |||
| — | — | — | |||
| — | — | — | |||
| — | — | — | |||
| 5/64 | 1,237,505 | , |
| Result | Rocq theorems |
|---|---|
| Lemma 2.5 | Lev.lev_ok |
| Theorem 3.2 | PhysSem.netlist_step , PhysFacts.phys_ternary , PhysLev.phys_dmax |
| Lemmas 3.3 and 3.4 | Schedule.netlist_pass , Compile.compile_unit , Compile.compile_records |
| Lemma 4.2 , Proposition 4.4 | Complete.describe_complete , PassLemma.machine_pass |
| Theorem 4.5 | Run.universal_construction , Main.builds_every_image |
| Theorem 4.6 | Main.copies , Main.periodic , NetMain.network_reproduces , NetMain.network_periodic |
| c5950d3fec6bcf70e8111586a030d21b2dfa55bd69a1c7fe5f016cb06e7fb523 | |
|---|---|
| organism | d4913db0b5ef6d3f122c44974cf9a58015fe7dabacb7176cf377d5cd0743f00b |
| stored host | 9a7821a540fed2ed58fbb263213f65aead6bbbd8cca6344abcabcc5f4289903c |