Hindawi Publishing Corporation Mathematical Problems in Engineering Volume 2015, Article ID 236806, 8 pages http://dx.doi.org/10.1155/2015/236806 Research Article Simulation of Turing Machine with uEAC-Computable Functions Yilin Zhu,1 Feng Pan,1 Lingxi Li,2 Xuemei Ren,1 and Qi Gao1 1 School of Automation, Beijing Institute of Technology, Beijing 100081, China Department of Electrical and Computer Engineering, Indiana University-Purdue University Indianapolis, Indianapolis, IN 46202, USA 2 Correspondence should be addressed to Qi Gao; gaoqi@bit.edu.cn Received 10 June 2015; Accepted 3 November 2015 Academic Editor: Jean J. Loiseau Copyright © 2015 Yilin Zhu et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. The micro-Extended Analog Computer (uEAC) is an electronic implementation inspired by Rubel’s EAC model. In this study, a fully connected uEACs array is proposed to overcome the limitations of a single uEAC, within which each uEAC unit is connected to all the other units by some weights. Then its computational capabilities are investigated by proving that a Turing machine M can be simulated with uEAC-computable functions, even in the presence of bounded noise. 1. Introduction Analog computer almost disappeared since the blossom of digital computer in the second half of the last century. Actually, the first “computer” in the world, the Antikythera mechanism [1], which was used to predict astronomical positions and eclipses, was an analog computer. Recently analog computer is again regaining interest, and this stems partly from the development of various unconventional computational techniques, such as quantum computation, DNA computation, and cellular automaton. The first significant paradigm of analog computer is the General Purpose Analog Computer (GPAC) [2] introduced by Shannon as mathematical model of the Differential Analyzer [3]. Shannon proved that GPAC was able to generate differentially algebraic functions, such as polynomials, the exponential functions, the trigonometric functions and sums, products, and compositions of them. More generally, he claimed that a function could be generated by a GPAC if it satisfied some algebraic differential equations. Rubel showed that the Dirichlet problem on the disc cannot be solved by a GPAC and he defined the Extended Analog Computer (EAC) [4], which was able to directly compute partial differential equations, solve the inverse of functions, and implement spatial continuity. Mycka pointed out that the set of GPAC-computable functions was a proper subset of EAC-computable functions [5]. Graca et al. proved that Turing machine could be robustly simulated by flows defined by polynomial ordinary differential equations (ODEs) [6] and pointed out that the solution of the initial value problems defined by some ODEs was computable by GPAC; hence, it followed that GPACs could simulate Turing machines. Piekarz compared the computational capabilities of the EAC and partial recursive functions and proved that EAC could generate any partial recursive function defined over N [7]. In his paper that proposed the EAC model, Rubel stressed that the EAC was a conceptual computer and whether it could be realized by actual physical, chemical, or biological devices was not known. However, researches into the continuousvalued Lukasiewicz logic as a computational paradigm led to an electronic implementation of the EAC [8]. Mills and colleagues designed and built an electronic implementation inspired by Rubel’s EAC model, called the micro-Extended Analog Computer (uEAC) [9, 10], after a decade’s research [11–13]. Moreover, Mills introduced the Δ-digraph [10], a diagrammatic tool, to demonstrate the relationship of the nature, Rubel’s EAC model, and uEAC, and, particularly, he related the EAC model to uEAC by dividing the “black boxes” of the EAC model into explicit functions and implicit functions. The current version of uEAC was designed in 2005 2 at Indiana University [10, 14] and had been applied to letter recognition [15, 16], exclusive-OR (XOR) problem [10, 17], Cyclotron Beam Control [18], and biologically derived circuit pattern construction [19], and so forth. It mainly consists of a conductive sheet in which currents can be injected and read at different locations, analog-to-digital and digital-to-analog converters that are used to interface the conductive sheet to the onboard controller, a microprocessor that controls the input/output array and emulates Lukasiewicz logic array (LLA) functions. The topology of the conductive sheet, the material from which it is constructed, and the boundaryvalued LLA functions determine the computation of the uEAC forms. In the present study, a fully connected singleinput, single-output uEACs array is proposed and its computational capabilities are investigated by showing that any Turing machine M can be simulated with uEAC-computable functions, even in the case that some noise is added to the initial configuration of M or during the iteration of the system. Turing machine [20] is the standard paradigm for digital computation since the work of Turing in the 1930s; we will prove the main result of this paper by constructing a robust simulation of Turing machine M with uEACcomputable functions. The paper can be outlined as follows. Section 2 provides some basic notations about Turing machine, Rubel’s EAC model, and the uEAC. The fully connected uEACs array is presented and discussed in detail in Section 3. Section 4 states the main result of this paper: a Turing machine M can be robustly simulated by uEAC-computable functions, even in the presence of bounded noise. We prove the theorem in Section 5 by constructing a robust Turing machine M simulation with uEAC-computable functions. Some conclusions and suggestions are given in Section 6. 2. Preliminaries 2.1. Turing Machine. A Turing machine can be seen as a state machine; at each moment the machine is in one of a finite number of states. It has an infinite one-dimensional tape which is divided into cells and accessed by a read-write head. By infinite one-dimensional tape, we mean that the cells are arranged in a left-right orientation, and the tape has a leftmost cell and stretches infinitely far to the right. Each cell contains one symbol; the read-write head can move left and right along the tape to scan successive cells. The action of a Turing machine is determined completely by (1) the current state of the machine, (2) the symbol in the cell being scanned by the head, and (3) a table of transition rules. At each step, the machine reads the symbol under the head and then checks the transition rule and executes two operations: writing a new symbol into the current cell under the head of the tape and moving the head one position to the left or to the right or making no move. The tape head moves in the following manner: 𝑅 means moving one cell to the right, 𝐿 means moving one cell to the left if there are cells to the left, and 𝑁 means not to move. If the machine reaches a situation in which no transition rule will be carried out, then the machine halts. Mathematical Problems in Engineering Table 1: Transfer function 𝛿 of the Turing machine M. 𝛿 𝑞0 𝑞1 𝑞2 𝐵 𝑞1 , 𝐵, 𝑅 𝑞2 , 1, 𝑅 𝑞2 , 𝐵, 𝑅 1 𝑞0 , 1, 𝑅 𝑞1 , 1, 𝑅 𝑞2 , 𝐵, 𝑁 (1, B, N) (1, 1, R) q0 (B, B, R) (B, 1, R) q1 q2 Figure 1: The computation performed by the Turing machine M. Definition 1. A single tape Turing machine is 4-tuple M = ⟨Q, Σ, 𝛿, 𝑞0 ⟩, where (i) Q is a nonempty finite set of states; (ii) Σ is the tape alphabet that describes the contents of cells of the tape; (iii) 𝛿 : Q × Σ → Q × Σ × {𝐿, 𝑁, 𝑅} is the transfer function; (iv) 𝑞0 ∈ Q is the initial state. Example 2. Consider an example of single tape Turing machine M = ⟨{𝑞0 , 𝑞1 , 𝑞2 }, Σ, 𝛿, 𝑞0 ⟩ with three states {𝑞0 , 𝑞1 , 𝑞2 } and 𝑞0 is the initial state. As discussed above, let 𝐵 be a blank symbol and Σ = {1, 𝐵}. The transfer function 𝛿 is given by Table 1. Given the input 𝜔 = 1𝑚 𝐵𝐵1𝑛 , the computation performed by the machine is (𝑞0 , /1𝑚 𝐵𝐵1𝑛 ) , (𝑞0 , 1/1𝑚−1 𝐵𝐵1𝑛 ) , (𝑞0 , 12 /1𝑚−2 𝐵𝐵1𝑛 ) , .. . 𝑚 (1) 𝑛 (𝑞0 , 1 /𝐵𝐵1 ) , (𝑞1 , 1𝑚 𝐵/𝐵1𝑛 ) , (𝑞2 , 1𝑚 𝐵1/1𝑛 ) , (𝑞2 , 1𝑚 𝐵1𝐵/1𝑛−1 ) , where the symbol “/” marks the position of the read-write head. In Figure 1, states of the Turing machine {𝑞0 , 𝑞1 , 𝑞2 } are represented by circles, with the concentric circle being the initial state 𝑞0 . A transition is represented as a labeled arrow with 3 tuples; the first term is the content of the cell under the read-write head, the second one is the content of the cell Mathematical Problems in Engineering 3 after this transition, and the third one is the movement of the read-write head. 2.2. Rubel’s EAC Model and the uEAC. In Rubel’s definition, the EAC works on a hierarchy of levels, getting more versatile as one goes to higher levels in the hierarchy. At the lowest level 0, it produces and manipulates real polynomials of any finite number of real variables (𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ), while, at level 1 and higher, it produces differentially algebraic real-analytic functions (C𝜔 ). The outputs of the machine at level 𝑁 − 1 can be used as inputs at level 𝑁 or higher. An important feature of the EAC is that it is “extremely well-posed,” which means that when the inputs at some level are modified by small errors, then the outputs differ from the original outputs only by a small amount on each compact set. Definition 3. The function 𝑦 ∈ C𝜔 is generated by EAC at level 𝑁 ≥ 1 (𝑦 ∈ EAC𝑁), if 𝑦 is a function such that (i) 𝑦(𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ) = 𝑢1 (𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ) + 𝑢2 (𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ), where 𝑢1 , 𝑢2 ∈ EAC𝑁−1 ; (ii) 𝑦(𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ) = 𝑢1 (𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ) × 𝑢2 (𝑥1 , 𝑥2 , . . ., 𝑥𝑘 ), where 𝑢1 , 𝑢2 ∈ EAC𝑁−1 ; (iii) 𝑦(𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ) = V(𝑢1 (𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ), 𝑢2 (𝑥1 , 𝑥2 , . . ., 𝑥𝑘 ), . . . , 𝑢𝑚 (𝑥1 , 𝑥2 , . . . , 𝑥𝑘 )), where V, 𝑢1 , 𝑢2 , . . . , 𝑢𝑚 ∈ EAC𝑁−1 ; (iv) 𝑦(𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ) = {𝑥𝑘+1 , 𝑥𝑘+2 , . . . , 𝑥𝑘+𝑙 } = {𝑓1 (𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ), 𝑓2 (𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ), . . . , 𝑓𝑙 (𝑥1 , 𝑥2 , . . . , 𝑥𝑘 )}, and {𝑥𝑘+1 , 𝑥𝑘+2 , . . . , 𝑥𝑘+𝑙 } is the solution of 𝑦1 (𝑥1 , 𝑥2 , . . . , 𝑥𝑘 , 𝑥𝑘+1 , 𝑥𝑘+2 , . . . , 𝑥𝑘+𝑙 ) = 0, 𝑦2 (𝑥1 , 𝑥2 , . . . , 𝑥𝑘 , 𝑥𝑘+1 , 𝑥𝑘+2 , . . . , 𝑥𝑘+𝑙 ) = 0, (2) .. . 𝑦𝑙 (𝑥1 , 𝑥2 , . . . , 𝑥𝑘 , 𝑥𝑘+1 , 𝑥𝑘+2 , . . . , 𝑥𝑘+𝑙 ) = 0, where 𝑓1 , 𝑓2 , . . . , 𝑓𝑙 are C𝜔 functions and 𝑦1 , 𝑦2 , . . . , 𝑦𝑙 ∈ EAC𝑁−1 ; (v) 𝑦(𝑥1 ,𝑥2 , . . . , 𝑥𝑘 ) = 𝐷𝑓(𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ) = 𝜕𝛼1+𝛼2 +⋅⋅⋅+𝛼𝑛 𝑓/ 𝛼 𝛼 𝛼 𝜕𝑥1 1 𝜕𝑥2 2 ⋅ ⋅ ⋅ 𝜕𝑥𝑘 𝑘 , where 𝑓 ∈ EAC𝑁−1 ; (vi) 𝑦(𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ) = {Ω, Ω󸀠 } ∈ EAC𝑁+1/2 , for any 𝑦󸀠 ∈ EAC𝑁 defined on set Λ, where Ω = {(𝑥1 , 𝑥1 , . . . , 𝑥𝑘 ) ∈ Λ : 𝑦󸀠 (𝑥1 , 𝑥1 , . . . , 𝑥𝑘 ) > 0} , 󸀠 󸀠 Ω = {(𝑥1 , 𝑥1 , . . . , 𝑥𝑘 ) ∈ Λ : 𝑦 (𝑥1 , 𝑥1 , . . . , 𝑥𝑘 ) ≥ 0} . (3) Moreover, for any function (𝑦, Ω) produced at level 𝑁 and for any subset Ω∗ of Ω produced at level 𝑁 − 1/2, the function (𝑦|Ω∗ , Ω∗ ) can be produced at level 𝑁; (vii) 𝑦(𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ) = 𝑦∗ , 𝑦∗ is a unique analytic continuation of 𝑦 from Ω ∩ Ω∗ to all Ω∗ , where (𝑦, Ω) ∈ EAC𝑁 and Ω ∩ Ω∗ ≠ 0; (viii) 𝑦(𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ) is a solution of a set of differential functions of the form 𝐹 (𝑥1 , 𝑥2 , . . . , 𝑥𝑘 : 𝑦󸀠 , 𝑦1󸀠 , 𝑦2󸀠 , . . . , 𝑦𝑙󸀠 ) = 0 (4) on set Ω subject to certain boundary requirements, where Ω ∈ EAC𝑁−1/2 , 𝑦󸀠 ∈ EAC𝑁−1 , and 𝑦󸀠 , 𝑦1󸀠 , 𝑦2󸀠 , . . . , 𝑦𝑙󸀠 are partial derivatives of 𝑦; (ix) for (𝑥1 , 𝑥2 , . . . , 𝑥𝑘 ) ∈ Ω and (𝑥10 , 𝑥20 , . . . , 𝑥𝑘0 ) ∈ 𝛾, 𝑦 (𝑥10 , 𝑥20 , . . . , 𝑥𝑘0 ) = lim 𝑦󸀠 (𝑥) , (𝑥1 ,𝑥2 ,...,𝑥𝑘 ) → (𝑥10 ,𝑥20 ,...,𝑥𝑘0 ) (5) where 𝑦󸀠 ∈ EAC𝑁−1 , Ω ∈ EAC𝑁−1/2 , and 𝛾 ∈ EAC𝑁−1/2 are subsets of 𝜕Ω. The EAC is an extension of Shannon’s GPAC. Rubel proved that every C𝜔 -function that could be computed by a GPAC could also be computed by an EAC [4], and, moreover, Euler’s gamma function Γ(𝑥) and Riemann zeta function 𝜁(𝑠) can also be computed by an EAC [21], while the GPAC cannot solve these problems. Rubel stressed that the EAC was a conceptual computer and whether it could be realized by actual physical, chemical, or biological devices was not known, and most computer scientists also regarded the EAC as a machine that was theoretically impossible to be built. However, Mills and his colleagues designed and built an electronic implementation inspired by the EAC, the microExtended Analog Computer (uEAC), and the current version was designed in 2005. Readers who are interested in the hardware of the uEAC are referred to [8, 10, 14] for more details. Suppose that current 𝐼 is injected to the conductive sheet at location 𝑂. The distances from 𝑂 to two arbitrary points 𝑖, 𝑗 on the same radius are 𝑟𝑖 , 𝑟𝑗 , respectively, and 𝑉𝑖𝑗 is the voltage between 𝑖 and 𝑗. Without loss of generality, we suppose that 𝑗 is located outside of 𝑖 and there are 𝑚 resistances between 𝑖 and 𝑗, the length of every resistance is Δ𝑟 (i.e., 𝑟𝑗 −𝑟𝑖 = Δ𝑟⋅𝑚), and we have 𝑉𝑖𝑗 = 𝐼 (𝑅 + 𝑅2 + ⋅ ⋅ ⋅ + 𝑅𝑚 ) 𝑛 1 𝜌 ⋅ Δ𝑟 𝐼 𝑚 = ∑ . 𝑛 𝑘=1 [𝑟𝑖 + (2𝑘 − 1) ⋅ (Δ𝑟/2)] ⋅ (2𝜋/𝑛) (6) Let Δ𝑟 → 0; we have 𝑉𝑖𝑗 = 𝐼𝜌 𝑟𝑗 𝑑𝑟 𝐼𝜌 𝑟𝑗 = ln , ∫ 2𝜋 𝑟𝑖 𝑟 2𝜋 𝑟𝑖 (7) where 𝜌 is the electrical resistivity of the conductive sheet. Let 𝑘𝑖𝑗 = (𝜌/2𝜋) ln(𝑟𝑗 /𝑟𝑖 ), then 𝑉𝑖𝑗 = 𝐼 ⋅ 𝑘𝑖𝑗 , and we note that 𝑘𝑖𝑗 is dependent on 𝜌, 𝑟𝑖 , and 𝑟𝑗 ; in other words, once the current input locations and voltage output locations on the conductive material are fixed, 𝑘𝑖𝑗 is a positive constant and can be seen as a coefficient of the input current 𝐼 and output voltage 𝑉𝑖𝑗 . The output of uEAC is L(𝑉𝑖𝑗 ), where L is the LLA basic function [22]. 4 Mathematical Problems in Engineering y(t) u1 (t + 1) u2 (t + 1) uEAC_1 u1 (t) x(t) u3 (t + 1) uEAC_2 u2 (t) un (t + 1) uEAC_3 · · · u3 (t) uEAC_n un (t) Figure 2: Structure of the fully connected uEACs array. The uEAC is based on the resistance property of the conductive sheet, which makes its input-output relation linear; thus a single uEAC unit is very limited when applied to nonlinear problems. In the next section, we present a fully connected uEACs array to expand the computation capabilities of uEAC. 3. The Fully Connected uEACs Array We present a fully connected single-input, single-output uEACs array (see Figure 2) in this section, within which each uEAC unit is connected to all the other units by some weights, and 𝑥 corresponds to the external input variable, 𝑢 to a state variable, and 𝑦 to the output variable. In the uEACs array shown as in Figure 2, the output of the array 𝑦 is not necessarily restricted to uEAC 1; it can be the output of any uEAC unit or a combination of the outputs of several units. Each uEAC unit weights and sums its inputs and updates its state as the following function: 𝑛 𝑢𝑖 (𝑡 + 1) = L ( ∑ 𝜔𝑖𝑗 𝑢𝑗 (𝑡) + 𝑎𝑖 𝑥 (𝑡)) , (8) 𝑗=1 where 𝑛 is the number of uEAC units, 𝜔𝑖𝑗 , 𝑎𝑖 are fixed real valued weights, and L is the LLA function. It is important to distinguish this uEACs array model from the Analog Recurrent Neural Network (ARNN). In ARNN, the activation function of neurons is a saturated-linear function [23, 24], while, in the uEACs array, L is a piecewise linear function implemented by LLA basic functions. Another significant feature that distinguishes uEACs array from the ARNN is that uEAC is an actual programmable physical implementation inspired by Rubel’s EAC model, and, in this paper, the computational capability of such a fully connected uEACs array is studied. We can rewrite the mathematical model in vector form as 𝑢̃ = L (𝑊𝑢 + 𝐴𝑥) , (9) where now 𝑢 and 𝐴 are vectors of size 𝑛 and 𝑊 is a real matrix of size 𝑛 × 𝑛. The state of this dynamic system at each instant is a real vector; that is, 𝑢(𝑡) = (𝑢1 (𝑡), 𝑢2 (𝑡), . . . , 𝑢𝑛 (𝑡)) ∈ 𝑅𝑛 . The 𝑖th coordinate of the vector represents the value of the 𝑖th uEAC units at time 𝑡. In particular, in the physical structure of uEAC, the term “real” corresponds to values of resistances, capacitances, and electrical field, which may not be directly measured, but they affect the dynamic behavior dramatically. For instance, everything on the earth obeys the exact value of gravitational acceleration 𝐺 even though we are not able to measure it. We may replace 𝐺 with a rational number and observe similar qualitative behavior in finite time simulation; nonetheless, the infinite-time characteristics depend on the true value. Another example is 𝜋. When modeling this uEACs array, some real values are involved, and, for finite time interval, one may replace these real values by some rational values, and the same qualitative behavior is observed, while the long-term characteristics depend on the true values. The array is said to be fully connected because there is a weight between every two uEAC units. The status of the weights can be seen either as unknown parameters to be estimated, or as constant after being optimized. This prompts two different views of this uEACs array. When the weights are considered as unknown parameters, the uEACs array is an adaptive topology that approximates some input-output mapping by means of parameter optimization. When the weights are considered constant, the uEACs array performs exact computation. We should note that 𝑤𝑖𝑗 may equal 0, which means that there is no connection between units 𝑖 and 𝑗. Thus this fully connected array can be seen as a general model of a variety of uEACs arrays, including those in which only a subset of the uEAC units are used. Moreover, all the units in this fully connected structure are in the same layer and compute in parallel. The number of uEAC units in the network is countable. We assume that the structure of the array, including the interconnection relationship of the uEAC units and the values of the interconnection weights, remains constant. What changes in time are the state values, that is, outputs of every uEAC unit, which are used in the next iteration. Mathematical Problems in Engineering 5 4. Main Results Before stating the main results of this paper, we introduce several useful notations. For 𝑥 ∈ R, ⌈𝑥⌉ = min{𝑠 ∈ Z : 𝑠 ≥ 𝑥}. Let ‖(𝑥1 , 𝑥2 , . . . , 𝑥𝑛 )‖∞ = max1<𝑖<𝑛 |𝑥𝑖 |, ‖𝑓‖∞ = sup𝑥∈R |𝑓(𝑥)|, and 𝑓[𝑘] denotes its 𝑘th iteration; that is, 𝑓 [3] (10) = 𝑓 (𝑓 (𝑓 (𝑥))) , . . . Definition 4. A function 𝑓 : R → R is uEAC-computable if letting 𝑥 be an arbitrary element in the domain of 𝑓 and given an output precision 2−𝑛 , there is a uEACs array that is able to compute a rational approximation of 𝑓 with precision 2−𝑛 . We should note that the exponential function, the trigonometric functions, and their compositions are uEACcomputable as basic analytic functions. We may now present the main result of this paper which states the computation capabilities of the uEACs array. Theorem 5. For a Turing machine M, there is a uEACs array that can robustly simulate it. Actually, we will prove the following theorem. Theorem 6. Let 𝜓 : N3 → N3 be the transfer function of a Turing machine M; there is a uEACs array that is able to simulate M robustly in the following sense: let 0 < 𝜀 < 1/2 be some bounded noise added to the initial configuration of M; there is a uEAC-computable function 𝑓 : R3 → R3 that, for all 𝑥0 ∈ R3 satisfying ‖𝑥0 − 𝑥0 ‖∞ ≤ 𝜀, we have 󵄩󵄩 󵄩 󵄩󵄩𝑓 (𝑥0 ) − 𝜓 (𝑥0 )󵄩󵄩󵄩∞ ≤ 𝜀, (11) where 𝑥0 ∈ N3 represents an initial configuration of M. If 𝑥 is a halting configuration of M, we have 𝜓(𝑥) = 𝑥. We will prove this theorem by showing that 𝑓 : R3 → R3 can be obtained by composing some uEAC-computable functions, such as exponential function and trigonometric functions. 5. Robust Simulation of Turing Machine with uEAC-Computable Functions For a Turing machine M with 10 symbols and 𝑚 states, its tape contents can be represented as ⋅ ⋅ ⋅ 𝐵𝛼−𝑚 𝛼−𝑚+1 ⋅ ⋅ ⋅ 𝛼−1 𝛼0 𝛼1 ⋅ ⋅ ⋅ 𝛼𝑛 𝐵 ⋅ ⋅ ⋅ , (12) where 𝛼𝑖 are symbols on the tape and 𝐵 is the blank symbol. Define the encoding functions as 𝑦1 = 𝛼0 + 𝛼1 10 + ⋅ ⋅ ⋅ + 𝛼𝑛 10𝑛 , 𝑦2 = 𝛼−1 + 𝛼−2 10 + ⋅ ⋅ ⋅ + 𝛼−𝑚 10𝑚−1 . 4 𝜔 (𝑡) = 𝑝0 + ∑ (𝑝ℎ cos ( ℎ=1 𝑓[1] = 𝑓 (𝑥) , 𝑓[2] = 𝑓 (𝑓 (𝑥)) , Let 𝑞 be the current state of M and then the triple (𝑦1 , 𝑦2 , 𝑞) ∈ N3 is the current configuration of M. We use a periodic function 𝜔 to read the symbols written on the tape; by trigonometric interpolation we may take (13) ℎ𝜋 ℎ𝜋 𝑡) + 𝑞ℎ sin ( 𝑡)) 5 5 (14) + 𝑝5 cos (𝜋𝑡) , where 𝑝0 , 𝑝1 , . . . , 𝑝5 , 𝑞1 , 𝑞2 , . . . , 𝑞4 are coefficients that can be obtained by solving a system of linear equations. From the form of 𝜔 we can get that it is uEAC-computable as a composition of trigonometric functions. Note that 𝜔 is continuous in R, and, for every given 𝜀, there is some 𝜉𝜀 > 0 that ∀𝑛 ∈ N, 𝑥 ∈ [𝑛 − 𝜉𝜀 , 𝑛 + 𝜉𝜀 ] and we have |𝜔(𝑥) − 𝑛 mod 10| ≤ 𝜀. Actually, when simulating M, we are dealing with a series of approximations of (𝑦1 , 𝑦2 , 𝑞), that is, (𝑦1 , 𝑦2 , 𝑞), in the following sense for given 𝜀: 󵄩󵄩 󵄩 (15) 󵄩󵄩(𝑦1 , 𝑦2 , 𝑞) − (𝑦1 , 𝑦2 , 𝑞)󵄩󵄩󵄩∞ ≤ 𝜀, and thus we need to keep the error under control during the iterations. An error control function can be defined as 𝜎(𝑥) = 𝑥−0.2 sin(2𝜋𝑥) to keep the error under control when reading symbols and states of the Turing machine, and it is a uniform contraction in a neighborhood of integers. Proposition 7 (see [6]). Let 𝑛 ∈ Z and 𝜀 ∈ [0, 1/2); there is some contracting factor 𝜆 𝜀 ∈ (0, 1) that ∀𝛿 ∈ [−𝜀, 𝜀], |𝜎(𝑛 + 𝛿) − 𝑛| < 𝜆 𝜀 𝛿. Another two uEAC-computable error control functions 𝑢 and 𝑢󸀠 are defined as follows. Lemma 8 (see [6]). Let 𝑎 ∈ {0, 1}, for any 𝑎, 𝑦 ∈ R satisfying |𝑎 − 𝑎| ≤ 1/4 and 𝑦 > 0; there is a function 𝑢 : R2 → R given by 𝑢(𝑥, 𝑦) = (1/𝜋) arctan(4𝑦(𝑥 − 1/2)) + 1/2 such that |𝑎 − 𝑢(𝑎, 𝑦)| < 1/𝑦. Lemma 9 (see [6]). Let 𝑎 ∈ {0, 1, 2}, for any 𝑎, 𝑦 ∈ R satisfying |𝑎 − 𝑎| ≤ 𝜀 and 𝑦 ≥ 2; there is a function 𝑢󸀠 : R2 → R given by 2 𝑢󸀠 (𝑥, 𝑦) = 𝑢 ((𝜎[𝑠+1] (𝑥) − 1) , 3𝑦) 𝜎[𝑠] (𝑥) ⋅ (2𝑢 ( , 3𝑦) − 1) + 1 2 (16) such that |𝑎 − 𝑢󸀠 (𝑎, 𝑦)| < 1/𝑦, where 0 𝜀 ≤ 1/4 { { 𝑠 = { log (4𝜀) {⌈− ⌉ 𝜀 > 1/4. log 𝜆 𝜀 { (17) Without loss of generality, we suppose that the symbol being read by M is 𝛼0 . By |𝑦1 − 𝑦1 | ≤ 𝜀, we have 󵄨󵄨 󵄨 󵄨󵄨𝛼0 − 𝜔 (𝜎[𝑡] (𝑦1 ))󵄨󵄨󵄨 ≤ 𝜀, (18) 󵄨 󵄨 6 Mathematical Problems in Engineering where 𝑡 = ⌈| log(𝜉𝜀 /𝜀)/ log(𝜆 𝜀 )|⌉. Then 𝜔(𝜎[𝑡] (𝑦1 )) can be seen as an approximation of the symbol being currently read with error bounded by 𝜀, and it is uEAC-computable. With the approximation of the current symbol, we can determine the next state by polynomial interpolation. Recall that M has 𝑚 states and 10 symbols, let 𝑦 be the symbol being currently read and 𝑞 the current state, and the next state of M can be represented as where ∗ 𝐴󸀠1 = 𝜎[𝑠+2] (𝜔 (𝜎[𝑡] (𝑦2 ))) + 10 (𝜎[𝑠+4] (𝑙 ) + 𝜎[𝑠+4] (𝑦1 ) − 𝜎[𝑠+4] (𝜔 (𝜎[𝑡] (𝑦1 )))) , ∗ 𝐴󸀠2 = 𝜎[𝑠+2] (𝑙 ) + 𝜎[𝑠+2] (𝑦1 ) (22) − 𝜎[𝑠+2] ((𝜔 (𝜎[𝑡] (𝑦1 )))) , 9 𝐴󸀠3 = 𝑚 𝑦−𝑟 𝑞−𝑥 )( ∏ ) 𝑞𝑖𝑗 , 𝑞 = ∑∑( ∏ 𝑖=0 𝑗=1 𝑟=0,𝑟=𝑖̸ 𝑖 − 𝑟 𝑥=1,𝑥=𝑗̸ 𝑗 − 𝑥 ∗ 9 9 𝑚 𝜎[V] (𝑦) − 𝑟 ) 𝑖−𝑟 𝑟=0,𝑟=𝑖̸ ∗ 9 𝑚 𝑞∗ = ∑ ∑ ( ∏ 𝑖=0 𝑗=1 (19) 𝜎[V] (𝑞) − 𝑥 ) 𝑞𝑖𝑗 , 𝑖−𝑥 𝑥=1,𝑥=𝑗̸ 𝑚 where 𝑞∗ is an approximation of 𝑞∗ satisfying |𝑞∗ − 𝑞∗ | ≤ 𝜀 and 𝑞𝑖𝑗 is the state that follows symbols 𝑖 and state 𝑗. This map returns the next state of M and is also uEAC-computable. Using the similar construction, the symbol to be written on the tape, 𝑙∗ , and the direction of the move of the head, 𝑑∗ , can also be approximated with precision 𝜀, respectively; that ∗ ∗ is, |𝑙 − 𝑙∗ | ≤ 𝜀 and |𝑑 − 𝑑∗ | ≤ 𝜀. Let 𝑑 = 0 denote a move of the head to the left, let 𝑑 = 1 denote stay, and let 𝑑 = 2 denote a move to the right. In the absence of error, the next value of 𝑦1 , that is, 𝑦1∗ , is a function of 𝑦1 , 𝑦2 , 𝑙∗ , and 𝑑∗ , (1 − 𝑑∗ ) (2 − 𝑑∗ ) + 𝐴 2 𝑑∗ (2 − 𝑑∗ ) 2 𝑑∗ (1 − 𝑑∗ ) + 𝐴3 , −2 (20) where 𝐴 1 = 𝜔(𝑦2 ) + 10(𝑙∗ + 𝑦1 − 𝜔(𝑦1 )), 𝐴 2 = 𝑙∗ + 𝑦1 − 𝜔(𝑦1 ), and 𝐴 3 = (1/10)(𝑦1 − 𝜔(𝑦1 )). Consider the error, let 𝐷 be an additional approximation of 𝑑∗ to be determined later, we define three functions 𝐴󸀠1 , 𝐴󸀠2 , and 𝐴󸀠3 to approximate the tape contents after the head moves left, stays, and moves right, respectively, and then 𝑦1∗ can be approximated as 𝑦∗1 = 𝐴󸀠1 (1 − 𝐷) (2 − 𝐷) + 𝐴󸀠2 𝐷 (2 − 𝐷) 2 + 𝐴󸀠3 𝐷 (1 − 𝐷) , −2 If we take 𝐷 = 𝑑 directly, the error of the term ((1 − 𝐷)(2 − 𝐷))/2 will be amplified when multiplied by 𝐴󸀠1 . To obtain a sufficiently good approximation of 𝑦1∗ , we have to guarantee that the error |𝐷 − 𝑑∗ | is bounded; this can be achieved with the following definition: ∗ 1 𝐷 = 𝑢󸀠 (𝑑 , 12000 (𝑦1 + ) + 2) . 2 ⋅( ∏ 𝑦1∗ = 𝐴 1 1 (𝜎[𝑠+1] (𝑦1 ) − 𝜎[𝑠+1] (𝜔 (𝜎[𝑡] (𝑦1 )))) . 10 (21) (23) By the definition of 𝑢󸀠 , we get that |𝐷−𝑑∗ | ≤ 𝜙, where 𝜙 = 1/(12000(𝑦1 +1/2)+2). Then we can obtain sufficient good 𝑦∗1 such that |𝑦∗1 −𝑦1∗ | < 𝜀. We should note that 𝐷, 𝐴󸀠1 , 𝐴󸀠2 , and 𝐴󸀠3 are defined as a composition of uEAC-computable functions so they are also uEAC-computable. Similarly we can get some 𝑦∗2 satisfying |𝑦∗2 − 𝑦2∗ | < 𝜀. Putting together the maps defined above, we can define a uEAC-computable function 𝑔 : R3 → R3 as 𝑔(𝑦1 , 𝑦2 , 𝑞) = (𝑦∗1 , 𝑦∗2 , 𝑞∗ ), such that 󵄩󵄩 󵄩 󵄩󵄩𝜓 (𝑦1 , 𝑦2 , 𝑞) − 𝑔 (𝑦1 , 𝑦2 , 𝑞)󵄩󵄩󵄩∞ (24) 󵄩 󵄩 = 󵄩󵄩󵄩(𝑦1∗ , 𝑦2∗ , 𝑞∗ ) − (𝑦∗1 , 𝑦∗2 , 𝑞∗ )󵄩󵄩󵄩∞ ≤ 𝜀. Let 0 ≤ 𝛿 ≤ 𝜀 and 𝑖 ∈ N satisfying 𝜎[𝑖] (𝜀) ≤ 𝜀 − 𝛿. We can define a map 𝑓󸀠 (𝑥) = 𝜎[𝑖] (𝑔(𝑥))(for a 3-dimensional input 𝑥 = (𝑥1 , 𝑥2 , 𝑥3 ), 𝜎(𝑥) = (𝜎(𝑥1 ), 𝜎(𝑥2 ), 𝜎(𝑥3 ))) that if 𝑥0 ∈ N3 is an initial configuration of M and ‖𝑥0 − 𝑥0 ‖∞ ≤ 𝜀, we have 󵄩󵄩󵄩𝑓󸀠 (𝑥 ) − 𝜓 (𝑥 )󵄩󵄩󵄩 = 󵄩󵄩󵄩𝜎[𝑖] (𝑔 (𝑥 )) − 𝜓 (𝑥 )󵄩󵄩󵄩 󵄩󵄩 0 0 󵄩 0 0 󵄩 󵄩∞ 󵄩󵄩 󵄩∞ (25) ≤ 𝜀 − 𝛿. By the triangle inequality, if ‖𝑥0 −𝑥0 ‖∞ ≤ 𝜀, then, for a uEACcomputable function 𝑓 satisfying ‖𝑓 − 𝑓󸀠 ‖∞ ≤ 𝛿, we have 󵄩 󵄩 󵄩󵄩 󵄩 󸀠 󵄩󵄩𝑓 (𝑥0 ) − 𝜓 (𝑥0 )󵄩󵄩󵄩∞ ≤ 󵄩󵄩󵄩󵄩𝑓 (𝑥0 ) − 𝑓 (𝑥0 )󵄩󵄩󵄩󵄩∞ 󵄩 󵄩 (26) + 󵄩󵄩󵄩󵄩𝑓󸀠 (𝑥0 ) − 𝜓 (𝑥0 )󵄩󵄩󵄩󵄩∞ ≤ 𝛿 + (𝜀 − 𝛿) = 𝜀. From the discussion above we get that one can construct a robust Turing machine simulation with uEAC-computable functions. 6. Conclusion uEAC is a novel electronic implementation inspired by Rubel’s EAC model. Based on the mathematical model of Mathematical Problems in Engineering uEAC, we propose a fully connected uEACs array and investigate its computational capabilities. By proving that any Turing machine can be simulated with uEAC-computable functions, we conclude that the proposed uEACs array is at least as powerful as Turing machine. This work can be extended in several directions. The structure of the uEACs array, including the interconnection relationship of the uEAC units and the values of the interconnection weights, is not necessary to remain constant during the iteration. Ainslie et al. use genetic algorithm (GA) to evolve a uEAC to solve XOR problem [25], but their research is restricted to a single uEAC unit and it is hard to say that GA is the most suitable evolutionary algorithm for uEAC. The proposed uEACs array shows great advantages, while its optimization is much more difficult since we have to optimize the topology of the array and the particular structure of the single uEAC unit simultaneously. From the mathematical point of view, all the heuristic algorithms, such as particle swarm optimizer (PSO), ant colony algorithm, and simulated annealing algorithm (SA), can be used to optimize the uEACs array, but we must consider the computation complexity and efficiency of these algorithms. Zhu et al. proposed a comprehensive uEACs array optimization strategy based on particle swarm optimizer (PSO) [22], and the simulation results are promising. Moreover, in the definition of the fully connected uEACs array, we use uEAC 1, uEAC 2, . . . , uEAC 𝑛 to denote the uEAC units in the array, while it is still an open question: how many uEAC units are needed in the array to guarantee its computational capabilities? In other words, we employ an indeterminate item “𝑛” to represent the number of uEAC units, but it is far from satisfied. A comprehensive analysis to determine the minimum “𝑛” that guarantees the robust simulation of Turing machine is of great significance, and this is an emphasis of the future research. The conclusion of this paper can be rewritten as “a robust simulation of the transfer function of a Turing machine can be constructed with uEAC-computable functions.” Actually, when studying the computational capability of the uEACs array, two questions are considered. (1) Does a Turing machine can calculate any uEAC-computable function? (2) Is the function generated by a Turing machine also uEAC-computable? If the answers of these two questions are both yes, we can get a more concrete conclusion that the uEACs array and Turing machine are equivalent! This paper focuses on the second question while the first one can be seen as another valuable future research direction. Conflict of Interests The authors declare that there is no conflict of interests regarding the publication of this paper. Acknowledgments This work is supported by National Natural Science Foundation of China (no. 61433003 and no. 61273150), Beijing Higher 7 Education Young Elite Teacher Project, and National Basic Research Program of China (973 Program, 2012CB821206). References [1] T. Freeth, Y. Bitsakis, X. Moussas et al., “Decoding the ancient Greek astronomical calculator known as the antikythera mechanism,” Nature, vol. 444, no. 7119, pp. 587–591, 2006. [2] C. E. Shannon, “Mathematical theory of the differential analyzer,” Journal of Mathematics and Physics, vol. 20, pp. 337–354, 1941. [3] V. Bush, “The differential analyzer. A new machine for solving differential equations,” Journal of the Franklin Institute, vol. 212, no. 4, pp. 447–488, 1931. [4] L. A. Rubel, “The extended analog computer,” Advances in Applied Mathematics, vol. 14, no. 1, pp. 39–50, 1993. [5] J. Mycka, “Analog computation beyond the turing limit,” Applied Mathematics and Computation, vol. 178, no. 1, pp. 103–117, 2006. [6] D. S. Graca, M. L. Campagnolo, and J. Buescu, “Computability with polynomial differential equations,” Advances in Applied Mathematics, vol. 40, no. 3, pp. 330–349, 2008. [7] M. Piekarz, “The extended analog computer and functions computable in a digital sense,” Acta Cybernetica, vol. 19, no. 4, pp. 749–764, 2010. [8] J. W. Mills, B. Himebaug, A. Allred et al., “Extended analog computers: a unifying paradigm for VLSI, plastic and colloidal computing systems,” in Proceedings of the Workshop on Unique Chips and Systems (UCAS-1). Held in Conjunction with IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS ’05), Austin, Tex, USA, 2005. [9] J. W. Mills, M. Parker, B. Himebaugh, C. Shue, B. Kopecky, and C. Weilemann, “‘Empty space’ computes: the evolution of an unconventional supercomputer,” in Proceedings of the 3rd Conference on Computing Frontiers (CF ’06), pp. 115–126, Como, Italy, May 2006. [10] J. W. Mills, “The nature of the extended analog computer,” Physica D, vol. 237, no. 9, pp. 1235–1256, 2008. [11] J. W. Mills, M. G. Beavers, and C. A. Daffinger, “Lukasiewicz logic arrays,” in Proceedings of the 20th International Symposium on Multiple-Valued Logic, pp. 4–10, Charlotte, NC, USA, May 1990. [12] J. W. Mills and C. A. Daffinger, “CMOS VLSI Lukasiewicz logic arrays,” in Proceedings of the International Conference on Application Specific Array Processors, pp. 469–480, Princeton, NJ, USA, September 1990. [13] J. W. Mills, T. Walker, and B. Himebaugh, “Lukasiewicz’ insect: continuous-valued robotic control after ten years,” Journal of Multiple-Valued Logic and Soft Computing, vol. 9, no. 2, pp. 131– 146, 2003. [14] B. Himebaugh, “Design of eac,” 2005, .edu/∼bhimebau/.edu /∼bhimebau/. [15] J. W. Mills, “The continuous retina: image processing with a single-sensor artificial neural field network,” in Proceedings of the IEEE International Conference on Neural Networks, vol. 2, pp. 886–891, IEEE, Washington, DC, USA, June 1996. [16] M. Parker, C. Zhang, J. W. Mills, and B. Himebaugh, “Evolving letter recognition with an extended analog computer,” in Proceedings of the IEEE Congress on Evolutionary Computation (CEC ’06), pp. 609–614, IEEE, July 2006. [17] F. Pan, R. Zhang, T. Long, and Z. Li, “The research on the application of uEAC in XOR problems,” in Proceedings of 8 [18] [19] [20] [21] [22] [23] [24] [25] Mathematical Problems in Engineering the International Conference on Transportation, Mechanical, and Electrical Engineering (TMEE ’11), pp. 109–112, IEEE, Changchun, China, December 2011. S. Tsuda, J. Jones, A. Adamatzky, and J. Mills, “Routing physarum with electrical flow/current,” International Journal of Nanotechnology and Molecular Computation, vol. 3, no. 2, pp. 56–70, 2011. J. W. Mills, “Programmable vlsi extended analog computer for cyclotron beam control,” Tech. Rep., Indiana University, 1995. A. M. Turing, “On computable numbers, with an application to the entscheidungsproblem,” Proceedings London Mathematical Society, vol. s2-42, no. 1, pp. 230–265, 1937. L. A. Rubel, “Some mathematical limitations of the generalpurpose analog computer,” Advances in Applied Mathematics, vol. 9, no. 1, pp. 22–34, 1988. Y. Zhu, F. Pan, W. Li, Q. Gao, and X. Ren, “Optimization of multi-micro extended analog computer array and its applications to data mining,” International Journal of Unconventional Computing, vol. 10, no. 5-6, pp. 455–471, 2014. H. T. Siegelmann and E. D. Sontag, “Analog computation via neural networks,” Theoretical Computer Science, vol. 131, no. 2, pp. 331–360, 1994. H. T. Siegelmann and E. D. Sontag, “On the computational power of neural nets,” Journal of Computer and System Sciences, vol. 50, no. 1, pp. 132–150, 1995. N. Ainslie, R. Baula, N. Deckard et al., “Toward the evolution of analog computers for control of data networks,” Tech. Rep., Indiana University, Indianapolis, Ind, USA, 2002. Advances in Operations Research Hindawi Publishing Corporation http://www.hindawi.com Volume 2014 Advances in Decision Sciences Hindawi Publishing Corporation http://www.hindawi.com Volume 2014 Journal of Applied Mathematics Algebra Hindawi Publishing Corporation http://www.hindawi.com Hindawi Publishing Corporation http://www.hindawi.com Volume 2014 Journal of Probability and Statistics Volume 2014 The Scientific World Journal Hindawi Publishing Corporation http://www.hindawi.com Hindawi Publishing Corporation http://www.hindawi.com Volume 2014 International Journal of Differential Equations Hindawi Publishing Corporation http://www.hindawi.com Volume 2014 Volume 2014 Submit your manuscripts at http://www.hindawi.com International Journal of Advances in Combinatorics Hindawi Publishing Corporation http://www.hindawi.com Mathematical Physics Hindawi Publishing Corporation http://www.hindawi.com Volume 2014 Journal of Complex Analysis Hindawi Publishing Corporation http://www.hindawi.com Volume 2014 International Journal of Mathematics and Mathematical Sciences Mathematical Problems in Engineering Journal of Mathematics Hindawi Publishing Corporation http://www.hindawi.com Volume 2014 Hindawi Publishing Corporation http://www.hindawi.com Volume 2014 Volume 2014 Hindawi Publishing Corporation http://www.hindawi.com Volume 2014 Discrete Mathematics Journal of Volume 2014 Hindawi Publishing Corporation http://www.hindawi.com Discrete Dynamics in Nature and Society Journal of Function Spaces Hindawi Publishing Corporation http://www.hindawi.com Abstract and Applied Analysis Volume 2014 Hindawi Publishing Corporation http://www.hindawi.com Volume 2014 Hindawi Publishing Corporation http://www.hindawi.com Volume 2014 International Journal of Journal of Stochastic Analysis Optimization Hindawi Publishing Corporation http://www.hindawi.com Hindawi Publishing Corporation http://www.hindawi.com Volume 2014 Volume 2014