ppxscal/embedding_network huggingface dataset:
Layered participatory analysis: new developments in the CARD technique
Authors: Michael J. Muller
Venue: Proceedings of the SIGCHI conference on Human factors in computing systems (2001)

CARD (Collaborative Analysis of Requirements and Design) is an influential technique for participatory design and participatory analysis that is in use on three continents. This paper reviews three case studies that document the development of a layered CARD approach, which distinguishes among the following: (1) observable, formal components, (2) skill and craft, and (3) interpretative description. The layered approach simplifies the CARD materials, and moves the deliberately informal technique toward a more principled analysis.
A linear algorithm for copying binary trees using bounded workspace
Authors: K. P. Lee
Venue: Communications of the ACM (1980)

An algorithm to copy a binary tree in linear time using bounded workspace is presented. The algorithm does not modify the original tree at any time. The copy is constructed in such a way that it can be traversed in a read-only fashion even before the copying process is complete, provided one can distinguish between the original and the copy. The traversal can be carried out in parallel with the copying.
Certification of programs for secure information flow
Authors: Dorothy E. Denning, Peter J. Denning
Venue: Communications of the ACM (1977)

ertification mechanism for verifying the secure flow of information through a program. Because it exploits the properties of a lattice structure among security classes, the procedure is sufficiently simple that it can easily be included in the analysis phase of most existing compilers. Appropriate semantics are presented and proved correct. An important application is the confinement problem: The mechanism can prove that a program cannot cause supposedly nonconfidential results to depend on confidential input data.
Ancient Egyptian numbers: a CS-complete example
Authors: Timothy S. Gegg-Harrison
Venue: ACM SIGCSE Bulletin (2001)

A critical piece of any successful curriculum is a robust example that permeates the key concepts of the field. For computer science, we refer to such an example as CS-complete. A good CS-complete example is applicable in CS1, CS2, and Discrete Mathematics. Approximately 4000 years ago, the ancient Egyptians used a numbering system that serves as a prototype CS-complete example. In this paper, we outline the use of Egyptian numbering system as an example that naturally extends through CS1, CS2, and Discrete Mathematics.
Subset-Restricted Interchange for Dynamic Min-Max Scheduling Problems
Authors: George Steiner, Paul Stephenson
Venue: SIAM Journal on Discrete Mathematics (2000)

The traditional method of pairwise job interchange compares the cost of sequences which differ only in the interchange of two jobs. It assumes that either there are no intermediate jobs (adjacent pairwise interchange) or that the interchange can be performed no matter what the intermediate jobs are (nonadjacent pairwise interchange). We introduce a generalization that permits the pairwise interchange of jobs provided that the intermediate jobs belong to a restricted subset of jobs (subset-restricted pairwise interchange).In general, even if an adjacent interchange relation is a partial order, it need not be a precedence order. We introduce a unified theory of dominance relations based on subset-restricted interchange. This yields a precedence order for the class of unconstrained, regular, single machine scheduling problems $1\left/ r_{j}\left/ f_{\max}.\right. \right.$ Thus it applies to $1\left/ r_{j}\left/ L_{\max},\right. \right.$ $1/ r_{j},\overline{d_{j}}/ C_{\max}$, $1\left/ r_{j}\left/ \max w_{j}L_{j},\right. \right. 1\left/ r_{j}\left/ \max w_{j}C_{j},\right.\right.$ and other problems. We also show that these problems remain strongly NP-hard for interval-ordered tasks. The strength of the precedence orders was tested in a large-scale computational experiment for $1\left/ r_{j}\left/ \max w_{j}C_{j}.\right.\right.$ The results show that using the precedence orders in branch and bound algorithms speeds these up on average by about 58 percent.
An improved network clustering method for I/O-efficient query processing
Authors: Sung-Ho Woo, Sung-Bong Yang
Venue: Proceedings of the 8th ACM international symposium on Advances in geographic information systems (2000)

Efficient network query processing is extremely important in Geographical Information Systems (GIS) and Intelligent Transportation Systems (ITS) which include various applications of transportation, utility and communication networks, etc. In order to reduce the I/O cost in network query processing a given network should be stored with high disk-space utilization and a low edge-cut ratio. To do so the nodes in the network should be clustered in such a way that each cluster fits in a disk page with as small number of edge-cuts as possible. This is known as the network clustering problem which is NP-complete. In this paper we present a network clustering method, called Network-Traversal Clustering (NTC) method, which assigns the nodes of a given network to disk pages with optimal disk-space utilization and a low edge-cut ratio. NTC is suitable for the bulk loading operation into a network indexing structure. In the experimental results NTC outperformed the Connectivity-Clustered Access Method, the Spatial Partition Clustering (SPC) and SPC-R which is a modification of SPC on various networks.
Shifting Operations and Graded Betti Numbers
Authors: Annetta Aramova, Jürgen Herzog, Takayuki Hibi
Venue: Journal of Algebraic Combinatorics: An International Journal (2000)

The behaviour of graded Betti numbers under exterior and symmetric algebraic shifting is studied. It is shown that the extremal Betti numbers are stable under these operations. Moreover, the possible sequences of super extremal Betti numbers for a graded ideal with given Hilbert function are characterized. Finally it is shown that over a field of characteristic 0, the graded Betti numbers of a squarefree monomial ideal are bounded by those of the corresponding squarefree lexsegment ideal.
Developing adaptive groupware applications using a mobile component framework
Authors: Radu Litiu, Atul Parakash
Venue: Proceedings of the 2000 ACM conference on Computer supported cooperative work (2000)

A need exists to develop groupware systems that adapt to available resources and support user mobility. This paper presents DACIA, a system that provides mechanisms for building such groupware applications. Using DACIA, components of a groupware application can be moved to different hosts during execution, while maintaining communication connectivity with groupware services and other users. DACIA provides mechanisms that simplify building groupware for domains where users are mobile. New collaboration features can be also more easily implemented. DACIA is also applicable to non-mobile environments. We show its applicability to building groupware applications that can be reconfigured at run-time to adapt to changing user demands and resource constraints, for example, by relocating services or introducing new services. This paper describes the architecture of DACIA and its use in building adaptable groupware systems.
Zero-skew clock tree construction by simultaneous routing, wire sizing and buffer insertion
Authors: I.-M. Liu, T.-L. Chou, D. F. Wong, A. Aziz
Venue: Proceedings of the 2000 international conference on Computer-aided design (2001)

We propose an integrated clock tree construction algorithm which performs simultaneous routing, wire sizing and buffer insertion. In existing approaches, wire sizing and clock buffer insertion are typically applied sequentially after a clock tree is generated and routed, i.e., they are done as post-processing steps. None of the known methods can perform clock routing while simultaneously considering wire sizing and buffer insertion. We introduce wire widths and levels of buffers inserted as variables in forming merging segments in the proposed Integrated Deferred-Merge Embedding (IDME) algorithm. As a result, more zero-skew merging locations are made possible and the clock trees generated are zero-skew by construction. Our experiments show that by taking the advantage offered by wire sizing, we are able to minimize phase delay as well as to reduce wire length and use less buffers.
Synchronization with eventcounts and sequencers
Authors: David P. Reed, Rajendra K. Kanodia
Venue: Communications of the ACM (1979)

Synchronization of concurrent processes requires controlling the relative ordering of events in the processes. A new synchronization mechanism is proposed, using abstract objects called eventcounts and sequencers, that allows processes to control the ordering of events directly, rather than using mutual exclusion to protect manipulations of shared variables that control ordering of events. Direct control of ordering seems to simplify correctness arguments and also simplifies implementation in distributed systems. The mechanism is defined formally, and then several examples of its use are given. The relationship of the mechanism to protection mechanisms in the system is explained; in particular, eventcounts are shown to be applicable to situations where confinement of information matters. An implementation of eventcounts and sequencers in a system with shared memory is described.
An Abstract Type for Statistics Collection in Simula
Authors: Carl E. Landwehr
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1980)

Although the use of abstract types has been widely advocated as a specification and implementation technique, their use has often been associated with programming languages that are not widely available, and examples published to date are rarely taken from actual applications. SIMULA is a widely available language that supports the use of abstract types. The purposes of this paper are (1) to demonstrate the application of the concepts of data abstraction to a common problem; (2) to demonstrate the use of data abstraction in a widely available language; and (3) to provide a portable facility for statistics collection that may make the use of SIMULA more attractive. A discussion of the background of and requirements for an abstract type for statistics collection is presented, followed by a specification for the type using traces. A SIMULA implementation, with examples of its use, is given. Finally, implementation of the abstract type in other languages is discussed.
Using Web annotations for asynchronous collaboration around documents
Authors: J. J. Cadiz, Anop Gupta, Jonathan Grudin
Venue: Proceedings of the 2000 ACM conference on Computer supported cooperative work (2000)

Digital web-accessible annotations are a compelling medium for personal comments and shared discussions around documents. Only recently supported by widely used products, "in-context" digital annotation is a relatively unexamined phenomenon. This paper presents a case study of annotations created by members of a large development team using Microsoft Office 2000-approximately 450 people created 9,000 shared annotations on about 1,250 documents over 10 months. We present quantitative data on use, supported by interviews with users, identifying strengths and weaknesses of the existing capabilities and possibilities for improvement.
Architecture and design of AlphaServer GS320
Authors: Kourosh Gharachorloo, Madhu Sharma, Simon Steely, Stephen Van Doren
Venue: ACM SIGPLAN Notices (2000)

This paper describes the architecture and implementation of the AlphaServer GS320, a cache-coherent non-uniform memory access multiprocessor developed at Compaq. The AlphaServer GS320 architecture is specifically targeted at medium-scale multiprocessing with 32 to 64 processors. Each node in the design consists of four Alpha 21264 processors, up to 32GB of coherent memory, and an aggressive IO subsystem. The current implementation supports up to 8 such nodes for a total of 32 processors. While snoopy-based designs have been stretched to medium-scale multiprocessors by some vendors, providing sufficient snoop bandwidth remains a major challenge especially in systems with aggressive processors. At the same time, directory protocols targeted at larger scale designs lead to a number of inherent inefficiencies relative to snoopy designs. A key goal of the AlphaServer GS320 architecture has been to achieve the best-of-both-worlds, partly by exploiting the bounded scale of the target systems.This paper focuses on the unique design features used in the AlphaServer GS320 to efficiently implement coherence and consistency. The guiding principle for our directory-based protocol is to address correctness issues related to rare protocol races without burdening the common transaction flows. Our protocol exhibits lower occupancy and lower message counts compared to previous designs, and provides more efficient handling of 3-hop transactions. Furthermore, our design naturally lends itself to elegant solutions for deadlock, livelock, starvation, and fairness. The AlphaServer GS320 architecture also incorporates a couple of innovative techniques that extend previous approaches for efficiently implementing memory consistency models. These techniques allow us to generate commit events (which are used for ordering purposes) well in advance of formulating the reply to a transaction. Furthermore, the separation of the commit event allows time-critical replies to bypass inbound requests without violating ordering properties. Even though our design specifically targets medium-scale servers, many of the same techniques can be applied to larger-scale directory-based and smaller-scale snoopy-based designs. Finally, we evaluate the performance impact of some of the above optimizations and present a few competitive benchmark results.
&ldquo;User sensitive inclusive design&rdquo;&mdash; in search of a new paradigm
Authors: Alan F. Newell, Peter Gregor
Venue: Proceedings on the 2000 conference on Universal Usability (2000)

This paper considers appropriate research methodologies for the development of Universal Usability. It is written from the viewpoint of research which has the long term objective of developing technological systems for everyone, including people with disabilities. It considers whether new research paradigms are appropriate and how they are different from those used within traditional technological research. It suggests the development of a new paradigm of &ldquo;User Sensitive Inclusive Design&rdquo; which includes people with disabilities within a User Centred Design methodology, and recommends a collaborative approach to the development of such a methodology.
Slicing Software for Model Construction
Authors: John Hatcliff, Matthew B. Dwyer, Hongjun Zheng
Venue: Higher-Order and Symbolic Computation (2000)

Applying finite-state verification techniques (e.g., model checking) to software requires that program source code be translated to a finite-state transition system that safely models program behavior. Automatically checking such a transition system for a correctness property is typically very costly, thus it is necessary to reduce the size of the transition system as much as possible. In fact, it is often the case that much of a program's source code is irrelevant for verifying a given correctness property.In this paper, we apply program slicing techniques to remove automatically such irrelevant code and thus reduce the size of the corresponding transition system models. We give a simple extension of the classical slicing definition, and prove its safety with respect to model checking of linear temporal logic (LTL) formulae. We discuss how this slicing strategy fits into a general methodology for deriving effective software models using abstraction-based program specialization.
Recursive monadic bindings
Authors: Levent Erkök, John Launchbury
Venue: Proceedings of the fifth ACM SIGPLAN international conference on Functional programming (2000)

Monads have become a popular tool for dealing with computational effects in Haskell for two significant reasons: equational reasoning is retained even in the presence of effects; and program modularity is enhanced by hiding "plumbing" issues inside the monadic infrastructure. Unfortunately, not all the facilities provided by the underlying language are readily available for monadic computations. In particular, while recursive monadic computations can be defined directly using Haskell's built-in recursion capabilities, there is no natural way to express recursion over the values of monadic actions. Using examples, we illustrate why this is a problem, and we propose an extension to Haskell's donotation to remedy the situation. It turns out that the structure of monadic value-recursion depends on the structure of the underlying monad. We propose an axiomatization of the recursion operation and provide a catalogue of definitions that satisfy our criteria.
Inefficiency of the use of Boolean functions for information retrieval systems
Authors: J. Verhoeff, W. Goffman, Jack Belzer
Venue: Communications of the ACM (1961)

In this note we attempt to point out why boolean functions are, in general, not applicable in information retrieval systems.
HISDL&mdash;a structure description language
Authors: Willie Y.-P. Lim
Venue: Communications of the ACM (1982)

The features of a language designed for the description of the structure of computer systems are described. The structure of a system is specified hierarchically as an interconnection of components with each component being a named instance of a component type. The system itself is another component type. The interconnection between components is specified in two ways: either by specifying all the ports that are connected together, or by specifying a component and the ports that are connected to its ports. A structure specification is a list of such connection specifications. The language has an iterative construct for specifying highly regular structures, and a conditional construct is also provided. A component type can be recursively specified while parameterization of component type specifications is supported. The latter is particularly useful for specifying classes of components of similar structure.
A psychology of learning BASIC
Authors: Richard E. Mayer
Venue: Communications of the ACM (1979)

This paper addresses the question: What does a person know following learning of BASIC programming? Several underlying conceptual structures are identified: (1) a transaction is an event that occurs in the computer and involves some operation on some object at some location, (2) a prestatement is a set of transactions corresponding to a line of code, (3) chunks are frequently occurring configurations of prestatements corresponding to several lines of code.
Blocks&mdash;a new datatype for SNOBOL4
Authors: James F. Gimpel
Venue: Communications of the ACM (1972)

A new datatype, called a block, has been implemented for SNOBOL4. A block is a three-dimensional aggregate of characters in the form of a right parallelepiped, best thought of as a three-dimensional extension to a string. (The third dimension is used for overstriking.) Blocks may be printed, concatenated in any of three dimensions, and merged on the basis of program-defined connection points. Some blocks adapt in size and shape to their environment. Blocks and their operations are mainly used for composing printable output. A variety of graphical problems (including flowcharting, bargraphs, logic diagrams, mathematical-equation formation, and text justification and preparation) have been programmed on a printer in what appears to be an easy and natural way. In addition to these somewhat specialized applications, blocks appear to be a good general purpose device-independent output formation mechanism especially suitable for nonnumerical work. The concept of a block is largely language independent. That is, blocks require little in the way of specialized syntax and could readily be absorbed into the external structure of most programming languages.
A first order approximation to the optimum checkpoint interval
Authors: John W. Young
Venue: Communications of the ACM (1974)

To avoid having to restart a job from the beginning in case of random failure, it is standard practice to save periodically sufficient information to enable the job to be restarted at the previous point at which information was saved. Such points are referred to as checkpoints, and the saving of such information at these points is called checkpointing [1].
Low Voltage High-Speed CMOS Square-Law Composite Transistor Cell
Authors: Changku Hwang, Akira Hyogo, Hong-Sun Kim, Mohammed Ismail, Keitaro Sekine
Venue: Analog Integrated Circuits and Signal Processing (2000)

A new low voltage high-speed CMOS composite transistor is presented. It lowers supply voltage down to \vert {V_{t}}\vert +{2\,V_{ds,sat}} and considerably extends input voltage operating range and achieves high speed operation. As an application example, it is used in the design of a high-speed four quadrant analog multiplier. Simulations results using MOSIS 2 &mu;m N-well process with a 3 V supply are given.
The Earth Mover's Distance as a Metric for Image Retrieval
Authors: Yossi Rubner, Carlo Tomasi, Leonidas J. Guibas
Venue: International Journal of Computer Vision (2000)

We investigate the properties of a metric between two distributions, the Earth Mover's Distance (EMD), for content-based image retrieval. The EMD is based on the minimal cost that must be paid to transform one distribution into the other, in a precise sense, and was first proposed for certain vision problems by Peleg, Werman, and Rom. For image retrieval, we combine this idea with a representation scheme for distributions that is based on vector quantization. This combination leads to an image comparison framework that often accounts for perceptual similarity better than other previously proposed methods. The EMD is based on a solution to the transportation problem from linear optimization, for which efficient algorithms are available, and also allows naturally for partial matching. It is more robust than histogram matching techniques, in that it can operate on variable-length representations of the distributions that avoid quantization and other binning problems typical of histograms. When used to compare distributions with the same overall mass, the EMD is a true metric. In this paper we focus on applications to color and texture, and we compare the retrieval performance of the EMD with that of other distances.
An understandability metrics for object oriented programs
Authors: Naoko Yamasaki, Tetsuro Kakeshita
Venue: Addendum to the 2000 proceedings of the conference on Object-oriented programming, systems, languages, and applications (Addendum) (2000)

We propose a software metrics to evaluate understandability of OOP's. This metrics is composed of the understanding cost formula based on cognitive science and the understanding process modeling. Unlike Chidamber's metrics, our metrics considers instances as well as classes. We have also evaluated understandability of structured programs using this metrics.
Text input for mobile devices: comparing model prediction to actual performance
Authors: Christina L. James, Kelly M. Reischel
Venue: Proceedings of the SIGCHI conference on Human factors in computing systems (2001)

A study was conducted to obtain performance data for entering text on a mobile phone in order to compare it to performance predictions based on two different mathematical models. Speed data was obtained for two text input methods, T9 Text Input and Multi-tap. While the direction of the results was the same for both the performance data and both model predicitons (with predictive text entry being faster than Multi-tap text entry), the results for all three differed in magnitude. Suggestions for this discrepancy are provided. In addition, in order to help shape future models, additional results are presented for both input methods to show how both accuracy and speed performance varies based on user experience and text subject matter.