ppxscal/embedding_network huggingface dataset:
Software library construction from an IR perspective
Authors: Yoëlle S. Maarek
Venue: ACM SIGIR Forum (1991)

The two basic requirements for achieving software reuse are: (1) to provide a sufficient number of components over a spectrum of domains that can be reused as is (black-box reuse) or easily adapted (white-box reuse), and (2) to organize components such that code close to the users' needs is easy to locate. Many attempts have been made at addressing the first issue, (e.g. UNIX) however, as far as the second requirement is concerned very few library systems are available or attractive enough to make actual reuse faster than rewriting from scratch.With the increasing size of natural-language documentation in modern software component collections, there is a growing interest in applying IR techniques to the construction of software libraries. For instance recent tools such as INFoEXPLORER for the IBM RS/6000 series, or ANSWERBOOK for Sun Sparc workstations, provide standard IR techniques for searching on-line documentation. However, due to the nature of software documentation and of reuse requirements, some specific IR techniques can be devised to significantly enhance retrieval effectiveness.In this paper, we identify the necessary requirements to be met by the software collection in order to apply an IR approach, and we describe the specificity of reuse as compared to other applications. As an example, we describe GuRu, an information storage and retrieval system for reuse. This system is only briefly described as it has already presented elsewhere, and we rather concentrate on showing how GuRu satisfies the specific needs of reuse. GURU is currently used at the IBM T.J. Watson Research Center by a growing pool of users. We also provide an experimental test collection with relevance judgments for the AIx 3 command set to be used as a starting ground for evaluating retrieval effectiveness in reuse applications. Finally, we compare GURU's indexing scheme to two other schemes using this test collection.
Report on the CHI'91 UIMS Tool Developers' Workshop
Authors: Sylvia Sheppard
Venue: ACM SIGCHI Bulletin (1992)

The ready availability of computer graphics workstations in the early 1980s generated a need for fast, easy-to-use tools for creating, managing and modifying user interfaces. The designs of the many user interface management systems (UIMSs) developed to fulfill this need have been influenced by model architectures such as the Seeheim model (Green; Pfaff and ten Hagan), the Seattle model (Lantz et al.), MVC (Krasner amp; Pope), and its more modern successor PAC (Coutaz).
Design and implementation of a swapper for the MINIX operating system
Authors: Stephen W. Chappelow, Steven F. Ackerman, Stephen J. Hartley
Venue: ACM SIGCSE Bulletin (1990)

The University of Vermont does not offer a course which provides practical experience working with the internals of operating systems. To remedy this, an independent study course was undertaken during the Spring 1989 semester which involved working with the internals of a real operating system. The goal of the project was to design and implement a major component of an operating system known as the swapper.The basis for the project was the MINIX operating system, which is a message--passing operating system that runs on microcomputers and whose user interface mimics Version 7 UNIX2. The structure, algorithms, and implementation of a swapper will be analyzed in detail. Finally, the practical value of the research experience is discussed.
Partial Cylindrical Algebraic Decomposition for quantifier elimination
Authors: George E. Collins, Hoon Hong
Venue: Journal of Symbolic Computation (1991)

The Cylindrical Algebraic Decomposition method (CAD) decomposes R^r into regions over which given polynomials have constant signs. An important application of CAD is quantifier elimination in elementary algebra and geometry. In this paper we present a method which intermingles CAD construction with truth evaluation so that parts of the CAD are constructed only as needed to further truth evaluation and aborts CAD construction as soon as no more truth evaluation is needed. The truth evaluation utilizes in an essential way any quantifiers which are present and additionally takes account of atomic formulas from which some variables are absent. Preliminary observations show that the new method is always more efficient than the original, and often significantly more efficient.
Unbiased sampling techniques for image synthesis
Authors: David Kirk, James Arvo
Venue: Proceedings of the 18th annual conference on Computer graphics and interactive techniques (1991)

We examine a class of adaptive sampling techniques employed in image synthesis and show that those commonly used for efficient anti-aliasing are statistically biased. This bias is dependent upon the image function being sampled as well as the strategy for determining the number of samples to use. It is most prominent in areas of high contrast and is attributable to early stages of sampling systematically favoring one extreme or the other. If the expected outcome of the entire adaptive sampling algorithm is considered, we find that the bias of the early decisions is still present in the final estimator. We propose an alternative strategy for performing adaptive sampling that is unbiased but potentially more costly. We conclude that it may not always be practical to mitigate this source of bias, but as a source of error it should be considered when high accuracy and image fidelity are a central concern.
MHERTZ: a new optimization algorithm for floorplanning and global routing
Authors: Daniel R. Brasen, Michael L. Bushnell
Venue: Proceedings of the 27th ACM/IEEE Design Automation Conference (1991)

Timing-driven placement is essential for full-custom VLSI, Gallium Arsenide, and ECL circuits to meet wire timing constraints. A new macro/custom cell floorplanner and global router, called MHERTZ, meets wire timing constraints by using force-directed cost functions in multi-start and simulated annealing (SA) optimization algorithms. MHERTZ also prevents wire coupling, meets specified chip aspect ratios, and produces smaller floorplans than TIMBERWOLFMC.
Competitive algorithms for layered graph traversal
Authors: Amos Fiat, Dean P. Foster, Howard Karloff, Yuval Rabani, Yiftach Ravid, Sundar Vishwanathan
Venue: Proceedings of the 32nd annual symposium on Foundations of computer science (1991)

A layered graph is a connected, weighted graph whose vertices are partitioned into sets L/sub 0/=(s), L/sub 1/, L/sub 2/, . . ., and whose edges run between consecutive layers. Its width is max( mod L/sub i/ mod ). In the online layered graph traversal problem, a searcher starts at s in a layered graph of unknown width and tries to reach a target vertex t; however, the vertices in layer i and the edges between layers i-1 and i are only revealed when the searcher reaches layer i-1. The authors give upper and lower bounds on the competitive ratio of layered graph traversal algorithms. They give a deterministic online algorithm that is O(9w)-competitive on width-w graphs and prove that for no w can a deterministic online algorithm have a competitive ratio better than 2w/sup -2/ on width-w graphs. They prove that for all w, w/2 is a lower bound on the competitive ratio of any randomized online layered graph traversal algorithm. For traversing layered graphs consisting of w disjoint paths tied together at a common source, they give a randomized online algorithm with a competitive ratio of O(log w) and prove that this is optimal up to a constant factor.
Computer ethics survey
Authors: Sue Stager
Venue: ACM SIGUCCS Newsletter (1992)

In preparation for the panel discussion, computer center directors completed a survey about the frequency of breeches of acceptable computing behavior, and opinions about key legal and ethical issues. About 52% of the directors attending the conference completed the survey. The majority (61%) of the respondents were from public, four-year institutions. The following article discusses the results of the survey.
The inverse of an automorphism in polynomial time
Authors: Matthew Dickerson
Venue: Journal of Symbolic Computation (1992)

In this paper we present a polynomial time algorithm for computing the inverse of an automorphism over a polynomial ring K[x]. The algorithm works over any commutative ring K, and in the case when K is a field, provides an exponential time solution to the problem of determining when an endomorphism is invertible.
Distributed computing in a NUMP (Non-Uniform Message-Passing) environment
Authors: Cui-Qing Yang
Venue: ACM SIGOPS Operating Systems Review (1992)

In this paper we propose a general framework of distributed computing in a NUMP environment. A NUMP (Non-Uniform Message-Passing) distributed environment is a computing environment in which both tightly-coupled, shared-memory systems and loosely-coupled, distributed computers are co-existent, and the time for message-passing is non-uniform between various systems. An environment with such hybrid components has become a common phenomenon in most academic and industrial communities. The issue of how to develop and execute programs that take advantage of all the resources available in a hybrid environment is an open issue in the research that carries both theoretic and pragmatic significance. The main topics involved include the development of new computational models for NUMP environment, operating system and language support for NUMP computing, methodologies in NUMP programming, principles of algorithm design for NUMP system, and so on. We deem that the research in NUMP computing will contribute in providing a unified framework for parallel and distributed computing, and in accomplishing better utilization of computing resources at large scale.
Dynamical system specifications as validation media
Authors: J. Gyorkos, I. Rozman, T. Welzer
Venue: ACM SIGPLAN Notices (1990)

How to present to the customer team the aim and the potential behavior of the future software system after the earliest phases of software development process - the requirements analysis? Activation of systems specifications as the useful connection between the both customer and developer team is described in the paper. Activation gives the dynamic procedural picture of the future system with the optional level of abstraction and with the possibility of tracing the desired event structure. The advantages of the described activating of systems specifications are simplicity, well understandability and the flexible connection with the techniques for generating system specifications. All this improve the customer/developer cycle's communication paths.
Performance analysis of dynamic finite versioning for concurrent transaction and query processing
Authors: Arif Merchant, Kun-Lung Wu, Philip S. Yu, Ming-Syan Chen
Venue: Proceedings of the 1992 ACM SIGMETRICS joint international conference on Measurement and modeling of computer systems (1992)

In this paper, we analyze the performance of dynamic finite versioning (DFV) schemes for concurrent transaction and query processing, where a finite number of consistent snapshots can be derived for query access. We develop analytical models based on a renewal process approximation to evaluate the performance of DFV using M &ge; 2 snapshots. The storage overhead and obsolescence faced by queries are measured. Simulation is used to validate the analytical models and to evaluate the trade-offs between various starategies for advancing snapshots when M > 2. The results show that (1) the analytical models match closely with simulation; 2) both the storage overhead and obsolescence are sensitive to the snapshot-advancing strategies, especially for M > 2 snapshots; and (3) generally speaking, increasing the number of snapshots demonstrates a trade-off between storage overhead and query obsolescence. For cases with skewed access or low update rates, a moderate increase in the number of snapshots beyond 2 can substantially reduce the obsolescence, while the storage overhead may increase only slightly, or even decrease in some cases. Moreover, for very low update rates, a large number of snapshots demonstrates a trade-off between storage overhead and query obsolescence. For cases with skewed access or low update rates, a moderate increase in the number of snapshots beyond 2 can substantially reduce the obsolescence, while the storage overhead may increase only slightly, or even decrease in some cases. Moreover, for very low update rates, a large number of snapshots can be used to reduce the obsolescence to almost zero without increasing the storage overhead.
Instructional data requirements from administrative systems
Authors: John C. Biddle
Venue: ACM SIGUCCS Newsletter (1992)

Administrative computing has certainly come a long way from its meager beginning in the financial records area in most institutions to the present where every administrative area has at least one system running, usually on the institution's mainframe, with immediate access to the records in the database. In most institutions, these systems are required for the administrative personnel to complete their required assignments.
Broadcast Channels in Estelle
Authors: Samuel C. Chamberlain, Paul D. Amer
Venue: IEEE Transactions on Computers (1991)

Using notation consistent with the Estelle ISO 9074 International Standard, the syntax and formal semantics for a broadcast channel are presented. These semantics make precise the meaning of an intuitive concept and additionally are compatible with those of the current Estelle FDT (formal description technique). If introduced to the Estelle FDT, broadcast channels would strengthen its specification capabilities by permitting clearer formal specifications. Broadcast channels provide a foundation for a powerful synchronization mechanism.
An architecture for multi-user software development environments
Authors: Israel Z. Ben-Shaul, Gail E. Kaiser, George T. Heineman
Venue: ACM SIGSOFT Software Engineering Notes (1992)

We present an architecture for multi-user software development environments, covering general, process-centered and rule-based MUSDEs. Our architecture is founded on componentization, with particular concern for the capability to replace the synchronization component&ndash;to allow experimentation with novel concurrency control mechanisms&ndash;with minimal effects on other components while still suporting integration. The architecture has been implemented for the MARVEL SDE.
Experiencing minix as a didactical aid for operating systems courses
Authors: G. Aguirre, M. Errecalde, R. Guerrero, C. Kavka, G. Leguizamon, M. Printista, R. Gallard
Venue: ACM SIGOPS Operating Systems Review (1991)

Minix is a Unix clone Operating Systems to be run on IBM PCs and compatibles, designed by Tanembaum [10] for courses in the area.Accepting the Tanembaum's proposal, this document describes the results of some extensions on the internal work of Minix as an exercise on Operating Systems Design and Implementation that attempts to transfer that experience to other groups of interest.The paper intends to be interpreted as a report remarking what kind of work was done having at our disposal an extensively documented copy of the source code of an operating system, taking into account that the developers are undergraduates in Computer Science.Further details on implementations will be available in future publications [1], [4], [6].
Design of Optimal Systolic Algorithms for the Transitive Closure Problem
Authors: Dilip Sarkar, Amar Mukherjee
Venue: IEEE Transactions on Computers (1992)

New optimal systolic algorithms for the transitive closure problem on ring and linear arrays of processors is presented. The data dependency of the Warshal-Floyd algorithm is exploited to obtain highly pipelined parallel algorithms. One of the algorithms is asymptotically seven times more cost-effective than previous algorithms for computing transitive closure problems. The authors introduce a new expository device, called the RCT diagram, that depicts simultaneously the flow of data and computation of parallel algorithms.
A channel/switchbox definition algorithm for building-block layout
Authors: Yang Cai, D. F. Wong
Venue: Proceedings of the 27th ACM/IEEE Design Automation Conference (1991)

In this paper we study the problem of routing region definition in the VLSI building-block layout design style. We present an algorithm to decompose the routing area into a set of straight channels and switchboxes such that the number of switchboxes in the decomposition is minimized. Our algorithm is based on a graph-theoretic approach that makes use of an efficient polynomial time optimal algorithm for computing minimum clique covers of triangulated graphs. Experimental results indicate our algorithm performs well. We compared our algorithm with a previously known greedy approach and an exhaustive search optimal algorithm. For all the test problems we considered, our algorithm consistently outperformed the greedy algorithm, and it produced optimal solutions in almost all cases.
The impact of operating system scheduling policies and synchronization methods of performance of parallel applications
Authors: Anoop Gupta, Andrew Tucker, Shigeru Urushibara
Venue: ACM SIGMETRICS Performance Evaluation Review (1991)

Shared-memory multiprocessors are frequently used as compute servers with multiple parallel applications executing at the same time. In such environments, the efficiency of a parallel application can be significantly affected by the operating system scheduling policy. In this paper, we use detailed simulation studies to evaluate the performance of several different scheduling strategies, These include regular priority scheduling, coscheduling or gang scheduling, process control with processor partitioning, handoff scheduling, and affinity-based scheduling. We also explore tradeoffs between the use of busy-waiting and blocking synchronization primitives and their interactions with the scheduling strategies. Since effective use of caches is essential to achieving high performance, a key focus is on the impact of the scheduling strategies on the caching behavior of the applications.Our results show that in situations where the number of processes exceeds the number of processors, regular priority-based scheduling in conjunction with busy-waiting synchronization primitives results in extremely poor processor utilization. In such situations, use of blocking synchronization primitives can significantly improve performance. Process control and gang scheduling strategies are shown to offer the highest performance, and their performance is relatively independent of the synchronization method used. However, for applications that have sizable working sets that fit into the cache, process control performs better than gang scheduling. For the applications considered, the performance gains due to handoff scheduling and processor affinity are shown to be small.
Self-reproducing programs in Common Lisp
Authors: Peter Norvig
Venue: ACM SIGPLAN Lisp Pointers (1990)

This paper reviews the classic self-reproducing expressions in Lisp, and presents some new ones that are unique to Common Lisp.
Algebraic evaluation of disjunctive deductive databases
Authors: Rajshekhar Sunderraman
Venue: Proceedings of the 1992 ACM annual conference on Communications (1992)

An algebraic approach to evaluate non-Horn rules in disjunctive databases is presented. Tabular structures, called C-tables, are used to represent disjunctive facts. Algebraic operations on C-tables are used to evaluate non-Horn rules. A new operator called Project-Or is introduced which enables us to compute disjunctive facts implied by the non-Horn rules.
Bead: explorations in information visualization
Authors: Matthew Chalmers, Paul Chitson
Venue: Proceedings of the 15th annual international ACM SIGIR conference on Research and development in information retrieval (1992)

We describe work on the visualization of bibliographic data and, to aid in this task, the application of numerical techniques for multidimensional scaling. Many areas of scientific research involve complex multivariate data. One example of this is Information Retrieval. Document comparisons may be done using a large number of variables. Such conditions do not favour the more well-known methods of visualization and graphical analysis, as it is rarely feasible to map each variable onto one aspect of even a three-dimensional, coloured and textured space. Bead is a prototype system for the graphically-based exploration of information. In this system, articles in a bibliography are represented by particles in 3-space. By using physically-based modelling techniques to take advantage of fast methods for the approximation of potential fields, we represent the relationships between articles by their relative spatial positions. Inter-particle forces tend to make similar articles move closer to one another and dissimilar ones move apart. The result is a 3D scene which can be used to visualize patterns in the high-D information space.
Hodge's hypothesis
Authors: H. K. Hodge
Venue: ACM SIGSMALL/PC Notes (1991)

Is there anyone who has not heard of Fermat's Last Theorem? It may be that his famous statement is not the end of the story.
On Weyuker's Axioms for Software Complexity Measures
Authors: John C. Cherniavsky, Carl H. Smith
Venue: IEEE Transactions on Software Engineering (1991)

Properties for software complexity measures are discussed. It is shown that a collection of nine properties suggested by E.J. Weyuker is inadequate for determining the quality of a software complexity measure.A complexity measure which satisfies all nine of the properties, but which has absolutely no practical utility in measuring the complexity of a program is presented. It is concluded that satisfying all of the nine properties is a necessary, but not sufficient, condition for a good complexity measure.
Register allocation for software pipelined loops
Authors: B. R. Rau, M. Lee, P. P. Tirumalai, M. S. Schlansker
Venue: ACM SIGPLAN Notices (1992)

Software pipelining is an important instruction scheduling technique for efficiently overlapping successive iterations of loops and executing them in parallel. This paper studies the task of register allocation for software pipelined loops, both with and without hardware features that are specifically aimed at supporting software pipelines. Register allocation for software pipelines presents certain novel problems leading to unconventional solutions, especially in the presence of hardware support. This paper formulates these novel problems and presents a number of alternative solution strategies. These alternatives are comprehensively tested against over one thousand loops to determine the best register allocation strategy, both with and without the hardware support for software pipelining.
SRI's DECIPHER system
Authors: Hy Murveit, Michael Cohen, Patti Price, Gay Baldwin, Mitch Weintraub, Jared Bernstein
Venue: Proceedings of the workshop on Speech and Natural Language (1989)

SRI has developed a speaker-independent continuous speech, large vocabulary speech recognition system, DECIPHER, that provides state-of-the-art performance on the DARPA standard speaker-independent resource management training and testing materials. SRI's approach is to integrate speech and linguistic knowledge into the HMM framework. This paper describes performance improvements arising from detailed phonological modeling and from the incorporation of cross-word coarticulatory constraints.
KRIS: Knowledge Representation and Inference System
Authors: Franz Baader, Bernhard Hollunder
Venue: ACM SIGART Bulletin (1991)

The knowledge representation system KL-ONE first appeared in 1977. Subsequently many systems based on the idea of KL-ONE have been built. The formal model-theoretic semantics which has been introduced for KL-ONE languages [9] provides means for investigating soundness and completeness of inference algorithms. It turned out that almost all implemented KL-ONE systems such as BACK, KL-TWO, LOOM, NIKL, SB-ONE use sound but incomplete algorithms.