International Journal of Computer Engineering and Technology (IJCET), ISSN 0976 6367(Print) ISSN 0976 6375(Online) Volume 1 Number 1, May - June (2010), pp. 34-45 IAEME, http://www.iaeme.com/ijcet.html International Journal of Computer Engineering and Technology (IJCET), ISSN 0976 6367(Print), IJCET I A E M E PARALLEL COMMUNICATING FLIP PUSHDOWN AUTOMATA SYSTEMS COMMUNICATING BY STACKS M.Ramakrishnan Research Scholar Anna University of Technology, Coimbatore Coimbatore 641 047 S.Balasubramanian Research Scholar Anna University of Technology, Coimbatore Coimbatore 641 047 ABSTRACT In this paper, we introduced parallel communicating flip pushdown automata communicating by stacks. PCFPA (2) equals the family of recursively enumerable languages Also we have proved that. RPCFPA (3) equals the family of recursively enumerable languages. Key words: Pushdown automata, Flip pushdown automata, finite automata 1. INTRODUCTION A pushdown automaton is one way finite automaton with a separate pushdown store, that is first in first out storage structure, which is manipulating by pushing and popping. Probably, such machines are best known for capturing the family of context free languages, which was independently established by Chomsky (Cole 1971). Pushdown automata have been extended in various ways. The extension of pushdown automata is recently introduced, is called flip pushdown automata (Border et al 1982). A is an ordinary pushdown with the additional ability to flip its pushdown push down during the computation. This allows the machine to push and pop at both ends of the pushdown, therefore, a flip-pushdown is a form of a 34
dequeue storage structure and it becomes an equally power to Turing machines. A dequeue automaton com simulate two pushdowns. DEFINITION 1.1: PARALLEL COMMUNICATING FLIP PUSHDOWN AUTOMATA Parallel communicating flip pushdown automata system is of degree n is a construct A = (V, Γ, A 1, A 2,..,A n,k) where V is the input alphabet, Γ is the alphabet of pushdown symbols, for each 1 i n, A i = (Q i, V, Γ, f i, i,q i, Z i, F i ) where Q i is a finite set of states, Γ i is a finite pushdown alphabet, f i is a transition mapping from V {ε } Γ i to finite subsets of Q i Γ * i is called transition function, i is a mapping from Q i to 2 Q i, q i Q i, Z i Γ i, F i Q i be the set of final states and K {K 1, K 2,, K n } Γ is the set of query symbols. The Flip Pushdown automata A 1, A 2,..,A n are components of the system A. If there exists only one component, A i, 1 i n, such that (r, α) f i (q, a, A) with α Γ *, α K > 0, for some r, q Q i, a V { }, A Γ, then the system is said to be centralized and A i is said to be the master of the system. For the sake of simplicity, whenever a system is centralized its master is the first component. A parallel communicating flip pushdown automata system is schematically represented in Figure 1.1. As one can see in Figure 1.1, all stacks are connected with each other, each stack can send its contents to any other stack or receive the contents of any other stack. In the centralized case all stacks send their contents to a distinguished stack. In the case of the non-returning strategy, every stack preserves its contents after sending a copy of it to another component while in the case of the returning strategy the stack returns to its initial contents after communication. 35
Figure 1.1 parallel communicating flips pushdown automata system The configuration or instantaneous of a parallel communicating flip pushdown automata system is defined as a 3n-tuple (s 1, x 1, α 1, s 2, x 2, α 2 s n, x n, α n ) Where for 1 i n, s i Q i is the current state of the component A i, x i V* is the remaining part of the input word which has not yet been read by A i, α i Γ * is the contents of the ith stack, the rightmost symbol being the topmost symbol on the pushdown store If a is in V { }, x i V*, α i, β i Γ * and Z i is in Γ, Then ( s i, a x i, α i Z i ) ( p i, x i, α i β i ), if the pair (p i, β i ) is in fi (s i, a x i, α i ), for the ordinary pushdown transitions and ( s i, a x i, α i Z i ) (p i, x i, Z i α R i ), if p i is in s i ), for the flip pushdown transition or a pushdown reversal transitions. Whenever, there is a choice between an ordinary pushdown transition or a pushdown reversal of any i, then the pushdown automaton non-deterministically chooses the next move. We do not i ( 36
want the flip pushdown automaton to move the bottom of pushdown symbol when the pushdown is flipped. We define two variants of transition relations on the set of configurations of A in the following way: 1. (s 1, x 1, B 1 α 1,... s 2, x n, B n α n ) ( p 1, y 1, β 1,, p n, y n, β n ) Where B i Γ, α i, β i Γ *, 1 i n, iff one of the following two conditions holds: (i) K {B 1, B 2,, B n } = φ and x i = a i y i, a i V {ε}. {p i, β i ) f i (s i, a i, B i ). β i = β i α i, 1 i n, (ii) for all i, 1 i n such that B i = K ji and B ji ε K i β i = B j α ji α i, for all other r, 1 r n, β r = B r α r, and y t = x t, p t = s t, for all t, 1 t n. 2. (s 1, x 1, B 1 α 1,., s n, x n, B n α n ) r (p 1, y 1, β 1,... pn, yn, β n ) Where B i Γ, α i, β i Γ *, 1 i n, iff one of the following two conditions holds: (i) K {B 1, B 2,, B n } = φ and x i = a i y i, a i V {ε}, {p i, β i ) f i (s i, a i, B i ). β i = β i α i, 1 i n, (ii) for all 1 i n such that B i = K j,, and B ji K, for all other r, 1 r n, β r = B r α r, and y t = x t, p t = s t, for all t, 1 t n. The two transition relations defined above differ when the topmost symbols of some stacks are execute a communication step replacing each query symbol with the requested stack contents of the corresponding component. If the topmost symbol of the queried stack is also a query symbol, then first this query symbol must be replaced with the contents of the corresponding stack. The top of each communicated stack must be a non-query symbol before its contents can be sent to another component. If this condition cannot be fulfilled, (a circular query appeared), then the work of the automation system is blocked. After communication, the stack contents of the sending components remain the same in the case of relation, whereas it becomes the initial pushdown memory symbol 37
in the case of relation. A parallel communicating flip pushdown automata system whose computations are based on relation is said to be non-returning; if its computations are based on relation, it is said to be returning. The language accepted by a parallel communicating flip automata system A as above is defined as Rec(A) = {x V* (q 1, x, Z 1,, q n, x, Z n ) * (s 1, ε, α 1,, s n, ε, α 1,, s n, ε, α n ), with exactly n pushdown reversals, for any α i Γ * and any s i F i, 1 i n}, Rec r (A) = {x V* (q 1, x, Z 1,, q n, x, Z n ) * r (s 1, ε, α 1,, s n, ε, α 1,, s n, ε, α n ), with exactly n pushdown reversals, for any α i Γ * and any s i F i, 1 i n}, where * and * r, denote the reflexive and transitive closure of and r respectively. In the following we use the notations rcpcpfa (n) - for returning centralized parallel communicating flip pushdown automata systems of degree n, rpcfpa (n) - for returning parallel communicating flip pushdown automata systems of degree n, rpcfpa (n) - for centralized parallel communicating flip pushdown automata systems of degree n, pcfpa (n) - for parallel communicating flip pushdown automata systems of degree n. If x(n) is a type of automata system, then X(n) is the class of languages accepted by pushdown automata systems of type x(n). For example, RCPCFPA (n) is the class of languages accepted by automata of type rcpcfpa (n) (returning centralized parallel communicating flip pushdown automata systems of degree n). 38
The following examples shows to help the better understanding of the notions defined above. EXAMPLE1.1 Let us consider the following rpfcpca (4) given by the transition mappings of its components. f 1 (q 1, ε, Z 1 ) = {(s 1, a)}, f 1 (s 1, ε, Z 1 ) = {(p 1, Z 1 )}, f 1 (p 1, ε, Z 1 ) = {(h 1, Z 1 )}, f 1 (h 1, ε, Z 1 ) = {(r 1, Z 1 ), (t 1, K 3 )}, f 1 (t 1, ε, a) = {(s 1, a)}, f 3 (q 3, ε, Z 3 ) = {(s 3, K 1 )}, f 3 (s 3, ε, a) = {(p 3, K 2 a)}, f 3 (p 3, ε, a) = {(h 3, a)}, f 3 (h 3, ε, a) = {(q 3, a)}, f 3 (h 3, ε, Z 3 ) = {(r 3, Z 3 )}, f 3 (r 3, a, Z 3 ) = {(r 3, Z 3 )}, f 2 (q 2, ε, Z 2 ) = {(s 2, K 1 )}, f 2 (s 2, ε, a) = {(p 2, a)}, f 2 (p 2, ε, Z 2 ) = {(h 2, Z 2 )}, f 2 (p 2, ε, Z 2 ) = {(h 2, Z 2 )}, f 2 (r 2, a, Z 2 ) = {(r 2, Z 2 )}, f f 4 (s 4, ε, Z 4 ) = {(h 4, Z 2 )}, 4(q 4, ε, Z 4 ) = {(s 4, Z 4 )}, f 4 (h 4, ε, Z 4 ) = {(t 4, Z 4 )}, (v 4, K 3 Z 4 )}, f 4 (t 4, ε, Z 4 ) = {(u 4, Z 4 )}, f 4 (v 4, ε, a) = {(s 4, Z 4 )}, f 4 (v 4, ε, a) = {(p 4, a}, f 4 (p 4, a, a = {(p 4, ε)}, f 4 (p 4, ε, Z 4 ) = {(r 4, Z 4 )} 39
The final states are F 1 = {r 1 }, F 2 = {r 2 }, F 3 = {r 3 }, F 4 = {r 4 }. EXAMPLE1.2 A more intricate way of computation can be observed in the following cpcfpa (2). f 1 (q 1, X, Z 1 ) = {(q 1, Z 1 )} f 1 (s 1, ε, Z 2 ) = {(p 1, ε)} f 1 (p 1, X, X) = {(p 2, ε)} f 1 (p 2, ε, X) = {(p 2, ε)} f 1 (p 2, ε, Z 2 ) = {(p 1, ε)} f 1 (p 1, ε, Z 1 ) = {(p 1, Z1)} f 2 (q 2, X, Z 2 ) = {(q 2, X, Z 2 )} f 1 (q 1, c, Z 1 ) = {(s 1, K 2 Z 1 )} f 2 (s 2, X, Y) = {(q 2, XY)} f 1 (s 1, ε, X) = {(s 1, K 2 X)} f 2 (q 2, c, X) = {(s 2, X)} f 2 (s 2, ε, X) = {(s 2, ε} f 2 (s 2, ε, Z 2 ) = {(s f, Z 2 )} f 2 (s f, ε, Z 2 ) = {(s f, Z 2 )} f 2 (s f, X, Z 2 ) = {(s f, Z 2 )} where X, Y ε {a, b}, and the sets of final states are F1 = {p f }, F 2 = {s f }. LEMMA1.1 1. RCPCFPA(n) RPCFPA(n) and CPCFPA (n) PCFPA(n) for all n 1. 2. X(1) equals the family of context-free languages and X(n) X(n+1) for X {RCPCFPA, RPCFPA, CPCFPA, PCFPA}, n 1. 2 COMPUTATIONAL POWER We start by showing how non-returning parallel communicating pushdown automata systems can be simulated with returning systems. 40
THEOREM 2.1 PCFPA(n) RPCFPA (2n) for all n 2. PROOF Let A = (a,, A 1, A 2,..., A n, K) be a pcpa(n) with A i = (Q i, V,, f i, q i, Z i, F i ), 1 i n. We construct the rpcpa (2n) A = (V, Γ, A 1, A 1, A 2, A 2,, A n, ' ' ' ' Where K = { K 1, K 2, K 3,..., Kn} for all 1 i n, A n, K ), K 1, K 2, K 3,..., Kn}, and with A 1 = (Q i {q q Q i }, V, Γ { K i }, f i, q i, Z i, F i }, (1) f i (q, a, A) = {(r, x) (r, x) f i (q, a, A)} (2) f i (q, ε, Z i ) = {(q, K i )}, where q, r Q i, a V {ε}, A Γ, and with A i = ({ q i }, V, Γ {Z i, K 1 }, f i, q i, Z i { q i }}, (3) f i ( q i, a, Z i } = (4) f i ( q i, ε, A} = {( q i, K 1 )}, {( q i, A)}, where a V {ε}, A Γ As one can easily see, every component of A has a satellite component in A. Each accepting step in A is simulated by two accepting and two communication steps in A in the following way: In the first accepting step A i and A i use the rules (1) and (3), respectively. Now the stacks of all components A i have the same contents as the corresponding ones in A. Moreover, the current states of A i are copies of the current states of the corresponding ones in A. 41
THEOREM 2.2 PROOF PCFPA (2) equals the family of recursively enumerable languages. Let A = (Q, V, Γ, f, q, B 1, B 2, F) be a two-stack flip pushdown automaton. We construct the pcfpa(2) A = (V, Γ, A 1, A 2, {K 1, K 2 }) with Γ = Γ {Zi, [q, a, X, Y, α, β] i q, α, β) f(r, a, X, Y), q, r, Q, a V {ε}, X, Y Γ, 1 i 2}, and A i = {Q i, V, Γ, A 1, A 2, {K 1, K 2 }) with Γ = Γ {Zi, [q, a, X, Y, α, β] i (q, α, β) f(r, a, X, Y), q, r, Q, a V {ε}, X, Y Γ, 1 i 2}, and A i = {Q i, V, Γ, f i, q i, Z i, F ), 1 i 2. where Q i = {q ch, q rec, q w, [q, α], [q, β] (q, α, β) f(r, a, X, Y), q, r, Q, a V {ε}, X, Y Γ } { q, X q Q, X Γ } {q 1, q 2 }, and F = {q ch, q rec q F}. and the transition mappings are defined as follows: (1) f 1 (q 1,, Z 1 ) = {(q ch, B 1 Z 1 )}, f 1 (q 2,, Z 2 ) = {(q rec, B 2 Z 2 )}, This is the initial step in which both components change their states and stack contents in order to begin the simulation. (2) f 1 (q ch, a, X) = { q ch, [r, a, X, Y, α, β] 1 ) r, α, β) f(q, a, X, Y),, Y Γ }, f 2 (q rec,, X)= { q, X, K 1 )}, f 1 (q rec, ε, X = { q, X, K 2 }, f 2 (q ch, a, Y = { q ch, [r, a, X, Y, α, β] 2 (r, α, β) f(q, a, X, Y), X }, where a V {ε}, X Γ. 42
The first automaton, being in a state q ch, q Q, reading a V {ε} on its input tape and X from its memory, chooses a possible move of the two-stack flip pushdown automaton in the same state, reading the same input symbol and reading X from its first stack. This move is encoded in a flip pushdown memory symbol and stored in the memory of the first component. The other component, being in state q rec, q Q requests the memory contents of the first component without moving its reading head. With the second group of transitions of (2) the same process can be done, but with A 2, choosing a possible transition of A to be simulated. In simulation of A 1 and A 2 take turns in choosing the transitions. (3) f 1 (q ch, ε, [r, α, X, Y, α, β] 1 ) = {(r w, α)}, f 1 (q w, ε, X) = {(q w, X), (q rec, X)}, f 2 (q, Y ), α, [r, α, X, Y, α, β] 1 ) = {([r, β], ε)}, f 2 ( q, α], ε, X) = {([q, α], ε)}, f 2 ( q, α], ε, Z 1 ) = {([q ch, α)}, f 2 (q ch, ε, [r, α, X, Y, α, β] 2 ) = {(r w, β)}, f 2 (q w, ε, X) = {(q w, X), (q rec, X)}, f 1 ( q, X, α, [r, α, X, Y, α, β] 2 ) = {([r, β], ε)}, f 1 ( q, α], ε, X) = {([q, α], ε)}, f 1 ( q, α], ε, Z 2 ) = {(q ch, α)} Where q Q and α V {ε}. as the non-returning variants. THEOREM 2.3 PROOF RPCFPA (3) equals the family of recursively enumerable languages. We first show that for every two-stack flip pushdown automaton. Construct an rpcfpa system with three components such that the two devices accept the same language. Let A = (Q, V, Γ, f, qo, Z Z F) be a two-stack flip pushdown automaton. 1 2 0, 0, 43
Let us associate to any transition (r, α, β) f(q, a, A, B), where q, r Q, a V { }, A, B Γ, α, β, Γ * a new symbol [q, a, A, B, r, α, β] and let us denote the set of these symbols by t. Moreover, let Q = {q q Q} and Q c = { q, x, X q Q, x V {ε}, X Γ }. The simulating rpcfpa A is constructed as follows: A = (V, Γ, A, A 1, A 2, A 3, {K 1 }), Where A = {Z 1, Z 2, Z 3,} Γ Γ t, and A 1 = (Q Q, V, Γ A, f 1, q 0, Z 1, F) A 2 = (Q Q c, V, Γ A, f 2, q 0, A 3 = (Q Q c, V, Γ A, f 3, q 0, 1 Z 0, F) 2 Z 0, F). We define the transition mappings of the components as follows: (1) f 1 (q, a, Z 1 ) = {(r, [q, a, A, B, r, α, β]) [q, a, A, B, r, α, β] Γ t }, f 2 (q, a, A) = {( q, a, A, K 1 )}, f 3 (q, a, B) = {( q, a, B, K 1 )}, where q Q, a V {ε}, A, B Γ, (2) f 1 (r, ε, Z 1 )= (r, Z 1 ), f 2 ( q, a, A), ε, [q, a, A, B, r, α, β]) = f 3 ( q, a, B), ε, [q, a, A, B, r, α, β]) = where r Q, [q, a, A, B, r, α, β] Γ t. 3. CONCLUSION (r, α), (r, β), We define a property called communication parallel communicating flip pushdown automata. Flip pushdown automata are pushdown with the additional ability to flip or reverse its pushdown. We have proved that RPCFPA equals the family of recursively enumerable languages. 44
REFERERENCES: 1. Martin-Vide, C., Mateescu, A. and Mitrana, V. (2002), Parallel finite automata Systems communicating by states, International Journal of the Foundations of Computing Science 13 (5),pp. 733-749. 2. A.O.Budo, Multiprocessor automata,infor.process.lett.25(1977) 257-261. 3. Elena Czeizler and Eugen Czeizler (2006), Parallel Communicating Watson- Crick Automat Systems, Acta Cybernetica 17,685-700. 4. Csuhaj Varju, E. and Dassow, J. (1990), On cooperating / distributed grammar systerms, Journal of Information processing and Cybernetics 26, 49-63. 5. Markus Holzer(2003), Flip pushdown automata: Nondeterminism is better than Determinism, FIG Research Report. 45