ppxscal/embedding_network huggingface dataset:
Symmetric complementation
Authors: John H. Reif
Venue: Proceedings of the fourteenth annual ACM symposium on Theory of computing (1982)

This paper introduces a class of 1 player games of perfect information, which we call complementing games;; the player is allowed moves which complement the value of successive plays. A complementing game is symmetric if all noncomplement moves are reversible (i.e., form a symmetric relation). These games are naturally related to a class of machines we call symmetric complementing machines. Symmetric nondeterministic machines were studied in [Lewis and Papadimitriou, 80]; they are identical to our symmetric complementing machines with complement moves allowed only on termination. (A companion paper to appear describes the computational complexity of symmetric complementing and alternating machines.) Of particular interest is the complexity class -&-Sgr;(@@@@) CSYMLOG, which contains the outcome problem of symmetric complementing games with constant complement bound with game positions encoded in log space, and next move relations computable in log space. We show that the decision problem for a restricted quantified Boolean logic -&-Sgr;(@@@@) QBF@@@@ is complete in -&-Sgr;(@@@@) CSYMLOG.
Development of computer programs by problem analysis Diagram(PAD)
Authors: Y. Futamura, T. Kawai, H. Horikoshi, M. Tsutsumi
Venue: Proceedings of the 5th international conference on Software engineering (1981)

A new tree-structured diagram for describing computer program logics is presented. The diagraming technique called PAD(Problem Analysis Diagram) is used as basis in establishing method of coding, testing, and data type description. It is proposed as a functionally superior substitute for flowcharts. The fact that some 1000 HITACHI programmers have converted from flowcharts to PAD within the last 15 months is indicative of the broad potential utility of this notation.
A software science analysis of programming size
Authors: Charles P. Smith
Venue: Proceedings of the ACM 1980 annual conference (1980)

Programming Development at IBM's Santa Teresa Laboratory has been investigating &ldquo;The Elements of Software Science&rdquo; as defined by Maurice H. Halstead.1,2 This report summarizes the findings after several large IBM products have been counted and analyzed. Program vocabulary, length, volume and lines of code are discussed and compared. It is shown that the size of a program can be estimated with reasonable accuracy once the vocabulary is known. Within the programming community the traditional measures of quality and productivity have been based upon the number of lines of source statements which have been coded for a given product. Estimating the costs, time duration, number of programmers required, and quality levels also hinge upon &ldquo;lines-of-code&rdquo; predictions for the product. Maurice H. Halstead 1,2 has suggested a comprehensive set of software metrics which we are using to examine the characteristics of existing program products. These software metrics do not hinge upon lines-of-code counts but rather upon the counting of operators and operands. This report explains how the &ldquo;Elements of Software Science&rdquo; as defined by Professor Halstead relate to IBM data from large programming products. The software science formulas are neither derived nor altered in this paper but are treated as theorems which we have set out to prove or to disprove by measuring Santa Teresa Laboratory program products. We were motivated to look for measures other than lines-of-code because of our historic inability to estimate the size of a project with any consistent degree of accuracy. In performing this study, we have counted and analyzed large volumes of existing program product code. This report focuses upon the Software Science size metrics (length and volume) in comparison to the traditional lines-of-code measure.
An algorithm for structuring programs (Extended Abstract)
Authors: Brenda S. Baker
Venue: Proceedings of the 3rd ACM SIGACT-SIGPLAN symposium on Principles on programming languages (1976)

Structured programming emphasizes programming language constructs such as while loops, until loops, and if then else statements. Properly used, these constructs make occurrences of loops and branching of control obvious. They are preferable to goto statements, which tend to obscure the flow of control [DDH,DIJ]. This paper describes an algorithm which transforms a flowgraph into a program written using repeat (do forever) and if then else statements. The goal of the algorithm is to produce readable programs, rather than to avoid the use of goto statements entirely. goto statements are generated when there is no better way to describe the flow of control. A number of techniques for eliminating goto statements from programs have been previously published [AM, BJ, BS, COO, KF, KOS, PKT]. However, these techniques do not necessarily produce clear flow of control [KN]. Misuse of control constructs may mislead the reader into expecting patterns of control flow which do not exist in the algorithm. For example, these techniques may use a repeat statement when the contained code cannot be executed more than once or add numerous control variables to avoid goto statements. They also may avoid goto statements by copying segments of code or creating subroutines. The former method results in longer programs and bugs may be introduced when all the identical segments must be modified. The latter method may result in subroutines which appear unnatural.
Using an APL macroprocessor to implement generalized software systems
Authors: Mark R. Dempsey
Venue: ACM SIGAPL APL Quote Quad (1979)

Several techniques for implementing generalized software packages in APL are considered. One technique in particular, data-driven code generation, is expanded upon. When this technique is employed, application software is written in template form. These templates are then compiled into APL objects when an individual application is configured. Some areas which are investigated are the use of software templates, an APL macrolanguage, and an APL macroprocessor. Specific examples relevant to data base management systems are presented.
Direct ascent, deep space intercept model
Authors: Mark M. Mekaru, Richard C. Barclay
Venue: Proceedings of the 16th conference on Winter simulation (1984)

A stochastic computer model was developed to analyze a direct ascent, deep space intercept system. There are two error sources within the system: the deep space tracking system and the launch vehicle guidance system. The errors are modeled based on equipment performance data and analytical results. To compensate for the system errors, the requirements for a maneuverable intercept vehicle are developed. The requirements are described in terms of sensor acquisition distance and vehicle velocity change. Analyses of error sources and tradeoffs amongst maneuver factors are discussed.
Aspects and applications of symbol manpulation
Authors: Bertram Raphael
Venue: Proceedings of the 1966 21st national conference (1966)

Symbol manipulation is a valuable set of techniques currently available to computer users. Because many of these techniques are relatively new and have been used in a wide variety of applications, the terminology and utility of symbol manipulation are poorly understood by a large portion of the computing community. This paper presents some definitions of the basic concepts in symbol manipulation, and some examples of the applications of these concepts. These examples have been selected to illustrate the importance of the computational techniques used. They may also suggest valuable new applications for the techniques of symbol manipulation.
Properties of deterministic top down grammars
Authors: D. J. Rosenkrantz, R. E. Stearns
Venue: Proceedings of the first annual ACM symposium on Theory of computing (1969)

The class of context free grammars that can be deterministically parsed in a top down manner with a fixed amount of look-ahead is investigated. These grammars, called LL(k) grammars where k is the amount of look-ahead are first defined and a procedure is given for determining if a context free grammar is LL(k) for a given value of k. It is shown that &egr;-rules can be eliminated from an LL(k) grammar, at the cost of increasing the value of k by one, and a description is given of a canonical pushdown machine for recognizing LL(k) languages. It is shown that for each value of k there are LL(k+l) languages that are not LL(k) languages. It is shown that the equivalence problem is decidable for LL(k) grammars. Additional properties are also given.
Prettyprinting in an interactive programming environment
Authors: Martin Mikelsons
Venue: ACM SIGPLAN Notices (1981)

Prettyprint algorithms designed for printing programs on paper are not appropriate in an interactive environment where the interface to the user is a CRT screen. We describe a data representation and an algorithm that allow the efficient generation of program displays from a parsed internal representation of a program. The displays show the structure of the program by consistent and automatic indentation. They show the program in varying levels of detail by replacing unimportant parts with ellipsis marks. The relative importance of program parts is determined jointly by the structure of the program and by the current focus of attention of the programmer.
The FORTH approach to operating systems
Authors: Elizabeth D. Rather, Charles H. Moore
Venue: Proceedings of the 1976 annual conference (1976)

FORTH is a programming technique designed for interactive, on-line multi-task minicomputer applications. It features an extensible command set which leads naturally to the development of an application oriented vocabulary and operating system. FORTH combines extreme compactness with high speed performance.
Documenting simulation studies for management
Authors: Belva J. Cooley
Venue: Proceedings of the 9th conference on Winter simulation - Volume 2 (1977)

This paper provides a discussion of the purposes of simulation documentation and the role of documentation in gaining management acceptance and implementation of recommendations. A documentation approach is suggested which is directed toward providing management with an end-product, documentation, which will be useful in decision making. Guidelines are given for writing simulation documentations which are aimed at several levels of management audiences.
Mapping multidimensional space to one dimension for computer output display
Authors: E. A. Patrick, D. R. Anderson, F. K. Bechtel
Venue: Proceedings of the 1968 23rd ACM national conference (1968)

Consider the problem of displaying a real-valued function f(x1,x2,...,xl) of l real variables on a computer output display. Actually the displayed function must be an approximated version of f because of the computer's finite storage capability. If l &equil; 1 it is clear how f(x1) can be processed for display on a two-dimensional screen; but if l > 1, the required processing is not as obvious. An application area is the display of several classes of approximated probability density functions. One can determine visually the degree of separability of these functions and observe the effects of parameter changes on separability.
Simulation experiments into inventory scheduling in multi-stage systems
Authors: Stephen H. Goodman, Stanley T. Hardy, Lawrence D. Vitt
Venue: Proceedings of the ACM annual conference (1973)

In the manufacture of most goods, production proceeds sequentially in stages extending from raw material acquisition through final assembly. The proper timing and sizing of inventories is crucial at all stages if the final goods are to be completed on schedule. If each stage is treated independently, inadequate policies will invariably be adopted for in this way no consideration will have been given to the interdependencies that exist between successive stages. This paper presents a report on a current research effort into the scheduling and control of inventories in multi-stage production systems. Simulation experiments are being conducted in a system producing multiple products at each stage of production. Several methods of determining the sizing and timing of lots are being implemented in the simulated system in an effort to determine the efficacy of each of the methods. Efficient scheduling techniques will ultimately be those that yield better links between the inventory items at successive production stages.
Perspectives on programming environments
Authors: John R. Mashey
Venue: Proceedings of the 1983 computer science conference (1983)

Many people have realized that programming needs more support than a compiler, linker, debugger, and a few other tools. More comprehensive systems have been proposed, built, and (sometimes) used. Although the perfect programming environment is yet to be found, people have widely divergent views of the ideal. This paper neither surveys the field nor describes any single environment, but instead offers some attributes by which programming environments can be classified. It frequently uses the Unix system to illustrate these attributes, and comments on the implications of the Unix system's success for other programming environments.
Procedure for testing microprograms
Authors: W. G. Bouricius
Venue: Conference record of the 7th annual workshop on Microprogramming (1974)

To produce reliable, i.e. defect-free microprograms a two phase procedure is recommended. The first phase consists of expressing the desired algorithms in a precise formal way employing a suitable specification language so that the 'correctness' of the specifications can be examined. The second phase consists of transcribing these specifications into machine code microprograms and proving the 'equivalence' between the formal specifications and the machine microcodes. Various desiderata of such a specification language are described and the reasons supporting each are given. Several uses for an implemented version are advocated and all depend on the 'correctness' of the implementation. Unique means for thoroughly checking the programmed implementation are given and the possibility of mathematically proving it correct is discussed.
Automatic Reading of Handwritten Chemical Formulas from a Structural Representation of the Image
Authors: Jean-Yves Ramel, Guillaume Boissier, Hubert Emptoz
Venue: Proceedings of the Fifth International Conference on Document Analysis and Recognition (1999)

This paper presents a new strategy for localization and recognition of graphical entities in handwritten chemical formulas. Our system includes a first phase of global perception of the document followed by a phase of incremental extraction of the graphical entities. The phase of global perception constructs a structural representation of the drawing and provides a precise description of all the shapes present in the initial image. Thereafter, this representation constitutes the main resource that will be used by different processes achieving the interpretation of the drawing. The knowledge extracted from the representation (a structural graph) is used instead of the bitmap image material to drive the interpretation process.
Path building in cellular partitioning networks
Authors: Jean-Paul Brassard, Jan Gecsei
Venue: Proceedings of the 7th annual symposium on Computer Architecture (1980)

This paper presents a new method of obtaining couplings in networks. We begin by introducing a new class of networks which are structural extensions of triangular permuting networks. More, by using augmented cells, we increase the functionnal capability of such networks. Then we present an algorithm to solve the problem of constructing a complete coupling in such networks. This algorithm lends itself to a hardware implementation with partially distributed control.
Critique and evaluation of the Cal Poly/DPMA model curriculum for computer information systems
Authors: William Mitchell, James Westfall
Venue: Proceedings of the twelfth SIGCSE technical symposium on Computer science education (1981)

The authors have been intimate observers of a significant movement within computer education. This paper presents a history of this curriculum project and an assessment of its future influence. The forces which mandate the focus of attention in the area of data processing education are identified and the nature of the response evoked from this project is analyzed. The paper reveals the need for a better understanding of curriculum development enterprises, and the necessity to promote greater cooperation both within the academic community and within the computer industry to insure that useful curriculum materials will emerge.
String storage and searching for data base applications: Implementation on the INDY backend kernel
Authors: George P. Copeland
Venue: Proceedings of the fourth workshop on Computer architecture for non-numeric processing (1978)

User and hardware cost trends dictate that data base systems should provide more complete functionality, simplicity of use, and reliability by increasing the amount of hardware present in the system. These goals are accomplished with a simple hardware arrangement within a one-dimensional cellular storage system called INDY. The INDY backend kernel is intended as a powerful tool for implementing all data models. The INDY cellular storage array is intended to provide functionality that is difficult to implement efficiently using a conventional hardware arrangement. It allows a simple implementation of improved data independence at high speeds. INDY simultaneously satisfies the time windows of future hardware technologies and user requirements. The importance of strings as a mechanism for defining abstract data types for data base languages is discussed in more detail in another paper. In that paper, a language called STRING is introduced which allows names of data objects to be semantically defined as variable-length strings and compared based on string pattern membership. This paper is concerned with the implementation of string storage and searching required by the STRING language. Implementation of higher level structures and searching requirements (such as sets, rows, tables and hierarchies) on the INDY kernel is treated elsewhere.
Reflections on a language designed to write an operating system
Authors: B. L. Clark, J. J. Horning
Venue: Proceeding of ACM SIGPLAN - SIGOPS interface meeting on Programming languages - operating systems (1973)

Project SUE is writing an extensible time-sharing operating system for the IBM System/360 using a high-level System Language designed especially for the purpose. This paper expresses opinions on the crucial issues in the design of such a language, based on the Project SUE experience.
Programming development control system
Authors: Erkki Juvonen
Venue: ACM SIGAPL APL Quote Quad (1981)

In an effort to optimize Cobol conversion from one environment to another, an APL system to automate various phases of the conversion was employed. This system performed a lot of actual Cobol code conversion itself, as well as managing flow of Cobol programs from one phase of conversion to another. A pleasant side effect to this approach was the minimization of labor necessary to convert the Cobol code. Manually, a tedious chore, the automated conversion required far less manual effort than initially estimated for the entire conversion project. Many APL processed programs require no programmer effort to complete, while most programming required minimal hand work after the APL phase was completed. An excercise in running mixed environment - APL, non-APL, interactive, batch -, this effort was a practical and economical approach to the problem at hand.
The Lattice Security Model In A Public Computing Network
Authors: Paul A. Karger
Venue: Proceedings of the 1978 annual conference (1978)

This paper defines the lattice security model and shows it to be useful in private sector applications of decentralized computer networks. It examines discretionary security models and shows them to be inadequate to protect against &ldquo;Trojan Horse&rdquo; attacks. It examines the management of large security lattices and proposes solutions to the proliferation of categories problem.
An algebraic system for process structuring and interprocess communication
Authors: Takayuki Kimura
Venue: Proceedings of the eighth annual ACM symposium on Theory of computing (1976)

An extension of regular expressions is introduced to represent the activities of synchronizing concurrent processes. A communication link is defined as an automaton (infinite) with one-to-one partial transformations, and communication protocol as an assignment of events to actions of a communication link. A synchronization problem is defined as a problem of concurrent decomposition of a process into a deadlock-free family of processes sharing a communication protocol. It is shown that it is decidable whether a finite family of sequential processes, communicating through a finite link, is deadlock-free or not.
Using APL to monitor APL
Authors: Anton G. Wellbrock, John W. Mizzi, Richard D. Moore
Venue: Proceedings of the eighth international conference on APL (1976)

APL, both in the language and in system libraries, provides aids to the programmer which permit him to monitor and analyze the execution of his defined functions. If he couples the use of error messages with stop and trace control, he can converge upon function definitions which correctly perform his algorithms. If the writer is satisfied with the correctness of the results and now wishes to improve performance, he can invoke any of the workspace analysis routines in the library. These will reveal how the programs are linked together, how variable and label names are being used, and how efficient the functions are in the use of system time and space.
The development of three-dimensional spatial modeling techniques for the construction planning of nuclear power plants
Authors: Harold J. Borkin, Jonn F. McIntosh, James A. Turner
Venue: ACM SIGGRAPH Computer Graphics (1978)

The results are presented of the first phase of a research project on the application of spatial modeling techniques to the process of planning and executing the construction of a nuclear power plant. A computer modeling technique, based on sets of polyhedra and spatial operations, was developed and applied to modeling the components of a nuclear power plant. The objectives of the modeling are: to store and retrieve information about the various systems in the facility; to produce drawings of those systems from any angle in differing amounts of detail; to aid in the search for interference among the parts of the plant by identifying those elements that occupy the same space or are too close to each other; to calculate information such as surface area, length, and volume of selected elements of the plant; and to aid in finding the optimum construction sequence by simulated construction of selected areas of the plant. Computer techniques are described for inputting information by digitizing directly from engineering drawings, for editing the spatial model, for management of the spatial and non-spatial data, and for graphic output from the model. The software is implemented on the University's central time-sharing computer system and on a mini-computer system in the Architectural Research Laboratory.