| The Cellular Automata of John von Neumann
Simple EVN configurations
All files of the EVN-automaton gallery are found in the subfolder JVN and zip-compressed in EVN.ZIP, which is found in the main directory. The file contents will appear in the program windows as cell assemblies on a dark background. We recommend the User not to save them after loading or save other files with the same names of these. The files listed here below contain examples of basic automaton organs and other cell assemblies. Most of them include the cell-assembly title, annotations and comments written in gray diamonds (quiescent mode of the confluent state) and referred to hereafter in bold capitals. Selecting the item EVN transition rules in menu Rules enables the program to access automatically the EVN subfolder in loading and saving operations.
- Q-STATE_CODERS.EVN: Implementation of coders for the generation of the 9 non empty quiescent states.
- AP_GENERATOR.EVN: This file shows how the C-arm of a universal constructor can be enabled to release an activation pulse to a transmission line loop. An operation like this must occur at the end of a self-reproduction process in order for the reproduced automaton to be in turn started for self-reproduction. IN: starting pulse; C: pulse-generation coder; CA: constructing arm; L: loop to be activated.
- CODER_COLLECTION.EVN, CODER_COLLECTION.EFR: Here is a wide repertoire of coders for various purposes. When inputted by an activation pulse from the left, each coder generates the activation train described by the blue arrows underneath its output line. Most of these coders are used in C-arm and RW-arm controls. Since encoding-decoding procedures are rarely used in the EVN environment, a decoder list as rich as this is omitted.
- DECODERS.EVN, DECODERS.EFR: Here, a few examples of corresponding coder-decoder pairs is provided. An activation pulse inputted on the left is first coded into a short activation train (indicated underneath the connecting line), and then filtered by the decoder at right.
- RECOGNIZERS.EVN: In A: the four 5-plet recognizers used both in the self-reproducing automata SR_CBC.EVN, SR_CCN.EVN and SR_CCN_ACTIVE.EVN are shown. The activation trains coding for particular C-arm operations (11001= ADVANCE, 10011= GO UP, 10101 = GO DOWN) or for a tape position mark (11011 = MARK) are indicated underneath input lines. In B: each recognizer receives the activation trains emitted by 4 coders sequentially timed by four 4-counters and releases an activation pulse provided the train is recognized. Note: Since the creation of a quiescent must be always followed by a one-step C-arm retraction, simple retractions are equivalent to creating empty cells (vacuum states). This explains why there is no need of an activation train coding for RETRACT.
- SIMPLE_COUNTERS.EVN: Here are examples of sparse activation pulse counters for various sorts of counters. The numbers next to the OUT transmission lines indicate how many times an activation pulse has to be sent to the counter in order for an output activation pulse to be released by this.
- MARK_COUNTER.EVN: The cascade of re-settable counters shown in this file is used for internal state changes by the self-reproducing automata SR_CBC_AP.EVN and SR_CCN_AP.EVN. State changes occur when the RW-arm detects the tape mark-codon 11011 for the 1st, 2nd, 4th, 7th, 10th, 12th, 13th, 15th time, no matter whether during extension or retraction. Indeed, the self-reproducing automaton works differently in different phases of the self-reproduction process. These are precisely: (1) Reading the first part of the tape to gather information for C-arm positioning. (2) Moving back the RW-arm to the tape origin. 3) Moving the RW-arm to the tape-end while the C-arm elongates. 4) Copying the tape while the C-arm retracts. 5) Moving the RW-arm skipping the first part of the tape. 6) Reading the second part of the tape while creating the cell assembly encoded by this part. 7) Going back to the tape origin and resetting the original automaton configuration. File annotations in gray diamonds: L: loop for sparse pulses generation; IN: input line of counter cascade; OUT: output lines of the mark counter MC (see MARK_COUNTER.EVN). The last line monitors for counters resetting.
- SIMPLE_SWITCHES.EVN, SIMPLE_SWITCHES.EFR: Here are examples of how a simple blue-arrow inversion can disable a transmission line. Simple coders and a special transmission state (red arrow) are used to change the direction of a blue arrow. The User can input an activation pulse at D to disable the line and at E to enable it.
- CHANGEOVER_SWITCHES.EVN, CHANGEOVER_SWITCHES.EFR: Here are examples of how to switch the direction of an activation train from one ordinary transmission line to another ordinary transmission line. An activation pulse at L, R, U or D turns a blue arrow leftwards, rightwards, upwards or downwards, respectively.
- TOGGLE_SWITCHES.EVN: The toggling device T is combined with simple switches or crossover switches to implement different sorts of toggle switches. Activation pulses sent to T in sparse order switch off and on alternatively the switches.
- SHIFT_REGISTERS.EVN: This file provides a few examples of shift registers. It shows how the peculiar properties of the confluent states in the EVN environment can be exploited to store a bit-sequence in a confluent state array. In A: an activation pulse at 1 activates the first quiescent confluent state of the array, which keeps first-excited until the activation train released by coder C creates temporary right blue-arrow bridges in between adjacent confluent states. This operation shifts forwards the first excitation levels of the array. An activation pulse inputted at 0 simply shifts the excited state sequence. Thus, a sequence of bits sparsely inputted to the lines IN results in a ordered array of first-excited or quiescent confluent states. As the sequence goes on, the rightmost state of the array transmits its excitation to an output line OUT. In B: these are two shift-registers working as those described above but with the bit sequence shifted in reverse ordering. Here, the coder C' creates temporary right blue-arrow bridges and pulse transmitted by line 1 to the confluent state array is suitably delayed so that the shift occurs just before bit 1 setting.
- 5-BIT_BUFFER.EVN, 5-BIT_BUFFER.EFR, 6-BIT_BUFFER.EVN, 6-BIT_BUFFER.EFR: Here is shown how double arrays of confluent states can be used to create n-bit memory buffers. The first array works as a shift register and that below as a bit-collector. Sparse activation pulses inputted to lines 1 and 0 are stored as first-excited confluent states while the coder C provides the confluent state array with temporary left blue-arrow bridges. In A: an activation pulse inputted to the line R starts coder C' for the reading procedure. Indeed, the activation train released by C' creates temporary bridges between the states of the storing array above and those of the collecting line below. The first-excited states of the collecting line flow down into the output line, thus providing the release in packed format of the sparsely stored bits. In B: the 5-bit buffer is endowed with a 5 bit counter providing for automatic reading and resetting whenever the storing of bit quintuplet is accomplished.
- BINARY_COUNTER.EVN, BINARY_COUNTER.EFR: The self-reproducing automaton SR_CCN_AP.EVN (and SR_CCN.EVN) uses an organ like that shown in these files to repeat a same C-arm operation. The system is formed by a 5-bit shift-register SR controlled by a simple counter CN, receiving input through lines 1 and 0 and followed by a binary counter BC. The latter includes a feedback circuit providing the automatic augmentation of the integer n represented by the bits stored in BC. Immediately after the SR-storage completion, the bit sequence passes from SR to BC and the augmentation procedure starts. The latter organ halts automatically with overall resetting just after n-1 cycles. During this process, the output line OUT releases n-1 activation pulses at time intervals depending on the length of the loop L inserted in the feedback circuit.
The switch is also found as a fragment in the file LU_SWITCH.EFR (left-up-switch). This organ is used to changeover the pulse activated by the singleton or the triplet returned by the RW-arm. The same pulses serve to re-start the coding procedures for arm moves and the possible cancellation of spurious bridging arrows. By entering an activation pulse to any one of the two vertical ordinary transmission lines that control the switch, you will see the two small coders to activate the two special transmission lines (red lines). This simple organ makes the two blue arrows at the end of the red lines switch alternatively leftwards and upwards. File RW_YOYO.EVN shows the arm oscillating forth and back. March reverse occurs whenever arm has finished reading the second of two zero quintuplets of (vacuum cells), no matter whether forwards or backwards. The inversion is controlled by a chain of organs formed by: i) a 5-bit re-settable counter (RESCOUNTER.EFR); ii); iii) a toggle (TOGGLE.EFR) controlling by a double switch.