ppxscal/embedding_network huggingface dataset:
Practical approximation algorithms for zero- and bounded-skew trees
Authors: Alexander Z. Zelikovsky, Ion I. Măndoiu
Venue: Proceedings of the twelfth annual ACM-SIAM symposium on Discrete algorithms (2001)

The skew of an edge-weighted rooted tree is the maximum difference between any two root-to-leaf path weights. Zero- or bounded-skew trees are needed for achieving synchronization in many applications, including network multicasting [21] and VLSI clock routing [3, 18]. In these applications edge weights represent propagation delays, and a signal generated at the root should be received by multiple recipients located at the leaves (almost) simultaneously. The objective is to find zero- or bounded-skew trees of minimum total weight, since the weight of the tree is directly proportional to the amount of resources that must be allocated to the tree. Charikar et al. [9] have recently proposed the first strongly polynomial algorithms with proven constant approximation factors, 2e &ap; 5.44 and 16.86, for finding minimum weight zero- and bounded-skew trees, respectively. In this paper we introduce a new approach to these problems, based on zero-skew &ldquo;stretching&rdquo; of spanning trees, and obtain algorithms with improved approximation factors of 4 and 14. For the case when tree nodes are points in the plane and edge weights are given by the rectilinear metric our algorithms find zero- and bounded-skew trees of length at most 3 and 9 times the optimum. This case is of special interest in VLSI clock routing. An important feature of our algorithms is their practical running time, which is asymptotically the same as the time needed for computing the minimum spanning tree.
A system for typesetting mathematics
Authors: Brian W. Kernighan, Lorinda L. Cherry
Venue: Communications of the ACM (1975)

This paper describes the design and implementation of a system for typesetting mathematics. The language has been designed to be easy to learn and to use by people (for example, secretaries and mathematical typists) who know neither mathematics nor typesetting. Experience indicates that the language can be learned in an hour or so, for it has few rules and fewer exceptions. For typical expressions, the size and font changes, positioning, line drawing, and the like necessary to print according to mathematical conventions are all done automatically. For example, the input sum from i=0 to infinity x sub i = pi over 2 produces &sum;&infin;i=0xi = &pgr;/2 The syntax of the language is specified by a small context-free grammar; a compiler-compiler is used to make a compiler that translates this language into typesetting commands. Output may be produced on either a phototypesetter or on a terminal with forward and reverse half-line motions. The system interfaces directly with text formatting programs, so mixtures of text and mathematics may be handled simply. This paper was typeset by the authors using the system described.
Cookies and Web browser design: toward realizing informed consent online
Authors: Lynette I. Millett, Batya Friedman, Edward Felten
Venue: Proceedings of the SIGCHI conference on Human factors in computing systems (2001)

We first provide criteria for assessing informed consent online. Then we examine how cookie technology and Web browser designs have responded to concerns about informed consent. Specifically, we document relevant design changes in Netscape Navigator and Internet Explorer over a 5-year period, starting in 1995. Our retrospective analyses leads us to conclude that while cookie technology has improved over time regarding informed consent, some startling problems remain. We specify six of these problems and offer design remedies. This work fits within the emerging field of Value-Sensitive Design.
Immediate predominators in a directed graph [H]
Authors: Paul W. Purdom,  Jr., Edward F. Moore
Venue: Communications of the ACM (1972)

We assume a directed graph whose nodes are labeled by integers between 1 and n. The arcs of this graph correspond to the flow of control between blocks of a computer program. The initial node of this graph (corresponding to the entry point of the program) is labeled by the integer 1. For optimizing the object code generated by a compiler, the relationship of immediate predominator has been used by Lowry and Medlock [3]. We say that node i predominates node k if every path from node 1 to node k passes through (i.e. both into and out of) node i. Node j is an immediate predominator of node k if node j predominates node k and if every other node i which predominates node k also predominates node j. It can easily be proved that if k &ne; 1 and node k is reachable from node 1t hen node k has exactly one immediate predominator. In case k = 1, or node k is not reachable from node 1, the immediate predominator of node k is undefined, and the value 0 will be given by the procedure PREDOMINATOR.
Implicitly Restarted GMRES and Arnoldi Methods for Nonsymmetric Systems of Equations
Authors: Ronald B. Morgan
Venue: SIAM Journal on Matrix Analysis and Applications (2000)

The generalized minimum residual method (GMRES) is well known for solving large nonsymmetric systems of linear equations. It generally uses restarting, which slows the convergence. However, some information can be retained at the time of the restart and used in the next cycle. We present algorithms that use implicit restarting in order to retain this information. Approximate eigenvectors determined from the previous subspace are included in the new subspace. This deflates the smallest eigenvalues and thus improves the convergence. The subspace that contains the approximate eigenvectors is itself a Krylov subspace, but not with the usual starting vector. The implicitly restarted FOM algorithm includes standard Ritz vectors in the subspace. The eigenvalue portion of its calculations is equivalent to Sorensen's IRA algorithm. The implicitly restarted GMRES algorithm uses harmonic Ritz vectors. This algorithm also gives a new approach to computing interior eigenvalues.
A subjective viewpoint&mdash; the use of digital computers in Western Germany
Authors: H. K. Schuff
Venue: Communications of the ACM (1962)

The first computers operating in post-war Germany had been constructed within Germany. These were developed at the Max Plank Institute in G&ouml;ttingen, with two additional university machines under construction at Darmstadt and Munich [1]. These machines did not attain any importance, however, in the German economy.
A parser-generating system for constructing compressed compilers
Authors: M. D. Mickunas, V. B. Schneider
Venue: Communications of the ACM (1973)

This paper describes a parser-generating system (PGS) currently in use on the CDC-6500 computer at Purdue University. The PGS is a Fortran-coded program that accepts a translation grammar as input and constructs from it a compact, machine-coded compiler. In the input translation grammar, each BNF syntactic rule corresponds to a (possibly empty) &ldquo;code generator&rdquo; realizable as an assembly language, Fortran or Algol, subroutine that is called whenever that syntactic rule is applied in the parse of a program. Typical one-pass compilers constructed by the PGS translate source programs at speeds approaching 14,000 cards per minute. For an XPL compiler, the parser program and its tables currently occupy 288 words of 60-bit core memory of which 140 words are parsing table entries and 82 words are links to code generators.
Teaching networking and operating systems to information systems majors
Authors: D. Robert Adams, Carl Erickson
Venue: ACM SIGCSE Bulletin (2001)

Teaching networking and operating systems to information systems majors presents many challenges. Operating systems and networking tend to be taught in one of two ways. Either the material is non-technical, directed more toward the business information systems major, or the material is overly technical, equivalent of teaching a traditional computer science course. We have developed a model for teaching networking and operating systems to information systems majors that bridges that gap. The material is taught in the context of network administration, a topic well-suited to information systems majors. This paper describes our model, the curriculum we use, and the experience of students and faculty.
Network support for mobile multimedia using a self-adaptive distributed proxy
Authors: Zhuoqing Morley Mao, Hoi-sheung Wilson So, Byunghoon Kang
Venue: Proceedings of the 11th international workshop on Network and operating systems support for digital audio and video (2001)

Recent advancements in video and audio codec technologies~(e.g., RealV ideo [18] make multimedia streaming possible across a wide range of network conditions. With an increasing trend of ubiquitous connectivity, more and more areas have overlapping coverage of multiple wired and wireless networks. Because the best network service changes as the user moves, to provide good multimedia application performance, the service needs to adapt to user movement as well as network and computational resource variations. For wireless multimedia applications, one must ensure smooth transitions when network connectivity changes. We argue that network adaptations for multimedia applications should be provided at the application layer with help from proxies in the network. The reasons are ease of programming, ease of deployment, better fault-tolerance, and greater scalability.We propose aself-adaptive distributed proxy systemthat provides streaming multimedia service to mobile wireless clients. Our system intelligently adapts to the real-time network variations and hides handoff artifacts using application protocol specific knowledge whenever possible. It also uses application-independent techniques such as dynamic relocation of transcoders and automatic insertion of forward error correction and compression into the data transcoding path. We advocate a composable, relocatable transcoding data path consisting of a directed acyclic graph ofstrongly-typedoperators to bridge any data format mismatch between the client and the data source. In this paper, we present the design, implementation, and evaluation of our system in the context of streaming video playback involving a series of transcoding proxies and a mobile client.
Reaching Fault Diagnosis Agreement under a Hybrid Fault Model
Authors: Hsien-Sheng Hsiao, Yeh-Hao Chin, Wei-Pang Yang
Venue: IEEE Transactions on Computers (2000)

The goal of the fault diagnosis agreement (FDA) problem is to make each fault-free processor detect/locate a common set of faulty processors. The problem is examined on processors with mixed fault model (also referred to as hybrid fault model). An evidence-based fault diagnosis protocol is proposed to solve the FDA problem. The proposed protocol first collects the messages which have accumulated in the Byzantine agreement protocol as the evidence. By examining the collected evidence, a fault-free processor can detect/locate which processor is faulty. Then, the network can be reconfigured by removing the detected faulty processors and the links connected to these processors from the network. The proposed protocol can detect/locate the maximum number of faulty processors to solve the FDA problem.
Toward an improved concept-based information retrieval system
Authors: Peter V. Henstock, Daniel J. Pack, Young-Suk Lee, Clifford J. Weinstein
Venue: Proceedings of the 24th annual international ACM SIGIR conference on Research and development in information retrieval (2001)

This paper presents a novel information retrieval system that includes 1) the addition of concepts to facilitate the identification of the correct word sense, 2) a natural language query interface, 3) the inclusion of weights and penalties for proper nouns that build upon the Okapi weighting scheme, and 4) a term clustering technique that exploits the spatial proximity of search terms in a document to further improve the performance. The effectiveness of the system is validated by experimental results.
Generating a canonical prefix encoding
Authors: Eugene S. Schwartz, Bruce Kallick
Venue: Communications of the ACM (1964)

Computer programs for generating a minimum-redundancy exhaustive prefix encoding are described. One program generates a Huffman frequency tree, another determines the structure functions of an encoding, and a third program assigns codes.
Integrating SIMD into the undergraduate curriculum
Authors: W. D. Maurer
Venue: Journal of Computing Sciences in Colleges (2001)

Assembly language instruction today, in our view, should include instruction in the newly important area of single-instruction, multiple-data (SIMD) instructions. Such instructions are available on all major platforms, and they considerably speed up operations on arrays, particularly large arrays. This speedup is more pronounced with assembly language than with algebraic language programming, and thus provides another reason for undergraduate students to learn assembly language. We discuss the differences among approaches to SIMD on various platforms; then we describe our own experience with teaching this material.
Adaptive object-models (poster session)
Authors: Joseph W. Yoder, Reza Razavi
Venue: Addendum to the 2000 proceedings of the conference on Object-oriented programming, systems, languages, and applications (Addendum) (2000)

The unrelenting pace of change that confronts contemporary software developers compels them to make their applications more configurable, flexible, and adaptable. A possible way to meet such requirements is to use an Adaptive Object-Model (AOM). This poster describes common architectures for adaptive object-models and summarizes the results from our ECOOP 2000 workshop [9].
Bandwidth constrained placement in a WAN
Authors: Arun Venkataramani, Phoebe Weidmann, Mike Dahlin
Venue: Proceedings of the twentieth annual ACM symposium on Principles of distributed computing (2001)

In this paper, we examine the bandwidth-constrained placement problem, focusing on trade-offs appropriate for wide area network (WAN) environments. The goal is to place copies of objects at a collection of distributed caches to minimize expected access times from distributed clients to those objects subject to a maximum bandwidth constraint at each cache. We develop a simple algorithm to generate a bandwidth-constrained placement by hierarchically refining an initial per-cache greedy placement. We prove that this hierarchical algorithm generates a placement whose expected access time is within a constant factor of the optimal placement's expected access time. We then proceed to extend this algorithm to compute close to optimal placement strategies for dynamic environments.
Logic-structure tables
Authors: H. N. Cantrell, J. King, F. E. H. King
Venue: Communications of the ACM (1961)

Logic tables are an excellent way of developing and expressing the logic required in procedures, operations, systems and circuits. A set of rules for writing and using logic tables is explained by means of some simple examples. Then the logic structure of a vending machine is given in which two logic tables are used. Logic tables are two-dimensional in nature, enabling us to fully express and consider both the sequential and parallel aspects of logic. They can be compiled directly into a computer program and so eliminate the need for flow charting and hand coding.
Normalization techniques for handprinted numerals
Authors: G. Nagy
Venue: Communications of the ACM (1970)

A family of pattern standardization techniques based on geometrical projection is applied to a file of digitized handprinted numerals obtained from sales clerks. The principle involves transforming a quadrilateral specified in terms of the convex hull of each pattern into a square. The amount of overlap within each class of characters versus the amount between classes is used to evaluate the degree of normalization achieved with respect to other published methods including size and shear normalization through moments.
Rapid modeling of animated faces from video images
Authors: Zicheng Liu, Zhengyou Zhang, Chuck Jacobs, Michael Cohen
Venue: Proceedings of the eighth ACM international conference on Multimedia (2000)

Generating realistic 3D human face models and facial animations has been a persistent challenge in computer graphics. We have developed a system that constructs textured 3D face models from videos with minimal user interaction. Our system takes images and video sequences of a face with an ordinary video camera. After five manual clicks on two images to tell the system where the eye corners, nose top and mouth corners are, the system automatically generates a realistic looking 3D human head model and the constructed model can be animated immediately. A user, with a PC and an ordinary camera, can use our system to generate his/her face model in a few minutes. We will demonstrate the system at the conference.
ALGOL 60 confidential
Authors: Donald E. Knuth, Jack N. Merner
Venue: Communications of the ACM (1961)

The ALGOL 60 Report,* when first encountered, seems to describe a very complex language which will be difficult to learn. The &ldquo;metalinguistic formulae&rdquo; admirably serve the purpose of precisely specifying a language, but they are certainly not very readable for a beginner. However, experience has shown that once the report is explained it is in fact easy to learn ALGOL and to write algorithms in it. The language is so general and powerful it can handle an enormous class of problems. It is not hard to learn those parts of ALGOL present in other compiler languages: how to write assignment and go to and for statements, etc. Indeed, a lot of the unnecessary restrictions imposed by other compiling languages have finally been lifted. But ALGOL also allows many unobvious things to be written, as we will see later, and herein lies a problem: ALGOL seems to have become too general. So many restrictions have been lifted that a lot of technical details crop up which are hard to learn and to use correctly. In this paper some of the more obscure features of the language are considered and their usefulness is discussed. Remarks are based on the authors' interpretations of the ALGOL 60 Report.
Data prefetch mechanisms
Authors: Steven P. Vanderwiel, David J. Lilja
Venue: ACM Computing Surveys (CSUR) (2000)

The expanding gap between microprocessor and DRAM performance has necessitated the use of increasingly aggressive techniques designed to reduce or hide the latency of main memory access. Although large cache hierarchies have proven to be effective in reducing this latency for the most frequently used data, it is still not uncommon for many programs to spend more than half their run times stalled on memory requests. Data prefetching has been proposed as a technique for hiding the access latency of data referencing patterns that defeat caching strategies. Rather than waiting for a cache miss to initiate a memory fetch, data prefetching anticipates such misses and issues a fetch to the memory system in advance of the actual memory reference. To be effective, prefetching must be implemented in such a way that prefetches are timely, useful, and introduce little overhead. Secondary effects such as cache pollution and increased memory bandwidth requirements must also be taken into consideration. Despite these obstacles, prefetching has the potential to significantly improve overall program execution time by overlapping computation with memory accesses. Prefetching strategies are diverse, and no single strategy has yet been proposed that provides optimal performance. The following survey examines several alternative approaches, and discusses the design tradeoffs involved when implementing a data prefetch strategy.
An ISO TP4-TP0 Gateway
Authors: Lawrence H. Landweber, Mitchell Tasman, Wengyik Yeong
Venue: ACM SIGCOMM Computer Communication Review (1990)

The ISO TP4 and TP0 transport layer protocols and associated network service paradigms cannot interoperate, yet both are likely to be in common use. To allow users of TP4 to communicate with users of TP0, transport layer gateways will be needed. This paper discusses several design alternatives, and describes a prototype gateway implementation.
A formal description of VHDL-AMS analogue systems
Authors: T. Kazmierski
Venue: Proceedings of the conference on Design, automation and test in Europe (1998)

A formal definition of the general VHDL-AMS analogue system has been proposed to relate the way in which the language affects the specification of a non-linear discontinuous analogue system. It has been suggested to model the break set as a separate system in order to facilitate the interaction between the analogue equation set and the digital abstract machine. The significance of the proposed model is that it may be used in semantic validation of VHDL-AMS description and may also facilitate mixed-signal equation formulation for an underlying VHDL-AMS simulator.
Programming Languages: Boolean matrix methods for the detection of simple precedence grammars
Authors: David F. Martin
Venue: Communications of the ACM (1968)

The use of decision tables as a tool in systems analysis and for program specification is now becoming accepted. Rules on redundancy, contradiction, and completeness for limited entry tables were published in 1963. These are usually used for checking, preceded if necessary by a conversion from extended to limited entry form. Processors which automatically translate tables to more conventional program usually base their diagnostic facilities on these rules. In this paper it is suggested that these rules are unsatisfactory and that the important aspect of checking is to eliminate ambiguity from tables. Ambiguity is defined and discussed, and a procedure for producing checked-out decision tables is proposed. The theoretical basis of the algorithm used is established. The importance of well-designed diagnostic facilities in decision table processors is emphasized.
Using space-time grid for efficient management of moving objects
Authors: Hae Don Chon, Divyakant Agrawal, Amr El Abbadi
Venue: Proceedings of the 2nd ACM international workshop on Data engineering for wireless and mobile access (2001)

Efficient storage and retrieval of moving objects in DBMS have received significant interest recently. There are applications that would benefit from the management of dynamically changing information about moving objects. In this paper, we develop a system that manages such information interacting with moving objects. We model the space-time domain space as a grid (Space-Time Grid) and model the trajectory of a moving object as a polyline in the Space-Time Grid. The polyline is the result of the interactions among other moving objects. In this paper, the insertion algorithm and several other query processing algorithms are presented.
Sorting with large volume, random access, drum storage
Authors: Joel Falkin, Sal Savastano,  Jr.
Venue: Communications of the ACM (1963)

An approach to sorting records is described using random access drum memory. The Sort program described is designed to be a generalized, self-generating sort, applicable to a variety of record statements. This description is divided into three parts. The first part presents the operating environment; the second defines the general solution; the third part describes the internal sort-merge technique.