12
KIBERNETIKA
THE P R O C E S S I N G O F L I T E R A L - A N A L Y T I C INFORMATION O N A DIGITAL COM Pb"l" ER i. R. A k s e l ' r o d and L. F.
Bclous
K i b e r n e t i k a , Vol. 2, No. 6, pp. 1 5 - 2 0 , 1966 UDC 5185:681.142 At the p r e s e n t t i m e a numbm of a t t e m p t s a r e known of the a p p l i c a t i o n of d i g i t a l c o m p u t e r s to the p e r f o r m ance of a n a l y t i c o p e r a t i o n s , such a s f o r m a l d i f f e r e n t i a t i o n [3], the use of a n a l y t i c m e t h o d s a p p l i e d to a c l a s s of m u l t i p l e i n t e g r a l s [4], and v a r i o u s o p e r a t i o n s on p o l y n o m i a l s [5, 6]. In t h e s e p a p e r s the p r o b l e m s of anal}2ic o p e r a t i o n s w e r e c o n s i d e r e d a p a r t f r o m the o r d i n a r y a p p l i c a t i o n s of the c o m p u t e r s . T h e r e is i n t e r e s t in p a p e r s on the c r e a t i o n of c o m p l e x s y s t e m s f o r p e r f o r m i n g a n a l y t i c o p e r a t i o n s in which o r d i n a r y c a l c u l a t i o n s c a n be p e r f o r m e d at the s a m e t i m e a s the a n a l y t i c c a l c u l a t i o n s t h e m s e l v e s [7, 8]. In such s y s t e m s a p r a c t i c a l l y r e a s o n a b l e c o m p r o m i s e m a y be a c h i e v e d b e t w e e n the a n a l y t i c and a p p r o x i m a t e a p p a r a t u s f o r s o l v i n g p r o b l e m s on the computer. T h i s p a p e r d e a l s with the q u e s t i o n of c h o o s i n g a s y s t e m of o r d i n a r y l i t e r a l o p e r a t i o n s , the use of which i s c o m p a t i b l e with the a r i t h m e t i c and l o g i c o p e r a t i o n s of c o m p u t e r s , s i m p l i f y i n g the e x e c u t i o n of l i t e r a l t r a n s f o r m a t i o n s and, above all, l i t e r a l - a n a l y t i c o p e r a t i o n s . All the l i t e r a l o p e r a t i o n s d e s c r i b e d in t h i s p a p e r w e r e s i m u l a t e d on the d i g i t a l c o m p u t e r " M i n s k 12" and t e s t e d in a n u m b e r of p r o g r a m s for p e r f o r m ing l i t e r a l - a n a l y t i c t r a n s f o r m a t i o n s . We will d i s c u s s the q u e s t i o n of coding and the w r i t ing of l e t t e r s of the input a l p h a b e t into the m e m o r y of a c o m p u t e r p o s s e s s i n g a p - d i g i t a l b i n a r y net. L e t the input a l p h a b e t c o n s i s t of k l e t t e r s , w h e r e 2~-~ < k < 2 ~. q ~ p.
We e s t a b l i s h a c o r r e s p o n d e n c e b e t w e e n e a c h l e t t e r and t h e q - d i g i t b i n a r y code ~1, fba, . "
,
Qq-
H e r e a' i = 0 o r 1; i = 1, 2, . . . , q. T h e n in one l o c a t i o n of the m e m o r y of the c o m p u t e r it is p o s s i b l e to l o c a t e [p/q] l e t t e r s . We c o n s i d e r s o m e r e a l i z a b l e u n i v e r s a l d i g i t a l c o m p u t e r ( B - m a c h i n e ) , c o n s t r u c t e d on the b a s i s of a given digital c o m p u t e r a s follows. T h e m e m o r y ~f the B - m a c h i n e is a h i e r a r c h i c a l rnemr)ry intended for w r i t i n g : a) c o m p l e t e l y d i g i t a l b i n a r y c o d e s the length of which e q u a l s the length of the d i g i t a l n e t w o r k of the computer ; b) n u m b e r s each of which is defined in a c o m p l e t e l o c a t i o n of the m e m o r y of the o r i g i n a l c o m p u t e r in the f o r m a s s u m e d for the given B - m a c h i n e ; c~ l e t t e r s ([P,&t] in each l o c a t i o n of the m e m o r y ) , The, a d d l ' e s s of a c o m p l e t e l y d i g i t a l l o c a t i o n is the ~r(lia:~'5 ; . t d , ' ( ' s s ~,f :~ hwati~)n of th(, m'ig, inal d i g i t a l
c o m p u t e r , the a d d r e s s of the " s h o r t " l o c a t i o n in which l e t t e r s a r e l o c a t e d , which we will c a l l a c e l l to d i s t i n g u i s h it f r o m the c o m p l e t e l y d i g i t a l l o c a t i o n , is a p a i r of n u m b e r s (N, i), w h e r e N is the a d d r e s s of a l o c a t i o n of the m e m o r y of the o r i g i n a l c o m p u t e r , i is the o r d i n a l number of the c e l l in this l o c a t i o n . T h e s y s t e m of i n s t r u c t i o n s of the B - m a c h i n e c o n s i s t s of the s y s t e m of i n s t r u c t i o n s of the o r i g i n a l c o m p u t e r and a s y s t e m of l i t e r a l o p e r a t i o n s d e s c r i b e d in this paper. T h e r e m a i n i n g e l e m e n t s of the B - m a c h i n e (control d e v i c e , a r i t h m e t i c unit, and so on) a r e the s a m e a s in the o r i g i n a l c o m p u t e r . We define a w o r d of the B - m a c h i n e a s a finite a r b i t r a r y s e q u e n c e of l e t t e r s of the o r i g i n a l alphabet. We will w r i t e the w o r d s A k c o n s e c u t i v e l y in the m e m o r y , s e p a r a t i n g t h e m by the d e l i m i t i n g c h a r a c t e r *, * A I * A~* ,.. * Ak*.
T h e s y m b o l 9 is a s u b s i d i a r y w o r d , and not a l e t t e r of the o r i g i n a l alphabet. T h e s e t of s u b s i d i a r y w o r d s c o m p r i s e s the s u b s i d i a r y a l p h a b e t of the B - m a c h i n e . We define the a d d r e s s of the w o r d A k a s the a d d r e s s of the s e p a r a t i n g c h a r a c t e r 9 s t a n d i n g d i r e c t l y in front of the f i r s t l e t t e r of the w o r d Ak. We c o n s i d e r the s y s t e m of fundamental l i t e r a t o p e r a t i o n s of the B - m a c h i n e . READING OPERATIONS READ _~ READ -* READ ~READ ~ brackets; READ s brackets. For these d u c e d , which
is is is is
reading reading reading reading
directly; to the right; to the left; to the eight b y p a s s i n g W e n
is r e a d i n g to the l e f t b y p a s s i n g given operations three registers are introm a y be t h r e e s p e c i a l l o c a t i o n s of the
m e m o r y of the B - m a c h i n e : the r e a d i n g a d d r e s s r e g i s t e r - - R A / R E A D , t h e r e g i s t e r of l e t t e r s a l r e a d y r e a d - R B / R E A D , the r e g i s t e r of the given b r a c k e t s - - R / q 3 R . F o r a l l five o p e r a t i o n s of r e a d i n g in the r e a d i n g a d d r e s s r e g i s t e r , the a d d r e s s (N,i) is given, o r it is o b t a i n e d a u t o m a t i c a l l y a f t e r p e r f o r m i n g the p r e ceding reading operations. R e a d i n g D i r e c t l y . As the r e s u l t of p e r f o r m i n g t h i s o p e r a t i o n a l e t t e r l o c a t e d at a given R A / R E A D a d d r e s s is t r a n s m i t t e d to the r e g i s t e r of l e t t e r s a l r e a d y r e a d . R e a d i n g to the Right. T h e operatim~ is p e r f o r n m d in two s t a g e s . F i r s t in the I~A/READ in which the o r i g inal a.qdres,q (N, i) oc(~'urs, tho adds'can is f o r m e d of
CYBERNETICS
the cell directly following the cell with the given address, that is, (N,i + l) if i < [P/ql, or (N + 1,1) if i = = [p/q], and then the operation READ ~_ is performed. As a result of performing this operation the letter standing on the right of the letter with the given add r e s s (N,i) is recorded in the register RB/READ, and the address of the letter read is formed in the RA/ /READ register. Reading to the Left. This operation like the preceding one is perfor.ned in two stages. First, in the register RA/READ the address (N,i - 1) is formed if i > >1, or the address ( N - 1, [p/q]) if i --1, then the operation READ _* is performed. As a result of p e r forming this operation the letter standing on the left of the letter with the given address (N, i) is recorded in the register RB/READ, and the address of the letter read is formed in the register RA/READ. Reading to the Right Bypassing given Brackets. The operation is used for retrieving a letter standing on the right of a letter with a given address, bypassing a sequence of letters enclosed in given brackets. We define brackets as any paired separating characters, for example, (and), [and], {and}, f-and--{. To perform this operation the initial bracket is given in the r e g i s ter R/BR, and the original address in the RA/READ register. The operation is performed as follows: the operation READ-~ is performed, and if the given initial bracket is in the register RB/READ, further READ ~ is performed consecutively until there appears in the RB/READ register the final bracket of the same rank corresponding to the initial bracket. After this the concluding operation READ -- is performed and the result is obtained in the register RB/READ. However, if in the original reading to the right in the RB/READ a letter occurs not coinciding with given initial bracket, the operation READ ~ in this case gives the same r e sult as the operation READ -Reading to the %eft Bypassing given Brackets. This operation is similar to the preceding one. As before, an initial bracket is given in R/BR, and the original address in RA/READ. The operation is performed as follows: READ is performed, and if in RB/READ there is a final bracket corresponding to the initial one, further READ (-, is c a r r i e d out until the corresponding initial bracket appears in RB/READ, then the concluding operation READ ,-- is performed. However, if in the original performance of the operation READ there is in RB/READ a letter not coinciding with the corresponding final bracket, this lettei" will be the result, that is, in this case the operation gives the same result as the operation READ +Remark 1. After performing any of the reading operations described there is always obtained in the register RA/READ the address of the letter read, and in the register RB/READ, the letter itself. WRITING OPERATIONS WRITE • is writing directly; WRITE -* is writing to the right ; WRITF ~- is writing to the left. These operations work with two r e g i s t e r s , the
13
writing address register RAAVRITE and the register of the letters written RB/~,VIr Writing Directly. As a result of performing this operation the content of the register RBAVRITE is written in the adciress indicated in the register RA/ /WRITE, that is, this operation writes the letters from RB/%VRITE into any cell of the memory of the B - m a chine. The address of this cell is given in the register RA/WRITE, or the corresponding address remains in RA/%VRITE after performing the preceding writing operation. Writing to the Right. The operation is performed in two stages as in the similar operation R E A D ~ . First, in the register RA/WRITE, starting from a given address (N, i) the address iN, i + 1) is formed if i < [p/q], or the address (N + 1,1) if i = [P/ql, and then the operation WRITE ~__ is carried out. Writing to the Left. This operation like the p r e ceding one is performed in two stages. First, in the writing address register the adaress (N, i - 1) is formed if i > 1, or the address (N - 1 , [p/q]) if i = 1. Then the operation WRITE _~ is performed. Remark 2. After performing any of the writing operations, the address at which the letter is written is located in the writing address register, and the letter itself in the register of letters read. The presence of registers introduced for the operations of reading and writing plays an essential part in the realization of Mgorithms for processing literalanaly"~ic information on the B-machine described. At the present time a special form of memory organization called a stacked (magazine or nested) memory [9, 10] is well-known and has been widely distributed. The stack is an ordered sequence of locations or registers to which reference is made on the "last in-first out" principle. This means that when recording, a code is located in the memory directly following the occupied location of the stack. The order of retrieval is strictly inverse to the order of recording. Computers in which stack operatinns are realiz.ed circuitally are sometimes called address-free o r - z e r o address computers [11, 12]. The reading-writing operations described enable a programmed model of a stack to be constructed, ~here as the stack itself any file of the B-machine memory may be taken. This is accomplished as follows. Organization of writing in a stack: 1. Write to the right. 2. Rewrite the contents of RA/WRITE in the r e g ister RA/READ. Organization of retrieval from the stack: 1. Read to the left. 2. Rewrite the contents of RA/READ in the r e g ister RA/WRITE. The use of a stacked memory considerably facilitates the processing of literal-analytic information by a digital computer. In particular, the use of a programmed model of a stack and in general the use of the literal operations described here, make it possible to consider a Bmachine as an n d ( h ' e s s - f r e e (ze~',~-address) computer,
1t
KIBERNETIKA
P r o g r a m s for processing literal-analytic information are constructed l|Aependently of the specific address of the words to be processed. This is possible thanks to the fact that in performing the literal operations the addresses of words and letters are formed automatically in the corresponding registers. We consider more complicated literal operations.
word as follows:
REWRITING OPERATIONS
the word
REWRITE/A is rewrite to a given address; REWRITE/B is rewrite to a given letter; REWRITE/K is rewrite a given number of letters (rewrite k letters). The operations are intended for rewriting various sequences of letters from one place in the m e m o r y of the B-machine into another. Besides the r e g i s t e r s described above, which are used in reading and w r i t ing operations, a special rewriting register R / R E WRITE is used for performing rewriting operations. In this register any address, any letter, any number is given, depending on the form of the rewriting operation. The address of the word to be rewritten is given in the reading address r e g i s t e r (that is, the address of the cell standing immediately to the left of the s e quence of letters to be rewritten). In the writing add r e s s register the address is given at which the word is rewritten (that is, the address of the cell standing immediately to the left of the cell at which the r e writing begins). The subsidiary symbol * need not n e c e s s a r i l y occur in the cells the addresses of which are given in the r e g i s t e r RA/READ and RA/M'RITE, that is, it is possible to rewrite not only words of the B-machine beginn'ng and ending with the symbol , , but also any subwords or sequences of symbols. The rewriting p r o c e e d s l e t t e r - b y - l e t t e r (from left to right). REWttITE/A. The operation is performed as follows: l e t t e r - b y - l e t t e r rewriting proceeds sequentially up to and including the letter in the rewritten word in the cell with the given address (N, i). This address is given in the r e g i s t e r R/REWRITE. REWRITE/B. Sequential l e t t e r - b y - l e t t e r rewriting proceeds up to and including the letter in the word to be rewritten which is given in the r e g i s t e r R / R E WRITE. REWRITE/K. Sequential l e t t e r - b y - l e t t e r rewriting of a specified number of letters; the number of r e w r i t ten letters is given in the r e g i s t e r R/REWRITE. CONDENSAT ION OPERATIONS CONDENSE ~ is condensation to the right; CONDENSE *- is condensation to the left. During the p r o c e s s i n g the words change c o n s i d e r ably, and as a resuL, words may be obtained which have empty letters (free cells). For example, in simplifying the expression x.0+ I.y+5 the shorter w o r d y + 5 is obtained. The first e x p r e s sion is written in the m e m o r y of the B-machine as a
,x•
• y+5,.
After carrying out a number of consecutive changes, x x O by A A O, I• by A A y , AA0+AAy byAAAAAAy, * AAAAAA y+,5, is obtained, containing the empty letters A . The condensation operation is applied to compress the words containing empty letters. The address of the word to be condensed is given in the register RA/CONDENSE. The result will be a word not containing empty letters. Thus, in the example given above the word , y + 5* is obtained. After performing the operation CONDENSE ~ the address of the word remains the same: after performing the operation CONDENSE ~ the address of the word is changed. In both cases the address obtained after condensation of the word is stored in the condensation address register, RA/ /CONDENSE. SUBSTIT L~fION OPERATIONS SUBS (Q, q - s ) . The operation of substituting the subword q in place of all the entries of the subword s in the given word Q. SUBS (Q,q'~s). The operation of substituting the subword q in place of the i-th entry of the subword s in the given word Q. The subwords q and s are given in the memory of the computer as usual with the use of the separating character ,. The address of the word Q, of the subwords q and s, and the ordinal number of the entry i are given in special registers. RA/Q is the register of the address of the original word Q; RA/q is the register of the address of the subword q; RA/s is the register of the address of the subword s; RA/i is the register of the entry. The ordinal number i is given in the register RA/i only when performing the operation SUBS (Q, q ~s). In performing substitution operations the word Q may be either expanded or condensed if the subwords q and s have different len~hs. Example. Let the word Q and the subwords q and s be given. The word Q: , y = I(p[n]) + c*, The subword s: .pin],. The subword q: .x[n * 1] + 3 x 1,. After performing the substitution operation SUBS (Q, q -- s) the result *y = l(x[n + 1] + 3 • l) + c* will be obtained; here an extension of the original word has o c c u r r e d since the subword q is longer than the subword s. Remark 3. The contents of all fouL" registers RA/Q, RA/q, RA/s, and RA/i are storod after porforming substitution operations.
CYBERNETICS
15
TABIA~: I,(}OK-UP OPERATIONS (SELECTION FROM TABLES) In p r o c e s s i n g l i t e r a l i n f o r m a t i o n by a d i g i t a l c o m p u t e r it is often n e c e s s a r y to e x t r a c t i n f o r m a t i o n f r o m t a b l e s , f o r e x a m p l e , for r e f e r e n c e to t a b l e s of the d i f [ e r e n t l a t i o n of s t a n d a r d functions in the c o n s t r u c t i o n of a p r o g r a m f o r l i t e r a l d i f f e r e n t i a t i o n , o r for finding w o r d s in a d i c t i o n a r y in a m a c h i n e t r a n s l a t i o n f r o m one l a n g u a g e to a n o t h e r . We a s s u m e that the t a b l e s a r e given in the f o l l o w ing f o r m a s a l i n e a r s e q u e n c e of l e t t e r s : * A 1 ~--~- B, * A~ "~--~ B,~ * ... * An -~--~ B, * -1.
H e r e the s y m b o l s [- and -I denote the b e g i n n i n g and end of the t a b l e , r e s p e c t i v e l y , and the s u b s i d i a r y s y m bol , - ~ is the s e p a r a t i n g c h a r a e t e r b e t w e e n the w o r d s c o r r e s p o n d i n g to one a n o t h e r in the t a b l e . T h e s u b s i d i a r y s y m b o l * is the s e p a r a t i n g c h a r a c t e r b e t w e e n p a i r s of w o r d s . T h e a d d r e s s of a w o r d f o r which the c o r r e s p o n d i n g w o r d i s sought in the t a b l e i s given in the s p e c i a l r e g i s t e r R A / E N ~cos * COS-~--~- ~ Sin * Ill ~-->"~--~ 1/* x-~--~ 1 * --[. If in R A / E N the a d d r e s s of the w o r d , x * is given, a s a r e s u l t of p e r f o r m i n g the o p e r a t i o n T A B L E ~ the w o r d , 1 , will be w r i t t e n in the m e m o r y of the c o m p u t e r at the a d d r e s s p r e s e n t in the r e g i s t e r R A / R E S . T A B L E ~ . This o p e r a t i o n is p e r f o r m e d s i m i l a r l y to the p r e c e d i n g with only the d i f f e r e n c e t h a t the t a b l e is s c a n n e d f r o m r i g h t to l e f t f r o m -q to }- , and the given w o r d is c o m p a r e d with the w o r d on the r i g h t in t h e p a i r A i ~ B i. In a B - m a c h i n e c o n s t r u c t e d f r o m a u n i v e r s a l d i g i t a l c o m p u t e r by the a d d i t i o n of the o p e r a t i o n s d e s c r i b e d a b o v e , d i r e c t p r o g r a m m i n g of a l g o r i t h m s for p r o c e s s i n g literal-anal:~icinformation is possible. A programmed simulation of the described B-machine was carried out on the digital computer "Minsk12 ~, that is, in the latter computer each of the operations considered above was realized by a corresponding subroutine. We give some of the characteristics of these subroutines: a) the r e a d i n g o p e r a t i o n s w e r e r e a l i z e d by one s u b r o u t i n e f o r a l l its m o d i f i c a t i o n s ; the length of the s u b -
routine is 59 i n s t r u c t i o n s ; the t i m e of p e r f o r m i n g the operations: READING DIRECT LY--2.7 m s e c , READING TO THE RIGIIT--3.6 m s e c , READING TO T I l E L E F T - - 3 . 8 m s c c , R E A D I N G T O T H E RIGHT WITtt BYPASS--7.6 n m s c c , R E A D I N G T O T H E L E F T WITtI BYPASS--7.9 n m s e c , w h e r e n is the len6ech of the e x p r e s s i o n contained in the given b r a c k e t s ; b) the w r i t i n g o p e r a t i o n s w e r e r e a l i z e d by one s u b r o u t i n e of length 25 i n s t r u c t i o n s ; the t i m e s of p e r f o r m ing the o p e r a t i o n s : WRITING D I R E C T L Y - - 5 . 0 m s e c , WRITING TO THE RIGHT--6.0 m s e c , WRITING TO THE L E F T - - 6 . 2 m s e c ; c) the r e w r i t i n g o p e r a t i o n s w e r e r e a l i z e d by one s u b r o u t i n e of length 27 i n s t r u c t i o n s ; each of the r e w r i t i n g o p e r a t i o n s was p e r f o r m e d in 11 n m s e c , where n is the length of the word r e w r i t t e n ; d) the c o n d e n s a t i o n o p e r a t i o n s w e r e r e a l i z e d by one s u b r o u t i n e of length 40 i n s t r u c t i o n s ; the t i m e of p e r f o r m i n g the o p e r a t i o n s : CONDENSATION TO THE L E F T - - 1 0 . 8 n m s e c , CONDENSATION TO THE RIGHT--10.6 n m s e c , w h e r e n is the length of the given w o r d ; e) the s u b s t i t u t i o n o p e r a t i o n s a r e r e a l i z e d by one s u b r o u t i n e of length 120 i n s t r u c t i o n s ; the t i m e of p e r f o r m i n g the o p e r a t i o n s d e p e n d s on the length of the o r i g i nal w o r d and on the lengths of the given s u b w o r d s q and s: f) t a b l e l o o k - u p o p e r a t i o n s a r e r e a l i z e d by a s u b r o u t i n e c o n s i s t i n g of 42 i n s t r u c t i o n s , the t i m e of p e r f o r m i n g the o p e r a t i o n s of r e f e r e n c e to t a b l e s depends i n t r i n s i c a l l y on the length of the t a b l e , the length of the o r i g i n a l word, and the a r r a n g e m e n t of the w o r d s in the t a b l e . In c o n c l u s i o n we give s o m e e x a m p l e s of l i t e r a l a n a l y t i c t r a n s f o r m a t i o n s p e r f o r m e d on the d i g i t a l c o m p u t e r ~Minsk-12. ~ In the e x p r e s s i o n s for p r o c e s s i n g g i v e n below, and in the e x p r e s s i o n s given d i r e c t l y by the c o m p u t e r , the usual notation has been used for c l a r i t y , that i s , the e x p r e s s i o n s have been w r i t t e n in two and t h r e e " s t a g e s . " First Example Calculate g)
W -- (V ~ + si n 3) sh t + ~.
E
,
stn k k!
where a=2+3t,
l = V 2 + 1/'3 52-cos 2. I" The r e s u l t , given by the c o m p u t e r d i r e c t l y : W = 10.354 + ~.-l. 281. Processing time: 6see. Second E x a m p l e Calculate I
=
a + ~(1 + sin ~) ; '.3 "k- t t / ' ~ e - ~ d v , o
KIBERNETIKA
Ib
wh~r~
Processing time; 26 ~ec. Sixth Example Original expression:
a = detA; t = 2 + a , a ,-~ si n ( 1 / ~ - -
1.32),
,,o
Form of processing: simplification of the expressions. The result, given by the computer directly:
~here i = (-1) l/z is the imaginary unit). The result, given by the computer directly:
[.+ sin / e" J '
] == 0. 433 + i131. 954 + 0. 333 an N.
Processing time: 10 see.
Processing time: 29 sec. Third Example Original expression,.
REFERENCES
(a + b) (a a -- a2b -t- a b ~ - - b~).
Form of processing: removal of the brackets (with subsequent reduction of like terms). The result, obtained by the computer directly: a4 -- b*, P r o c e s s i n g time: 7 sec. Fourth Example Original expression :
Form of processing: discovery of the first derivative (here thu application of the operator d/dx). The result, given by the computer directly:
x
• {,in (V;21/..7" +
x
+
I
I
V
.r I +
+
1
2
l
•
x
2
x
x(, P r o c e s s i n g time: 35 see. Fifth Example Original expression:
/ a \ ~ / b \ ~ fv\~ Form of processing: discovery of the mixed d e r i v a tive (here the application of the operation az/akov). The result, given by the computer directly: i
1
a
"~
b
'~
,'t" " ~{(~)'a- ~/-In s I (-b-) .{(~-) x
1, J. W. Hanson, Jane Caviness, and J. C. Shearin, "Analytic differentiation by computer," Communs. Assoc. Comput. Mach., 5, no. 6, 349-355, 1962. 2. A. A. Stognii, "Solution on an electronic di G tal computer of a problem connected with the differentiation of functions," collection: Problems of Cybernetics [in Russian], Fizmatgiz, Moscow, no. 7, 189-199, 1962. 3. I. R. Slagle, "A heuristic program that solves symbolic integration problems in freshman calculus," Symbolic Automatic Integrator {SAINT) Lincoln Lab. Report 5 G-0001, Hass. Inst. Technology, May 10, 1961. 4. K. Hartt, "Some analytical procedures for computers and their applications to a class of multidimensional integrals," J. Assoc. Comput. Maeh., 11, no. 4, 416-421, 1964. 5. L. V. Kantorovich, "The performance of numerical and analytic calculations on computers with programmed control," Izvestiya AN ArmSSR, 10, no. 2, 3-10, 1957. 6. T. N. Smirnova, "Polynomial construction and the performance of analytic operations by an electronic computer, n Tr. Motem. in-ta ira. VA. Steklova, Moscow, 66, 77-112, 1962. 7. J, E. Sammet and E. R. Bond, "Introduction to FORh{AC," IEEE Trans. Electronic Computers, 13, no. 4, 386-394, 1964. 8. A. J. P e r l i s and I. Renato, nAn extension to ALGOL for manipulating formulae," Communs. Assoc. Comput. Mach., 7, no. 2, 127-130, 1964; B--5000, Bulletin of the provisonal ICC, no. 15-16, October 1961, January 1962. 9. H. D. Baecker and B. J . Gibbens, "A commercial use of stacks," Annual. Rev. Automat. P r o gramm, 4, Oxford-London-Edinburgh-New Y o r k P a r i s - F r a n k f u r t , Pergamon P r e s s , 183-191, 196t. 10. Z. Pawlak, "On the applications of the rule of substitution in the organization of an a d d r e s s - - f r e e computer," Bulletin de l'academie polonaise des sciences s e t . techn., 8, no. 11-12, 1960. 11. Z. Pawlak, Organization of Address-free Machines [in Polish], Wyd. PWN.
11 September 1966