Advertisement

A general business-oriented language based on decision expressions

The structure of a digital computer programming language which covers a wide class of business and file processing applications is presented. Such a structure, based on identifying and incorporating into a compiler the aspects common to all processes of such class, permits writing extremely compact programs, even for comparatively complex applications, in terms of tables of control expressions which express only information characteristic of the particular application. Furthermore, local changes of a process (e.g. changes affecting only one of the output files involved) can be effected by local modifications in the program (e.g. modification of only one entry of the tables). This structure also allows for inexpensive preparation of loading-speed compilers which translate the source programs into efficient machine codes. The approach adopted here departs from conventional mechanical language design philosophies. It stresses the structural analysis of the class of processes to be represented in the languages, as opposed to emphasizing formal (i.e., contents-independent) syntactical definitions. It relies exclusively on nonprocedural representation of processes as sets (tables) of relations between data and results (there are no control statements such as GO TO, etc.), instead of using procedure descriptions (which are one-to-one translations of flowcharts). Here an invariant pattern of procedure is identified as characteristic of the class of all batch file processes.

GIT—a heuristic program for testing pairs of directed line graphs for isomorphism

Given a pair of directed line graphs, the problem of ascertaining whether or not they are isomorphic is one for which no efficient algorithmic solution is known. Since a straightforward enumerative algorithm might require 40 years of running time on a very high speed computer in order to compare two 15-node graphs, a more sophisticated approach seems called for. The situation is similar to that prevailing in areas such as game-playing and theorem-proving, where practical algorithms are unknown (for the interesting cases), but where various practical though only partially successful techniques are available. GIT—Graph Isomorphism Tester—incorporates a variety of processes that attempt to narrow down the search for an isomorphism, or to demonstrate that none exists. No one scheme is relied upon exclusively for a solution, and the program is designed to avoid excessive computation along fruitless lines. GIT has been written in the COMIT language and successfully tested on the IBM 7090.

Analysis of decay-type data

A comparative study has been made of a variety of numerical techniques for fitting experimental data of the decay type by forms involving the sums of exponentials. Statistical errors of the fitted parameters are also calculated. These methods have been applied to artificially-generated sets of data as well as to the results of experiments with radioactive tracers on both human and animal subjects. Results show that the values of the fitted parameters are very sensitive to variations in the fitting procedure. Therefore great care must be exercised in identifying such values with physical constants. Although the values of functions derived from these fitted parameters which can definitely be associated with physical entities are generally more stable under variations in the fitting techniques, error bounds can be so large that no great confidence can be placed even in them. It would therefore appear best to select a uniform technique both for running the experiments and for analyzing the data, and then to consider as significant only relative results between one subject and the next.

A note on multiplying boolean matrices II

In a note by Baker [1], a method is given for getting the limiting connectivity matrix, B, of a matrix whose entries are Boolean 0's and 1's. Harary [2] suggests determining An-1 since An-1 = An = ··· , where n is the order of the matrix. The purpose of this note is to give a method for determining An-1. The method is also applicable to finding the output matrix of a switching network as described in [3] and [4] where again An-1 = An = ··· , but A now has Boolean switching functions as entries instead of 0's and 1's.

An efficient composite formula for multidimensional quadrature

A (2s+1)-point, second-degree quadrature formula for integration over an s-dimensional hyper-rectangle is presented. All but one of the points lie on the surface with weights of opposite sign attached to points on opposite faces. When a large volume is subdivided into congruent rectangular subdivisions, only one point is required in each interior subdivision to achieve second-degree accuracy.

On the numerical solution of boundary value problems for linear ordinary differential equations

A numerical method is presented for the solution of boundary value problems involving linear ordinary differential equations. The method described is noniterative and makes use of any one-step numerical integration scheme to reduce the problem from one of boundary values to one of initial values. Comments are made concerning some numerical results of applying the method to a specific problem. In addition an extension of the algorithm described to more general problems is discussed.

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Get Involved

Communications of the ACM (CACM) is now a fully Open Access publication.

By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.

Learn More