ppxscal/embedding_network huggingface dataset:
Principles and applications of pencil tracing
Authors: Mikio Shinya, T. Takahashi, Seiichiro Naito
Venue: ACM SIGGRAPH Computer Graphics (1987)

Pencil tracing, a new approach to ray tracing, is introduced for faster image synthesis with more physical fidelity. The paraxial approximation theory for efficiently tracing a pencil of rays is described and analysis of its errors is conducted to insure the accuracy required for pencil tracing. The paraxial approimation is formulated from a 4x4 matrix (a system matrix) that provides the basis for pencil tracing and a variety of ray tracing techniques, such as beam tracing, ray tracing with cones, ray-object intersection tolerance, and a lighting model for reflection and refraction. In the error analysis, functions that estimate approximation errors and determine a constraint on the spread angle of a pencil are given.The theory results in the following fast ray tracing algorithms; ray tracing using a system matrix, ray interpolation, and extended 'beam tracing' using a 'generalized perspective transform'. Some experiments are described to show their advantages. A lighting model is also developed to calculate the illuminance for refracted and reflected light.
The performance of a precedence-based queuing discipline
Authors: John N. Tsitsiklis, Christos H. Papadimitriou, Pierre Humblet
Venue: Journal of the ACM (JACM) (1986)

A queuing system with infinitely many servers, and with the following queuing discipline is considered: For any two jobs i and j in the system, such that i arrived later than j, there is a fixed probability p that i will have to wait for j's execution to terminate before i starts executing. This queuing system is a very simple model for database concurrency control via &ldquo;static&rdquo; locking, as well as of parallel execution of programs consisting of several interdependent processes. The problem of determining the maximum arrival rate (as a function of p) that can be sustained before this system becomes unstable is studied. It is shown that this rate is inversely proportional to p, and close upper and lower bounds on the constant for the case of deterministic departures are found. The result suggests that the degree of multiprogramming of multiuser databases, or the level of parallelism of concurrent programs, is inversely proportional to the probability of conflict, and that the constant is small and known within a factor of 2. The technique used involves the computation of certain asymptotic parameters of a random infinite directed acyclic graph (dag) that seem of interest by themselves.
Distributed cooperation with action systems
Authors: R. J. R. Back, F. Kurki-Suonio
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1988)

Action systems provide a method to program distributed systems that emphasizes the overall behavior of the system. System behavior is described in terms of the possible interactions (actions) that the processes can engage in, rather than in terms of the sequential code that the processes execute. The actions provide a symmetric communication mechanism that permits an arbitrary number of processes to be synchronized by a common handshake. This is a generalization of the usual approach, employed in languages like CSP and Ada, in which communication is asymmetric and restricted to involve only two processes. Two different execution models are given for action systems: a sequential one and a concurrent one. The sequential model is easier to use for reasoning, and is essentially equivalent to the guarded iteration statement by Dijkstra. It is well suited for reasoning about system properties in temporal logic, but requires a stronger fairness notion than it is reasonable to assume a distributed implementation will support. The concurrent execution model reflects the true concurrency that is present in a distributed execution, and corresponds to the way in which the system is actually implemented. An efficient distributed implementation of action systems on a local area network is described. The fairness assumptions of the concurrent model can be guaranteed in this implementation. The relationship between the two execution models is studied in detail in the paper. For systems that will be called fairly serializable, the two models are shown to be equivalent. Proof methods are given for verifying this property of action systems. It is shown that for fairly serializable systems, properties that hold for any concurrent execution of the system can be established by temporal proofs that are conducted entirely within the simpler sequential execution model.
A Language and System for the Construction and Tuning of Parallel Programs
Authors: Karsten Schwan, Rajiv Ramnath, Sridhar Vasudevan, David Ogle
Venue: IEEE Transactions on Software Engineering (1988)

The programming of efficient parallel software typically requires extensive experimentation with program prototypes. To facilitate such experimentation, any programming system that supports rapid prototyping of parallel programs should provide high-level language primitives with which programs can be explicitly, statically, or dynamically tuned with respect to performance and reliability. When using such primitives, programmers should not need to interact explicitly or even be aware of the different software tools involved in program construction and tuning, such as compilers, linkers, and loaders. In addition, such language primitives should be able to refer conveniently to the information about the executing program and the parallel hardware required for tuning. Such information may include monitoring data about the current or previous program or even hints regarding appropriate tuning decisions. Language primitives and an associated programming system for program tuning are presented in this paper. The primitives and system have been implemented, and have been tested with several parallel applicationson a network of UNIX@ workstations.
A complete notation for Ada charts
Authors: J M Bishop
Venue: ACM SIGAda Ada Letters (1986)

Several attempts have been made to define notations for diagrams that can represent the structure of an Ada program in terms of the interaction between its packages and tasks1, 2, 3. While handling the issue of visibility fairly well, none of these gives any guidance for the more difficult areas of Ada, such as generics, task creation and exceptions. The notation described here is complete. It employs a few carefully chosen features in a consistent way to construct an easily understandable chart of an Ada system. The notation is adaptable for use by hand or by computers with graphic capabilities.
Concurrent Certifications by Intervals of Timestamps in Distributed Database Systems
Authors: C. Boksenbaum, M. Cart, J. Ferrié, J.-F. Pons
Venue: IEEE Transactions on Software Engineering (1987)

This paper introduces, as an optimistic concurrency control method, a new certification method by means of intervals of timestamps, usable in a distributed database system. The main advantage of this method is that it allows a chronological commit order which differs from the serialization one (thus avoiding rejections or delays of transactions which occur in usual certification methods or in classical locking or timestamping ones). The use of the dependency graph permits both classifying this method among existing ones and proving it. The certification protocol is first presented under the hypothesis that transactions' certifications are processed in the same order on all the concerned sites; it is then extended to allow concurrent certifications of transactions.
Semistructured messages are surprisingly useful for computer-supported coordination
Authors: Thomas W. Malone, Kenneth R. Grant, Kum-Yew Lai, Ramana Rao, David Rosenblitt
Venue: ACM Transactions on Information Systems (TOIS) (1987)

This paper argues that using a set of semistructured message templates is surprisingly helpful in designing a variety of computer-based communication and coordination systems. Semistructured messages can help provide automatic aids for (1) composing messages to be sent, (2) selecting, sorting, and prioritizing messages that are received, (3) responding automatically to some messages, and (4) suggesting likely responses to other messages. The use of these capabilities is illustrated in a range of applications including electronic mail, computer conferencing, calendar management, and task tracking. The applications show how ideas from artificial intelligence (such as inheritance and production rules) and ideas from user interface design (such as interactive graphical editors) can be combined in novel ways for dealing with semistructured messages. The final part of the paper discusses how communities can evolve a useful set of message type definitions.
The ZS-1 central processor
Authors: J. E. Smith, G. E. Dermer, B. D. Vanderwarn, S. D. Klinger, C. M. Rozewski
Venue: ACM SIGARCH Computer Architecture News (1987)

The Astronautics ZS-1 is a high speed, 64-bit computer system designed for scientific and engineering applications. The ZS-1 central processor uses a decoupled architecture, which splits instructions into two streams---one for fixed point/memory address computation and the other for floating point operations. The two instruction streams are then processed in parallel. Pipelining is also used extensively throughout the ZS-1.This paper describes the architecture and implementation of the ZS-1 central processor, beginning with some of the basic design objectives. Descriptions of the instruction set, pipeline structure, and virtual memory implementation demonstrate the methods used to satisfy the objectives. High performance is achieved through a combination of static (compile-time) instruction scheduling and dynamic (run-time) scheduling. Both types of scheduling are illustrated with examples.
A survey of machine translation: its history, current status, and future prospects
Authors: Jonathan Slocum
Venue: Computational Linguistics (1985)

Elements of the history, state of the art, and probable future of Machine Translation (MT) are discussed. The treatment is largely tutorial, based on the assumption that this audience is, for the most part, ignorant of matters pertaining to translation in general, and MT in particular. The paper covers some of the major MT R&D groups, the general techniques they employ(ed), and the roles they play(ed) in the development of the field. The conclusions concern the seeming permanence of the translation problem, and potential re-integration of MT with mainstream Computational Linguistics.
Computer user manuals in print: Do they have a future?
Authors: John B McKee
Venue: Proceedings of the 4th annual international conference on Systems documentation (1986)

What sort of a role will the printed page play in the computer user manuals of the future? I believe that print does have a future in this area, but not perhaps the future we might have foreseen five years ago. At that time nothing was less controversial than the viability of print as a medium of documentation. That viability is in question now, and to show how the questioning developed I propose to examine its beginnings in the recent past. I shall then go into some detail on how the controversy about print is being maintained at present. Finally, I shall explain how I feel the controversy is likely to be resolved, by making four predictions about the future of computer user manuals, and those whose job it is to produce them.
Switch directed dynamic causal networks&mdash;a paradigm for electronic system diagnosis
Authors: R. M. McDermott, D. Stern
Venue: Proceedings of the 24th ACM/IEEE Design Automation Conference (1987)

Electronic Systems Diagnosis, be it at the Device, Board, or System level, is a complex and time consuming task. Various techniques have been developed to provide design aids to the maintenance technician, each with its own successes and limitations, typically in terms of performance versus complexity issues. This paper demonstrates a novel integration of such techniques to provide for an effective and efficient approach to expert diagnosis of complex systems. The integration of Behavior Graph concepts and Causal Network analysis allows for the diagnosis of systems at a fairly high level of abstraction, allows for on-line diagnosis with or without explicit control of input stimuli, and provides for such diagnosis with minimal design detail or apriori fault assumptions.
Information system technology can improve customer service
Authors: Gerard P Learmonth
Venue: ACM SIGMIS Database (1986)

Creative deployment of information system technologies can lead to new ways to differentiate products and services through customer service, while simultaneously strengthening customer ties.
Towards a General Concurrency Control Algorithm for Database Systems
Authors: Abdel A. Farrag, M. Tamer Ozsu
Venue: IEEE Transactions on Software Engineering (1987)

The concurrency control problem in database systems has been examined by many people and several concurrency control algorithms have been proposed. The most popular algorithms are two-phase locking and timestamp ordering. This paper shows that two-phase locking and timestamp ordering are special cases of a more general concurrency control algorithm. This general algorithm is described in detail and is proven to work correctly. We show that two-phase locking and timestamp ordering represent the two end points of a series of concurrency control algorithms. Each of them is a special case of the general algorithm proposed in this paper. Moreover, each of these special cases can be selected in advance, and can even be changed dynamically during execution.
A data processing communication skills course
Authors: Alka Rani Harriger, Thomas I. Ho
Venue: ACM SIGCSE Bulletin (1986)

To be a successful business data processing professional, one should possess effective written and oral communication skills; therefore, any program which prepares computing students for the business world should effectively train them in this area. Of the programs that attempt to handle this situation, most merely require their students to take several English/communication courses. From experience, this method is less effective than additionally reinforcing the students' communication skills within the entire range of the computing curriculum. This paper presents a methodology for accomplishing the task of implementing writing into an introductory data processing course.
On learning and evaluation of decision rules in the context of rough sets
Authors: S K M Wong, W Ziarko
Venue: Proceedings of the ACM SIGART international symposium on Methodologies for intelligent systems (1986)

We demonstrate in this paper that the principles of inductive learning can be precisely formulated and hopefully better understood based on the theory of rough sets introduced by Pawlak. We discuss some statistical aspects of evaluating and forming decision rules from examples of expert decisions. We also suggest a method of comparing decision rules inferred by different learning algorithms from the same set of samples.
Medical informatics: clinical decision making and beyond
Authors: D. K. Duncan
Venue: ACM SIGBIO Newsletter (1988)

Does Medical Informatics encompass all aspects of computing in health care, or is it limited to information processing in clinical medicine? A panel discussion will present several points of view. This paper advocates a unified view of Medical Informatics. It argues that in the future it will not be possible to separate purely clinical information systems from other aspects of computing in health care, and all health care systems should be a part of Medical Informatics.
Analysis of the resequencing delay for M/M/m systems
Authors: Subhash Agrawal, Ravi Ramaswamy
Venue: Proceedings of the 1987 ACM SIGMETRICS conference on Measurement and modeling of computer systems (1987)

Many virtual circuit service communications networks such as SNA employ virtual circuit transmission method inside the subnet. An essential feature of such networks is that the sequence in which messages are transmitted is maintained throughout the route from source node to the destination node. When there are multiple links connecting two intermediate nodes in the route and the messages are of different lengths, then it is possible that the messages complete transmission at the next node out of sequence. These messages then have to be resquenced, i.e. put in the right order, in order to provide a virtual circuit service. The resequencing operation introduces an additional delay in transmission which may be significant. In this paper the probability distribution of the resequencing delay is obtained for the M/M/m system. Simple expressions for the mean and coefficient of variation of the resequencing delay are also provided. It is shown through a variety of numerical examples that the resequencing delay is likely to be a significant component of the overall response time. Some interesting aspects of dependence of the mean resequencing delay on system parameters are studied analytically.
Improving systems documentation using an online copy editor
Authors: Russell L Kahn
Venue: Proceedings of the 4th annual international conference on Systems documentation (1986)

For the last three years I have been using Writers Workbench, a UNIX text-editing tool, to edit computer documentation. In this article I outline my experiences using the system, noting both the advantages to explore and pitfalls to avoid in using this tool. Writers Workbench is especially useful for improving a writer's basic skills&mdash;punctuation, spelling, and grammar. When used effectively, Writers Workbench can cut down on wordiness and improve the consistency of a manual. It can help in the creation of a table of contents, index, glossary, and bibliography and in checking readability. Furthermore, by creating user-defined dictionaries, authors or editors can customize the tool to fit their purposes and styles. However, Writers Workbench is not good at catching problems relating to organization, focus, and clarity.
Fault-Tolerant Routing in DeBruijn Comrnunication Networks
Authors: Abdol-Hossein Esfahanian, S. L. Hakimi
Venue: IEEE Transactions on Computers (1985)

A class of communication networks which is suitable for "multiple processor systems" was studied by Pradhan and Reddy. The underlying graph (to be called Shift and Replace graph or SRG) is based on DeBruijn digraphs and is a function of two parameters r and m. Pradhan and Reddy have shown that the node-connectivity of SRG is at least r. The same authors give a routing algorithm which generally requires 2m hops if the number of node failures is =(r -1). In this paper we show that the node-connectivity of SRG is (2r - 2). This would immediately imply that the system can tolerate up to (2r - 3) node failures. We then present routing methods for situations with a certain number of node failures. When this number is =(r - 2) our routing algorithm requires at most m + 3 + logr m hops if 3 + logr m =m. When the number of node failures is =(2r - 3) our routing algorithm requires at most m + 5 + logr m hops if 4 + logr m = m. In all the other situations our routing algorithm requires no more than 2m hops. The routing algorithms are shown to be computationally efficient.
Pseudo-Boolean Logic Circuits
Authors: John P. Hayes
Venue: IEEE Transactions on Computers (1986)

A new class of switch-level logic circuits intended for modeling digital MOS VLSI circuits is presented. These circuits, which are called pseudo-Boolean, are composed of a single (voltage) source, connectors, switches, attenuators, and wells. The latter two devices are digital versions of resistors and capacitors, respectively, and may assume an arbitrary but finite number of different sizes. Signals are bidirectional, and are assigned a finite set of values of the form (v, s) where v corresponds to voltage level and s corresponds to electrical current or charge level (logical strength). It is shown that these signal values and the associated logical operations form a generalization of Boolean algebra called pseudo-Boolean or Heyting algebra. The analysis of pseudo- Boolean circuits using discrete counterparts of Kirchoff's current law and the superposition principle is discussed, as well as the application of pseudo-Boolean techniques to digital simulation.
Type extensions
Authors: N. Wirth
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1988)

Software systems represent a hierarchy of modules. Client modules contain sets of procedures that extend the capabilities of imported modules. This concept of extension is here applied to data types. Extended types are related to their ancestor in terms of a hierarchy. Variables of an extended type are compatible with variables of the ancestor type. This scheme is expressed by three language constructs only: the declaration of extended record types, the type test, and the type guard. The facility of extended types, which closely resembles the class concept, is defined in rigorous and concise terms, and an efficient implementation is presented.
Microcode development for microprogrammed processors
Authors: J. P-C Hwang, C. A. Papachristou, D. D. Cornett
Venue: Proceedings of the 18th annual workshop on Microprogramming (1985)

The aim of this paper is to develop a top-down design automation tool for digital system design such as microprogrammed processors. The package contains a hardware description language to specify the design, a microcode development module to generate an efficient microprogam for the microprogrammed processor's control, and a functional simulator module to verify the validity of the design. The goal of this project is to develop an interactive computer-aided design environment for specification, design and verification of instruction set processors.
Memory management units for microcomputer operating systems
Authors: I Rattan
Venue: ACM SIGOPS Operating Systems Review (1987)

Recently, independent memory management units for microprocessor based systems have become available. This note summarizes the features of register and tree memory management units (using MC68451 amp; MC68851 as examples) from a viewpoint of microcomputer operating systems design.
The Cedar file system
Authors: David K. Gifford, Roger M. Needham, Michael D. Schroeder
Venue: Communications of the ACM (1988)

The Cedar File System (CFS) is a workstation file system that provides access to both a workstation's local disk and to remote file servers via a single hierarchical name space. CFS supports a group of cooperating programmers by allowing them to both manage local naming environments and to share consistent versions of collections of software.
Influence of Workload on Error Recovery in Random Access Memories
Authors: J. F. Meyer, L. Wei
Venue: IEEE Transactions on Computers (1988)

A system's ability to recover quickly from transient errors is particularly important for systems that operate in hostile environments where bursts of high-frequency errors are likely. Evaluation of this ability poses a number of problems, including appropriate modeling of both the error-arrival process and the system's workload. These two problems are addressed in the context of a specific evaluation study, where the system in question is a self-exercising, self-checking (SE/SC) memory design. Evaluation is based on a stochastic activity network model of the total system (memory, workload, and error environment) where, for comparison, both the SE/SC memory and a 'standard' memory are modeled in this fashion. The system workload is parameterized and its effect on recovery is evaluated for different choices of parameter values. The central measure of interest is the memory's ability to recover from bursts of transient errors. It is found that coverage is indeed workload dependent, where this dependence is particularly severe in the case of a standard memory. The results also show that, for the SE/SC design, coverage is less sensitive to workload, and in all cases, exceeds that of a standard memory.