ppxscal/embedding_network huggingface dataset:
Incremental Computation of Squares and Sums of Squares
Authors: S. G. Smith
Venue: IEEE Transactions on Computers (1989)

An incremental algorithm for computation of sums of squares is presented that is suitable for both most-significant-bit- (MSB-)first and least-significant-bit- (LSB-)first bit-sequential operation. By exploiting symmetry properties of numerical values and evaluation times in the bit-product matrix, it is shown how incremental multipliers can be converted to perform squaring at reduced hardware cost, and sum of squaring at a hardware cost to that of scalar multiplication. By the elimination of redundant computation, existing hardware modules are either reduced in size or assigned to the evaluation of a second squaring computation. The corresponding hardware architectures are derived from a simple conversion of existing incremental scalar multipliers. This conversion process is less practical on standard serial/parallel or serial-pipeline multipliers. A digit-on-line algorithm is outlined for magnitude extraction operations on plane vectors.
Three Inventors-Scenes from Early German Computing History
Authors: Ralf Bülow
Venue: IEEE Annals of the History of Computing (1990)

Most of the inventions described in this article originated in Germany in the 1920s and early 1930s. Emil Schilling filed a patent for a pneumatic calculator control system in 1926; Francisco Campos designed a mechanical storage device in the 20's; and Adolf Weygandt built a relay calculator for determinants in 1932. While the three inventors did not directly effect the development of the modern computer, their ideas can be viewed as parts of independent technological traditions, which are quite common in the history of data processing.
Production trees: a compact representation of parsed programs
Authors: Vance E. Waddle
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1990)

Abstract syntax trees were devised as a compact alternative to parse trees, because parse trees are known to require excessive amounts of storage to represent parsed programs. However, the savings that abstract syntax trees actually achieve have never been precisely described because the necessary analysis has been missing. Without it, one can only measure particular cases that may not adequately represent all the possible behaviors. We introduce a data structure, production trees, that are more compact than either abstract syntax trees or parse trees. Further, we develop the necessary analysis to characterize the storage requirements of parse trees, abstract syntax trees, and production trees and relate the size of all three to the size of the program's text. The analysis yields the parameters needed to characterize these storage behaviors over their entire range. We flesh out the analysis by measuring these parameters for a sample of &ldquo;C&rdquo; programs. For these programs, production trees were from 1/15 to 1/23 the size of the corresponding parse tree, l/2.7 the size of a (minimal) abstract syntax tree, and averaged only 2.83 times the size of the program text.
Design of High-Speed and Cost-Effective Self-Testing Checkers for Low-Cost Arithmetic Codes
Authors: Stanisław J. Piestrak
Venue: IEEE Transactions on Computers (1990)

Methods for designing self-testing checkers (STCs) for arithmetic error-detecting codes are presented. First, general rules for the design of minimal-level STCs for any error-detecting code are given. The design is illustrated with STCs for 3N+B codes, 0>or=B>or=2. Then the recursive structure of both 3N+B codes and residue/inverse-residue codes with check base A=3 is revealed. The resulting design of STCs is very flexible and universal, in the sense that an iterative, cost-effective, or high-speed version of the checker can be designed for either code. The design approach, unlike previous approaches for arithmetic codes, gives a unified treatment to STCs for nonseparate (3N+B) and separate (residue and inverse residue) codes. The speed and the complexity of the STC for a code from either class with n bits are about the same. Both high-speed checkers (which have up to three gate levels) and cost-effective checkers are faster and require less hardware than analogous checkers proposed for 3N codes and for residue codes with A=3.
Nonlinear Multiresolution: A Shape-From-Shading Example
Authors: S. Peleg, G. Ron
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (1990)

A method for image resolution reduction that simulates the reduction of shape resolution and is to be used with shape-from-shading algorithms is presented. Resolution reduction is used for accelerating shape-from-shading algorithms using multiresolution pyramids. The goal of this correspondence is to show that resolution reduction based only on image intensities can be inferior to resolution reduction using knowledge of the surface reflectance. This is true for all cases of parameter estimation from intensity images, when the intensity is not a linear function of the parameters. Since optical reduction of images, as when moving a camera away from the object, is a simple gray-level averaging a question is cast on the general scheme of shape-from-shading. It is concluded that for accurate shape-from-shading one needs to know the distance from the object, and the shape should also be known in advance.
Episodic skeletal-plan refinement based on temporal data
Authors: Samson W. Tu, Michael G. Kahn, Mark A. Musen, L. M. Fagan, Jay C. Ferguson
Venue: Communications of the ACM (1989)

ONCOCIN is a medical expert system that extends the skeletal-planning technique to an applciation area where the history of past events and the duration of actions are important. The system's knowledge base is designed to reflect a hierarchical model of the domain, and its control and inference mechanisms encourage a mixed-initiative style of interaction between the computer and the user.
Environments: Austria compared to the United States
Authors: J. D. Couger, H. Adelsberger
Venue: ACM SIGCPR Computer Personnel (1988)

The objective of the study was to analyze the motivation for computer personnel in Austria compared to the United States. A sample of more than 600 Austrian computer personnel was conducted, with the same diagnostic instruments used to derive a data base on motivation factors for 8,000 U.S. computer personnel. Seventeen Austrian organizations participated in the survey. The two survey populations were found to be quite similar in their rankings of motivation factors and in individual characteristics. Nevertheless, there was a mismatch for Austrian respondents on the two factors most important for motivation--individual need for growth as compared to the job's motivating capacity. A procedure for improving this match is discussed after the survey results are analyzed.
Three-Dimensional Ultrasonic Vision for Robotic Applications
Authors: A. S. Acampora, J. H. Winters
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (1989)

Considers a vision system that uses the echo of a transmitted ultrasonic pulse as the basis for identifying objects. The return of a single pulse from an object generates a three-dimensional acoustical characteristic signature across the aperture of a receiving antenna which can be directly used for object identification. Thus, there is no need to reproduce an accurate visual representation to recognize which of a class of objects is present. Since the signal bandwidth is narrow relative to that of an optical imaging system, faster execution should be possible. The need to remove clutter which can arise in a conventional imaging system, caused by the compression of three dimensions into two, is totally avoided. The authors calculate a fundamental limit (in the Shannon sense) on the number of objects that can be distinguished by an ultrasonic system and show that, for modest signal-to-noise ratios and an object space comparable to the beamwidth, an enormous number of different objects can still, in principle, be resolved.
Computer support for cooperative design (invited paper)
Authors: Susanne Bødker, Pelle Ehn, Joergen Knudsen, Morten Kyng, Kim Madsen
Venue: Proceedings of the 1988 ACM conference on Computer-supported cooperative work (1988)

Computer support for design as cooperative work is the subject of our discussion in the context of our research program on Computer Support in Cooperative Design and Communication. We outline our theoretical perspective on design as cooperative work, and we exemplify our approach with reflections from a project on computer support for envisionment in design &mdash; the APLEX and its use. We see envisionment facilities as support for both experiments with and communication about the future use situation. As a background we sketch the historical roots of our program &mdash; the Scandinavian collective resource approach to design and use of computer artifacts, and make some critical reflections on the rationality of computer support for cooperative work.
Constrained equational reasoning
Authors: C. Kirchner
Venue: Proceedings of the ACM-SIGSAM 1989 international symposium on Symbolic and algebraic computation (1989)

We describe and give the foundation for constrained equational reasoning. Equational reasoning is based on replacement of equal by equal and these replacements use substitutions determined as solutions of equations. Constrained equational reasoning takes advantage from the information contained into the equation itself to develop equational reasoning, avoids instantiations as much as possible and solve constraints as late as possible. For theories like associativity-commutativity this can lead to a considerable reduction of the substitution computation overhead, bringing some problems, untractable in practice, to the realm of computational reality.
A graphical test bed (SIMTBED) for analyzing and reporting the results of a statistical experiment
Authors: P. A. W. Lewis
Venue: Proceedings of the 21st conference on Winter simulation (1989)

It is unfortunately true that statisticians seldom apply the tools of their own trade to the analysis of simulation experiments. This refers to the experimental design for the input, and the data presentation and summary and analysis for the output. A graphical test bed in which the output of a simulation experiment can be reported and analyzed is described. From the graphics and the associated numerics the experimenter can summarize and see simultaneously relative properties--such as bias, normality and spread--of several estimators of a characteristic of the population for up to sixteen sample sizes. The evolution of these properties with sample size is also displayed and analyzed using regression and asymptotic expansions. The graphics is supported on a line printer to make it and the program portable. The use of the program is illustrated by a study of estimates of serial correlation in normal time series.The latest version of SIMTBED incorporates a restart facility which makes the program ideal for efficient utilization of microcomputers. A microcomputer version which uses color in the output to differentiate factors in the simulation is described, as well as improvements which are being incorporated into the latest version. This latest version will run on micros, minis or mainframes.
Interactive Visualization of 3D Medical Data
Authors: Henry Fuchs, Marc Levoy, S. M. Pizer
Venue: Computer (1989)

Techniques for rendering 3-D medical data are described. They consist of (1) surface-based techniques, which apply a surface detector to the sample array, then fit geometric primitives to the detected surfaces, and finally render the resulting geometric representation; (2) binary voxel techniques, which begin by thresholding the volume data to produce a three-dimensional binary array; the cuberille algorithm then renders this array by treating 1's as opaque cubes having six polygonal faces; and (3) volume-rendering techniques, a variant of the binary voxel techniques in which a color and a partial opacity are assigned to each voxel; images are formed from the resulting colored, semitransparent volume by blending together voxels projecting to the same pixel on the picture plane. Specialized display devices (stereo viewers, varifocal mirrors, cine sequences, real-time image-generation systems, and head-mounted displays) are described. Topics for future research are identified.
An improved primal simplex variant for pure processing networks
Authors: Michael D. Chang, Chou-Hong J. Chen, Michael Engquist
Venue: ACM Transactions on Mathematical Software (TOMS) (1989)

In processing networks, ordinary network constraints are supplemented by proportional flow restrictions on arcs entering or leaving some nodes. This paper describes a new primal partitioning algorithm for solving pure processing networks using a working basis of variable dimension. In testing against MPSX/370 on a class of randomly generated problems, a FORTRAN implementation of this algorithm was found to be an order-of-magnitude faster. Besides indicating the use of our methods in stand-alone fashion, the computational results also demonstrate the desirability of using these methods as a high-level module in a mathematical programming system.
A Decomposition Approach for Balancing Large-Scale Acyclic Data Flow Graphs
Authors: Po Rong Chang, C. S. G. Lee
Venue: IEEE Transactions on Computers (1990)

An efficient decomposition technique that provides a more systematic approach in solving the optimal buffer assignment problem of an acyclic data-flow graph (ADFG) with a large number of computational nodes is presented. The buffer assignment problem is formulated as an integer linear optimization problem that can be solved in pseudopolynomial time. However, if the size of an ADFG increases, then integer linear constraint equations may grow exponentially, making the optimization problem more intractable. The decomposition approach utilizes the critical path concept to decompose a directed ADFG into a set of connected subgraphs, and the integer linear optimization technique can be used to solve the buffer assignment problem in each subgraph. Thus, a large-scale integer linear optimization problem is divided into a number of smaller-scale subproblems, each of which can be easily solved in pseudopolynomial time. Examples are given to illustrate the proposed decomposition technique.
An Analytic/Empirical Study of Distributed Sorting on a Local Area Network
Authors: W. S. Luk, Franky Ling
Venue: IEEE Transactions on Software Engineering (1989)

A model for distributed sorting on a local area network (LAN) is presented. This model, contrary to the conventional model, takes into account both local processing time and communication time. This model is intended to provide a framework within which the performances of various distributed sorting algorithms are analyzed and implemented on Ethernet-connected Sun workstations. The empirical results by and large agree with the predictions derivable from the model. They show that local processing, particularly sorting of local subfiles, dominates the whole process, as far as response time is concerned. All algorithms examined have similar asymptotic behavior for large files. For medium-sized files, the degree of communication parallelism has a great impact on algorithm performance.
An example illustrating modularity, abstraction information hiding using
Authors: Ivan B. Liss, Thomas C. McMillan
Venue: ACM SIGCSE Bulletin (1989)

In this paper we present, by way of an example, techniques for using the independently compilable units of Turbo Pascal 4.0. (Turbo Pascal is a Pascal compiler available from Borland International.) We suggest ways that units can be used to illustrate software engineering principles, including information hiding, modularity, and procedural and data abstraction. The paper describes Turbo Pascal units and gives a sample project. It also suggests a number of ways that this or similar projects can be used to illustrate these principles to CS1 and CS2 classes.
Expressions for Completely and Partly Unsuccessful Batched Search of Sequential and Tree-Structured Files
Authors: Yannis Manolopoulos, J. G. Kollias
Venue: IEEE Transactions on Software Engineering (1989)

A number of previous studies derived expressions for batched searching of sequential and tree-structured files on the assumption that all the keys in the batch exist in the file, i.e., all the searches are successful. Formulas for batched searching of sequential and tree-structured files are derived, but the assumption made is that either all or part of the keys in the batch do not exist in the file, i.e., the batched search is completely or partly unsuccessful.
Software pipelining: an effective scheduling technique for VLIW machines
Authors: M. Lam
Venue: ACM SIGPLAN Notices (1988)

This paper shows that software pipelining is an effective and viable scheduling technique for VLIW processors. In software pipelining, iterations of a loop in the source program are continuously initiated at constant intervals, before the preceding iterations complete. The advantage of software pipelining is that optimal performance can be achieved with compact object code. This paper extends previous results of software pipelining in two ways: First, this paper shows that by using an improved algorithm, near-optimal performance can be obtained without specialized hardware. Second, we propose a hierarchical reduction scheme whereby entire control constructs are reduced to an object similar to an operation in a basic block. With this scheme, all innermost loops, including those containing conditional statements, can be software pipelined. It also diminishes the start-up cost of loops with small number of iterations. Hierarchical reduction complements the software pipelining technique, permitting a consistent performance improvement be obtained. The techniques proposed have been validated by an implementation of a compiler for Warp, a systolic array consisting of 10 VLIW processors. This compiler has been used for developing a large number of applications in the areas of image, signal and scientific processing.
The NX/2 operating system
Authors: P. Pierce
Venue: Proceedings of the third conference on Hypercube concurrent computers and applications: Architecture, software, computer systems, and general issues - Volume 1 (1988)

NX/2 is the operating system which runs on the nodes of the Intel iPSC&reg;/2 concurrent supercomputer. NX/2 provides all of the standard system services found in the original iPSC node operating system, such as memory management, multiple process control, message passing services, and intertask protection. This paper focuses on the major node operating system enhancements brought about by two different requirements. First, NX/2 had to support very high speed and high throughput message passing. In this regard, we show how NX/2 was tuned to the 32-bit architecture of the iPSC/2 nodes and the Direct Connect technology used to implement the communication subsystem. Second, NX/2 had to support a more streamlined and flexible set of message passing service calls. In this regard, we describe the new set of message passing system calls and discuss how NX/2 implements them. The calls range from a simple, effective set of synchronous calls to advanced asynchronous calls which allow overlap of message passing and processing as well as interrupt-driven message handling.
File organization using composite perfect hashing
Authors: M. V. Ramakrishna, P.-:1V Larson
Venue: ACM Transactions on Database Systems (TODS) (1989)

Perfect hashing refers to hashing with no overflows. We propose and analyze a composite perfect hashing scheme for large external files. The scheme guarantees retrieval of any record in a single disk access. Insertions and deletions are simple, and the file size may vary considerably without adversely affecting the performance. A simple variant of the scheme supports efficient range searches in addition to being a completely dynamic file organization scheme. These advantages are achieved at the cost of a small amount of additional internal storage and increased cost of insertions.
Implementing a graph-colouring algorithm in Parlog
Authors: M. Huntbach
Venue: ACM SIGPLAN Notices (1989)

In this paper we give a Parlog program for a parallel algorithm for the graph-colouring problem. Although the algorithm as originally given refers to a specific architecture, it translates with ease into Parlog. Since the parallelism in Parlog is virtual, the same program may be used on any architecture on which Parlog is implemented.
From arcane ASCII to the printed page - computer basics
Authors: Gee Lee, Vicki Suter
Venue: ACM SIGUCCS Newsletter (1989)

To paraphrase John Seybold (Publishing from the Desktop), human computer users have the illusion that computers talk in ordinary text, while the computer believes humans communicate in positive and negative voltage patterns called "bit patterns." One bridge between human and machine that helps maintain this illusion is a convention called the American Standard Code for Information Interchange (ASCII).
Performance of optimistic make
Authors: R. Bubenik, W. Zwaenepoel
Venue: Proceedings of the 1989 ACM SIGMETRICS international conference on Measurement and modeling of computer systems (1989)

Optimistic make is a version of make that executes the commands necessary to bring targets up-to-date prior to the time the user types a make request. Side effects of these optimistic computations (such as file or screen updates) are concealed until the make request is issued. If the inputs read by the optimistic computations are identical to the inputs the computation would read at the time the make request is issued, the results of the optimistic computations are used immediately, resulting in improved response time. Otherwise, the necessary computations are reexecuted. We have implemented optimistic make in the V-System on a collection of SUN-3 workstations. Statistics collected from this implementation are used to synthesize a workload for a discrete-event simulation and to validate its results. The simulation shows a speedup distribution over pessimistic make with a median of 1.72 and a mean of 8.28. The speedup distribution is strongly dependent on the ratio between the target out-of-date times and the command execution times. In particular, with faster machines the median of the speedup distribution grows to 5.1, and then decreases again. The extra machine resources used by optimistic make are well within the limit of available resources, given the large idle times observed in many workstation environments.