Figure 1.
Simple logic gates can be implemented out from minimal sets of logic units.
The NAND gate (a) is obtained as a sequential combination of AND and NOT gates. The compressed symbol is shown in (b) along with the truth table. An example of a synthetic implementation of the NAND logic can be made (c) using genetic regulatory elements A and B forming a regulatory heterodimer complex that prevents the expression of the reporter gene. In conventional electronics, combinations of such gates allow to construct more complex circuits and chips (d), which are then used as basic modules for further circuit designs.
Figure 2.
Standard and non-standard circuit design.
Combinatorial circuits are constructed in conventional electronic design by using predefined gates and wiring them in order to execute a given input-output table. This is illustrated by the so called multiplexer (MUX) circuit, whose representation and logic table is shown in (a). Using AND and NOT gates, a standard implementation is displayed in (b). In (c) we show an example of a synthetic gene network implementing a single-cell multiplexer. The output signal is a GFP reporter. A very different design of the MUX system is shown in (d). Here the circuit can be easily designed by splitting the computation into two separated and disconnected engineered cells, both able to display the output signal. A simplified diagram that summarized the logic of (d) is shown in (e).
Table 1.
Truth table for a Boolean function.
Table 2.
Truth table for a Boolean function.
Figure 3.
A general circuit design can be obtained by starting from a multicellular system where each virtual cell is a given logic gate.
Here each engineered cell is indicated as and wires generated by
are indicated as
. Cell
will produce an output according with the logic defined by
. Here
represents the k-th logic gate responding to two inputs, the external one
and the internal wire
secreted by cell
. The upper layer involves single-input gates, i.e.
(thus only the identity or NOT are possible). Different motifs of connections can emerge according with the criteria introduced, such as independent strings of connected cells, where each cell responds to different wire (a), the same wire can be sensed by more than one cell (b), or a given cell responds to wires produced in more than one cell (c). In this last case, due to cells only can sense two inputs (one external and one internal) all wires produced in different parts of the circuit but sensed by the same cell must be implemented using the same diffusible molecule, i.e. wire
and
are implemented by the same molecule, which can be produced in cells
and
independently. This situation corresponds to an implicit implementation in
of the OR logic with respect to wires
and
. Yellow cells (
,
,
and
) can produce independently the final output signal e.g. a GFP.
Figure 4.
Examples of standard engineering designs of three cases studies.
(a) Two-bit comparator (b) the three-bit adder and (c) a 3-bit parity circuit. Here the set of inputs appears indicated as open squares and the single-output element is marked as GFP. The left and right columns are different implementations of the same circuits design (Boolean table) but they have been constructed used diverse logic gates (left) or only using NAND gates with variable numbers of inputs. These circuits have been generated using the Logisim software package. Once the truth table is provided, it builds the logic circuits, either choosing the appropriate set of two-input logic gates or using just NAND gates. If the NAND gates were chosen such that they only include two inputs, the circuits would be much more complex.
Table 3.
Truth table for a Two-bits magnitude comparator.
Figure 5.
Examples DMC designs obtained by using an evolutionary algorithm to find solutions to given computational functions, as defined by Boolean tables of the examples shown in figure 4.
The coloured balls represent the basic set of engineered cells indicating their internal Boolean functions. The dashed boxes indicate subsets of cells linked through the same communication signal (wire) represented by coloured dashed arrows. In (a) the binary comparator circuit is shown, after all simplifications have been performed. Figure (b) shows a DMC circuit implementing a binary three-bits adder using distributed logic. Finally, in (c) we display the minimal three-bit parity circuit is shown. Although the standard circuit is quite complex, a cell consortia involving six different cell types is enough to implement this complex function. Of note, these examples involve two different wires at the most in the most complex circuit and hence a real wet lab implementation is feasible.
Table 4.
Truth table for a Three-bit adder.
Table 5.
Truth table for a 3-Parity bit circuit.
Figure 6.
In (a) we consider a complex, nontrivial 4-input 1-output Boolean function analysed in Marchisio and Stelling 2011 [57]. Figure shows the truth table and the standard design using two-input gates along with NOT gates. Below (b) we display a minimal circuit implementing this function. In (c) a two-bits comparator circuit is implemented according with the standard methodology, whereas in (d) an alternative design obtained by evolution is shown involving less gates an wires Only two communication signals (wires) are required for this implementation. Two colours (red and yellow) are used to indicate the two reporter molecules associated to each possible output (either or
).
Figure 7.
Graphs showing the frequency of gates in a MUX circuit.
(a) Weighted graph showing the frequency of gates used in the generation of evolved MUX circuits under DMC. The diameter of the nodes is proportional to the frequency of the gate. Links indicate that two gates have been wired together within a circuit. The weights provide a measure of how frequently a given pair has been used. Note the disproportionate frequency of N-implies () which are typically connected to NOT and AND gates, much less with NOR gates. Note also the vanishing frequency of NOR-NOR links (see text). In (b) we summarize the relative frequencies of different gates. The two N-Implies gates (here NI = N1+IN2) have been added together. These and the NOR abundances are highlighted with distinctive colours. Circuits were evolved imposing minimal number of wires.
Figure 8.
Frequency of appearance of different logic gates for circuits evolved without evolutionary pressure.
In (a) the graph displays the frequency of appearance of different logic gates for circuits evolved without any specific evolutionary pressure (red), imposing minimum size (green), and under minimal circuits complexity (blue). These frequencies have been calculated as the average results for runs. In (b) the graph displays the average results for
runs of an evolutionary pressure towards minimum size. The frequency of a given gate is proportional to node diameter, whereas the probability of finding two gates in the same circuit is given by the link weights. In (c) we show the corresponding results for evolved networks under minimal circuits complexity. In both cases, the most represented gates are NOT, AND,
,
and NOR.