ppxscal/embedding_network huggingface dataset:
The role of commutativity in constraint propagation algorithms
Authors: Krzysztof R. Apt
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (2000)

Constraing propagation algorithms form an important part of most of the constraint programming systems. We provide here a simple, yet very general framework that allows us to explain several constraint propagation algorithms in a systematic way. In this framework we proceed in two steps. First, we introduce a generic iteration algorithm on partial orderings and prove its correctness in an abstract setting. Then we instantiate this algorithm with specific partial orderings and functions to obtain specific constraint propagation algorithms. In particular, using the notions commutativity and semi-commutativity, we show that the AC-3, PC-2, DAC, and DPC algorithms for achieving (directional) arc consistency and (directional) path consistency are instances of a single generic algorithm. The work reported here extends and simplifies that of Apt [1999a].
VHDL teamwork, organization units and workspace management
Authors: S. Olcoz, L. Ayuda, I. Izaguirre, O. Penalba
Venue: Proceedings of the conference on Design, automation and test in Europe (1998)

A new set of tools for Teamwork, Organization Units, Workspace and Build management of VHDL-based reusable components, organized in libraries, accessible through an heterogeneous and distributed environment is presented. These tools support the collaborative and distributed development of systems-on-a-chip reusing VHDL components available through the intranets and the Internet. They must be used as a complementary support to the design tools (simulation, synthesis, etc.) already available in the market to enhance productivity, facilitating maintenance, improving reliability, efficiency and interoperability, and finally, capitalizing on the IP library components investment.
Time, clocks, and the ordering of events in a distributed system
Authors: Leslie Lamport
Venue: Communications of the ACM (1978)

The concept of one event happening before another in a distributed system is examined, and is shown to define a partial ordering of the events. A distributed algorithm is given for synchronizing a system of logical clocks which can be used to totally order the events. The use of the total ordering is illustrated with a method for solving synchronization problems. The algorithm is then specialized for synchronizing physical clocks, and a bound is derived on how far out of synchrony the clocks can become.
Partioning algorithms for finite sets
Authors: George Hutchinson
Venue: Communications of the ACM (1963)

The partitions of a set with n elements are represented by certain n-tuples of positive integers. Algorithms are described which generate without repetitions the n-tuples corresponding to: (1) all partitions of the given set, (2) all partitions of the given set into m or fewer sets (1 &lnE; m &lnE; n), and (3) all partitions of the given set into exactly m sets (1 &lnE; m &lnE; n).
Realtime wavelet video coder based on reduced memory accessing
Authors: Roberto Y. Omaki, Yu Dong, Morgan H. Miki, Makoto Furuie, Daisuke Taki, Masaya Tarui, Gen Fujita, Takao Onoye, Isao Shirakawa
Venue: Proceedings of the 2001 Asia and South Pacific Design Automation Conference (2001)

In this paper, the VLSI implementation of a real-time EZW video coder is presented. The proposed architecture adopts a modified 2-D DWT subband decomposition scheme, with the purpose of reducing the transposition memory requirements of 2-D DWT. In addition, through the use of a parallelized partial zerotree EZW scheme, temporary buffer requirements between the DWT and EZW modules are also reduced. The video encoder is integrated in a 0.35 um 3LM chip by using 341 K transistors on a 4.93 x 4.93 mm2 die.
Computer languages for heuristic processes
Authors: Aiko Hormann
Venue: Communications of the ACM (1961)

The applicability of computers to many problem-solving situations&mdash;chess playing, mathematical proofs, music composition, etc.&mdash;has been demonstrated. We wish to explore further heuristic processes suggested by human problem-solving activity. One step toward this goal has been the design of a system named ROVER. ROVER refers both to the simulated computer and the information processing language it uses.
File structures using hashing functions
Authors: E. G. Coffman,  Jr., J. Eve
Venue: Communications of the ACM (1970)

A general method of file structuring is proposed which uses a hashing function to define tree structure. Two types of such trees are examined, and their relation to trees studied in the past is explained. Results for the probability distributions of path lengths are derived and illustrated.
Balancing cooperation and risk in intrusion detection
Authors: Deborah Frincke
Venue: ACM Transactions on Information and System Security (TISSEC) (2000)

Early systems for networked intrusion detection (or, more generally, intrusion or misuse management) required either a centralized architecture or a centralized decision-making point, even when the data gathering was distributed. More recently, researchers have developed far more decentralized intrusion detection systems using a variety of techniques. Such systems often rely upon data sharing between sites which do not have a common administrator and therefore cooperation will be required in order to detect and respond to security incidents. It has therefore become important to address cooperation and data sharing in a formal manner. In this paper, we discuss the detection of distributed attacks across cooperating enterprises. We begin by defining relationships between cooperative hosts, then use the take-grant model to identify both when a host could identify a widespread attack and when that host is at increased risk due to data sharing. We further refine our definition of potential identification using access, integrity, and cooperation policies which limit sharing. Finally, we include a brief description of both a simple Prolog model encorporating data sharing policies and a prototype cooperative intrusion detection system.
Evolution of Contact Point: a case study of a help desk and its users
Authors: Lena Mamykina, Catherine G. Wolf
Venue: Proceedings of the 2000 ACM conference on Computer supported cooperative work (2000)

This paper describes the evolution of a concept, Contact Point, the research process through which it evolved, and the work context and practices which drove its evolution. Contact Point is a web-based application that helps a business manage its relationships with its customers. It can also be used within a business as a means for managing the relationship between parts of the business. In this paper we describe a study of the applicability of Contact Point to the technical services organization and field personnel of a medical device manufacturer. We found that there were opportunities to potentially reduce call volume through Contact Point. We discovered, however, that the technical service representatives sometimes filled roles other than providing information in their telephone conversations with field personnel. These functions included reassuring callers that the callers' answers to questions were correct, providing a rationale for information, and redirecting calls to other departments. The ability to share a document and collaborate in real time was viewed as very valuable. We also discovered that the field personnel need information from a variety of other people in order to do their jobs. These observations were used to enhance the next iteration of Contact Point and to develop strategies for the introduction of Contact Point to users.
Compile and Run-Time Support for the Parallelization of Sparse Matrix Updating Algorithms
Authors: Gerardo Bandera, Manuel Ujaldón, Emilio L. Zapata
Venue: The Journal of Supercomputing (2000)

This work presents a survey of the capabilities that the sparse computation offers for improving performance when parallelized, either automatically or through a data-parallel compiler. The characterization of a sparse code gets more complicated as code length increases: Access patterns change from loop to loop, thus making necessary to redefine the parallelization strategy. While dense computation solely offers the possibility of redistributing data structures, several other factors influence the performance of a code excerpt in the sparse field, like source data representation on file, compressed data storage in memory, the creation of new nonzeroes at run-time (fill-in) or the number of processors available. We analize the alternatives that arise from each issue, providing a guideline for the underlying compilation work and illustrating our techniques with examples on the Cray T3E.
High-level data flow analysis
Authors: Barry K. Rosen
Venue: Communications of the ACM (1977)

In contrast to the predominant use of low-level intermediate text, high-level data flow analysis deals with programs essentially at source level and exploits the control flow information implicit in the parse tree. The need for high-level flow analysis arises from several aspects of recent work on advanced methods of program certification and optimization. This paper proposes a simple general method of high-level data flow analysis that allows free use of escape and jump statements, avoids large graphs when compiling large programs, facilitates updating of data flow information to reflect program changes, and derives new global information helpful in solving many familiar global flow analysis problems. An illustrative application to live variable analysis is presented. Many of the graphs involved are constructed and analyzed before any programs are compiled, thus avoiding certain costs that low-level methods incur repeatedly at compile time.
On the expected lengths of sequences generated in sorting by replacement selecting
Authors: William W. Hooker
Venue: Communications of the ACM (1969)

In the replacement-selecting technique of sorting, one is interested in the ratio Lj of the expected length of the jth sequence generated by the technique to the number of memory cells used. Using complex-variable theory, it is shown that Lj &rarr; 2 and that, asymtotically, the average interval between sign changes of Lj &mdash; 2 is 2.6662.
Experiments in text file compression
Authors: Frank Rubin
Venue: Communications of the ACM (1976)

A system for the compression of data files, viewed as strings of characters, is presented. The method is general, and applies equally well to English, to PL/I, or to digital data. The system consists of an encoder, an analysis program, and a decoder. Two algorithms for encoding a string differ slightly from earlier proposals. The analysis program attempts to find an optimal set of codes for representing substrings of the file. Four new algorithms for this operation are described and compared. Various parameters in the algorithms are optimized to obtain a high degree of compression for sample texts.
Providing adaptive support to the understanding of instructional material
Authors: Cristina Conati, Kurt VanLehn
Venue: Proceedings of the 6th international conference on Intelligent user interfaces (2001)

We present an adaptive interface designed to provide tailored support for the understanding of written instructional material. The interface relies on a user model based on a Bayesian network, that assesses users' understanding as users read the instructional material and try to understand it by generating explanations to themselves. The user model's assessment is used by the interface to generate tailored scaffolding of further user's explanations that can improve the user's comprehension. After illustrating how the Bayesian user model assesses understanding from the user's explanations and from latency data on the user's attention, we discuss initial results on the effectiveness of the interface's adaptive interventions.
Distributed multi-broadcast in unknown radio networks
Authors: Andrea E. F. Clementi, Angelo Monti, Riccardo Silvestri
Venue: Proceedings of the twentieth annual ACM symposium on Principles of distributed computing (2001)

One of the most frequent tasks in multi-hop synchronous radio networks is the multi-broadcast operation: it consists in performing r independent message broadcasts through a network of n nodes. We investigate the case in which messages have logarithmic bounded size and the nodes have no knowledge of the topology (i.e. unknown networks). Let D and c be the maximum eccentricity and the congestion of the network, respectively. First, we prove an &OHgr;(c+(D+c/log c) log n) lower bound on the number of time-slots required to complete a multi-broadcast operation by any deterministic distributed protocol. Secondly, we prove an &OHgr;(c+(c/log c)log n + D log(n/D)) lower bound for randomized distributed protocols. An important consequence is that &ldquo;perfect pipeline&rdquo; is not achievable for both deterministic and randomized protocols. Finally, for any constant &agr; > 0, we provide an O((D + c)d2 log(2+&agr;) n) deterministic upper bound for the same task where d is the maximum in-degree of the network. Our (non-constructive) deterministic distributed protocol is thus almost optimal when d = O(polylogn) and it can be converted into an efficiently constructible one having O((D + c)d2 log(3+&agr;) n) completion time.
Exploring Texture Ensembles by Efficient Markov Chain Monte Carlo-Toward a 'Trichromacy' Theory of Texture
Authors: Song Chun Zhu, Xiu Wen Liu, Ying Nian Wu
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (2000)

This article presents a mathematical definition of texture¿the Julesz ensemble$\Omega({\bf{h}})$, which is the set of all images (defined on ${\rm{Z}}^2$) that share identical statistics ${\bf{h}}$. Then texture modeling is posed as an inverse problem: Given a set of images sampled from an unknown Julesz ensemble $\Omega({\bf{h}}_\ast)$, we search for the statistics ${\bf{h}}_\ast$ which define the ensemble. A Julesz ensemble $\Omega({\bf{h}})$ has an associated probability distribution $q({\rm{\bf{I}}}; {\bf{h}})$, which is uniform over the images in the ensemble and has zero probability outside. In a companion paper [33], $q({\rm{\bf{I}}}; {\bf{h}})$ is shown to be the limit distribution of the FRAME (Filter, Random Field, And Minimax Entropy) model [36], as the image lattice $\Lambda \rightarrow {\rm{Z}}^2$. This conclusion establishes the intrinsic link between the scientific definition of texture on ${\rm{Z}}^2$ and the mathematical models of texture on finite lattices. It brings two advantages to computer vision: 1) The engineering practice of synthesizing texture images by matching statistics has been put on a mathematical foundation. 2) We are released from the burden of learning the expensive FRAME model in feature pursuit, model selection and texture synthesis. In this paper, an efficient Markov chain Monte Carlo algorithm is proposed for sampling Julesz ensembles. The algorithm generates random texture images by moving along the directions of filter coefficients and, thus, extends the traditional single site Gibbs sampler. We also compare four popular statistical measures in the literature, namely, moments, rectified functions, marginal histograms, and joint histograms of linear filter responses in terms of their descriptive abilities. Our experiments suggest that a small number of bins in marginal histograms are sufficient for capturing a variety of texture patterns. We illustrate our theory and algorithm by successfully synthesizing a number of natural textures.
Modelling geospatial application databases using UML-based repositories aligned with international standards in geomatics
Authors: Jean Brodeur, Yvan Bédard, Marie-Josée Proulx
Venue: Proceedings of the 8th ACM international symposium on Advances in geographic information systems (2000)

This paper presents the result of recent work on the use of geospatial repositories to store the conceptual content of object oriented application database schemas and dictionaries aligned with international standards in geographic information (ISO/TC 211 and OGC). According to software engineering and database concepts, a geospatial repository can be defined as a collection of (meta) data structured in a manner to provide information about the semantics, geometry, temporality, and the integrity constraint of data stored in a geospatial database. For the last 6 years, ISO/TC 211 and OGC have been developing standards about geographic information to enable access and interoperability of geographic information; parts of these standards impact directly on geospatial repositories. Our work demonstrates that it is possible to develop a geospatial repository aligned with these standards and to implement it in a UML-based visual modelling tool.
Hierarchical agent control: a framework for defining agent behavior
Authors: Marc S. Atkin, Gary W. King, David L. Westbrook, Brent Heeringa, Paul R. Cohen
Venue: Proceedings of the fifth international conference on Autonomous agents (2001)

The Hierarchical Agent Control Architecture (HAC) is a general toolkit for specifying an agent's behavior. HAC supports action abstraction, resource management, sensor integration, and is well suited to controlling large numbers of agents in dynamic environments. It relies on three hierarchies: action, sensor, and context. The action hierarchy controls the agent's behavior. It is organized around tasks to be accomplished, not the agents themselves. This facilitates the integration of multi-agent actions and planning into the architecture. The sensor hierarchy provides a principled means for structuring the complexity of reading and transforming sensor information. Each level of the hierarchy integrates the data coming in from the environment into conceptual chunks appropriate for use by actions at this level. Actions and sensors are written using the same formalism. The context hierarchy is a hierarchy of goals. In addition to their primary goals, most actions are operating within a set of implicit assumptions. These assumptions are made explicit through the context hierarchy. We have developed a planner, GRASP, implemented within HAC, which is capable of resolving multiple goals in real time. HAC was intended to have wide applicability. It has been used to control agents in commercial computer games and physical robots. Our primary application domain is a simulator of land-based military engagements called &ldquo;Capture the Flag.&rdquo; HAC's simulation substrate models physics at an abstract level. HAC supports any domain in which behaviors can be reduced to a small set of primitive effectors such as {\sc move} and {\sc apply-force}. At this time defining agent behavior requires Lisp programming skills; we are moving towards more graphical programming languages.
An error-correcting parse algorithm
Authors: E. T. Irons
Venue: Communications of the ACM (1963)

During the past few years, research into so-called &ldquo;Syntax Directed Compiler&rdquo; and &ldquo;Compiler Compiler&rdquo; techniques [1, 2, 3, 4, 5, 6] has given hope that constructing computer programs for translating formal languages may not be as formidable a task as it once was. However, the glow of the researchers' glee has obscured to a certain extent some very perplexing problems in constructing practical translators for common programming languages. The automatic parsing algorithms indeed simplify compiler construction but contribute little to the production of &ldquo;optimized&rdquo; machine code, for example. An equally perplexing problem for many of these parsing algorithms has been what to do about syntactically incorrect object strings. It is common knowledge that most of the ALGOL or FORTRAN &ldquo;programs&rdquo; which a compiler sees are syntactically incorrect. All of the parsing algorithms detect the existence of such errors. Many have considerable difficulty pinpointing the location of the error, printing out diagnostic information, and recovering enough to move on to other correct parts of the object string. It is the author's opinion that those algorithms which do the best job of error recovery are those which are restricted to simpler forms of formal languages.
Syntax macros and extended translation
Authors: B. M. Leavenworth
Venue: Communications of the ACM (1966)

A translation approach is described which allows one to extend the syntax and semantics of a given high-level base language by the use of a new formalism called a syntax-macro. Syntax-macros define string transformations based on syntactic elements of the base language. Two types of macros are discussed, and examples are given of their use. The conditional generation of macros based on options and alternatives recognized by the scan are also described.
A tape file merge pattern generator
Authors: William S. Cooke
Venue: Communications of the ACM (1963)

A routine is presented which specifies the sequence of merge cycles to effect the merging of sorted tape files. The routine is designed to minimize elapsed computer time by varying the power of the merge cycles, so as to use all the available tape drives, with its characteristic of assigning one drive to a single-eel file and two drives to each multiple-reel file.
HW/SW partitioning of an embedded instruction memory decompressor
Authors: Shlomo Weiss, Shay Beren
Venue: Proceedings of the ninth international symposium on Hardware/software codesign (2001)

We introduce a new PLA-based decoder architecture for random-access run-time decompression of compressed instruction memory in embedded systems. The compression method employs class-based coding. We show that this new decoder architecture can be extended to provide high throughput decompression. The design of the decompressor is based on the following HW/SW tradeoff: decoding is done in hardware to provide high throughput, yet the codebook used for decompression is fully programmable.
An algorithm defining ALGOL assignment statements
Authors: Robert W. Floyd
Venue: Communications of the ACM (1960)

It is not possible, by testing symbol pairs only [2], to determine whether a given symbol string is consistent with the formation rules of ALGOL [1]. For example, the formula l1: l2: x[i := 5j + 3.14.159; violates four distinct formation rules of ALGOL, yet each pair of adjacent characters may appear in permissible formulae. The algorithm described here will determine, with minor restrictions, whether a particular symbol string is a permissible ALGOL assignment statement. I believe that the same technique may be extended to determine whether a given symbol string is a permissible ALGOL program or not, where a program is defined as a sequence of permissible statements separated by semicolons. The algorithm scans the formula from left to right, replacing certain character pairs by single characters. If under the allowable transformations the symbol string may be reduced to the single character &Sgr;, it is a well-formed formula in ALGOL; otherwise it violates the formation rules.
Introducing the project/process evaluation and development framework (poster session)
Authors: Daniel A. Rawsthorne
Venue: Addendum to the 2000 proceedings of the conference on Object-oriented programming, systems, languages, and applications (Addendum) (2000)

Many software projects fail. The main reason they fail is that people don't understand them well enough to make them succeed. The Project/Process Evaluation and Development Framework (PEDF) allows both customers and developers to understand their project and its process. It allows them to understand what they're doing, why it's supposed to work (or why it won't work), and how to modify it to make it more successful.