ppxscal/embedding_network huggingface dataset:
A Fast Serial-Parallel Binary Multiplier
Authors: R. Gnanasekaran
Venue: IEEE Transactions on Computers (1985)

A fast serial-parallel (FSP) multiplier design is derived from the carry-save add-shift (CSAS) multiplier structure. The CSAS technique accepts multiplier bits serially (lsb first) and produces outputs serially (lsb first). Multiplication of two n bit unsigned numbers requires 2n clock cycles to complete the process out of which n clocks are used for n-row carry-save additions, and the other n clocks are utilized only to propagate the remaining carries. This CSAS structure is modified so that it operates as a CSAS unit for the first n clocks and reconfigures itself as an n bit ripple-carry parallel adder at the (n + 1)st clock, thus allowing the carries to ripple through, eliminating the delay due to storage elements during the last n clocks. It is shown that this modification results in an about one-third increase in speed for an approximately one-third increase in hardware. The technique is extended to signed numbers represented in 2's complement form. Also, it is shown how these implementations can be modularized.
Toward memory-based reasoning
Authors: Craig Stanfill, David Waltz
Venue: Communications of the ACM (1986)

The intensive use of memory to recall specific episodes from the past&mdash;rather than rules&mdash;should be the foundation of machine reasoning.
A comparison of tiled and overlapping windows
Authors: S. A. Bly, J. K. Rosenberg
Venue: ACM SIGCHI Bulletin (1986)

It is widely believed that overlapping windows are preferable to tiled (non-overlapping) ones, but there is very little research to support that belief. An analysis of the basic characteristics of windowing regimes predicts that there are, in fact, situations where overlapping windows are inferior to tiled. An experiment to test this prediction verified that there are indeed tasks and users for which tiled windows yield faster performance. This result suggests a need for closer study of the principles underlying windowing regimes, so that designers have a better understanding of the tradeoffs involved in using them.
Analysis of the binary complexity of asymptotically fast algorithms for linear system solving
Authors: Brent Gregory, Erich Kaltofen
Venue: ACM SIGSAM Bulletin (1988)

Two significant developments can be distinguished in the theory of algebraic algorithm design. One is that of fast algorithms in terms of counting the arithmetic operations, such as the asymptotically fast matrix multiplication procedures and related linear algebra algorithms or the asymptotically fast polynomial multiplication procedures and related polynomial manipulation algorithms. The other is to observe the actual bit complexity when such algorithms are performed for concrete fields, in particular the rational numbers. It was discovered in the mid-1960s that for rational polynomial GCD operations the classical algorithm can lead to exponential coefficient size growth. The beautiful theory of subresultants by Collins [7] and Brown amp; Traub [5] explains, however, that the size growth is not inherent but a consequence of over-simplified rational arithmetic. Similar phenomena were observed for the Gaussian elimination procedure [2], [9].
Bidirectional reflection functions from surface bump maps
Authors: Brian Cabral, Nelson Max, Rebecca Springmeyer
Venue: Proceedings of the 14th annual conference on Computer graphics and interactive techniques (1987)

The Torrance-Sparrow model for calculating bidirectional reflection functions contains a geometrical attenuation factor to account for shadowing and occlusions in a hypothetical distribution of grooves on a rough surface. Using an efficient table-based method for determining the shadows and occlusions, we calculate the geometric attenuation factor for surfaces defined by a specific table of bump heights.Diffuse and glossy specular reflection of the environment can be handled in a unified manner by using an integral of the bidirectional reflection function times the environmental illumination, over the hemisphere of solid angle above a surface. We present a method of estimating the integral, by expanding the bidirectional reflection coefficient in spherical harmonics, and show how the coefficients in this expansion can be determined efficiently by reorganizing our geometric attenuation calculation.
On the selection of efficient record segmentations and backup strategies for large shared databases
Authors: Salvatore T. March, Gary D. Scudder
Venue: ACM Transactions on Database Systems (TODS) (1984)

In recent years the information processing requirements of business organizations have expanded tremendously. With this expansion, the design of databases to efficiently manage and protect business information has become critical. We analyze the impacts of record segmentation (the assignment of data items to segments defining subfiles), an efficiency-oriented design technique, and of backup and recovery strategies, a data protection technique, on the overall process of database design. A combined record segmentation/backup and recovery procedure is presented and an application of the procedure is discussed. Results in which problem characteristics are varied along three dimensions: update frequencies, available types of access paths, and the predominant type of data retrieval that must be supported by the database, are presented.
STEP development tools: METASTEP language system
Authors: D. L. Wilburn, S. Schleimer
Venue: Proceedings of the 18th annual workshop on Microprogramming (1985)

STEP Development Tools (SDT) is a general-purpose microprogram development system. The METASTEP language system is composed of four tools of the SDT needed to write microprograms: a Definition Processor, a Retargetable Assembler, a Retargetable Cross-Assembler, and a Relocatable Linker. These tools are of commercial quality, providing complete languages, quality diagnostics, full interface to other support tools, and high performance. The language system supports microcode debug by providing complete run-time information and by interacting directly with other debug tools provided in SDT.
Object-oriented development in an industrial environment
Authors: Ivar Jacobson
Venue: ACM SIGPLAN Notices (1987)

Object-oriented programming is a promising approach to the industrialization of the software development process. However, it has not yet been incorporated in a development method for large systems. The approaches taken are merely extensions of well-known techniques when 'programming in the small' and do not stand on the firm experience of existing developments methods for large systems. One such technique called block design has been used within the telecommunication industry and relies on a similar paradigm as object-oriented programming. The two techniques together with a third technique, conceptual modeling used for requirement modeling of information systems, have been unified into a method for the development of large systems.
Optimal Rotation Problems in Channel Routing
Authors: M J Atallah, SE Hambrusch
Venue: IEEE Transactions on Computers (1986)

In the channel routing problem, a problem arising in the design of layout systems, two rows of terminals which are opposite each other, have to be connected. We study what effect the rotation of one row of terminals has on the cost measures of the routing phase. The cost measures we consider are the density, which is proportional to the width of the channel, the crossing number, which is closely related to the number of crossings between two wires in the channel, and the length of nets, which is related to the wire length needed in the routing. We present algorithms for determining the rotations which minimize each of these cost measures. The algorithms can also be used for solving optimal offset problems.
MATCH&mdash;a new high-level relational operator for pattern matching
Authors: James P. Held, John V. Carlis
Venue: Communications of the ACM (1987)

Pattern matching is a common and fundamental operation of many applications, such as expert systems (ES). With continued growth the knowledge bases of such systems will need database management systems (DBMS) support. Providing this support will require extending DBMS to meet the needs of these systems. We have developed an operator that extends the relational data model to do pattern matching with very complex stored patterns.
Producer: A tool for translating Smalltalk-80 to Objective-C
Authors: Brad J. Cox, Kurt J. Schmucker
Venue: Conference proceedings on Object-oriented programming systems, languages and applications (1987)

Source to source translation tools provide a way of integrating the strengths of production programming environments like C/UNIX&trade; with rapid prototyping environments like Smalltalk-80&trade; into a comprehensive hybrid environment that spans more of the software development life-spiral than ever before. This paper describes a tool-assisted process for translating Smalltalk-80 programs into Objective-C&trade;, and shows how the tool, called Producer, is used in practice. To assist others in using this translation tool, we have made Producer publicly available without charge on USENET.
The development of ODE methods: a symbiosis between hardware and numerical analysis
Authors: C. W. Gear, R. Skeel
Venue: Proceedings of the ACM conference on History of scientific and numeric computation (1987)

The history of the numerical solution of ordinary differential equations is surveyed from its origins three centuries ago up to the early 1970s. The increasing demands for the solution of ODEs, especially for exterior ballistics and celestial mechanics, has been a primary stimulus of and a significant influence on the early development of computers starting with the analog differential analyzers and continuing to the first wired-program digital computers&mdash;whose form foreshadowed future developments in parallel computers. At the same time the hardware has, of course, affected the algorithms used, but this has resulted in surprisingly few innovations in numerical techniques.
Isomorphisms Between Petr Nets and Dataflow Graphs
Authors: Krishna M. Kavi, Billy P. Buckles, U. Narayan Bhat
Venue: IEEE Transactions on Software Engineering (1987)

Dataflow graphs are a generalized model of computation. Uninterpreted dataflow graphs with nondeterminism resolved via probabilities are shown to be isomorphic to a class of Petri nets known as free choice nets. Petri net analysis methods are readily available in the literature and this result makes those methods accessible to dataflow research. Nevertheless, combinatorial explosion can render Petri net analysis inoperative. Using a previously known technique for decomposing free choice nets into smaller components, it is demonstrated that, in principle, it is possible to determine aspects of the overall behavior from the particular behavior of components.
An interfacing and electronics course for computer science majors
Authors: Michael Henry
Venue: ACM SIGCSE Bulletin (1987)

A course suitable for inclusion in the Curriculum '78 recommendations [1] under Special Topics is described here. The course introduces students to microcomputer interfacing and digital electronics principles via preassembled breadboard projects. For each of the projects, students develop software control and learn circuit design principles. The course covers digital devices without using electronics workstations, but a small microcomputer lab is required.
Partial match retrieval of multidimensional data
Authors: Philippe Flajolet, Claude Puech
Venue: Journal of the ACM (JACM) (1986)

A precise analysis of partial match retrieval of multidimensional data is presented. The structures considered here are multidimensional search trees (k-d-trees) and digital tries (k-d-tries), as well as structures designed for efficient retrieval of information stored on external devices. The methods used include a detailed study of a differential system around a regular singular point in conjunction with suitable contour integration techniques for the analysis of k-d-trees, and properties of the Mellin integral transform for k-d-tries and extendible cell algorithms.
Recognizing primes in random polynomial time
Authors: L. Adleman, M. Huang
Venue: Proceedings of the nineteenth annual ACM symposium on Theory of computing (1987)

This paper is the first in a sequence of papers which will prove the existence of a random polynomial time algorithm for the set of primes. The techniques used are from arithmetic algebraic geometry and to a lesser extent algebraic and analytic number theory. The result complements the well known result of Strassen and Soloway that there exists a random polynomial time algorithm for the set of composites.
Some design guidelines for an information center to support office information systems
Authors: Albert L. Lederer, Vijay Sethi
Venue: ACM SIGOIS Bulletin (1987)

An Information Center can promote more effective Office Information Systems. A division of a large, eastern U.S. corporation designed an Information Center to support Office Information Systems. A detailed account of the Information Center Implementation, growth, and expansion is provided. A number of recommendations regarding Information Center hardware, software, structure, consultant characteristics, user assistance, and justification method are proposed.
Management by heuristics expert systems
Authors: Earl C Joseph
Venue: Proceedings of the conference on The 1987 ACM SIGBDP-SIGCPR Conference (1987)

This paper describes a new system for amplifying BDP professionals and management in general through a process for both 1) structuring management heuristics and 2) through expert systems incorporating the heuristics generated from the process. This new process has been named &ldquo;Management by Heuristics&rdquo; or MBH by its creator, the author of this paper. MBH attempts to minimize the problems of knowledge representation and capture through the use of a structured process which integrates heuristic systems for: &ldquo;IF-THEN&rdquo; rules Frame, script and tree structures Example based structures and tutorials Object, procedure and logic orientations.
Swamp: a fast processor for Smalltalk-80
Authors: David M. Lewis, David R. Galloway, Robert J. Francis, Brian W. Thomson
Venue: ACM SIGPLAN Notices (1986)

A processor for the Smalltalk-80&uarr; programming language is described. This machine is implemented using a standard bit slice ALU and sequencer, TTL MSI, and NMOS LSI RAMS. It executes an instruction set similar to the Smalltalk-80 virtual machine instruction set. The data paths of the machine are optimized for rapid Smalltalk-80 execution by the inclusion of a context cache, tag checking, and a hardware method cache. Each context is only partly initialized when created, and has no memory allocated for it until a possibly non-LIFO reference to it is created. The machine is microprogrammed, and uses a simple next micro-address prediction strategy to obtain most of the performance of pipelining without the attendant complexity. The machine can execute simple instructions at over 7M bytecodes per second and has a predicted average throughput of 1.9M bytecodes per second.A processor for the Smalltalk-80&uarr; programming language is described. This machine is implemented using a standard bit slice ALU and sequencer, TTL MSI, and NMOS LSI RAMS. It executes an instruction set similar to the Smalltalk-80 virtual machine instruction set. The data paths of the machine are optimized for rapid Smalltalk-80 execution by the inclusion of a context cache, tag checking, and a hardware method cache. Each context is only partly initialized when created, and has no memory allocated for it until a possibly non-LIFO reference to it is created. The machine is microprogrammed, and uses a simple next micro-address prediction strategy to obtain most of the performance of pipelining without the attendant complexity. The machine can execute simple instructions at over 7M bytecodes per second and has a predicted average throughput of 1.9M bytecodes per second.
The multiway rendezvous
Authors: Arthur Charlesworth
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1987)

The multiway rendezvous is a natural generalization of the rendezvous in which more than two processes may participate. The utility of the multiway rendezvous is illustrated by solutions to a variety of problems. To make their simplicity apparent, these solutions are written using a construct tailor-made to support the multiway rendezvous. The degree of support for multiway rendezvous applications by several well-known languages that support the two-way rendezvous is examined. Since such support for the multiway rendezvous is found to be inadequate, well-integrated extensions to these languages are considered that would help provide such support.
Retrofitting the VAX-11/780 Microarchitecture for IEEE Floating Point Arithmetic Implementation Issues, Measurements, and Analysis
Authors: David B. Aspinwall, Yale N. Patt
Venue: IEEE Transactions on Computers (1985)

The VAX-11/7801 was designed specifically to implement the VAX architecture. As such, it does not support the IEEE standard for floating point arithmetic. A project was undertaken to provide this support by modifying the 11/780 microarchitecture. Our objective was to produce a microengine that would efficiently execute the VAX instruction set, modified to handle VAX floating point instructions in accordance with the IEEE standard. Our methodology was to make minimal changes to the 11/780 hardware, relying primarily on changes to the microcode. This paper describes the modifications required to implement the IEEE standard, examines the various design alternatives available to us, presents measurements of our implementation, and analyzes our results. We also offer some comments on the matter of retrofitting an existing architecture to a new unintended use.
Accurate Solid Modeling Using Polyhedral Approximations
Authors: Joshua U. Turner
Venue: IEEE Computer Graphics and Applications (1988)

Although curved-surface solid modeling systems achieve a higher level of accuracy than faceted systems, they also introduce a host of topological, geometric, and numerical complications. A method for calculating accurate boundary representations of solid models is introduced that reduces the impact of these complications. The method uses a pair of bounding polyhedral approximations to enclose the boundary of each object. A structural analysis automatically determines where to make adaptive refinements to the polyhedrons to assure the topological validity of the results. Potential singularities are localized. The implementation is an experimental extension to the Geometric Design Processor (GDP) solid modeling system.
Systematic t-Error Correcting/All Unidirectional Error Detecting Codes
Authors: D Nikolos, N Gaitanis, G Philokyprou
Venue: IEEE Transactions on Computers (1986)

In this paper we give methods for the construction of systematic t-random error correcting and all unidirectional error detecting codes. Also we give the encoding/decoding algorithms and discuss their implementation.
On the Diagnosability of a General Model of System with Three-Valued Test Outcomes
Authors: A Sengupta, A Sen
Venue: IEEE Transactions on Computers (1986)

The problem of diagnosability of a system with three-valued test outcomes was considered in earlier works [1]-[3]. However all these works assume the system to be modeled as in [4]. In this correspondence, we consider a more general model of the system and study the diagnosability criteria in presence of three-valued test outcomes. In this model, each unit is tested jointly by a number of other units of the system as opposed to each test being carried out by a single unit of the system as in [4]. Necessary and sufficient conditions for the diagnosability of a system under this general model have been presented in this correspondence. Throughout the correspondence, diagnosability without repair has been considered.
Completing an MIMD multiprocessor taxonomy
Authors: Eric E. Johnson
Venue: ACM SIGARCH Computer Architecture News (1988)

MIMD multiprocessor architectures have been classified as shared memory, message passing, or "hybrid" architectures. This taxonomy is shown to be incomplete, and an alternative complete taxonomy is suggested. Examples of each class of the taxonomy are discussed, along with general attributes of the classes.
Documentation for user-developed applications with high documentation requirements
Authors: J. K. Pierson, Karen A. Forcht, Jorge Moser
Venue: ACM SIGDOC Asterisk Journal of Computer Documentation (1988)

Nontraditional systems development by end users has become commonplace during the last decade. The roots of this phenomenon lie in the development of easy-to-use software tools, the widespread availability of computer power, and the increasing sophistication of computer users with primary job responsibilities outside the realm of software development.
An imperative sentence processor for voice interactive office applications
Authors: Alan W. Biermann, Linda Fineman, Kermit C. Gilbert
Venue: ACM Transactions on Information Systems (TOIS) (1985)

An imperative sentence processor that enables a user to manipulate text with connected speech and touch-graphics input is described. The processor includes capabilities to follow dialogue focus, execute a variety of imperative commands, and handle nested noun groups, pronouns, and other phenomena. A micromodel of the system, giving enough of the structure to enable the reader to observe internal mechanisms in considerable detail, is included. This processor is designed to be transportable to a number of other office automation domains such as calendar management, message-passing, and desk calculation. Various examples and statistics related to its behavior in the text manipulation application are given. The system has been implemented in PASCAL and can run on any machine that supports this language.
A scalable dataflow structure store
Authors: K. Hawakami, J. R. Gurd
Venue: Proceedings of the 13th annual international symposium on Computer architecture (1986)

A design for a highly parallel data structure store for the prototype Manchester Dataflow Computer is presented. The main design objective is to allow all storage functions to be performed concurrently. The functions include space allocation and garbage collection, as well as operations for reading and writing the store. The resulting design is scalable in that an incremental increase in performance for any function can be achieved by adding appropriate hardware modules into the system. A relative balance in performance between the different functions can therefore be achieved. In the hardware structure store, the logical and the physical function units are designed separately. This increases flexibility for configuring multiprocessor dataflow systems. A single hardware module performing all the functions has been constructed and attached to the prototype Manchester Dataflow Machine. The performance of this configuration is discussed.
Modeling of Concurrent Task Execution in a Distributed System for Real-Time Control
Authors: D. Peng, K. G. Shin
Venue: IEEE Transactions on Computers (1987)

In a distributed system that implements real-time control, computational tasks are distributed over different nodes for execution to improve response time and system reliability. To model system behavior, tasks in each node are first decomposed into activities. The activities and precedence constraints among them are then modeled by a generalized stochastic Petri net (GSPN). Finally, a sequence of homogeneous continuous-time Markov chains (CTMC's) is built from the GSPN to model the concurrent task execution in the system.