pushdown automata with complementary registers

11
PUSHDOWN AUTOMATA WITH COMPLEMENTARY REGISTERS V. Yu. Meitus UDC 51 : 621.391 Introduction The present paper considers problems associated with the formulation and analysis of algorithms for translation from one formal language to another~ The class of context-free languages is chosen from the class of formal languages. If one considers the representation of the language to be in the form of a tree and that the translation scheme is represented by a permutation of the vertices according to specified rules and also by the introduction or elimination of vertices having terminal tags, then we arrive at the notion of direct syntactic translation (the SD-scheme). Direct syntactic translation may be stipulated by means of productions that are linked pairwise with one another. During the output process two words are generated simultaneously, of which the second is the translation of the first [2-4]. This scheme allows the translation algorithms to be determined in the lan- guage of grammars. Its merit is the readability of the translation stipulation and the possibility of using general techniques for analyzing grammars in order to investigate the given translation algorithm. A shortcoming is the necessity of a large amount of sorting in translating a specific word according to the algorithm stipulated in the form of a grammar. For practical translation purposes it is more expedient to use systems of the pushdown type [1, 3~ 5, 7] for which one can, for example, estimate in advance the time required for the translation of a specifit, word [3, 5]. in this connection the establishing of links between grammars stipulating certain translation algorithms and the systems which allow realization of these algorithms acquires special significance. Thus, in [3, 6, 7] a simple SD-scheme was considered which does not allow permutation of the sides of the tree representing the language during the translation process. It was shown that such a translation may be stipulated by means of a nondeterministic pushdown automaton {i.e., more precisely, by a pushdown converter). Generalizing the concept of a pushdown automaton by introducing a special type of memory into the automaton, we obtain a pushdown automaton with complementary registers, by means of which one can construct any direct syntactic translation [4]. The present paper is devoted to an investigation of these automata. The author thanks V. M. Glushkov for his valuable advice in discussing the present paper, and A. A. Letichevskii whose comments facilitated the useful abridgement of this paper. 1. Converting Grammars A converting grammar Gt is defined by a quintet of symbols-Gt= (V, E, A, R, (S, S)), where V are variables; E and A are the input and output alphabets; R is a finite set of rules; (S, S) in the initial symbol. The form in G t is defined as the triplet ((~, fl, H), where a-C(VUZ)~*, fi-c(VUA)~, while II is a permuta- tion. The very same variables are included in ~, ft. Let the number of these variables be k. Then [. II= il ... i~ -- [i~.... , ik]. Let us denote ij by means of II(j), while II-l(k)=!i~(k) denotes that value of j for which II(j)=k, (i.e., Ii (ij) --j. Let us renumber all of the variables incorporated in o~, fl, from left to Translated from Kibernetika, No. 5, pp. 10-19, September-October, 1970. Original article submitted August 1, 1969. 1973 Consultants Bureau, a division of Plenum Publishing Corporation, 227 West 17th Street, New York, N. Y. 10011. All rights reserved. This article cannot be reproduced for any purpose whatsoever without permission of the publisher. A copy of this article is available from the publisher for $15.00. 545

Upload: v-yu-meitus

Post on 10-Jul-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Pushdown automata with complementary registers

P U S H D O W N A U T O M A T A W I T H C O M P L E M E N T A R Y R E G I S T E R S

V . Y u . M e i t u s UDC 51 : 621.391

I n t r o d u c t i o n

The p r e sen t p a p e r cons iders p r o b l e m s assoc ia ted with the formula t ion and analys is of a lgor i thms for t r ans la t ion f r o m one f o r m a l language to another~

The c l a s s of con tex t - f r ee languages is chosen f r o m the c l a s s of f o r m a l languages. If one cons iders the r ep re sen t a t i on of the language to be in the fo rm of a t r ee and that the t rans la t ion scheme is r e p r e s e n t e d by a pe rmuta t ion of the v e r t i c e s according to specif ied ru les and a lso by the introduction or el iminat ion of v e r t i c e s having t e rm i na l tags, then we a r r i v e at the notion of d i r ec t syntact ic t rans la t ion (the SD-scheme) .

Di rec t syntact ic t rans la t ion may be s t ipulated by means of product ions that a re linked pa i rwise with one another . During the output p r o c e s s two words a r e genera ted s imul taneously , of which the second is the t r ans la t ion of the f i r s t [2-4]. This scheme allows the t rans la t ion a lgor i thms to be de te rmined in the lan- guage of g r a m m a r s . I ts m e r i t is the readabi l i ty of the t rans la t ion stipulation and the poss ibi l i ty of using gene ra l techniques for analyzing g r a m m a r s in o r d e r to inves t iga te the given t rans la t ion a lgor i thm. A shor tcoming is the necess i ty of a l a rge amount of sor t ing in t rans la t ing a specif ic word according to the a lgor i thm st ipulated in the f o r m of a g r a m m a r .

Fo r p r ac t i ca l t r ans la t ion pu rposes it is m o r e expedient to use s y s t e m s of the pushdown type [1, 3~ 5, 7] for which one can, for example , e s t ima te in advance the t ime requ i red for the t rans la t ion of a specifit, word [3, 5]. in this connection the es tabl ishing of links between g r a m m a r s st ipulating ce r ta in t rans la t ion a lgor i thms and the s y s t e m s which allow rea l i za t ion of these a lgor i thms acqui res spec ia l s ignif icance.

Thus, in [3, 6, 7] a s imple SD-scheme was cons idered which does not allow pe rmuta t ion of the s ides of the t r e e r e p r e s e n t i n g the language during the t r ans la t ion p r o c e s s . I t was shown that such a t r ans la t ion may be s t ipula ted by means of a nonde te rmin is t i c pushdown automaton {i.e., m o r e p r ec i s e ly , by a pushdown conver t e r ) .

Genera l iz ing the concept of a pushdown automaton by introducing a spec ia l type of m e m o r y into the automaton, we obtain a pushdown automaton with c o m p l e m e n t a r y r e g i s t e r s , by means of which one can cons t ruc t any d i r ec t syntact ic t r ans la t ion [4].

The p r e s e n t p a p e r is devoted to an invest igat ion of these automata .

The author thanks V. M. Glushkov for his va luable advice in d iscuss ing the p r e sen t paper , and A. A. Le t ichevski i whose comment s fac i l i ta ted the useful abr idgement of this paper .

1. C o n v e r t i n g G r a m m a r s

A conver t ing g r a m m a r G t is defined by a quintet of s y m b o l s - G t = (V, E, A, R, (S, S)), where V a r e va r i ab les ; E and A a re the input and output alphabets; R is a finite se t of rules ; (S, S) in the init ial symbol .

The f o r m in G t is defined as the t r ip le t ((~, fl, H), where a-C(VUZ) ~*, fi-c(VUA) ~, while II is a p e r m u t a - tion. The v e r y s a m e va r i ab l e s a r e included in ~, ft. Let the number of these va r i ab l e s be k. Then

[ . �9

II= il . . . i~ -- [i~ . . . . , ik]. Let us denote ij by means of II(j), while II-l(k)=!i~(k) denotes that value of j

for which I I ( j )=k, (i .e. , Ii (ij) --j. Le t us r e n u m b e r all of the va r i ab l e s incorpora ted in o~, fl, f r o m left to

T rans l a t ed f r o m Kibernet ika , No. 5, pp. 10-19, Sep tember -Oc tobe r , 1970. Original a r t i c le submit ted August 1, 1969.

�9 1973 Consultants Bureau, a division of Plenum Publishing Corporation, 227 West 17th Street, New York, N. Y. 10011. All rights reserved. This article cannot be reproduced for any purpose whatsoever without permission of the publisher. A copy of this article is available from the publisher for $15.00.

545

Page 2: Pushdown automata with complementary registers

r ight using number s f r o m 1 to k. Then a , fl a re re la ted by the following conditions: if A is a j - v a r i a b l e in a,~then A is l ikewise a I I ( j ) -var iab le in ft.

A rule is an e lement of the se t R, wri t ten in the f o r m of the product ion A ~ (a , fl, II).

Let (a l , Hi, II1) be the f o r m of G, and A be the i - th va r i ab l e a . Let R : A --* (3', 5, II) be a ru le . Then one can cons t ruc t the f o r m (~2, f12, II2) by rep lac ing the i - th va r i ab le a i by 3', ttl(i), the va r i ab le fll by 5, and then c o n s t r u c t i n g the substi tution II 2 9ceord ing to the following ru les . Le t m be the numbdr of Vari- ables in 3".

1. Fo r all d, 1 -< d--- m, II 2(i + d - 1)-- Hl(i ) + I I (d ) - 1.

2. F o r all j < i,

3. Fo r all j >i,

The applicat ion

Then the re la t ion =~ G

(a3, f13, II3), then (al ,

of pa i r s T(G) = {(x, y)

if Hi(j) < Hi(i), then II2(j) = IIl(j); i f Hi(j) > Hi( i ) , then II2(j) = I I l ( j )+ m - 1.

if Hi(j) < Hi(i), then II2( j + m - 1) = Hi(j); if Hi(j) > Hi(i), then II2( j + m - 1) = Hi(j) + m - 1.

of R to the f o r m (al , ill, II1) may be wri t ten in the f o r m (~1, ill, II1) ~+ ,(~ •2, tI2)* G

is defined as (o,fl , II) =~ (c~, fl, II), while if (s II1) ~ ( ~ 2 , f12, II2) and (cg2, f12, II2)~=~-

/3I, III) =~ (a3, f13, II3). The SD-t rans la t ion T is defined by the g r a m m a r C-t as the se t t3

1(8, S) ~ (x, y), x ~ * , Y~*}'x while the word y is cal led a t rans la t ion of t heword x.

If all ru les of the se t R a re such that the subst i tut ions incorpora ted in the i r composi t ion a r e only identical , then such a G t - g r a m m a r shal l be cal led p r imi t ive .

2 . A P u s h d o w n A u t o m a t o n w i t h C o m p l e m e n t a r y R e g i s t e r s

A pushdown automaton with complemen ta ry r e g i s t e r s ~[~ is a genera l iza t ion of a conventional push- down automaton A; it can be used to p e r f o r m an SD-t rans la t ion defined by an a r b i t r a r y g r a m m a r G t.

Let A be a pushdown automaton with one in ternal s to re [1] and the init ial s to re symbol S 0. Le t us add to A a m e m o r y consis t ing of a conditional r e g i s t e r r 0 and m s to r e s of a specia l type r l , . . . , r m which we shall cal l complemen ta ry r e g i s t e r s , to A ,

The spec ia l c h a r a c t e r of these r e g i s t e r s cons i s t s in the conditions governing the i r l inkage to the s to re .

1. Since the complemen ta ry r e g i s t e r s a re s to res , wri t ing may be p e r f o r m e d in them only in the top cell .

2. A word of a r b i t r a r y length in the output alphabet of the automaton A (but not a l e t t e r , as in a conventional s t o r e ! ) may be wri t ten in a cell of a comp lemen ta ry r e g i s t e r .

3. No wri t ing can be p e r f o r m e d in a nonempty cel l of a complemen ta ry r e g i s t e r .

4. If the s to re opera tes in a wri t ing mode, then s imul taneously with the shift of the s t o r e contents downward by one cell , the contents of all the complemen ta ry r e g i s t e r s a r e l ikewise shifted downward by one cell.

5. If the s to re opera tes in a reading mode, then s imul taneous ly with e r a s u r e of the s to re symbol f r o m the top cell , the contents of the top cel ls of all of the complemen ta ry r e g i s t e r s a r e wri t ten in the s e - quence cor responding to the i r number ing without separa t ion signs in the conditional r e g i s t e r r0, and then e rased . When a word wri t ten in the s t o r e is shif ted upward, the contents of all ce l l s in the complemen ta ry r e g i s t e r s a re also shifted upward.

6. If a conditional r e g i s t e r is not empty, then i ts contents a r e rewr i t t en in the cel l of a complemen- t a ry r e g i s t e r , and the conditional r e g i s t e r is c leared . /

7. If the init ial s t o re / symbo l is e ra sed , then the contents of the conditional r e g i s t e r a re rewr i t t en in the output s tore , and the at~tomaton is stopped.

A pushdown automaton to which complemen ta ry r e g i s t e r s have been added is denoted b y ~ .

He rea f t e r the conditional r e g i s t e r which s e r v e s as the in te rmedia te e lement for s to rage of i n fo rma- tion when the s to re symbol has been e r a s e d is not used, and the number of the r e g i s t e r in which this in- fo rmat ion mus t be en tered is indicated d i rec t ly in the automaton table .

546

Page 3: Pushdown automata with complementary registers

Throughout the analysis below the word ~automaton" will be used to denote a pushdown automaton with complementary r eg i s t e r s .

At each instant of d iscre te automaton t ime a determinis t ic automaton may pe r fo rm one e lementary action f rom the following list:

a) reading of a le t ter f rom the input s tore, t ransi t ion to a new state, and writing of a cer tain let ter of the output alphabet in the r eg i s t e r that is stipulated by its number;

b) reading of a le t ter f rom the internal s tore, writ ing of the contents of the top cells of the com- p lementary r eg i s t e r s in the cell of the r eg i s t e r stipulated by its number, and transi t ion to a new state;

e) writ ing of a le t ter in the internal s tore and t ransi t ion to a new state;

d) e r a s u r e of the initial s tore symbol, writ ing of the contents of the complementary r eg i s t e r s in the output s tore , and stop.

In a nondeterminis t ic automaton the functions which determine the t ransi t ions may be multivalued.

Formal ly , the automaton may be stipulated by a two-input table which is close to the one that was given in [1]. The difference res ides in the fact that the number of the r eg i s t e r in which the corresponding information must be writ ten is indicated in all of those spots where writing in the r eg i s t e r s is possible by means of a superscr ip t .

The initial configuration of the automaton is stipulated by the initial state and the initial s tore symbol with blank filling of the r eg i s t e r s [q0, S0((P, �9 � 9 r The final configuration consis ts of the state X and the word obtained after e r a su re of the symbol S o .

The automaton generates a t ranslat ion that is defined by a cer ta in g r a m m a r Gt, if and only if the automaton goes over f rom the initial state to the concluding state due to the action of the f i r s t word x of the pai r (x, y)-CT(G) and under these conditions produces the second word y of the pair .

3 . A l g o r i t h m s f o r S y n t h e s i s a n d A n a l y s i s o f A u t o m a t a

Let the g r a m m a r G t be stipulated. The synthesis a lgori thm must const ruct the table of an automaton which genera tes the t ransla t ion defined by the g r a m m a r Gt.

The synthesis a lgor i thm decomposes into two par t s : the f i rs t is the synthesis of a cer ta in pushdown automaton which allows the language L(Gt); the second is the introduction of the output signals and reg i s t e r s into the table of the pushdown automaton that has been constructed. As a result , we obtain the table of a pushdown automaton with complementary reg i s te r s .

The a lgor i thm for the synthesis of a pushdown automaton has been descr ibed in [1] and is the basis for all of the subsequent formulations.

Let us go over to the descript ion of the synthesis algori thm.

Let R i : A i -~ (~i, fli, H i) ( i = l . . . . . n) be the sys tem of rules of the g r a m m a r G t.

During the f i r s t step we equalize the length of each rule as folio{vs. Let the rule R have the fo rm

R : A ~ (w~A~w~... w~A~w~+,, x,A~(,~x . . . . x~A~(~)x~+t, I-h.

Among wt, x i there may also be blank words. Let us replace eachru le R by a rule R:

~? : A ---> ([w,] AI [w~] ... An [w,,+,], [xalA,~o) [x~] ... A,(,o [x,~+l], 12) ^ ^

and instead of the alphabet E, A we introduce the alphabet ~, A whose elements are [wi] and [xi]. If s imul- taneouslyw i = x i = e, then we assume [wi] -- [xi] = e and do not write them.

During the second step we part i t ion the rule R into two par ts : R(I) : A - a , R(2) : A ~ ft. The f i r s t par ts

of all of the rules are combined into a sys tem of equations El, while the second par t s are combined into a sys tem of equations E 2 according to the well-known substitution of a sys tem of equations for a set of productions which generate a language.

During the third step we assign the indices 1, 2, . . . to different entr ies of one and the same variable in the r ight sides of the sys tems E 1 and E2; under these conditions if the var iable appearing in the i- th

547

Page 4: Pushdown automata with complementary registers

posi t ion in a is ass igned the index r , then this same index is ass igned to the var iab le appear ing in the II(i) posi t ion ft.

During the fourth s tep we used the s y s t e m of equations E 1 to synthes ize a pushdown automaton using the Glushkov a lgor i thm [1]. In each cel ls of the table that has been cons t ruc ted we wri te the l e t t e r [xi] f r o m fl cor responding to [w i] in p lace of the s tate into which the automaton makes the t rans i t ion for readout of the le t te r [w i] f r o m a out of the input s to re .

The f i r s t s tep cons is t s in wri t ing the number s of the r e g i s t e r s in which the informat ion is accumula ted during the p r o c e s s of automaton functioning into the table.

Let us r e n u m b e r the l e t t e r s and va r i ab le s included in each word of the s y s t e m s E l and E 2 (the num- ber ing 4) using the in tegers 1, 2 . . . . . Let the f i r s t word have a length n I (i .e. , i ts l e t t e r s a r e numbered with number s f r o m 1 to ni) , while the second has the length n2, and the las t has the length n m. Let n= max (nl, . . . , rim) , (i.e., n is the length of the longest word). Let us introduce n - r e g i s t e r s . Then the wri t ing of [w] is p e r f o r m e d in the r e g i s t e r having the number cor responding to [w] in the number ing ~ (and }- number) . The number of the r e g i s t e r is indicated by the s u p e r s c r i p t of [w] in the table of the automaton.

In addition, wri t ing is p e r f o r m e d in the r e g i s t e r for e r a s u r e of the s to re symbol . The number of the r eg i s t e r is equal to the } -number of this symbol in the s y s t e m of equations E 2. This number is l ike- wise displayed in the f o r m of the s u p e r s c r i p t of the s to re symbol in the second sect ion of the automaton table .

The enumera ted ru les define the t rans i t ions and the wri t ing in the r e g i s t e r s in all s ta tes , and the des i red automaton is s t ipulated by the table which has been constructed.

If the initial posi t ion of the equation for S is chosen as the init ial s ta te of the synthes ized automaton ~l L while the s ta te F is chosen as the concluding s tate , then the following t h e o r e m holds.

THEOREM 1. The automaton }~ g e n e r a t e s the t r ans la t ion defined by the g r a m m a r Gt= (V, ~ , A, R, (S, S)), (i .e. , for any pa i r (~v,~), such that (S, S) =~ (~v,~), the automaton 9t ~ conver ts the word @ in the

G

input s to re to the word x at the output). g

Proof . Let an output (~, ~) exis t in the g r a m m a r ~ t ( i . e . , (S , S)~=~ (~, ~), where @= [w l] . . . [Wm], x = [xi 1 ] . . . [Xim]) , and let RJl ' " " " ' RJ k be ru les that a r e applied for this output and a re wri t ten in the

o r d e r in which they a r e applied. Among Rli the re may na tura l ly be ident ical ru les . Let us wr i te out one ( i ) $ (i),.

Aiii(n)[X(ni+)ll, II). (*) Each [w~ i)] of these ru les : R : A i -* ([w, i) ] Ail . . . Ain[Wn+ t], [x t J r AiII(1). .

is included i n t h e word w a f te r an,~lication of the ru le 1~, and according to the a lgor i thm for the synthes is ~'-'*- 'i" t ) �9 of 9i each appearance of [w.(1)]j in the input word leads to the appearance of [x j ] m the output word.

By v i r tue of the Glushkov t heo rem on the synthes is of pushdown automata [1] it follows f r o m this that if

~I makes the t rans i t ion to the final s ta te , t h e n t h e s a m e symbols of the alphabet ~ , will be encountered in the output word as a r e encountered in the word x.

F r o m the synthes is a lgor i thm it follows that 2 : makes the t rans i t ion to the concluding s ta te af ter M

the word w has been applied to the input, i f during the p r o c e s s of the t rans i t ions no wri t ing is encountered in the prev ious ly occupied r e g i s t e r . Le t us show by induction according to the length of the output that th is is imposs ib le . ActuaIly, the wri t ing in the r e g i s t e r s is p e r f o r m e d e i ther during reading of symbols f r o m the input s to re or during the e r a s u r e of s to re symbols . I f the output has a length 1 (i .e. , only the ru le (Ai, A i) =~ ([w], Ix]) is applicable) , then by v i r tue of the empt iness of the r e g i s t e r s for the ini t ial symbol S O the automaton makes the t rans i t ion to the final s tate D while at the output we have a word [x] coinciding wi thx . Let us now a s s u m e that for all s m a l l e r values the t h e o r e m has been proved, and let us p rove it for an output of length n.

Le t the f i r s t applied rule be (*). Then each symbol [x(~]- may be wri t ten in a blank posi t ion in the

2 k - 1 r e g i s t e r , while the t rans i t ion to subst i tut ions of any var iab le Aj takes p lace in accordance with the synthes is a lgor i thm f r o m the wri t ing of the new s to re symbol Ajs with empty r e g i s t e r s and an output of length sho r t e r than n for which i t has a l ready been p roved that: a) wri t ing occu r s nowhere in an occupied r e g i s t e r , and b) as a r e su l t of the t rans i t ions of the automaton a word Xjs is obtained that is der ived f r o m

548

Page 5: Pushdown automata with complementary registers

the symbol Aj in the g r a m m a r Gt. The r e s u l t of the convers ions of the va r i ab l e A j i s wr i t ten in the r e g - i s t e r 2rl(j), which by assumpt ions der ived f r o m induction is f r e e and co r r e sponds to the posi t ion in which the r e su l t of the convers ion of Aj is located in the word ~ By v i r tue of the a r b i t r a r i n e s s of n the t h e o r e m has been proved.

Example 1. Let the g r a m m a r Gt= (V, E, A, R, (S, S)), be st ipulated, where V = {S}, E = {<, >, # , a }, A={#, a}, R={S -~ (<S# S>, # SS, [i, 21), S -~ (a, a)}.

The grammar G t defines the translation from parenthetic notation to nonparenthetic notation for formulas with one binary operator and one variable k.

According to the first step of the algorithm we equalize the lengths of the words. We introduce the symbol [e] into the alphabetA. The remaining symbols do not have to be enclosed inside the square brackets, since each wi, x i consists of one symbol. After equalization we obtain

---- {S -+ ((S 4~ S), #~ S tel S [el, S -+ (a, a)}.

We a s c r i b e indices to the va r i ab l e S in the r ight side and wr i te out the s y s t e m s El, E2, while p e r - fo rming the app rop r i a t e par t i t ioning of posi t ions (s teps 2-5):

E , : S = 1(!< ~SI~#~S,~)! V ! a ~ I ~

1( l s,! re, vl !)I,o Let us go over to the const ruct ion of the automaton table .

The number of s ta tes is equal to 11, the number of s to re symbols is equal to th ree . The input a lpha- be t is Z = E, and the output alphabet is A = AU~ [e]} (Table 1).

Now i t is n e c e s s a r y to a r r a n g e the r e g i s t e r s (the s u p e r s c r i p t s of the symbols EZ~UV in sect ions I and fi of the automaton 9I). Let us p e r f o r m the number ing of }:

1 2 ~ 4 5 ! 1 2 3 4 5 I

E 1 : S = (S , :~ $2) Va; E, : S = ~ S , [el S~ [el Va .

The number of r e g i s t e r s is equal to five. Le t us at tach the cor responding numbers in Table 1 in a c c o r - dance with the seventh s tep of the synthes is a lgor i thm.

Let us go over to the a lgor i thm for analys is of the automaton. In the analysis a lgor i thm the r e v e r s e p r o b l e m is stated: f r o m the automaton table it is r equ i red to fo rmula te the cor responding g r a m m a r Gt, whose t r ans la t ion genera tes the a u t o m a t o n 2 . The ana lys i s a lgor i thm cons is t s in de termining all e l e - ments of the g r a m m a r G t.

It is evident that the d ic t ionar ies E, A a r e defined immedia te ly . Z contains all e lements that appea r in sect ion I of the f i r s t column of the automaton table , while A contains all e lements which do not coincide with t h e a l p h a b e t o f the in ternal s t o r e and which a r e wr i t ten in the r e g i s t e r s . The se t of va r i ab l e s coin- cides with the num ber of different l e t t e r s in the input s to re (if the di f ference in indices is not taken into account).

The n u m b e r of different equations is equal to the number of va r i ab les . Using sect ion III in obvious fashion, the posi t ions a r e de t e rmined which c o r r e s p o n d to the beginning of each equation, and then using the s ta tes in which the symbols a r e e r a sed , i t is easy to de te rmine the final posi t ions of the equations. The init ial symbol of the g r a m m a r G t is found by means of the equation in whose final posi t ion the symbol S O is e r a sed .

Now it r e m a i n s for us to cons t ruc t the s y s t e m s El, E 2 and to Write out the se t R, F o r this pu rpose we wr i t e out all the v a r i a b l e s f r o m the left and i so la te the ini t ial and final posi t ions cor responding to each var iab le . The in te rva l s between posi t ions a re f i l led in the following manner :

1. Using the th i rd section, we de t e rmine the ini t ial posi t ions of the words assoc ia ted with the dis- junction symbol for each equation.

2. Using the f i r s t and th i rd sect ions , we fil l the gaps between the posi t ions with the cor responding va r i ab l e s and le t t e r of the alphabet E.

549

Page 6: Pushdown automata with complementary registers

3. Using the automaton table (in o rder to determine the conditions associa ted with the writing of the symbols of the alphabet A) we display the corresponding let ters in the positions of the sys tem E 2. Since the sys tem E 1 has already been cons t ruc ted , one can renumber the identical var iables in the sys t em E 1 with indices and pe r fo rm the numbering ~ for them. Comparing the numbers of the r eg i s t e r s for c o r r e s - ponding s tore symbols in each disjunctive te rm, we construct the sys tem E 2. Combining the corresponding disjunctive t e rms in pa i r s using parentheses and writing out the substitutions explicitly, we obtain the forms. F r o m the forms it is easy to go over to the rules . This ends the synthesis algorithm.

Example 2. Let the automaton be stipulated by Table 1. Then

V={S},E={<, >, =N=, a} A = {=H:, a, [e]}.

The initial position of the des i red equation is 1, and the final posit ion is 10. Let us write out the sys tem E I. For this purpose it is sufficient to fill the squares of Tables 2.0. Since in position 1 we have two transi t ions without read or write, this means that the equation for S consis ts of two disjunctive t e r m s and the disjunctive symbol appears in the square between 7 and 8 (Table 2.1).

F r o m an analysis of the sections it likewise follows that the initial position for the sys tem E 1 is 1, while the final position is 10. Using the f i r s t section (the alphabet Z ), we use the appropria te le t ters to fill the squares between the posit ions (2, 3), (4, 5), (6, 7), (8, 9). The resul t is displayed in Table 2.2.

Using section III, we fill the squares between positions 3 and 4, while the s tore symbols S 1 and S 2 are used to fill the squares between posit ions 5 and 6. The introduction of parentheses ends the cons t ruc t ion of the sys tem E l (Table 2.3).

The numbering of the r eg i s t e r s is writ ten at the top in Table 2.3.

Let us construct the sys tem E 2. F i r s t we write out the let ter of the alphabet (Table 2.4) and the parentheses (Table 2.4). Then the s tore symbols are written out. In accordance with the second sect ion of the automaton table the symbol S i is placed in the second r eg i s t e r (the numbering ~), while S 2 is placed in the fourth r eg i s t e r (Table 2.5).

Comparing Tables 2.3 and 2.5, we obtain the following rules (the blank symbols [e] are replaced by a blank word):

S-+ ((S:~S), O;SS, [1, 21), S-~ (a, a).

The initial element of the g r a m m a r G t is (S, S). The analysis has been completed.

F r o m the analysis algori thm the following theorem derives.

THEOREM 2, Each automaton 92 corresponds to a cer ta in G t - g r a m m a r whose t ranslat ion produces the automaton ~I . This g r a m m a r may be effectively constructed f rom the t able of the automaton ?~

4 . P o s s i b l e M o d i f i c a t i o n s o f t h e S y n t h e s i s A l g o r i t h m

The synthesis a lgori thm considered in Sec. 3 may be modified in the following way:

1) if the automaton table contains, in addition to the t ransi t ion to a cer ta in state, the r eco rd of the word [e]~A in a reg i s te r , then [e] may be replaced by a blank word (and the r eco rd in the r eg i s t e r may be e l im- inated);

2) if the automaton table contains the t ransi t ion to a cer tain state N (with simultaneous writing of a cer ta in symbol w~A in the r eg i s t e r k) due to the action of the symbol [e]-c~, then this row may be canceled f rom the table, and (N, w k) may be t r ans f e r r ed into section III of the automaton.

Let X(r be hhe length of the word r without allowance for the symbols [e]. Then Theorem 3 is val id.

THEOREM 3. Let the g r a m m a r G t and its corresponding sys tem of equations E 2 be stipulated. Let X(~l), �9 �9 ", h(r be the lengths of all disjunctive t e rms that are incorporated in the r ight sides of the s y s - t em E 2. Thin for synthesis of an automaton that produces the t ranslat ion defined by the g r a m m a r G t, it is sufficient to use n r eg i s t e r s , where n= max ~(r

1 - < i - k

The proof of Theorem 3 is fair ly obvious.

550

Page 7: Pushdown automata with complementary registers

A A

In proving the fundamental syn thes i s a lgo r i t hm (See. 3) the new alphabets E, A were in t roduced. One may syn thes ize an automaton in the b a s i c a lphabets . F o r th is pu rpose i t is suff ic ient to equal ize the lengths of the words wi, x i in each ru l e R by adding the symbols of a b lank word and then r enumber ing the pos i t ions in the s y s t e m s El, E 2 with a l lowance for each input symbol (the second syn thes i s a lgor i thm) .

5 . C e r t a i n A l g o r i t h m s f o r t h e M i n i m i z a t i o n o f A u t o m a t a

In cons t ruc t ing au tomata the p r o b l e m of min imiz ing the number of s t a t e s , the number of r e g i s t e r s , o r the number of s t o r e symbols is of e x t r e m e l y impor t an t s igni f icance . In th is and subsequent sec t ions we sha l l fo rmula te c e r t a i n r e s u l t s a s s o c i a t e d with min imiza t ion of the number of s t a t es of the automaton (Sec. 5) and min imiza t ion of the number of r e g i s t e r s u sed (Sec. 6).

However , the p r o b l e m of cons t ruc t ing a ge ne r a l theory of min imiza t ion r e m a i n s open.

F i r s t of a l l note that for a reduc t ion of the number of automaton states, two c a s e s a r e poss ib l e : the f i r s t when the r e su l t i ng automaton r e m a i n s d e t e r m i n i s t i c , and the second when we a r r i v e at a nonde te r - m i n i s t i c automaton dur ing the min imiza t ion p r o c e s s .

Let us cons ide r the f i r s t ca se and the le t us fo rmula te the fol lowing ru l e s for ident i fying the s t a t e s .

Rule VI. One can ident i fy d i f ferent s t a t e s of the automaton, in which d i f ferent t e r m i n a l symbols of the a lphabet E a r e read .

Rule VII. One can identify the t e r m i n a l pos i t ions of a l l of the equations of the s y s t e m E I.

Theo rem 4. The appl ica t ion of the ru l e s VI, VII to the d e t e r m i n i s t i c automaton 9/~ , obtained as a r e s u l t of the fundamental or second syn thes i s a lgo r i thm leads to a de t e r m i n i s t i c automaton ~ , that p r o - duces the s ame t r ans l a t i on as does 92~ (but with a s m a l l e r number of s ta tes ) .

A d i r e c t ana lys i s of the tab le for an a r b i t r a r y d e t e r m i n i s t i c automaton p roves the va l id i ty of Theo- r e m 4.

If i t i s a s s u m e d tha t a t each s t a t e the automaton may p e r f o r m t h r e e ac t ions s imul t aneous ly (wri te a c e r t a i n symbol of the a lphabet A in a r e g i s t e r , wr i t e a new s t o r e symbol , and a f t e r that go over into a new s ta te) , then in this case the ove ra l l number of s t a t e s is r educed subs tan t i a l ly . This ru le i s ca l l ed ru le VHI.

Let us now a s sume that a t r ans i t i on to a nonde t e rmin i s t i c automaton is pos s ib l e . In this case not only the number of s t a t e s but a l so the number of s t o r e symbols used may be reduced.

Rule NI. One can identify the automaton s t a t e s in which t e r m i n a l symbols a r e read .

Rule NII. One can r e p l a c e the s t o r e symbols of one v a r i a b l e having d i f ferent indices by one symbol . In th is case the number of s t o r e symbols coincides with the number of v a r i a b l e s of the g r a m m a r G t.

Af t e r the change in s t o r e symbols the s t a t e s a r e ident i f ied in which wr i t ing of the s t o r e symbols of one and the s a m e v a r i a b l e t akes p lace .

As a r e s u l t of applying the ru l e s NI and NH, we obtain a nonde t e rmin i s t i c automaton whose number of s t a t e s is equal to the number of v a r i a b l e s of the g r a m m a r Gt+2 .

6 . T h e H i e r a r c h y o f C o n v e r t i n g G r a m m a r s

In the au toma ton - syn thes i s a lgo r i t hms cons ide red above, the number of r e g i s t e r s used was d e t e r - mined by the max imum length of the t r a n s l a t e d f o r m (Sec. 3) . In c e r t a i n c a s e s (for example , if the symbol of the a lphabet E were to be r e p l a c e d by a blank word in the a lphabet A) the number of r e g i s t e r s could be r educed (Sec. 4).

However at the moment we sha l l cons ide r the p r o b l e m of the p o s s i b i l i t y of reduc ing the number of r e g i s t e r s in the gene ra l case (perhaps due to the in t roduct ion of new s t o r e symbols ) .

Let R A : A ~ (~, fl, 12) be the ru l e of the conver t ing g r a m m a r Gt, and le t the automaton 9/: p roduce t h e t r a n s l a t i o n defined by Gt. Under these condit ions c~ = wlAIw2~ . . wnAnwn+ 1 and fl = xiAii ( l ) x2 . . . Xn �9

All (n)Xn+i*

We shal l say that the ru le R A is r e p r e s e n t e d in the automaton 9/ by means of the (2n+ 1) r e g i s t e r . Note that the ove ra l l number of r e g i s t e r s of the automaton ,a may exceed ( 2 n + l ) , s inee i t is not known how many r e g i s t e r s the r u l e s (2n+ 1) r e q u i r e for r e p r e s e n t a t i o n .

551

Page 8: Pushdown automata with complementary registers

Lemma ! , There exists an automaton ~/', that generates the t ranslat ion defined by the g r a m m a r G~ which is equivalent to the g r a m m a r G t and uses n r eg i s t e r s in o rde r to r epresen t RAn; under these con- ditions the number of s tore symbols in ~' inc reases by (n+ 1).

The g r a m m a r G~ is equivalent to the g r a m m a r G t if and only if any pair of words that may be an output in G t may be an output in G~.

Let us introduce the new variables Ci, C2, . . . , Cn+ I and the following rules :

(I) A -+ (C~+,w.+ I, C.+,xj+,),

(2) Ct~_~.l --~ (C I ... Cn, Cu(l) . . . Cu(n) , I-I), ( * )

(3) C i -~ (will. x.(i) A i) (I ~ j ~ n).

It is obvious that the variables C i may be substituted uniquely and that the result of applying rules (1)-(3) to some word coincides with the result of applying the rule R A to this word. Henceforth it is as- sumed in this sense that the automaton representing the rules (1)-(3) represents the rule R A.

The grammar G t in which the rule R A is replaced by the rules (*) is denoted by G~. Let 9f' be the automaton that produces the transition defined by the grammar G~. First of all, note that such an auto- maton exists, since the rules (*) have a standard form of the converting grammar. It is likewise obvious that in o rder to represen t these rules it is sufficient to have n r eg i s t e r s , and that the g r a m m a r s G t and G~ are equivalent. Lemma 1 derives f rom this.

Henceforth the automaton W will be called equivalent to the automaton 9l.

Lemma 2. For the automaton ~ , which represen t s an a rb i t r a ry rule by means of three regis ters , there exists an equivalent automaton ":,~', that uses only two reg i s t e r s .

For example, let the following rule be represen ted in the automaton ~l : R: A - - (BCD, DBC, [3, 1, 2]). Let us construct the equivalent set of rules : R' :A --(KD, DK, [2, 1]), R" : K -* (BC, BC, [1, 2]). The g r a m - ma r in which the rule R is replaced by the rules R ' , R" is equivalent to the previous g r a m m a r . Then the automaton ~ ' is equivalent to ~ r and by vir tue of the synthesis algori thm it uses only two reg i s t e r s in o rde r to r epresen t the rules R ' , R". One may also represen t the remaining five types of ru les using three r eg i s t e r s s imi lar ly [4]. The lemma has been proved.

Before going over to the formulation of fur ther resu l t s , let us write one class of substitutions which will be used in the subsequent analysis.

Let N = (l 2... n I be a cer ta in substitution. Let us use N={1, 2 , . . . , 11} to denote the set of numbers \ i l ~ ..: in/"

that are converted by this substitution. Let us assume that I~ may be part i t ioned into the subset s l~i, N2, . . . . I~ m (1 < m< n), the numbers appearing in each l~i ( 1 - i - m), being ordered in increas ing order ; then for each pair of indices i, j which are such that i < j, we have max k < rain r . This means that N i =

kEN l tEN i

{1, 2 , . . . , rl} , N2={ri + 1 , - . . , r2} , . . . . l~m={rm_ I+ 1, . . . , n},

TABLE 1

i , l ~ 1 3 415 6 I 0110 <I 13'~* / l >I r 7 lel~/

I

ol F l 9oi I s01 I I l~s0

i, s, I J / I �84 I ~,S; s~ ] l J I I0~

,i, i~8 i sl / i s 1,0 10f

552

Page 9: Pushdown automata with complementary registers

T A B L E 2.0

I [ I f 1 2 3 4 5 6 7 8 9 10

T A B L E 2.1

I L i T A B L E 2.2.

T A B L E 2,3 1 2 3 4 5

T A B L E 2.4 1 2 3 4 5

T A B L E 2.5

i s not m a x i m a l l y dense . f o r m

Actua l ly , one m a y uni te

Le t us u s e @~ to denote the g roup of subs t i tu t ions of the s e t Ni, Obvious ly , ~t is i s o m o r p h i c to the s y m - m e t r i c a l g roup S m, w h e r e m = r i - r i _ t . I f gE@i, then

w h e r e each r i_ 1 < i k -< r i and fo r k ~ p , i k ~ ip .

The subs t i tu t ion II i s c a l l ed expandab le if i t can be r e p r e s e n t e d in the f o r m

w h e r e 1 _< ik<- m f o r 1 - k - < m and fo r k ~ j , i k ~i j . F o r each Ni the subs t i tu t ion 5E~t: . ho lds . T h e subs t i tu t ion is not e~pandab le ff m m a y equal only 1 o r n. The ex - pans ion of the subs t i tu t ion II in the f o r m (**) with 1 < m < n is c a l l ed m a x i m a l l y dense if the union of any p a i r of s e t s Nj, Nj + 1 into one l eads to a s i tua t ion in which the expans ion i n d u e e d b y t h i s unioh co inc ides with II ( i .e . , m = 1).

E x a m p l e 2 . Le t I I = ( ~ 2 3 4 5 6 7 8 5 ) Th i s s u b s t i t u - 3 1 2 7 8 6

t ion i s expandable with NI={1, 2}, N2={3, 4}, 1~ 3 ={5, 6}, 1~4={7.8}. C o r r e s p o n d i n g l y , 1~il = (43)1~2, ~i2 =i~4, Nil =

(65)N3. ~ U S , 1 " ] = ( ~r ) . th is ^ ^ \~ /aN2N"~ ' / H o w e v e r , expansion

Ni2 = N IUN2, Ns4 = N~UN 4 and represent II in the

^

12 = El, s, , w h e r e N[2 = (1423) ~/,2, N~4 = (5768) ha,.

V ' l: a ~ /

we sha l l u s e ~qi i n s t e a d of Ni ~ in a l l c a s e s w h e r e the f o r m of the subs t i tu t ion a is u n e s - H e n c e f o r t h

s e n t i a l in o r d e r to s imp l i fy the nota t ion . M o r e o v e r , we denote I I= / ( 1 . . . n \ ) by [il, . . in] , in o r d e r i 1 . . . t ,~ / " ' \

to p r e s e r v e the l i n e a r i t y of the r e c o r d .

L e m m a 3. I f the subs t i tu t ion II = [i 1 . . . . . in] i s e~pandable , then i t s m a x i m a l l y dense expans ion e i t h e r h a s the f o r m (1) II = [~qil . . . . , N i m ] and II ' = [il, . . . , im] is unexpandab le , o r it h a s the f o r m (2) and II can be r e p r e s e n t e d in the f o r m of the p r o d u c t of two c y c l e s ( i .e . , I I= [Nil , . . . , Nik] [Nik+ l, �9 � 9 Nim] (1 -<

k-<,m).

Ac tua l ly , let II be expandab le . Then one can a lways wr i t e out i t s m a x i m a l l y dense expans ion ( i .e . , one can a lways u s e the r e p r e s e n t a t i o n I I= [Nip . . . , Nim] �9

L e t us c o n s i d e r the d e r i v a t i v e of the subs t i tu t ion I I ' = [il, . . . , i ra] . L e t us a s s u m e tha t II ' cannot be d e c o m p o s e d into c y c l e s . Then t I ' i s unexpandab le , s ince o t h e r w i s e the expans ion of II would not be m a x i m a l l y dense .

F o r the s a m e r e a s o n , i f 13' c an b e d e c o m p o s e d into cyc l e s , then t h e r e cannot be m o r e than two cyc l e s . T h e l e m m a h a s b e e n p roved .

L e m m a 4. In the s y m m e t r i c a l g roup S n i n - > 4) t h e r e ex i s t unexpandab le subs t i tu t ions . Th i s l e m m a m a y be p r o v e d by ca l cu l a t i ng the n u m b e r of expandab le subs t i tu t ions in the g roup S n

and showing tha t i t is s m a l l e r than n ! . H o w e v e r , i t i s s i m p l e r to u s e the r e s u l t of [4]. Actua l ly , f o r n = 2 i

553

Page 10: Pushdown automata with complementary registers

and n = 2 i - 1 the subs t i tu t ions II2i = [i + 1, 1, i + 2, 2, i + 3, . . . , 2i, i], II2i_l= [i, 2 i - 1 , 1, 2 i - 2 , 2 , . . . . i + 1 , i - l ] a r e unexpandable .

Le t us a g r e e that h e r e a f t e r we shal l cons ide r r u l e s tha t have been r e d u c e d by m e a n s of L e m m a 1 to a f o r m that e i t he r does not contain t e r m i n a l symbo l s o r is wr i t t en as N ~ (wA, xA).

L e m m a 5. Le t the ru le R A : A -~ (A 1 . . . An, AII ( t ) . . . AII (n), v) be r e p r e s e n t a b l e In the au tomaton

~ by m e a n s of n r e g i s t e r s , and let II be an expandable subst i tu t ion. Then t h e r e ex i s t s an au tomaton 2 ; Which is equivalent to ~, and uses m r e g i s t e r s , whe re r e < n , to r e p r e s e n t R A.

Actual ly , le t II be an expandable subst i tu t ion, and let i ts m a x i m a l l y dense expans ion have e i the r the f o r m

o r

(1) n = I?Vt~ . . . . . h T j ,

(2) n . . . . . Z,ml

by v i r tue of L e m m a 3.

A . . . , Nit] a subs t i tu t ion IIiQ is ^ Le t us r e m e m b e r tha t in the r e c o r d of II = [Nil , l inked with each se t Niq. Let us in t roduce the new v a r i a b l e s Nik, Bi, B 2. In the f i r s t c a s e we rep lace - the ru le R A by the fo l -

lowing se t of ru l e s (on the a s s u m p t i o n that Ni+ 1 = {r i + 1 , . . ; , ri+i} ):

A -+ ( N ~ . . N , N t , . . . Nl,,, rI'i,

Nl+ 1 ~ (A~+l . . . A + , , A,~(~+,) ' .. A,~{q+,)I'li) (1)

( 0~ i ~ m - - 1).

In the s econd c a s e we have

whe re

A -+ (B1B2, B1Bz, [ 1, 2]),

B1 ~ (N , . . . Nk, Nt, . . . Ntk, H~),

B~ -> (N~+,.. . N,,, Ntk+, . - . Ntm' 1~),

N~+, -~ (An+ , . . . A,~+',, A~i(q+,).. A.gq+,). l-It)

( o ~ i < m-- I), l'I~ = [i , . . . . . ikl , N~ = [ ik+, . . . . . im].

(2)

Each ru l e in e i ther the s y s t e m (1) o r the s y s t e m (2) sa t i s f i e s the r e q u i r e m e n t s imposed on r u l e s in conver t ing g r a m m a r s . The v a r i a b l e s Ni, B i m a y be r e p l a c e d only uniquely, and as a r e s u l t they p r o d u c e the s a m e c o n v e r s i o n as does the ru l e R A. ~ h e r e f o r e the g r a m m a r G~ in which the ru l e s R A have been

r e p l a c e d by the ensemble of ru l e s (1) o r (2) is equivalent to the o r ig ina l g r a m m a r G~.

In o r d e r to r e p r e s e n t the r u l e s (1) in the au tomaton ~I ' , key r e g i s t e r s a r e r e q u i r e d , w h e r e m - p - < m a x (m, m a x ( r i + 1 - r i ) ) < n. In o r d e r to r e p r e s e n t the r u l e s (2), q r e g i s t e r s a r e r equ i r ed , w h e r e

0<_i_< m - t q - < m a x (k, m - k , m a x ( r i + l - r i ) ) < n .

0 _ i < _ m - i

The l e m m a has been p roved .

Note that L e m m a 2 is a p a r t i c u l a r ca se of L e m m a 5, s ince each subs t i tu t ion of the s y m m e t r i c a l g roup S 3 is expandable ,

THEOREM 5. L e t R A : A -* (~, fl, H) be r e p r e s e n t a b l e in the au tomaton ~ by means of n r e g i s t e r s . Then the au tomaton 92' is equivalent to ~I and, us Ing a s m a l l e r n u m b e r of r e g i s t e r s t o r e p r e s e n t R A, ex is t s if and only if the subs t i tu t ion II is expandable.

Suff iciency de r ives f r o m L e m m a 5.

554

Page 11: Pushdown automata with complementary registers

Necessi ty. Let us assume the converse . Let II be unexpandable, and let an au tomaton ~ ' exist which is equivalent to ~ : and uses k r eg i s t e r s (k<n) in o rde r to r epresen t R A. F r o m ~'. one can con- s t ruc t a sys tem of rules UA, equivalent to the rule R A by using the automaton-analysis a lgori thm (sec. 3):

A ~ (AI'. -- A~I A..~ . .. A~.,, l-I).

In accordance with the analysis a lgor i thmeachru lehas theform~A~ , M i --~ (~i, fli, IIi) and a rule ~AO :

A ~ (B 1 . . . Br, B i(i ) . . . B i ( r ) , L), exists , where r - < k-<n, and Bj=Mij . Since the sys tem UA is equiv-

alent to the rule RA, there exists a unique substitution of the var iables Mj into the var iables Mi, etc., until the replacement of B i leads to the rule R A. But since for each application of one rule to another one may obtain only expandable substitutions, it follows that the resul t ing substitution 1] is likewise expandable; this contradicts the assumption.

The theorem has been proved.

COROLLARY 1. For any n _> 4 there exists a convert ing g r a m m a r G t such that each automaton 91 producing the t ransla t ion defined by Gt may not contain less than n complementary r eg i s t e r s . This resul t der ives immediately f rom Lemma 4 and Theorem 5.

Thus, there exists an increas ing h ie ra rchy of convert ing g r a m m a r s , depending on the number of var iables and the fo rm of the substitutions that are included in the rules of this g r a m m a r . Let us use T n to denote the set of all G t whose rules contain no more than n var iables . Then f rom coro l l a ry 1 the following resul t der ives which was proved initially in [4].

COROLLARY 2. Tn_ICTn(n-> 4).

Thus, the replacement of one rule by a cer ta in set of equivalent rules leads to an increase in the number of s tore symbols and an increase in the number of automaton states. The number of operat ing cycles of the automaton which are requi red for the t ransla t ion of express ions increases correspondingly.

L I T E R A T U R E C I T E D

1. V . M . Glushkov, "On pr imi t ive a lgor i thms for the analysis and synthesis of pushdown automata," Kibernetika, No. 5 (1968).

2. E . T . I rons , "A syntax and directed compiler for ALGOL-60," Communications of the ACM, 4~ No. 1 (1961).

3. P . M . Lewis and R. E. Stearn, "Syntax directed transduction," JACM, 15, No. 3 (1968). 4. A . V . Aho and J. D. Ullman, "Syntax directed t ranslat ions and pushdown assembler , " Journal of

Computer Systems Science, I (1968). 5. D. Younger, "Recognition and pars ing of context - f ree languages in t ime n3," Information and Control,

2. (1967). 6 . A . A . Letichevskii , "syntax and semant ics of formal languages," Kibernetika, No. 4 (1968). 7. A . A . Letichevskii , "On relat ions that are represen ted in pushdown automata," Kibernetika, No. 1

(1969).

555