# Showing papers in "Communications of The ACM in 1962"

••

TL;DR: The procedure was originally programmed in FORTRAN for the Control Data 160 desk-size computer and was limited to te t ra t ion because subroutine recursiveness in CONTROL Data 160 FORTRan has been held down to four levels in the interests of economy.

Abstract: procedure ari thmetic (a, b, c, op); in t eger a, b, c, op; ¢ o n l m e n t This procedure will perform different order ar i thmetic operations with b and c, put t ing the result in a. The order of the operation is given by op. For op = 1 addit ion is performed. For op = 2 multiplicaLion, repeated addition, is done. Beyond these the operations are non-commutat ive. For op = 3 exponentiat ion, repeated multiplication, is done, raising b to the power c. Beyond these the question of grouping is important . The innermost implied parentheses are at the right. The hyper-exponent is always c. For op = 4 te t ra t ion, repeated exponentiat ion, is done. For op = 5, 6, 7, etc., the procedure performs pentat ion, hexation, heptat ion, etc., respectively. The routine was originally programmed in FORTRAN for the Control Data 160 desk-size computer. The original program was limited to te t ra t ion because subroutine recursiveness in Control Data 160 FORTRAN has been held down to four levels in the interests of economy. The input parameter , b, c, and op, must be positive integers, not zero; b e g i n own i n t e g e r d, e, f, drop; i f o p = 1 t h e n b e g i n a := h-4c; go t o l e n d i f o p = 2 t h e n d := 0; else d := 1; e := c; drop := op 1; for f := I s t e p 1 u n t i l e do b e g i n ari thmetic (a, b, d, drop);

3,848 citations

••

TL;DR: The approach to the problem presented here centers upon the use of multiple adaptive matched filters that classify normalized signals that compare between machine and human performance.

Abstract: Topological Sorting is a procedure required for many problems involving analysis of networks. An example of one such problem is PERT. The present paper presents a very general method for obtaining topological order. It permits treatment of larger networks than can be handled on present procedures and achieves this with greater efficiency. Although the procedure can be adapted to any machine, it is discussed in terms of the 7090. A PERT network of 30,000 activities can be ordered in less than one hour of machine time. The method was developed as a byproduct of procedure needed by Westinghouse, Baltimore. It has not been programmed and at present there are no plans to implement it. In regard to the techniques described, Westinghouse's present and anticipated needs are completely served by the Lockheed program, which is in current use.

672 citations

••

TL;DR: Rules that can be applied generally to name retrieval systems have been developed in a methodological study of the linkage of vital and health records into family groupings for demographic research purposes.

Abstract: Special difficulties are encountered in devising reliable systems for searching and updating any large files of documents that must be identified primarily on the basis of names and other personal particulars. The underlying problem is that of making nearly maximum use of items of identifying information that are individually unreliable but that may collectively be of considerable discriminating power. Rules that can be applied generally to name retrieval systems have been developed In a methodological study of the linkage of vital and health records into family groupings for demographic research purposes. These rules are described, and the ways in which information utilization for matching may be optimized are discussed.

241 citations

••

TL;DR: A r e i n t h i s cyclic o r d e r t h e ve r t i c e s of a s imp le c losed p o l y g o n a n d (x0, y0) is a p oi n t n o t on a n y s ide of t h E po lygon.

205 citations

••

TL;DR: The purpose of this note is to point out a compromising procedure which endows shooting-type methods with this particular advantage of finite difference methods.

Abstract: The common techniques for solving two-point boundary value problems can be classified as either "shooting" or "finite difference" methods. Central to a shooting method is the ability to integrate the differential equations as an initial value problem with guesses for the unknown initial values. This ability is not required with a finite difference method, for the unknowns are considered to be the values of the true solution at a number of interior mesh points. Each method has its advantages and disadvantages. One serious shortcoming of shooting becomes apparent when, as happens altogether too often, the differential equations are so unstable that they "blow up" before the initial value problem can be completely integrated. This can occur even in the face of extremely accurate guesses for the initial values. Hence, shooting seems to offer no hope for some problems. A finite difference method does have a chance for it tends to keep a firm hold on the entire solution at once. The purpose of this note is to point out a compromising procedure which endows shooting-type methods with this particular advantage of finite difference methods. For such problems, then, all hope need not be abandoned for shooting methods. This is desirable because shooting methods are generally faster than finite difference methods.The organization is as follows: I. The two-point boundary value problem is stated in quite general form. II. A particular shooting method is described which is designed to solve the problem in this form. III. The two-point boundary value problem is then restated in such a way that: (a) the restatement still falls within the general form, and (b) the shooting method now has a better chance of success when the equations are unstable.

177 citations

••

[...]

TL;DR: This cyclic o r d e r-t h e vertices of a simple closed p o l y g o n a n d (x0, y0) is a p o i n t n o t on a n y side of t h e polygon.

Abstract: this cyclic o r d e r-t h e vertices of a simple closed p o l y g o n a n d (x0, y0) is a p o i n t n o t on a n y side of t h e polygon, t h e n t h e procedure d e t e r m i n e s , b y s e t t i n g \" p o i n t in p o l y g o n \" to t r u e , w h e t h e r (x0, y0) lies in t h e interior of t h e p o l y g o n ; b e g i n i n t e g e r i; B o o l e a n b; x [ n + l ] : = x [ 1 ] ; y [ n + l ] : = y [ 1 ] ; b : = t r u e ; f o r i i= 1 s t e p 1 u n t i l n d o i f (y < y [ i ] ~ y > y [ i + l ]) h xO-x[i]-(yO-y[i]) X (x[i + 1]-z[i])/(y[i + 1]-y[i]) < 0 t h e n b :=-1 b; c o m m e n t T R E E S O R T sorts t h e s m M l e s t k e l e m e n t s of t h e n-c o m p o n e n t a r r a y UNSORTED into t h e k-c o m p o n e n t a r r a y SORTED (the two a r r a y s m a y be t h e s a m e). T h e n u m b e r of o p e r a t i o n s is on t h e order of 2 X n + k X log2(n). T h e n u m b e r of a u x i l i a r y s t o r a g e cells r e q u i r e d is on t h e order of 2 X …

123 citations

••

118 citations

••

System Development Corporation

^{1}, Honeywell^{2}, RAND Corporation^{3}, IBM^{4}, General Electric^{5}TL;DR: This report represents the results of the first phase of the work of the Language Structure Group, which aims to arrive at a proper structure for a machine-independent problem-defining language, at the systems level of data processing.

Abstract: This report represents the results of the first phase of the work of the Language Structure Group. The goal of this work is to arrive at a proper structure for a machine-independent problem-defining language, at the systems level of data processing. The report is based, for the most part, on a mathematical model called \"An Information Algebra\" developed primarily by R. Bosak. It is hoped that this report will be read (a) with avid interest by programming language designers and implementors, and all those interested in developing a theoretical approach to data processing; (b) with interest and understanding by professional programmers and systems analysts; and (c) with appreciation by the businessman-analyst-manager. The authors have not attempted an exhaustive discourse in this report. Rather, they have tried to present a philosophy to the professional people who are vitally concerned with providing a working language for the systems analyst's use. They trust that the ideas in this report will stimulate others to think along similar lines. Questions and comments will be welcomed, and can be addressed to any of the members of the Language Structure Group: Robert Bosak, System Development Corporation Richard F. Clippinger, Honeywell EDP Division Carey Dobbs, Remington Rand Univac Division Roy Goldfinger (Chairman), IBM Corporation Renee B. Jasper*, Navy Management Office William Keating, National Cash Register George Kendrick, General Electric Company Jean E. Sammet**, IBM Corporation

97 citations

••

TL;DR: It is evident that a policg statemerd regarding publishb~9 of p(tpers m~ business subjects would be bellyful, and it is highlg desirable to hate papers on busb~ess attd sei(utt~/ie ttpplications in the same department.

Abstract: 1)is<:i~ssio~s wkieh

81 citations

••

CA Technologies

^{1}TL;DR: It is shown that no formal mechanisms of the type used are sufficient to define ALGOL 60.

Abstract: ALGOL 60 is defined partly by formal mechanisms of phrase structure grammar, partly by informally stated restrictions It is shown that no formal mechanisms of the type used are sufficient to define ALGOL 60

68 citations

••

TL;DR: The authors have tested a few cases, using a chi-squared goodness-of-fit test, and obtained results which indicate that when the central limit theorem applies, convergence is quite rapid.

Abstract: For each t, x(t) in Eq. (6) is composed of a linear combination of identically and independently distributed random variables. I t might be suspected that as N ~ the distribution of x(t) approaches a normal distribution with mean-zero and variance equal to R(0). Care must be exercised, however, since the A,~ coefficients are functions of N, as evidence by Eqs. (5). In other words, each case must be analyzed individually, as R(r ) = cos r provides an example of a case in which the central limit theorem does not hold. The authors have tested a few cases, using a chi-squared goodness-of-fit test, and obtained results which indicate that when the central limit theorem applies, convergence is quite rapid. For example, let

••

CA Technologies

^{1}TL;DR: A new subroutine that effects certain scanning and related operations and which can be called in FORTRAN programs has been coded recently and adopts the syntax machine approach of Glennie and can be used to deal with expanded recta-vocabularies.

Abstract: A new subroutine that effects certain scanning and related operations and which can be called in FORTRAN programs has been coded recently [15]. This SAPST subroutine adopts the syntax machine approach of Glennie [16] and can be used to deal with expanded recta-vocabularies. Scanning time, particularly of verbal material, depends on comparisons of quotations in the definition table with portions of the input string. Simultaneous comparisons of input material with several quotations would speed some scans considerably-a computer with several accumulators would be suited to this type of work. Publication of this material has been delayed for some years in the hope that the implications of scanning and syntax definition would become clearer. There is no doubt now that syntax description and analysis are important, and they may provide new bridges between computing and biology [6] and between science and scholarship. A general translation program for phrase structure languages. Let a phrase structure language be defined informally as a language defined by a set of definitions in the Backus notation [1] (more formal definitions may be found in [2, 3, 4]). The set of definitions is itself called a phrase structure grammar. A phrase structure grammar is a m b i g u o u s if there exists a sentence in the defined language which may be assigned more t h a n one structure consistent with the grammar. Such an ambiguity in ALGOL 60, for example, is i f ~l t h e n 6 i f B2 t h e n Z1 else Z2 where ~ represents any Boolean expression, ¢ a for clause, and an unconditional statement. Attempts have been made to devise an algorithm to determine for an arbitrarily given phrase structure grammar whether or not it is ambiguous. Such attempts may yield useful heuristic procedures , but, as will be shown below, a general algorithm does not exist. Consider two sets of strings {x~} and {y~} over an alphabet, where i ranges from 1 to k. Let n~ signify the digit string which represents the integer i in decimal notation. Define a language by the following grammar: 1 S i , ~ xl ; n~ ~ X2 ; n 2 ~ • • • ~ X k ; n k ~_j xlS1 , nl k....2 x 2 S i , n 2 \" \" \" ~ X k S 1 , n b $2 …

••

TL;DR: The approach to the problem presented here centers upon the use of multiple adaptive matched filters that classify normalized signals that compare between machine and human performance.

Abstract: The use of programmed digital computers as general pattern classification and recognition devices is one phase of the current lively interest in artificial intelligence. It is important to choose a class of signals which is, at present, undergoing a good deal of visual inspection by trained people for the purpose of pattern recognition. In this way comparisons between machine and human performance may be obtained. A practical result also serves as additional motivation. Clinical electrocardiograms make up such a class of signals.The approach to the problem presented here centers upon the use of multiple adaptive matched filters that classify normalized signals. The present report gives some of the background for the application of this method.

••

TL;DR: It is shown how Bellman's method may be applied to the curve-fitting problem when the additional constraints are added that the ends of the line segments must be on the curve.

Abstract: In a recent paper, Bellman showed how dynamic programming could be used to determine the solution to a problem previously considered by Stone. The problem comprises the determination, given N, of the N points of subdivision of a given interval (a, b and the corresponding line segments, that give the best least squares fit to a function g(x) in the interval. Bellman confined himself primarily to the analytical derivation, suggesting briefly, however, how the solution of the equation derived for each particular point of subdivision ui could be reduced to a discrete search. In this paper, the computational procedure is considered more fully, and the similarities to some of Stone's equations are indicated. It is further shown that an equation for u2 involving no minimization may be found. In addition, it is shown how Bellman's method may be applied to the curve-fitting problem when the additional constraints are added that the ends of the line segments must be on the curve.

••

TL;DR: qiicsls ali(t of stored

Abstract: /.} ,I n t r o d u c t i o n All inf~n'm:t{i~)l,., ret, ri( 'val system is (tesigned t() provide \"tli:-tvo!'s It) l'('(llIOSld, I'()F i i l f ( ) l ' l l la i io t l . I l l s ( ) n l e S VS{OInS~ l'('ful'('!i('c:< i l l thc f4)l'll l O[ d<)cimlel i t or i l l )ok t i t les al'o ( i l ) /a [ ] i ( : r i l 'al}i('l\" l ha l i sf)e('ific i lenis ()f infor i l iat io l l ; tiles() io['e!'cile(,s. {l/ iurn, l(,~.t t,> (he act !lal r('(lttired infori l tat ioi i . If a-'.ttolli~tlic nu'lho([> ave i() }~e used for tit(' per[ornlance of iP.f()l ' l t latj() l i l ( ' t r i ( ' va l o[)(,l't/iiOliS, pl 'ot 'ed/l l 'es I l i t tst be !>r<)vide

••

TL;DR: This ingenious way of rewriting the expression (sometimes called Horner 's Rule) needs only 3 multiplications and 4 additions, while the previous way of writing it requires 8 multiplications (or even 9, depending on how y ~ 4 is evaluated).

Abstract: This ingenious way of rewriting the expression (sometimes called Horner 's Rule) needs only 3 multiplications and 4 additions, while the previous way of writing it requires 8 multiplications (or even 9, depending on how y ~ 4 is evaluated) and 4 additions. Recently Motzkin [1] showed tha t for certain polynomials there is yet a bet ter way to do the evaluation, and his discovery inspired the s tudy which led to this paper. The above polynomial can, for example, be calculated using the sequence

••

IBM

^{1}TL;DR: A new file addressing method based on the calculation of an address from the identification of a record, which seems to be more advantageous than customary ones for large recirculating type files.

Abstract: This paper presents a new file addressing method based on the calculation of an address from the identification of a record. For large recirculating type files, it seems to be more advantageous than customary ones. The probability distribution of the displacement of records from their calculated address, which is one less than the number of probes required to address a record, is computed on the basis of a Markov chain model. For the reader not interested in the mathematics, the introduction and the summary should be sufficient.

••

••

TL;DR: The compiler described a concise and readable form which easy change or expansion of the compiler b 9 olherx as well as lb+. ofiffi,,+,gor +t!" the compiler is especially significant.

Abstract: of the T~:..xv <.ompilcr is especially significant. The \"1\"~-:.~_~[ compiler i~ described i~ a concise and readable form which ali<)w> easy ;-<)mp:_Irq-~t-well as the machine input f<)r gOll(q0.l ing the e<>mi)i[e;. Conclusions It. has been obviotts~ for so[~]¢, time that mor(~ systematic methods of \"soft:ware\" dev<'ie~pinent lllllSt |)e found. Without such methods the full potential of existing and fUt llre hardware will never be realized. Machine designers recoN-PRACNIQUES. ll/6t, is used in iteralive programs where the ()lit[Ill|; tape of one iteration becomes the in[)ut tape to the uext iteraiien as follows: First Output-Rewind Even Output [nput I{ewin

••

TL;DR: A r e i n t h i s cyclic o r d e r t h e ve r t i c e s of a s imp le c losed p o l y g o n a n d (x0, y0) is a p oi n t n o t on a n y s ide of t h E po lygon.

••

RAND Corporation

^{1}TL;DR: The procedure was originally programmed in FORTRAN for the Control Data 160 desk-size computer and was limited to te t ra t ion because subroutine recursiveness in CONTROL Data 160 FORTRan has been held down to four levels in the interests of economy.

Abstract: procedure ari thmetic (a, b, c, op); in t eger a, b, c, op; ¢ o n l m e n t This procedure will perform different order ar i thmetic operations with b and c, put t ing the result in a. The order of the operation is given by op. For op = 1 addit ion is performed. For op = 2 multiplicaLion, repeated addition, is done. Beyond these the operations are non-commutat ive. For op = 3 exponentiat ion, repeated multiplication, is done, raising b to the power c. Beyond these the question of grouping is important . The innermost implied parentheses are at the right. The hyper-exponent is always c. For op = 4 te t ra t ion, repeated exponentiat ion, is done. For op = 5, 6, 7, etc., the procedure performs pentat ion, hexation, heptat ion, etc., respectively. The routine was originally programmed in FORTRAN for the Control Data 160 desk-size computer. The original program was limited to te t ra t ion because subroutine recursiveness in Control Data 160 FORTRAN has been held down to four levels in the interests of economy. The input parameter , b, c, and op, must be positive integers, not zero; b e g i n own i n t e g e r d, e, f, drop; i f o p = 1 t h e n b e g i n a := h-4c; go t o l e n d i f o p = 2 t h e n d := 0; else d := 1; e := c; drop := op 1; for f := I s t e p 1 u n t i l e do b e g i n ari thmetic (a, b, d, drop);

••

General Electric

^{1}TL;DR: This note describes a generalization of the threaded list which consists of replacing the thread llnk which Perlis and Thornton place in the R or link position of the last llst cell of a list (or sub-list with a Control List which is attached to the llst structure and which contains, among other information, a push down list capable of storing many thread links).

Abstract: In (3) Perlis and Thornton describe a list structure language the central innovation of which is that the last word of each list specifies the location of the head of the list of which it is the terminal word. They call such list structures threaded lists. Beyond this, however, they hypothesize Sequencing Tables and associated sequencing modes (e, l, and w). The sequencing modes make possible forms of traversing list structures which leave the lists themselves undisturbed in memory. Since the Sequence Table can contain true names as well as aliases for particular list structures and since lists are undisturbed by sequencing, many programs may sequence through lists in different manners, at various rates, but still simultaneously. This partially mitigates against the need to store many copies of a list and becomes critical in multiple computer systems in which it may be expected that a number of sub-programs operate on a single list structure (under various aliases) independently. This note describes a generalization of the threaded list. The name given to such generalized threaded list structures is knotted list structures (KLS). The generalization consists essentially of replacing the thread link which Perlis and Thornton place in the R or link position of the last list cell of a list (or sub-list with a Control List (CL) which is attached to the list structure and which contains, among other information, a push down list capable of storing many thread links. The chief advantage of this scheme is that it permits a sub-list to be a sub-list of many lists, something which ordinary threaded lists do not permit. All other advantages of threaded lists are kept.

••

TL;DR: A means of obtaining a random sample of n integers r1, r2, …,rn selected from the N integers 1, 2, … , N is available.

Abstract: The problem of selecting a random sample of precisely n records from a tape film containing N records sometimes arises in data processing applications. If a means of obtaining a random sample of n integers r1, r2, … ,rn selected from the N integers 1, 2, … , N is available, the problem is theoretically simple. All that need be done is to then select the r1th, r2th, … , rnth records.

••

••

TL;DR: A wealth of new computer languages, a better understanding and definition of the basic principles and problems of symbol manipulation, and a growing body of algorithms and techniques for use in the applications are presented.

Abstract: During the past few years a major portion of the work in computer applications has been concentrated in the two closely related fields of automatic programming and symbol manipulation The results of this effort have been a wealth of new computer languages, a better understanding and definition of the basic principles and problems of symbol manipulation, and a growing body of algorithms and techniques for use in the applications

••

TL;DR: The present account of the Shadow language and the subroutine contains a summary of material that has been described previously in unpublished reports and also some additional discussion of the work in relation to the more general questions of problem-oriented languages and string transformations.

Abstract: This paper provides an account of the Shadow language that is used to describe syntax and of a corresponding subroutine that enables a computer to perform syntactic analysis. The input to this subroutine consists of a string to be analyzed and a description of the syntax that is to be used. The syntax is expressed in the Shadow language. The output consists of a trace table that expresses the results of the syntactic analysis in a tabular form. Several versions of the subroutine and some associated programs have been in use now for over three years. The present account of the language and the subroutine contains a summary of material that has been described previously in unpublished reports and also some additional discussion of the work in relation to the more general questions of problem-oriented languages and string transformations.

••

TL;DR: There are techniques which avoid the need for sorting data according to classification categories prior to sample selection; these have been developed joint ly with my colleagues, C. T. Fan and I. Rezucha.

Abstract: writer in [1, 2]. I t should also be pointed out tha t a real challenge arises when there is more than one category of information on the tape. Suppose it is desired to be able to select random samples without replacement from each of several different categories where the information is intermixed on the tape. If the items were sorted by category prior to selection, then the above approaches could be used. If the i tems are not sorted by category prior to selection, then there are techniques which avoid the need for sorting data according to classification categories prior to sample selection; these have been developed joint ly with my colleagues, C. T. Fan and I. Rezucha. These techniques are applicable not only to the sampling plan discussed, but also to many other types of sampling plans. In addition, a single i tem is allowed to belong to more than one category. The outline of these techniques was presented at the 1961 Annual Meeting of the American Statistical Association and the Ins t i tu te of Mathematical Statistics, in December at New York City. This material has subsequently appeared and been described in [3, 4, 5]. REFERENCES : 1. MULLER, M. E. The use of computers in inspection procedures. Comm. A C M 1, 11 (1958), 7-13. 2. MULLER, M . E . The role of existing computer techniques in stat ist ics and quali ty control. Ind. Qual. Contr. 15 (1959), 2-5. 3. MULLER, M. E. Techniques and programming for sampling populations on magnetic tapes, with a summary of the results by C. T. Fan, M. E. Muller and I. Rezucha. Transactions, Middle-Atlantic Conf. Amer. Soc. Qual. Contr. (Mar. 1962), 249-287. 4. MULLER, M . E . Impact and use of computers in quali ty control. Transactions, 1962 Ann. Meeting Amer. Soc. Qual. Contr. (May 1962), 225-230. 5. FAN, C. T., MULLER, M. E., AND REZUCHA, I. Development of sampling plans by using sequential (item by item) selection techniques and digital computers. J. Amer. Star. Assoc. 57 (June 1962), 387-402. MERVIN E. MULLER Data Processing Div., I B M Corp., White Plains, N. Y.

••

IBM

^{1}TL;DR: The means of performing the transformation of a set of indices locating an ar ray element in n-space to the location (address) of the element in its storage vector is the subject of this paper.

Abstract: A useful method of representing a function of n var iables is to consider the function to assume its values at selected points in n-dimensional space. Although this picture is of value to the analyst, the elements of an n-dimensional a r ray must exist in conventional storage as o l inear a r ray or vector. The means of performing the transformation of a set of indices locating an ar ray element in n-space to the location (address) of the element in its storage vector is the subject of this paper. It is noted that the index address transformation is computat ional ly identical to the conversion of o number from a f ixed to a mixed radix number system. Several ways of implementing the transformation are described.

••

TL;DR: The immediate impetus for the work was the existence of PsYco, a compiler for ALGOL 60 on the CDC 1604, which requires a complete "syntax table" of the source language in order to do the translation, and if such a table could be constructed for FORTRAN, then the same compiler could be used for both languages, with merely a change of tables.

Abstract: Although FORTRAN (in various versions) is one of the most widely used algorithmic languages, with translators existing for upwards of sixteen ~ machines, the language itself has never been given a complete and explicit definition except informally, through the various reference manuals. Par t of the reason for this is that FORTRAN'S position as a \"common\" language did not occur through official acceptance, but through use, with translators being written to process what people thought was the language. Furthermore, the specifications of the language, being to a large extent machine dependent, or at least largely influenced by the structure of the machine for which the first FORTRAN was writ ten (the I B M 704), were altered for convenience whenever the language could not easily be accommodated by a particular machine. The result, of course, is that each translator implements something closely resembling the same language, but with differences. For example, 650 FORTRAN allows identifiers to be five characters long, while 1604 FORTRAN allows them to be seven characters long, both restrictions being due to convenience in writing the compilers. In line with the present fad for syntactieizing everything in sight, the present effort was undertaken. The immediate impetus for the work was the existence of PsYco [1], a compiler for ALGOL 60 on the CDC 1604, which requires a complete \"syntax table\" of the source language in order to do the translation. If such a table could be constructed for FORTRAN, then the same compiler could be used for both languages, with merely a change of tables. Work is pres-