ppxscal/embedding_network huggingface dataset:
Efficient Implementations of the Chinese Remainder Theorem for Sign Detection and Residue Decoding
Authors: Thu V. Vu
Venue: IEEE Transactions on Computers (1985)

Two conversion techniques based on the Chinese remainder theorem are developed for use in residue number systems. The new implementations are fast and simple mainly because adders modulo a large and arbitrary integer M are effectively replaced by binary adders and possibly a lookup table of small address space. Although different in form, both techniques share the same principle that an appropriate representation of the summands must be employed in order to evaluate a sum modulo M efficiently. The first technique reduces the sum modulo M in the conversion formula to a sum modulo 2 through the use of fractional representation, which also exposes the sign bit of numbers. Thus, this technique is particularly useful for sign detection and for any operation requiring a comparison with a binary fraction of M. The other technique is preferable for the full conversion from residues to unsigned or 2's complement integers. By expressing the summands in terms of quotients and remainders with respect to a properly chosen divisor, the second technique systematically replaces the sum modulo M by two binary sums, one accumulating the quotients modulo a power of 2 and the other accumulating the remainders the ordinary way. A final recombination step is required but is easily implemented with a small lookup table and binary adders.
An implementation independent approach to cache memories
Authors: Reinder J. Bril
Venue: ACM SIGARCH Computer Architecture News (1987)

This paper presents an implementation independent approach to cache memories with states of blocks and kinds of blocks.An implementation independent description of states of blocks in a tightly coupled multi-processor system with private caches is presented, which distinguishes between (abstract) states of blocks and (implementation oriented) tags. Two approaches to cache consistency protocols are described using abstract states: the ownership approach and the responsibleness approach.Blocks are looked at as constituents of logical entities such as segments. Different kinds of blocks are distinguished based on different kinds of segments. Whenever caches are able to distinguish between different kinds of blocks, then cache schemes, block sizes, and other implementation related aspects may be chosen independently, facilitating a separation of concerns.
Comparator with Completion Signal
Authors: David Lee
Venue: IEEE Transactions on Computers (1985)

This note provides a design of a binary comparator with completion signal. The average propagation delay is a constant, independent of n, the number of inputs, while the logic complexity is a linear function of n.
Precedent-based legal reasoning and knowledge acquisition in contract law: A process model
Authors: S. R. Goldman, M. C. Dyer, M. Flowers
Venue: Proceedings of the 1st international conference on Artificial intelligence and law (1987)

In the law, decisions in previous cases play a significant role in the presentation, understanding, and outcome of new cases. This is particularly true in the area of contract law where few statutes (explicit legal rules) exist. When presented with a new case, a lawyer must be able to identify important issues and make some predictions about how the case might be decided. The lawyer will often recall past cases which bear similarities to the current case and reason analogically to make these predictions. In order to perform these tasks, a lawyer must be able to remember past cases, organize them in memory so that cases that are conceptually similar are stored together (a lawyer normally won't be reminded of an irrelevant case), and make analogies between cases. Thus the organization and representation of knowledge in memory is crucial in building a model of lawyer's cognitive processes. This paper describes a process model, implemented in a computer program called STARE, which addresses these issues in the context of first-year law students learning contract law.
Cooperating knowledge-based assistants for the office
Authors: A. Roger Kaye, Gerald M. Karam
Venue: ACM Transactions on Information Systems (TOIS) (1987)

This paper presents an approach to high-level support of office workers by embedding office knowledge in a network of distributed cooperating knowledge-based or expert &ldquo;assistants&rdquo; and servers. These knowledge-based systems incorporate both factual and procedural knowledge and are capable of making use of existing conventional office technology. They constitute a form of computer-supported cooperative work. We describe a common architecture for our assistants and servers that incorporates several key features. Our systems are capable of supporting concurrent multiple consultations or tasks and have facilities for the interruption and resumption of consultations as appropriate. The various assistants and servers, which may reside on different machines, cooperate in solving problems or completing tasks by passing messages. We propose a taxonomy of the general office knowledge normally used by office workers, together with a frame and rule-based knowledge representation scheme. We also describe an experimental system, written in PROLOG, that incorporates the above design principles.
Self-assessment procedure XVIII: fundamentals of data communications
Authors: John C. Munson
Venue: Communications of the ACM (1988)

A self-assessment procedure dealing with the fundamentals of data communications
Abstractions of Finite-State Machines Optimal with Respect to Single Undetectable Output Faults
Authors: K. N. Oikonomou
Venue: IEEE Transactions on Computers (1987)

An observer, whose task is to monitor a large and complex system M^ subject to malfunctions, may be interested in dealing with a simplified, abstracted model (M^A of it, at the expense of some loss in fault-detection ability. Let M^ be a finite- state machine whose inputs are modeled by stationary random variables. The abstraction A is effected by lumping M^'s states, inputs, and outputs into classes, to obtain a smaller probabilistic machine M^A. These ideas have been introduced in a previous paper, and the question of finding an optimal abstraction A* which minimizes the number of faults undetectable by the observer was posed. An algorithm for constructing the output component of the optimal abstraction A* is given in this paper. If there are no faults in the next-state map of M^, this construction is sufficient to minimize the number of single faults in the output map that are undetectable by the observer because of the abstraction. Some experiments carried out using the algorithm provide general insight into the tradeoff between simplifying M^ and making some faults in it undetectable. As a specific example, optimal output abstractions are found for a finite-state machine specification of the link level of the X.25 communication protocol.
REYSM, a high performance, low power multi-processor bus
Authors: J. D. Nicoud, K. Skala
Venue: Proceedings of the 13th annual international symposium on Computer architecture (1986)

In order to build lower cost multimicroprocessor systems, a narrow synchronous bus (15 active lines) is proposed. It multiplexes address and data on 8 bits, and arbitrates in two pipe-lined cycles on four lines. Due to the 20 to 40 MHz bus clock, and the pipelined control logic, the performances are equivalent to Multibus-2, IEEE-P896 and similar 32-bit buses.For the implementation, cards are disposed radially around a special connector. The very short connections allows for the usage of fast HC-MOS drivers with only a light adaptation.
Data types are values
Authors: James Donahue, Alan Demers
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1985)

An important goal of programming language research is to isolate the fundamenal concepts of languages, those basic ideas that allow us to understand the relationships among various language features. This paper examines one of these underlying notions, that of data type, with particular attention to the treatment of generic or polymorphic procedures and static type-checking.
Adjacency detection using quadcodes
Authors: Shu-Xiang Li, Murray H. Loew
Venue: Communications of the ACM (1987)

A method is presented for determining whether two given regions are adjacent, and for finding all the neighbors of different sizes for a given region. Regions are defined as elementary squares of any size. In a companion paper [2], we introduce the quadcode and discuss its use in representing geometric concepts in the coded image, such as location, distance, and adjacency. In this paper we give a further discussion of adjacency in terms of quadcodes. Gargantini [1] discussed adjacency detection using linear quadtrees. Her discussion was applied to pixels, and a procedure was given to find a pixel's southern neighbor only. This paper considers elementary squares of any size, and gives procedures for both aspects of the problem: for determining whether two given regions are adjacent, and for finding all the neighbors of different sizes for a given region.
Data communication and security
Authors: Ravi Sharma
Venue: ACM SIGSAC Review (1986)

Security in networks is becoming increasingly important owing to the expanding role of distributed computation, distributed databases and telecommunications applications such as electronic mail and electronic funds transfer. This paper undertakes to study this hitherto neglected area of Computer Science. It is the result of research, discussions and a series of seminars attended and presented by the author.
Parallel programming in a virtual object space
Authors: Steven E. Lucco
Venue: ACM SIGPLAN Notices (1987)

Sloop is a parallel language and environment that employs an object-oriented model for explicit parallel programming of MIMD multiprocessors. The Sloop runtime system transforms a network of processors into a virtual object space. A virtual object space contains a collection of objects that cooperate to solve a problem. Sloop encapsulates virtual object space semantics within the object type domain. This system-defined type provides an associative, asynchronous method by which one object gains access to another. It also provides an operation for specifying groups of objects that should, for efficiency, reside on the same physical processor, and supports exploitation of the topology of the underlying parallel machine. Domains also support the creation of indivisible objects, which provide implicit concurrency control. The encapsulation of these semantics within an object gives the programmer the power to construct an arbitrary hierarchy of virtual object spaces, facilitating debugging and program modularity. Sloop implementations are running on a bus-based multiprocessor, a hypercube multiprocessor, and on a heterogeneous network of workstations. The runtime system uses object relocation heuristics and coroutine scheduling to attain high performance.
Very High Level Concurrent Programming
Authors: Y Shi, N. Prywes, B. Szymanski, A. Pnueli
Venue: IEEE Transactions on Software Engineering (1987)

Concurrent systems are typically large and complex, requiring long, development time and much labor. They are, therefore, prime candidates for simplification and automation of the design and programming process. Their major application areas include real time systems, operating systems and cooperative computation. New applications are emerging with the trends towards wide usage of personal computers connected in a network and towards use of parallel processing in supercomputer architectures.
Prolog dialects: a deja vu of BASICs
Authors: R A Sosnowski
Venue: ACM SIGPLAN Notices (1987)

The evolution of Prolog is reminiscent of the kind of dialect formation that BASIC and LISP went through, only worse. Prolog appears to be spawning divergent mutants that differ from one another in syntax, grammar and symmantics. LISP has converged to a set of standards, but BASIC has yet to. LISP as a general purpose language and Prolog as a special purpose language can solve their own class of problems well. Given that both LISP and Prolog are used for artificial intelligence, Prolog has been quite slow to catch on commercially, in large part due to a lack of this standardization, and its future is unclear.
Report of the workshop on environments for computational mathematics
Venue: ACM SIGSAM Bulletin (1987)

Since the 1950's, many researchers have worked to realize the vision of natural and powerful computer systems for interactive mathematical work. Nowadays this vision can be expressed as the goal of an integrated system for symbolic, numerical, graphical, and documentational mathematical work. Recently the development of personal computers (with high resolution screens, window systems, and mice), high-speed networks, electronic mail, and electronic publishing, have created a technological base that is more than adequate for the realization of such systems. However, the growth of separate Mathematical Typesetting, Multimedia Electronic Mail, Numerical Computation, and Computer Algebra communities, each with its own conventions, threatens to prevent these systems from being built.
An optimal O(n log n) algorithm for contour reconstruction from rays
Authors: P. D. Alevizos, J. Boissonnat, M. Yvinec
Venue: Proceedings of the third annual symposium on Computational geometry (1987)

We present an optimal algorithm to reconstruct the planar cross section of a simple object from data points measured by rays. The rays are semi-infinite curves representing, for example, the laser beam or the articulated arms of a robot moving around the object. The object is assumed to be a unique simply connected object, and the contour to be reconstructed is a simple polygon having the data points as vertices and intersecting none of the measuring rays. Such a contour does not exist for any given sets of points and rays but only for legal data. In this paper, we prove that the solution to the contour problem is unique whenever such a solution exists. For a set of n points and n rays, the algorithm presented here provides in &Ogr;(nlogn) time, a polygon which is the solution to the contour problem when the data are legal. Updating this contour if a new measure is available can be done in &Ogr;(logn) time. Both results are asymptotically optimal in the worst-case. Moreover, once the solution has been found, we can check if the data are legal in &Ogr;(nlogn) time.
Supercomputer languages
Authors: R. H. Perrott, A. Zarea-Aliabadi
Venue: ACM Computing Surveys (CSUR) (1986)

The high-level languages proposed for supercomputers, such as vector and array processors, have been designed using one of the following two approaches: (1) an existing sequential language is adapted, (2) a new language based on the hardware is developed. Recently, there has emerged a third approach, which does not require the programmer to be aware of the sequential nature of the language or the hardware characteristics. Examples of these language groups are examined to illustrate their main features and what is required of a programmer when using such languages. The study therefore enables a comparison of the different language approaches to be made.
New methods for real-time signal and image recognition
Authors: O. K. Ersoy, D. Y. Kim
Venue: Proceedings of the 1987 Fall Joint Computer Conference on Exploring technology: today and tomorrow (1987)

This paper deals with real-time image and signal recognition based on the discrete Fourier preprocessing transform(DFPT's). The methods proposed drastically decrease the time of computation and cost of implementation while they also increase the quality of recognition in the presence of noise. Both software and hardware issues for the real-time implementation of the recognition tasks are handled with the DFPT methods. DFPT is a very simple transform, whose matrix elements consists only of combinations of &plusmn;1, 0, &plusmn;j, and/or powers of &radic;2 (powers of 2 only are possible if so required). It is the preprocessing part of the discrete Fourier transform (DFT) in the two-stage representation of DFT. DFPT is mainly utilized for the purpose of feature extraction followed by a classification algorithm. In all the experiments carried out so far in shape recognition, signal recognition and image recognition, DFPT performed better than DFT in terms of classification accuracy. Since its computation involves only elementary operations, it is much simpler, and thereby considerably faster and easier to implement in VLSI and electro-optical architectures as well as in microprocessors than DFT.
IS and MIS: a compromise?
Authors: Elizabeth A. Unger, Charles M. Hassett, Constanza Castro
Venue: ACM SIGCSE Bulletin (1987)

The information manager today is usually educated in a college of business with curriculum requirements guided by the DPMA guidelines for the management information systems, MIS, degree or in a computer science department with curriculum requirements guided by the ACM curriculum for information systems. There is considerable feedback to educators that such people although talented and well trained have enough flat sides in their background to make it necessary to expend considerable resources to make them useful to the organization as a well rounded and well grounded information analyst or manager. The complaint is heard that the MIS types are not technically oriented enough and the IS types are not management oriented enough. The authors undertook a study of the complaints, the suggestions, the current curriculum guidelines and the existing programs. Out of this study emerged a proposal for a degree which blends the current ACM and DPMA guidelines, adds new requirements and suggests different teaching methodologies. The proposal has the potential to address many of the current deficiencies perceived by employers of MIS and IS graduates but it has other problems including acceptance within a traditionally organized and funded university. This paper addresses our solution, its merits, and shortcomings.
Supercomputers/parallel algorithms
Authors: A. K. Mok
Venue: Proceedings of the 1987 Fall Joint Computer Conference on Exploring technology: today and tomorrow (1987)

The increasing availability of commercial multiprocessors holds out the promise of orders of magnitude improvement in the time to solve computationally intensive problems. This promise, however, will remain unfulfilled unless we can solve some hard technical problems such as: Can we find parallel algorithms that can effectively use the available CPU cycles without getting bogged down by communication bottlenecks? Can we design adaptable multiprocessor architectures that can be programmed to solve a wide spectrum of problems at a speed comparable to specialized architectures? Can we invent effective software tools that allow us to design programs for parallel architectures and to generate efficient code for a wide variety of target machines without reprogramming? The papers by Lee and Jeong, Loganantharaj contribute to the resolution of question (1) in the areas of computational geometry and theorem proving. The paper by Shaffer investigates the implementation of a basic algorithm in real-time estimation and control applications, the Kalman filter on specialized parallel architectures. His performance results present a challenge to the viability of general architectures, as noted in question (2). The paper by Mishra and Srimani deals with an important problem in coordinating processes in a distributed environment. Their paper is directly related to question (3) since solutions to basic coordination problems are building blocks in producing efficient code for different target architectures. It is tempting to think that resource limitation will no longer be a problem with the advent of parallel processing/supercomputers. In fact, quite the opposite is true, the intellectual challenge to effectively use and coordinate multiple processors is only beginning to be appreciated. Serious investigation is needed to understand the limits of parallel processing/supercomputers. Chances are that we shall depend on them not only for processing our next pay check, but in numerous safety-critical real-time systems.
Fault-Tolerant Single-Stage Interconnectiohl Networks
Authors: C. -F. Huang, W. -T. Chen
Venue: IEEE Transactions on Computers (1987)

Single-stage Beta interconnection networks have been proposed for connecting processing elements in multiprocessing systems. An efficient data routing strategy has been designed. Faulty switching elements in the network can be automatically diagnosed. Its fault-tolerant capability is achieved by allowing data to recirculate the network several more passes with the presence of faults. Two parameters are taken into account to evaluate the network, i.e., communication delay d and degree of fault tolerance k. It has been shown elsewhere that k + 1 = d. We have derived, a class of single-stage Beta networks which have been shown to possess the optimal fault tolerance property, i.e., k = d -1.
A General Model for Memory-Based Finite-State Machines
Authors: L. D. Coroar, P. T. Hulina, O. A. Morean
Venue: IEEE Transactions on Computers (1987)

A general model of a memory-based finite-state machine architecture is introduced, the 2k- decision machine (2k- D). The classical (2n- D) and binary decision (2 - D) architectures are shown to be special cases of the 2k- D architecture. The equivalence among the 2k- D solutions for different values of k follows from the sequentialization prin
Smalltalk-80: the language and its implementation
Authors: Adele Goldberg, David Robson
Venue:  (1983)

From the Preface (See Front Matter for full Preface) Advances in the design and production of computer hardware have brought many more people into direct contact with computers. Similar advances in the design and production of computer software are required in order that this increased contact be as rewarding as possible. The Smalltalk-80 system is a result of a decade of research into creating computer software that is appropriate for producing highly functional and interactive contact with personal computer systems. This book is the first detailed account of the Smalltalk-80 system. It is divided into four major parts: Part One -- an overview of the concepts and syntax of the programming language. Part Two -- an annotated and illustrated specification of the system's functionality. Part Three -- an example of the design and implementation of a moderate-size application. Part Four -- a specification of the Smalltalk-80 virtual machine.
The two-processor scheduling problem is in R-NC
Authors: U Vazirani
Venue: Proceedings of the seventeenth annual ACM symposium on Theory of computing (1985)

The two-processor scheduling problem is perhaps the most basic problem in scheduling theory, and several efficient algorithms have been discovered for it. However, these algorithms are inherently sequential in nature. We give a fast parallel (R-NC) algorithm for this problem. Interestingly enough, our algorithm for this purely combinatoric-looking problem draws on some powerful algebraic methods.
Layout optimization of CMOS functional cells
Authors: R. L. Maiasz, J. P. Hayes
Venue: Proceedings of the 24th ACM/IEEE Design Automation Conference (1987)

An optimal non-exhaustive method of minimizing the layout area of complementary series-parallel CMOS functional cells in the standard-cell style is presented. This generalizes earlier work of Uehara and van Cleemput which is heuristic and nonoptimal. A complete graph-theoretical framework for CMOS cell layout is developed and illustrated. The approach demonstrates a new class of graph-based algebras which characterize this layout problem.