Skip to main content
NIHPA Author Manuscripts logoLink to NIHPA Author Manuscripts
. Author manuscript; available in PMC: 2014 Mar 18.
Published in final edited form as: Nat Comput. 2009 Oct 15;9(2):437–455. doi: 10.1007/s11047-009-9157-5

TRANSDUCER GENERATED ARRAYS OF ROBOTIC NANO-ARMS

EGOR DOLZHENKO 1, NATAŠA JONOSKA 1, NADRIAN C SEEMAN 2
PMCID: PMC3957271  NIHMSID: NIHMS406189  PMID: 24653669

Abstract

We consider sets of two-dimensional arrays, called here transducer generated languages, obtained by iterative applications of transducers (finite state automata with output). Each transducer generates a set of blocks of symbols such that the bottom row of a block is an input string accepted by the transducer and, by iterative application of the transducer, each row of the block is an output of the transducer on the preceding row. We show how these arrays can be implemented through molecular assembly of triple crossover DNA molecules. Such assembly could serve as a scaffold for arranging molecular robotic arms capable for simultaneous movements. We observe that transducer generated languages define a class of languages which is a proper subclass of recognizable picture languages, but it containing the class of all factorial local two-dimensional languages. By taking the average growth rate of the number of blocks in the language as a measure of its complexity, we further observe that arrays with high complexity patterns can be generated in this way.

Keywords: transducers, finite state automata with output, picture languages, two-dimensional languages, local languages, DNA tiles, robotic arms, DNA arrays

1. Introduction and Background

Synthetic DNA has been designed and shown to assemble into complex species that entail the lateral fusion of DNA double helices, such as DNA double crossover (DX) molecules [8], triple crossover (TX) molecules [22] or paranemic crossover (PX) molecules. Double and triple cross-over molecules have been used as tiles and building blocks for large nanoscale arrays [30, 29], including the Sierinski triangle assembly by DX molecules [28]. Theoretically, it is shown that two-dimensional arrays made of DX or TX DNA can simulate the dynamics of a bounded one-dimensional cellular automaton and so are capable of potentially performing computations as a Universal Turing machine [30]. The essential part in these observations is the natural representation of a Wang tile with a DX or a TX molecule.

Wang tiles have been extensively used in the study of two-dimensional languages and there is a natural correspondence between the sets of blocks assembled with Wang tiles and local two-dimensional languages. The physical representation of Wang tiles with DNA molecules demonstrated recently [29, 30] provides another motivation for studying sets of rectangular blocks of symbols namely two-dimensional languages. It is well known that by iteration of generalized sequential machines (finite state machines mapping symbols into strings) all computable functions can be simulated (see for ex. [26, 27]). The full computational power depends on the possibility for iterations of a finite state machine. Moreover, there is a natural simulation of iteration of transducers and recursive (computable) functions with Wang tiles [13]. This idea has been developed further in [5] where a successful experimental simulation of a programmable transducer (finite state machine mapping symbols into symbols) with TX DNA molecules having iteration capabilities is reported. This experimental development provides means for generating patterns and variety of two-dimensional arrays at the nano level. Motivated by this recent experimental development here we define a class of two-dimensional languages generated by iteration of transducers, called transducer generated languages and show how physical realization of arrays corresponding to such a language can be used as a platform for arranging robotic nano-arms. An earlier short description of transducer generated languages appears in [7].

The notation and the definitions are included in Section 2 while in Section 3 we show that transducer generated (TG) two-dimensional (picture) languages belong to the class of recognizable (REC) picture languages. We also observe that TG languages include all local (factorial) picture languages, i.e., languages generated by finite sets of Wang tiles. Although there are fairly well developed classifications and theories to study one-dimensional languages, in particular regular languages, the case of two-dimensional languages remains elusive. The class REC defined by A. Restivo and D. Giammarresi [10, 11] was introduced as a natural extension of regular languages in one-dimensional case. They showed that the emptiness problem for these languages is undecidable which implies that many other questions that are easily solved in one-dimensional case become undecidable in two-dimensional case. Recent work by several authors attempts to better understand REC through various approaches such as: design of variants of finite state automata that recognize these languages [1, 2, 17, 18], characterization of determinism of two-dimensional recognizable languages [3, 4], or study of the factor languages of two-dimensional shift spaces [14, 15]. Therefore, the transducer generated languages introduced here define another sub-class of REC languages whose analysis may provide a way to understand some properties of the whole class of REC.

In Section 4, as a measure of complexity, we make some observations about the average growth rate of the number of sub-blocks in a TG picture language. This measure is known in symbolic dynamics as the entropy of the language and it is well understood in the case of one-dimensional regular languages. It is known that in one-dimensional case, the set of entropies of regular languages coincides with the set of logarithms of Perron numbers (see [25]). However, there is no general theory that describes a way to obtain the entropy of a two-dimensional local, or even less a language belonging to the larger class of recognizable languages. It is known that even languages with so called strong transitivity, i.e., mixing properties, have zero entropy [20, 21]. Here, we observe that the value given by a log of a Perron number can be obtained as an entropy value of a transducer generated two-dimensional language. This also shows that the two-dimensional arrays obtained by self-assembly of DNA tiles simulating iterations of a transducer may have rich pattern complexity.

A possible implementation of transducer generated arrays with TX DNA molecules to serve as platforms for arranging robotic nano-arms is presented in Section 6. A PX-JX2 device introduced in [31], has two distinct positions and each is obtained by addition of a pair of DNA strands that hybridizes with the device such that the molecule is in either PX or in JX2 position. This device has been assembled sequentially [24] and in an array [6]. In the later case it has been shown that a molecular robotic arm can be attached to the device and controlled simultaneously. The successful molecular implementation of a transducer [5] forms a basis for assembling transducer generated arrays incorporating molecular robotic arms to be moved in preprogrammed directions simultaneously.

2. Notation and Definitions

We use Σ to indicate an alphabet, a finite set of symbols. The cardinality of Σ is denoted with #Σ. A finite sequence of symbols is called a word, or a one-dimensional block. The set of all words over alphabet Σ is denoted with Σ*. The length of a word w = a1·… · ak is k and is denoted with |w|. The empty word is denoted with ε. The set of all words of length k is denoted with Σk, and set of all words of length less or equal to k is denoted with Σk.

A one-dimensional language (further referred to as language) is a subset of Σ*. For a language L, we extend the notation to Lk = ΣkL and Lk = ΣkL. A word u such that w = x1ux2 for some words x1, x2 ∈ Σ* is called a factor of w. The set of all factors of w is denoted with F(w), and the set of all factors of length k of w is denoted with Fk(w). We extend this notation such that the set of factors of all words in a language L denoted by F(L) and the set of factors of all words in L of length k is denoted by Fk(L).

Definition 2.1

A nondeterministic transducer is a five-tuple

τ=(,Q,δ,q0,T),

where Σ is a finite alphabet, Q is a finite set of states, q0 is an initial state (q0Q), T is a set of final (terminal) states (TQ), δQ × Σ × Σ × Q is the set of transitions. A transducer is called deterministic if its set of transitions defines a function (which is also denoted with δ) δ: Q × Σ ↦ Σ × Q.

To a transducer we associate a directed labeled graph in the standard way: the set of vertices is the set of states Q and the directed edges are transitions in δ, such that an edge e = (q, a, a, q′) starts at q and terminates at q′. To each edge we associate labels Inline graphic: δ ↦ Σ and Inline graphic: δ ↦ Σ being the input and the output labels such that for e = (q, a, a, q′) we have Inline graphic (e) = a and Inline graphic (e) = a′. The input and the output labels are naturally extended to paths in the transducer.

We say that a word w is accepted by a transducer τ = (Σ, Q, δ, q0, T) if there is a path p = e1 · · · ek which starts at q0, terminates with a state in T and Inline graphic (p) = Inline graphic (e1) · · · Inline graphic (ek) = w. The path p in this case is called an accepting path for w. The language which consists of all words that are accepted by τ is called the input language of τ and is denoted Inline graphic (τ). A word v is said to be an output of τ if there is wInline graphic (τ) and an accepting path p for w such that Inline graphic (p) = v. In this case we also write vInline graphic (w). The language which consist of all outputs of τ is the output language for τ denoted with Inline graphic (τ).

Definition 2.2

If S = {1, …, n} × {1, …, m}, then a map B: S ↦ Σ is a block of size n × m or an n × m-block. We say that n is the number of columns in B and m is the number of rows in B. The empty block is of size n × m where at least one of m, n equals 0 and is denoted by ε.

The blocks are represented as arrays of symbols: the first row of the block is the bottom row, and every successive row is placed on top of the previous row.

Definition 2.3

If B is a block of size n × m, and x, y, nm′ are positive integers, such that x+n′ ≤ n+1 and y + m′ ≤ m + 1, then a sub-block of B of size n′ × mat position (x, y), denoted B(x,y)n×m is the n′ × m′-block such that B(x,y)n×m(i,j)=B(x+i-1,y+j-1) for 1 ≤ in′ and 1 ≤ jm′. We say that a block B′ is a sub-block of B if there are x, y, n, m′ such that B=B(x,y)n×m. We consider the empty block to be a sub-block of every block and we accept the convention that B(1, 1) is the left bottom corner of B.

The set Σ** denotes the set of all blocks over alphabet Σ. A subset L of Σ** is called a picture language. The set of all k × -blocks is denoted with Σk× . The set of all k × sub-blocks of a block B is denoted by Fk,ℓ(B). The set of all sub-blocks of B is denoted with F (B). We extend this notation naturally to F (L) for all sub-blocks of blocks in L and Fk,ℓ(L) for the set of all sub-blocks of size k × of blocks in L.

Now we concentrate on picture languages generated by transducers. If τ is a transducer (deterministic or nondeterministic), we define inductively: τ0(w) = {w} if wInline graphic (τ) and τr(w) = {u | there is vτr−1(w), uInline graphic (v)}.

Definition 2.4

An n × m-block B is generated by a transducer τ if B(1,1)n×1J(τ) and B(1,i+1)n×1τ(B(1,i)n×1) for all 1 ≤ i < m.

Note that the requirement B(1,i+1)n×1τ(B(1,i)n×1) is not equivalent to the more general property B(1,i+1)1×mτi(B(1,1)1×m). Moreover the empty block ε is generated by a transducer τ if the initial state is also a terminal state. A n × 1-block is generated by a transducer τ if it belongs to Inline graphic (τ). Every transducer with non-empty input language generates blocks of size n × i for i = 1, 2.

Definition 2.5

A picture language which consists of all blocks that are generated by a deterministic (nondeterministic) transducer τ is called a picture language generated by τ and is denoted with Lτ. A picture language L is said to be transducer generated if there is a transducer τ such that L = Lτ.

The class of transducer generated picture languages is denoted with TG.

3. Local Picture Languages and TG

Given an alphabet Γ and a one-dimensional language L ⊆ Γ* we say that L is local if there is P ⊆ Γ2 such that wL if and only if F≤2(w) ⊆ F (P).

For a n × m-block B over Γ, let denote the (n + 2) × (m + 2)-block obtained from B by surrounding B with symbols Inline graphic. A two-dimensional language L ⊆ Γ** is local if there exists a finite set θ of 2×2-blocks over Γ ∪ { Inline graphic} such that L = {B ∈ Γ** | F2,2() ⊆ Θ} and we write L = L(Θ). We denote LOC(Γ) (or simply LOC) the family of all local picture languages over Γ.

A two-dimensional language L ⊆ Γ** is factorial local (denoted FLOC) if there exists a finite set Θ of 2 × 2 blocks over Γ such that L = F(Lθ) where Lθ = {B ∈ Γ** | ∅ ≠ F2,2(B) ⊆ Θ}, and we write L = L(Θ). In FLOC languages the frames surrounding the blocks are removed since every sub-block of a block in the language is also in the language.

Proposition 3.1

For every L ∈ FLOC there is a transducer τ such that Lt = L.

Proof

Let L ∈ FLOC. Then L = L(Θ) for some set of tiles Θ over alphabet Γ. Define a transducer τ = (Γ, Q, δ, q0, T) in the following way. The set of states Q is the set Q={q0}{B(i,1)1,2i=1,2,BΘ} which besides the initial state contains all columns of blocks from Θ. The set of terminal states is T = Q. The transitions are the following:

  • start transitions: (q0, a, b, q) for all qQ and ba=q.

  • Θ transitions: (q, a, b, q′) whenever qq′ ∈ Θ and ba=q.

Then L = Lτ follows directly from the fact that the input/output labels are always the same for all incoming edges to a state q and are equal to the bottom and the top symbols of q respectively. One transition follows another if and only if the end states of these transitions are the first and the second column of a block in Θ.

Hence we have shown that both languages contain the same blocks consisting of more than one row and one column. Since these languages consist precisely of the factors of such blocks, we conclude that L = Lτ.

The follwing example shows that a transducer generated language may not be local even if the corresponding transducer is deterministic, and its input language is local.

Example 3.2

Consider the transducer over alphabet {a, b} as depicted in Fig. 3.1. This transducer is deterministic and all of its states are terminal except the “junk state” q3. The initial state is q0. The output symbols for all transitions starting at the same state are the same. The input language of the transducer τ is local (the allowed words of length 2 are all but “bb”).

Figure 3.1.

Figure 3.1

A deterministic transducer τ such that Inline graphic (τ) is a local language, but Lτ is not.

Suppose that Lτ is a local picture language and, there is a set Θ of allowed blocks of size k × k such that every k × k sub-block of a block in Lτ is in Θ. Let B × B′ be the following n × m-blocks where m, n > k

B=aaaaaaaaaaaaabaaabB=aaaaaaaaaaabbaaaba.

And let C be an (n + 1) × m-block: C=aaaaaaaaaaababaaba.

One can think of C being a block obtained from B by adding the last column of B′ as a last column. In this case, B=C(1,1)n,m and B=C(2,1)n,m, ie., B, B′ ∈ F(C). Quick check of the transducer shows that blocks B and B′ are in Lτ. Moreover, Fk,k(C) = Fk,k({B, B′}) ⊆ Θ. If Lτ is local, then it must be that CLτ, but direct check shows that it, in fact, is not (note that the only way to output symbol b is when the input word starts with b, and this is not the case with the first row of C).

A tiling system is a quadruple (Σ, Γ, Θ, π) where Σ and Γ are finite alphabets, Θ is a finite set of 2 ×2 blocks over Γ ∪ { Inline graphic} defining a local language L(Θ) and π: Γ ↦ Σ is a map called projection. A two dimensional language L ⊆ Σ** is tiling recognizable if there exists a tiling system (Σ, Γ, Θ, π) such that L = π(L(Θ)) (extending π to the blocks). We denote by REC(Σ) (or simply REC) the family of all tiling recognizable two dimensional languages over Σ.

Proposition 3.3

Transducer generated languages are in REC.

Proof

Assume that the transducer τ = (Σ, Q, δ, q0, T) is given. Let Γ = QΣ = {qa | qQ and a ∈ Σ} and projection π: Γ ↦ Σ be defined by π (qa) = a. To prove the claim we define a set of blocks Θ such that π(L(Θ)) = Lτ. The set Θ consists of the union of input blocks Qi, transition blocks Qt, and output blocks Qo defined below.

  • Input blocks. The collection of input blocks Θi is the union of Θ1, Θ2, and Θ3 defined as follows.
    graphic file with name nihms406189e1.jpg
  • Transition blocks. The collection of transition blocks Θt is the union of Θ4, Θ5, and Θ6 defined as follows.
    graphic file with name nihms406189e2.jpg
  • Output blocks. The collection of output blocks Θo is the union of blocks Θ7, Θ8, and Θ9 defined below. Since the last row of a block generated by a transducer is not necessarily accepted by the transducer (i.e., it may not be in Inline graphic (τ)) no transition type control is imposed on these tiles.
    graphic file with name nihms406189e3.jpg

Assume that Bπ(L(Θ)). Then B = π (P) for some n × m-block PL(Θ). Let Bj and Pj denote the j-th rows of B and P respectively for j = 1,, m − 1. Then Bj = j = a1 · · · an and there are states q1,, qn−1 such that Pj = q0a1 · q1a2 · … · qn−1an. By construction of L(Θ) we have that (qi−1, ai, bi, qi) ∈ δ for some bi ∈ Σ for every i = 0,, n − 1, and the state qn is in T. Hence the sequence pj = (q0, a1, b1, q1) … (qn−1, an, bn, qn), is an accepting path in τ such that Bj = Inline graphic (pj) ∈ Inline graphic (τ). Moreover, by construction of the transition blocks Θt we have that Bj+1 = b1 · · · bn and so, Bj+1 = Inline graphic (pj). Thus, BLτ, i.e., π (L(Θ)) ⊆ Lτ.

Conversely, if BLτ, then for each 1 ≤ j < m − 1 there is an accepting path pj = (q0, a1, b1, q1)(q1, a2, b2, q3) · · · (qn−1, an, bn, qn) of τ such that π (pj) = Bj and Inline graphic(pj) = Bj+1. Consider a n × m block P such that Pj = q0a1 · q1a2 · … · qn−1an for all 1 ≤ j < m − 1 and choose Pm to be a word over the alphabet Γ such that π (Pm) = Inline graphic(pm−1) = Bm. Hence π(P) = B and by construction F2,2(Θ). Thus Bπ (L(Θ)) and π (L(Θ)) = Lτ.

As noted with the following example there are picture languages in REC that are not in TG.

Example 3.4

Consider the picture language over alphabet {a, b} which consists of all blocks containing at most one appearance of b (all other symbols are a). This picture language is in REC [19]. If there were a transducer that generates this language, this transducer would have a transition with an input symbol a and output b, and a transition with input symbol b and output a. But then, there are n, s such that asbans−1τ (an), i.e., on an input an the transducer may output a word containing a symbol b. Hence blocks with more than three rows that are generated by the transducer can have more than one appearance of b.

4. Entropy

One measure of complexity of a given language is the average growth rate of the number of blocks that appear in the language relative their size. In one dimensional case, this measure is also called the entropy of the language and is derived from the notion of topological entropy of (compact) symbolic dynamical systems (see [12]). The Perron-Frobenious theory provides a straight-forward way of computing the entropy for a one-dimensional regular language. It is the logarithm of the maximal eigen value (also known as Perron numbers) of the adjacency matrix of the minimal deterministic automaton of the language [25]. However, obtaining a general method for computing the entropy of a two-dimensional recognizable language shows to be very difficult, and consequently, there is no general knowledge about what numbers can be realized as the entropy values in two-dimensions. In the following we show that logarithm of every Perron number can be obtained as an entropy value for a transducer generated picture language. In other words, all entropy values realized by one-dimensional regular languages can also be realized by transducer generated picture languages.

Recall that for L ⊆ Σ* the entropy of L is h(L)=limsupn1nlog(#Fn(L)). This definition extends to an equivalent definition in two-dimensions.

Definition 4.1

For L ∈ Σ** the entropy of the picture language L is

h(L)=limsupn1n2log(#Fn,n(L)).

Note

  1. Since the entropy formula “counts” the sub-blocks of a certain size, the value of the entropy of Lτ and Inline graphic (τ) does not change if we consider these languages to be factorial, hence we can assume that all transducers in this sections have all their states initial and terminal. In this case, F(Lτ) = Lτ.

  2. It can be shown that in this case lim sup is always finite [12], and moreover, that the limit always exists. Hence we write lim instead of lim sup.

Note that the entropy of L is always bounded by log #Σ. The entropy of Lτ is zero for any deterministic transducer τ, since for each n it contains at most #Σn blocks of size n × n (each word w can generate at most one block of height n). However, if Lτ is a two dimensional language generated by a nondeterministic transducer, its entropy may no longer be zero. For example, the transducer τ = (Σ, {q}, δ, q, {q}) with δ = {(q, a, b, q)|a, b ∈ Σ}, which consists of one state with transitions having all possible labels generates Lτ = Σ** and for each n, # Fn,n(Lτ) = #(Σn × n) = # Σn2. Thus h (Lτ) = h**) = log #Σ.

For a given transducer τ and w in Inline graphic (τ) define deg(w) = #τ (w), i.e., deg(w) is the number of distinct words that τ can output on input w. We extend this notation to finite sets of words by setting deg(S) = maxwS{deg(w)}.

Observe that the number of distinct blocks of height n with the bottom row w contained in Lτ is bounded above by

i=0n-1deg(τi(w)).

Suppose there is k > 0 such that deg(w) ≤ nk for all w in Inline graphic (τ) with |w| = n. Then there are at most (nk)n = nnk n × n-blocks. We observe that

h(Lτ)=limn1n2log(#Fn,n(Lτ))limn1n2log(w=nwJ(τ)(i=0n-1(deg(τi(w))))limn1n2log(#n·nnk)=limn[1nlog#+knlogn]=0.

Thus if there is some positive integer k, such that for any w in Inline graphic (τ), #τ (w) ≤ |w|k, the entropy of Lτ is zero. This proves:

Proposition 4.2

Let τ be a transducer. If there is a polynomial p such that #τ (w) ≤ p(|w|) for every w ∈ Inline graphic (w), then the entropy of Lτ is 0.

Proposition 4.3

For any regular language L there is a nondeterministic transducer τ such that Inline graphic (τ) = L and h(Lτ) = h(L).

Proof

Let M be a finite state automaton accepting language L. Denote the set of transitions of M by ϕ, and construct a transducer τ from M as follows. The set of states in τ remains the same as in M and the set of transitions in τ is {(q1, a, b, q2) | (q1, a, q2) ∈ ϕ and b ∈ Σ}. Observe that Inline graphic (τ) = L.

Now consider Lτ. Note that for an n × n-block BLτ, every row of B must be in Inline graphic (τ), except maybe the last, nth row which may not belong to Inline graphic (τ). Let Bp,k denote the set of all n × p-blocks BLτ with B(1,p)n,1 (the pth row of block B) in Inline graphic (τ). Thus we conclude that #Fn,n(Lτ) ≤ #Bn,n−1n ≤ #Bn,nn. Hence

h(Lτ)=limn1n2log(#Fn,n(Lτ))limn1n2log(#Bn,n·#n)=limn1n2log#Bn,n

Since Bn,nFn,n(Lτ), we have #Bn,n ≤ #Fn,n(Lτ), hence

h(Lτ)=limn1n2log#Bn,n

Because the transducer can output every word of length n on any given input of length n, the number of n×n-blocks in Lτ having each of its rows in Inline graphic (τ) = L is exactly [#Fn( Inline graphic (τ))]n = (Fn(L))n, i.e., #Bn,n = [#Fn(L)]n. Thus

h(Lτ)=limn1nlog#Fn(L)=h(L)

Corollary 4.4

Let L be a regular language. Then the entropy of L is an upper bound for the entropy of Lτ for any nondeterministic transducer τ with Inline graphic (τ) = L.

Proof

Let L be a regular language and let τ = (A, Q, δ, q0, F) be such that Inline graphic(τ) = L. Then consider τ′ = (A, Q, δ′, q0, F), with δ′ = {(q, a, b, p) | (q, a, s, p) ∈ δ and b ∈ Σ}. Hence δδ′ and h(Lτ) = h(Lτ). By the proof of the Proposition 4.3, h(Lτ) = h( Inline graphic (τ)) = h(L).

5. Representing Transducers with Wang Tiles

The relationship between transducers and Wang tiles has been used by J. Kari [16] for generating small set of aperiodic Wang tiles, and the idea that iteration of transducers can correspond to some two-dimensional local languages was implicitly used in [23]. In [13] it was observed that composition of transducers can generate all computable functions. The transducer generated languages are not necessarily local, as they do not necessarily correspond to the languages associated with Wang tiles (e.g., Example 3.2). However, there is a natural way to describe the transducer transitions by Wang tiles as shown below. We use the projection of these Wang tiles on their bottom color to represent the strings outputted by the transducer and to guide the arrangements of the robotic arms in arrays.

A finite set of distinct unit squares with colored edges is called a set of Wang prototiles. We assume that each prototile has an arbitrarily large number of copies called tiles. A tile ξ with left edge colored l, bottom edge colored b, top edge colored t and right edge colored r is denoted with τ = [l, b, t, r]. No rotation or reflexion of the tiles is allowed. Two tiles ξ = [l, b, t, r] and ξ′ = [l, b, t, r′] can be placed next to each other, ξ to the left of ξ′ iff r = l′, and ξ′ on top of ξ iff t = b′.

To each transducer τ we associate a collection of Wang tiles.

  • Input and output tiles. Four fixed colors, denoted βl, βb, βr, βt, called borders, are used in the set of colors, each representing one of the left, bottom, right and top border. For each symbol aA an input prototile ξa = [c, βb, a, c] is added. There are #Σ such input prototiles. The left and right sides are colored with a new color which is the same for every symbol a, called the connect color c. The “start of input” prototile [βl, βb, cq0, c] (the color cq0 indicates the start of the computation) and the “end of input” prototile [c, βb, α, βr] (α is an end of input symbol, allowing to add the right border color) are also added. The output prototiles which “cap-off” the computation are essentially the same as the input tiles, except they have the “top” border: ξa=[c,a,βt,c] where c′ is another connect color. The output row of tiles starts with a top-left corner tile [βl, cq0, βt, c′] and ends with a top-right corner [c, α, βt, βr].

We denote this set with Bτ.

  • Computational tiles. Given transducer τ, to each transition of the form (q, a, a, q′) we associate a prototile [q, a, a, q′] as presented in Fig. 5.1. Hence, there are as many computational prototiles as there are transitions in τ. Additional left border tile [βl, cqo, cqo, q0] is added in order to start the computation of the transducer. Similarly, right border tiles [q, α, α, βr] are added for each terminal state q.

Figure 5.1.

Figure 5.1

A computational tile for a transducer.

We call this set of prototiles Cτ.

  • Finite state automaton tiles. Single row blocks in the language Lτ are precisely the blocks that define Inline graphic (τ). In order to generate these blocks with Wang tiles, we include prototiles that simulate the transitions of the transducer as a finite state automaton, but instead of output, the top color is immediately the border color. Hence, to start reading the input, we include the prototile [βl, cq0, βt, qo]. For each transition of the form (q, a, a, q′) in τ we include a prototile [q, a, βt, q′], and finally we include protitiles [q, α, βt, βr] for each terminal state qT.

We denote this set of prototiles Aτ.

The Wang prototiles that correspond to the transducer τ are Inline graphic = AτBτCτ. With these sets of input and output prototiles, every iterated computation of τ can be modeled as a tiled rectangle surrounded by boundary colors. In particular one run of the transducer τ reading an input of length n and producing an output is obtained with a tiled n × 3 rectangle (n > 2) such that the sides of the rectangle are colored with boundary colors. As an example consider the transducer T presented in Fig. 5.2(a). It has initial and terminal state s0 with input/output alphabet {0, 1}. It accepts the set of binary strings that represent numbers divisible by 3. The output is the result of the division of the binary string with three. On input 10101 (21 in decimal) the transducer gives the output 00111 (7 in decimal). The states s0, s1, s2 represent the remainder of the division of the input string with 3. Instead of the last row with boundary color on top, an additional row of tiles can stack on top of the first computation, iterating the transducer by taking its output as a new input.

Figure 5.2.

Figure 5.2

Left: a transducer that outputs the result of dividing the binary string with 3 in binary; right: tiles representing a single computation of the transducer reading an input 10101 and producing output 00111. The shades of brown indicate the border colors, and shades of blue indicate the connectors c and c′. The gold to the left represents cq0 and the pink to the right is the end of input symbol α. The states colors are shades of purple whereas the symbol 0 is red and the symbol 1 is white.

The set of all rectangular tilings with border colors on top, left, bottom and right obtained from tiles in Inline graphic is denoted with W( Inline graphic). Consider the projection π: Inline graphic → Σ projecting on the bottom color of a tile defined with π ([l, b, t, r]) = b. Then, directly from the construction we have:

Proposition 5.1

A rectangular (n + 2) × (m + 1)-array of tiles P is in W( Inline graphic) if and only if there is an n × m-block B in Lτ such that B(i, j) = π (P (i + 1, j + 1)) for all i = 1, …, n and j = 1, …, m.

The above proposition indicates that blocks in Lτ are obtained from rectangular arrays in W ( Inline graphic) by removing boundary tiles (left and right sides, and the bottom boundary tiles) and projecting the remaining tiles to their bottom color. For example, the rectangular 7×3-array of tiles in Figure 5.2(right) defines the 5×2-block 0011110101.

6. Molecular Implementation

The base row of the two-dimensional array of molecular robotic arms arrangement can be obtained through a set of TX molecules that simulates the execution of a transducer.

Wang tiles are simulated by DNA TX molecules. The colors represent “sticky ends” in the TX molecule and the border colors represent “hairpin ends” such that no assembly is allowed after the border. Each prototile may appear in large number of molecular copies as separately annealed DNA TX molecules. No rotation of the tiles is assured by the coding of the sticky ends. The basic TX tile representing one transition of the transducer schematically is depicted in Fig. 6.1.

Figure 6.1.

Figure 6.1

A basic TX tile representing one transition of the transducer.

The transducer transitions use tiles made of triple crossover (TX) DNA molecules with sticky ends corresponding to one side of the Wang tile. An example of such molecule is presented in Fig. 6.1(right) with 3′ ends indicated with arrowheads. The connector is a sticky part that does not contain any information but it is necessary for the correct assembly of the tiles. These TX tiles have the middle duplex longer than the other two. It has been shown that such TX molecules can self-assemble in an array [22]. In [5], an implementation of the transducer represented in Figure 5.2 on variable, programmable inputs is reported. The input is adjusted through a sequence of PX-JX2 devices. In [31] the sequence-dependent PX-JX2 2-state nanomechanical device is reported. This robust device, whose machine cycle is shown in Fig. 6.2 is directed by the addition of set strands to the solution that forms its environment. The set strands, drawn green and purple, establish which of the two states the device assumes. They differ by rotation of a half-turn. The sequence-driven nature of the device means that many different devices can be constructed, each of which is individually addressable; this is done by changing the sequences of the strands connecting the DX portion AB with the DX portion A′B′ where the green or purple strands pair with them. The green and purple strands have short, unpaired extensions on them. The state of the device is changed by binding the full biotin-tailed complements of green or purple strands, removing them from solution by magnetic streptavidin beads, and then adding the other strands. In [24, 9] it was shown that these devices can be linearly ordered and each can be individually addressable. Precisely this property of the device is used to obtain a programmable input for the transducer in [5]. Linear arrays of a series of PX-JX2 devices have been adapted to set the input of the transducer. The computational set-up corresponding to the Wang tiles in Fig. 5.2(b) is illustrated schematically in Fig. 6.3. In Fig. 6.3 one base row corresponding to the input is depicted, as in the example shown in Fig. 5.2 with computational tiles made of DNA triple crossover (TX) molecules.

Figure 6.3.

Figure 6.3

Schematic view of the base-row programming the array.

6.1. Arranging Devices in an Array

A series of PX-JX2 devices inserted into gaps in a 2D TX array is reported in [6]. Each of these devices is controlled individually, corresponding to the presence of a particular strand in the solution (n devices lead to 2n states). The developed cassette is shown schematically in both of its states in Fig. 6.4. Portions (a) and (b) show the cassette in the PX state; (a) is perpendicular to its plane, and (b) is oblique (parts (c) and (d) show similar views of the JX2 state). The cassette consists of three helical domains, one of which is much shorter than the other two. The short domain is the insertion domain. It contains sticky ends that enable its cohesion roughly perpendicular (~ 103°) to the array that supports it [6]. The other two domains are the device in either the PX or JX2 state. The array that was selected for insertion is the triple crossover (TX) tile array [22]. In this array, the TX tiles are connected as shown in Fig. 6.5.

Figure 6.4.

Figure 6.4

Schematic view of the cassette containing the devices. View parallel to the array (a) and perpendicular from the top of the array (b).

Figure 6.5.

Figure 6.5

Schematic view of the TX array with two distinct positions of the arms obtained through the two distinct states of the devices.

6.2. Arranging Robotic Arms in a Programmed Array

A base of the array is programmed such that the PX-JX2 devices can be placed in a predesigned arrangement. The base row generated by one execution of the transducer defines the first arrangement of the devices. This is depicted in Fig. 6.6. The linear assembly of the bottom devices (input devices) is the arrangement which defines an input. With different choices of positions of the devices in PX or JX2 positions, the input symbol is specified as a or b. The chosen input in the figure is ababa which corresponds to the binary string 10101. The output produced by the transducer is the string bbaaa representing the binary string 00111.

Figure 6.6.

Figure 6.6

Schematic view of the programmed device arrangement

The output sets the choice of particular cassettes (see Fig. 6.4) to be placed in the array. Cassettes containing the device in a JX2 form are encoded to correspond to output b and a different cassette (with opposite control sequences and different sticky ends in its binding domain) containing the device in a PX form are encoded to correspond to output a. Hence, the same set of set strands shall move the devices from JX2 into PX and the devices from PX into JX2 form. This is done using control sequences on the device frames that put one device in the PX state, and the other device in the JX2 state, using the same set strands; the other set strands achieve exactly the opposite result. The continuation of the assembly into a larger array is similar to the one shown in Fig. 6.5 except, now the TX molecules within the array would transfer the code of the output and all subsequent rows with cassettes would contain the same PX and JX2 initial setting of the devices. This is represented schematically by the light and dark blue TX tiles in Fig. 6.6. By applying the set strands that exchange the devices from one state into another the arms (hairpins) can be moved synchronously from one position into another (schematically, the arms being “up” change to “down”, and those being “down” change to “up”).

A transducer generated array can be obtained by allowing third, fourth etc. rows of assembly. Note that it is not necessary that transition molecules be implemented immediately on the input. Hence, the first arrangement of the devices can be specified by the defined input, but after the first block of the arranged devices, the transition molecules can be applied and the next assembly of the array could follow the arrangement of the devices as a result of the transducer implementation. Of course, one can apply the transition molecules after the second block of arrangements and the subsequent arrangement of the devices would be according to the next output. This is schematically presented in Fig.6.7 where it is shown the change of the positions of the arms after the set strands have been applied. The arrangement of the arms in Fig. 6.7 corresponds to the 5 × 2-block obtained as a projection of the Wang tile array in Fig. 5.2(right). Two symbols of the input a and b are represented with squares colored light and dark blue respectively. The TX transition molecules are represented with squares colored yellow. Cassettes and the arms made of hairpins are colored red. On the left of the figure, the position of the arms is according to the initial state of the devices, and on the right it is in a position after the set strands have been applied resulting in a synchronous movement of the arms.

Figure 6.7.

Figure 6.7

Simultaneous movement of the arms in a programmed arrangements of devices.

7. Concluding Remarks

This paper introduces a class of two-dimensional arrays of symbols generated by transducers. This class consists of languages which are included in REC and also contain all factorial local picture languages. If entropy is taken as a measure of complexity, this class shows to have rich pattern generation capabilities. Characterization of patterns that can be generated by iteration of transducers may be of interest in applications, in particular, in algorithmic self-assembly of two-dimensional arrays with DNA tiles. Also, it may be of interest to investigate some decidability questions for these languages: for example, given a language in TG, is there an m × n-block in the language for every m, n? The relationship of the class TG with the class of unambiguous (or non-deterministic) picture languages as well as transitivity and mixing properties of these languages remain to be investigated as well.

Figure 6.2.

Figure 6.2

The PX-JX2 device.

Acknowledgments

This work has been supported in part by the NSF grants CCF #0523928 and CCF #0726396 to N.J. and by grants GM-29554 from NIGMS, grants DMI-0210844, EIA-0086015, CCF-0432009, CCF-0523290 and CTS-0548774, CTS-0608889 from the NSF, 48681-EL and W911NF-07-1-0439 from ARO, N000140910181 from the office of Naval Research and a grant from the W.M. Keck Foundation, to N.C.S.

Contributor Information

EGOR DOLZHENKO, Email: EDOLZHEN@MAIL.USF.EDU.

NATAŠA JONOSKA, Email: JONOSKA@MATH.USF.EDU.

NADRIAN C. SEEMAN, Email: NED.SEEMAN@NYU.EDU.

References

  • 1.Anselmo M, Giammarresi D, Madonia M. Tiling automaton: a computational model for recognizable two-dimensional languages. In: Holub J, Žd’árek J, editors. CIAA 2007. Vol. 4783. Springer-Verlag; Berlin Heidelberg: 2007. pp. 290–302. LNCS. [Google Scholar]
  • 2.Anselmo M, Giammarresi D, Madonia M. From determinism to non-determinism in recognizable two-dimensional languages. In: Harju T, Karhumaki J, Lepisto A, editors. DLT 2007. Vol. 4588. Springer-Verlag; Berlin Heidelberg: 2007. pp. 36–47. LNCS. [Google Scholar]
  • 3.Anselmo M, Giammarresi D, Madonia M, Restivo A. Unambiguous recognizable two-dimensional languages. RAIRO-Inf Theor Appl. 2006;40:277–293. [Google Scholar]
  • 4.Anselmo M, Jonoska N, Madonia M. Framed versus Unframed Two Dimensional Languages. In: Nielsen M, et al., editors. SOFSEM 09. Vol. 5404. 2009. pp. 79–92. LNCS. [Google Scholar]
  • 5.Chakraborty B, Jonoska N, Seeman NC. Programmable transducer by DNA self-assembly. submitted. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 6.Ding B, Seeman NC. Operation of a DNA Robot Arm Inserted Into a 2D DNA Crystalline Substrate. Science. 2006;314:1583–1585. doi: 10.1126/science.1131372. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 7.Dolzhenko E, Jonoska N. On complexity of two dimensional languages generated by transducers. In: Ibaraa O, et al., editors. Implementation and Application of Automata. Vol. 5148. Springer; 2008. pp. 181–190. LNCS. [Google Scholar]
  • 8.Fu TJ, Seeman NC. DNA double crossover structures. Biochemistry. 1993;32:3211–3220. doi: 10.1021/bi00064a003. [DOI] [PubMed] [Google Scholar]
  • 9.Garibotti AV, Liao S, Seeman NC. A Simple DNA-Based Translation System. NanoLetters. 2007:7. doi: 10.1021/nl0628605. in press. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 10.Giammarresi D, Restivo A. In: Nivat M, Saoudi A, Wang PSP, editors. Recognizable picture languages; Proc. 1st Internat. Colloq. on Parallel Image Processing.also in Internat J Pattern Recognition Artif Intell. 1992;6:231–256.
  • 11.Giammarresi D, Restivo A. Handbook of Formal Languages. Vol. 3. Springer; Berlin: 1997. Two-dimensional languages; pp. 215–267. [Google Scholar]
  • 12.Gottschalk WH, Hedlund GA. Topological Dynamics. Vol. 36. AMS Colloquium Pubs; 1955. [Google Scholar]
  • 13.Jonoska N, Liao S, Seeman NC. Transducers with programmable input by DNA self-assembly. In: Jonoska N, Paŭn Gh, Rozenberg G, editors. Aspects in Molecular Computing. Vol. 2950. Springer; 2004. pp. 219–240. Lecture Notes in Computer Science. [Google Scholar]
  • 14.Jonoska N, Pirnot JB. Transitivity in two-dimensional local languages defined by dot systems. International Journal of Foundations of Computer Science. 2006;17:435–464. [Google Scholar]
  • 15.Jonoska N, Pirnot JB. Finite state automata representing two-dimensional subshifts. In: Holub J, Žd’árek J, editors. CIAA 2007. Vol. 4783. 2007. pp. 277–289. LNCS. [Google Scholar]
  • 16.Kari J. A small aperiodic set of Wang tiles. Discrete Math. 1996 Nov;160(1–3):259–264. [Google Scholar]
  • 17.Kari J, Moore C. Rectangles and squares recognized by two-dimensional automata. http://www.santafe.edu/~moore/pubs/picture.html.
  • 18.Kari J, Moore C. New results on alternating and non-deterministic two-dimensional finite automata in. Proceedings of STACS 2001, LNCS. 2001;2010:396–406. [Google Scholar]
  • 19.Kari J. private communication.
  • 20.Kitchens B, Schmidt K. Automorphisms of compact groups. Ergod Th & Dynam Sys. 1989;9:691–735. [Google Scholar]
  • 21.Kitchens B, Schmidt K. Markov subgroups of (ℤ/2ℤ)ℤ2. In: Walters P, editor. Symbolic Dynamics and its Applications. Vol. 135. 1992. pp. 265–283. Contemporary Mathematics. [Google Scholar]
  • 22.LaBean TH, Yan H, Kopatsch J, Liu F, Winfree E, Reif JH, Seeman NC. J Am Chem Soc. 2000;122:1848–1860. [Google Scholar]
  • 23.Latteux M, Simplot D, Terlutte A. Iterated Length-Preserving Rational Transductions. In: Brim L, et al., editors. MFCS ‘98. Vol. 1450. 1998. pp. 286–295. LNCS. [Google Scholar]
  • 24.Liao S, Seeman NC. Translation of DNA Signals into Polymer Assembly Instructions. Science. 2004;306:2072–2074. doi: 10.1126/science.1104299. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 25.Lind D, Marcus B. An Introduction to Symbolic Dynamics and Coding. Cambridge University Press; Cambridge: 1995. [Google Scholar]
  • 26.Manca V, Martin-Vide C, Păun Gh. New computing paradigms suggested by DNA computing: computing by carving. BioSystems. 1999;52:47–54. doi: 10.1016/s0303-2647(99)00031-3. [DOI] [PubMed] [Google Scholar]
  • 27.Păun Gh. On the iteration of gsm mappings. Rev Roum Math Pures Appl. 1978;234:921–937. [Google Scholar]
  • 28.Rothemund P, Papadakis N, Winfree E. Algorithmic Self-assembly of DNA Sierpinski Triangles. PLoS Biology. 2004;2(12):e424. doi: 10.1371/journal.pbio.0020424. http://biology.plosjournals.org/perlserv/?request=get-document&doi=10.1371/journal.pbio.0020424&ct=1. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 29.Winfree E, Liu F, Wenzler LA, Seeman NC. Design and self-assembly of two-dimensional DNA crystals. Nature. 1998;394:539–544. doi: 10.1038/28998. [DOI] [PubMed] [Google Scholar]
  • 30.Winfree E. Algorithmic self-assembly of DNA: theoretical motivations and 2D assembly experiments. Journal of Biomolecular Structure and Dynamics. 2000;11(S2):263–270. doi: 10.1080/07391102.2000.10506630. [DOI] [PubMed] [Google Scholar]
  • 31.Yan H, Zhang X, Shen Z, Seeman NC. A robust DNA mechanical device controlled by hybridization topology. Nature. 2002;415:62–65. doi: 10.1038/415062a. [DOI] [PubMed] [Google Scholar]

RESOURCES