ppxscal/embedding_network huggingface dataset:
A model for anisotropic reflection
Authors: Pierre Poulin, Alain Fournier
Venue: Proceedings of the 17th annual conference on Computer graphics and interactive techniques (1990)

A reflection and refraction model for anisotropic surfaces is introduced. The anisotropy is simulated by small cylinders (added or subtracted) distributed on the anisotropic surface. Different levels of anisotropy are achieved by varying the distance between each cylinder and/or rising the cylinders more or less from the surface. Multidirectional anisotropy is modelled by orienting groups of cylinders in different direction. The intensity of the reflected light is computed by determining the visible and illuminated portion of the cylinders, taking self-blocking into account. We present two techniques to compute this in practice. In one the intensity is computed by sampling the surface of the cylinders. The other is an analytic solution. In the case of the diffuse component, the solution is exact. In the case of the specular component, an approximation is developed using a Chebyshev polynomial approximation of the specular term, and integrating the polynomial.This model can be implemented easily within most rendering system, given a suitable mechanism to define and alter surface tangents. The effectiveness of the model and the visual importance of anisotropy are illustrated with some pictures.
Rasterizing curves of constant width
Authors: John D. Hobby
Venue: Journal of the ACM (JACM) (1989)

This paper gives a fast, linear-time algorithm for generating high-quality pixel representations of curved lines. The results are similar to what is achieved by selecting a circle whose diameter is the desired line width, and turning on all pixels covered by the circle as it moves along the desired curve. However, the circle is replaced by a carefully chosen polygon whose deviations from the circle represent subpixel corrections designed to improve the aesthetic qualities of the rasterized curve. For nonsquare pixels, equally good results are obtained when an ellipse is used in place of the circle. The class of polygons involved is introduced, an algorithm for generating them is given, and how to construct the set of pixels covered when such a polygon moves along a curve is shown. The results are analyzed in terms of a mathematical model for the uniformity and accuracy of line width in the rasterized image.
Granularity issues for solving polynomial systems via globally convergent algorithms on a hypercube
Authors: D. C. S. Allison, A. Chakraborty, L. T. Watson
Venue: Proceedings of the third conference on Hypercube concurrent computers and applications - Volume 2 (1989)

Polynomial systems of equations frequently arise in many applications such as solid modelling, robotics, computer vision, chemistry, chemical engineering, and mechanical engineering. Locally convergent iterative methods such as quasi-Newton methods may diverge or fail to find all meaningful solutions of a polynomial system. Recently a homotopy algorithm has been proposed for polynomial systems that is guaranteed globally convergent (always converges from an arbitrary starting point) with probability one, finds all solutions to the polynomial system, and has a large amount of inherent parallelism. There are several ways the homotopy algorithms can be decomposed to run on a hypercube. The granularity of a decomposition has a profound effect on the performance of the algorithm. The results of decompositions with two different granularities are presented. The experiments were conducted on an iPSC-16 hypercube using actual industrial problems.
Likelihood ratio gradient estimation for stochastic systems
Authors: Peter W. Glynn
Venue: Communications of the ACM (1990)

Consider a computer system having a CPU that feeds jobs to two input/output (I/O) devices having different speeds. Let &thgr; be the fraction of jobs routed to the first I/O device, so that 1 - &thgr; is the fraction routed to the second. Suppose that &agr; = &agr;(&thgr;) is the steady-sate amount of time that a job spends in the system. Given that &thgr; is a decision variable, a designer might wish to minimize &agr;(&thgr;) over &thgr;. Since &agr;(&middot;) is typically difficult to evaluate analytically, Monte Carlo optimization is an attractive methodology. By analogy with deterministic mathematical programming, efficient Monte Carlo gradient estimation is an important ingredient of simulation-based optimization algorithms. As a consequence, gradient estimation has recently attracted considerable attention in the simulation community. It is our goal, in this article, to describe one efficient method for estimating gradients in the Monte Carlo setting, namely the likelihood ratio method (also known as the efficient score method). This technique has been previously described (in less general settings than those developed in this article) in [6, 16, 18, 21]. An alternative gradient estimation procedure is infinitesimal perturbation analysis; see [11, 12] for an introduction. While it is typically more difficult to apply to a given application than the likelihood ratio technique of interest here, it often turns out to be statistically more accurate. In this article, we first describe two important problems which motivate our study of efficient gradient estimation algorithms. Next, we will present the likelihood ratio gradient estimator in a general setting in which the essential idea is most transparent. The section that follows then specializes the estimator to discrete-time stochastic processes. We derive likelihood-ratio-gradient estimators for both time-homogeneous and non-time homogeneous discrete-time Markov chains. Later, we discuss likelihood ratio gradient estimation in continuous time. As examples of our analysis, we present the gradient estimators for time-homogeneous continuous-time Markov chains; non-time homogeneous continuous-time Markov chains; semi-Markov processes; and generalized semi-Markov processes. (The analysis throughout these sections assumes the performance measure that defines &agr;(&thgr;) corresponds to a terminating simulation.) Finally, we conclude the article with a brief discussion of the basic issues that arise in extending the likelihood ratio gradient estimator to steady-state performance measures.
A Simplified Framework for Reduction in Strength
Authors: Karl J. Ottenstein
Venue: IEEE Transactions on Software Engineering (1989)

Reduction in strength is a traditional transformation for speeding up loop execution on sequential processors. The inverse transformation, induction variable substitution, can also speed up loops by decreasing register requirements, although it is typically a normalizing step in the detection of array dependences by parallelizing compilers. The author presents a simple framework for performing these transformations. In contrast to previous approaches to strength reduction, no unnecessary temporary variables or dead code fragments are introduced, only relevant intermediate language fragments are examined, iteration test replacement is not handled as a special case, and the execution time of the target code is never increased. The method is particularly easy to visualize, making it a useful teaching tool as well.
Evaluation of a reconfigurable architecture for digital beamforming using the OODRA workbench
Authors: D. L. Hwang, T. L. Wernimont, W. K. Fuchs
Venue: Proceedings of the 26th ACM/IEEE Design Automation Conference (1989)

This paper describes the application of the Object-Oriented Design of Reliable/Reconfigurable Architectures (OODRA) workbench to the performance simulation of an adaptive digital beamforming architecture. The performance effects due to chip partitioning and reconfiguration for fault tolerance and yield enhancement are presented. The experiments described illustrate the flexibility of the OODRA work-bench in architectural-level performance evaluation of algorithm-specific reconfigurable architectures.
A Model for Multilevel Security in Computer Networks
Authors: Wen-Pai Lu, Malur K. Sundareshan
Venue: IEEE Transactions on Software Engineering (1990)

A model is presented that precisely describes the mechanism that enforces the security policy and requirements for a multilevel secure network. The mechanism attempts to ensure secure flow of information between entities assigned to different security classes in different computer systems connected to the network. The mechanism also controls the access to the network devices by the subjects (users and processes executed on behalf of the users) with different security clearances. The model integrates the notions of nondiscretionary access control and information flow control to provide a trusted network base that imposes appropriate restrictions on the flow of information among the various devices. Utilizing simple set-theoretic concepts, a procedure is given to verify the security of a network that implements the model.
Linearity and unprovability of set union problem
Authors: Martin Loebl, Jaroslav Nešetřil
Venue: Proceedings of the twentieth annual ACM symposium on Theory of computing (1988)

We consider the set union problem (SUP) which consists in designing data for manipulation of a family of disjoint sets which partition a given universe of n elements. In response to a work of Tarjan we prove that the POSTORDER strategy for SUP has a linear length (thus solving a problem of Hart and Sharir). On the other side, we provide a data structure and axioms for an on line strategy-LOCAL POSTORDER-for SUP which fails to be linear but it has a very slow-indeed in the theory of finite sets unprovable-growth. This complements a result of Tarjan who showed an Ackermann type growth for a related problem. Our results may be summarized by saying that (in finite set theory) we may assume that our algorithms are linear (although we know that in fact they fail to be linear). Perhaps this is the first occurrence of unprovability in the complexity analysis of algorithms.
Surveying current research in object-oriented design
Authors: Rebecca J. Wirfs-Brock, Ralph E. Johnson
Venue: Communications of the ACM (1990)

The state of object-oriented is evolving rapidly. This survey describes what are currently thought to be the key ideas. Although it is necessarily incomplete, it contains both academic and industrial efforts and describes work in both the United States and Europe. It ignores well-known ideas, like that of Coad and Meyer [34], in favor of less widely known projects.Research in object-oriented design can be divided many ways. Some research is focused on describing a design process. Some is focused on finding rules for good designs. A third approach is to build tools to support design. Most of the research described in this article does all three.We first present work from Alan Snyder at Hewlett-Packard on developing a common framework for object-oriented terminology. The goal of this effort is to develop and communicate a corporate-wide common language for specifying and communicating about objects.We next look into the research activity at Hewlett-Packard, led by Dennis de Champeaux. De Champeaux is developing a model for object-based analysis. His current research focuses on the use of a trigger-based model for inter-object communications and development of a top-down approach to analysis using ensembles.We then survey two research activities that prescribe the design process. Rebecca Wirfs-Brock from Tektronix has been developing an object-oriented design method that focuses on object responsibilities and collaborations. The method includes graphical tools for improving encapsulation and understanding patterns of object communication. Trygve Reenskaug at the Center for Industriforskning in Oslo, Norway has been developing an object-oriented design method that focuses on roles, synthesis, and structuring. The method, called Object-Oriented Role Analysis, Syntheses and Structuring, is based on first modeling small sub-problems, and then combining small models into larger ones in a controlled manner using both inheritance (synthesis) and run-time binding (structuring).We then present investigations by Ralph Johnson at the University of Illinois at Urbana-Champaign into object-oriented frameworks and the reuse of large-scale designs. A framework is a high-level design or application architecture and consists of a suite of classes that are specifically designed to be refined and used as a group. Past work has focused on describing frameworks and how they are developed. Current work includes the design of tools to make it easier to design frameworks.Finally, we present some results from the research group in object-oriented software engineering at Northeastern University, led by Karl Lieberherr. They have been working on object-oriented Computer Assisted Software Engineering (CASE) technology, called the Demeterm system, which generates language-specific class definitions from language-independent class dictionaries. The Demeter system include tools for checking design rules and for implementing a design.
A high speed signal averager for electron beam test systems
Authors: D. J. Machin, D. W. Ranasinghe, G. Proctor
Venue: Microelectronic Engineering (1988)

A new signal processing method is described for electron beam design validation of integrated circuits. The method uses a multi-point digital averager including a fast hardware integrator. The method is particularly suited to extraction of logic values in synchronism with an external clock, although it can easily be used for analogue waveform acquisition. A method for using the averager with a voltage measuring spectrometer is suggested which uses a digital convergence algorithm to calculate feedback voltages for the retarding grid. The system is compared with other signal processing systems for electron beam test systems.
Teaching user interface design based on usability engineering
Authors: J. Nielsen, R. Molich
Venue: ACM SIGCHI Bulletin (1989)

For the last three years we have been teaching a course in user interface design at the Technical University of Denmark as part of the curriculum for the Master's Degree in computer science (courses for Bachelor's degrees are taught at another engineering school on campus). Here we describe our goals for the course and give a brief list of its contents. We discuss our use of mandatory laboratory assignments in more detail and also present results from studies of students' motivation for taking the usability course and their evaluation of different aspects of the course.
COFESS: cooperative fuzzy expert systems for intelligent recognition on small computers
Authors: Abraham Kandel, Moti Schneider
Venue: Proceedings of the 1988 ACM SIGSMALL/PC symposium on ACTES (1988)

In this paper we investigate the implementation of a cooperative fuzzy expert systems for intelligent recognition of patterns. First we discuss the communication method developed to communicate between the various expert systems on small computers, and then we describe in detail the functions and the structure of each expert system. We also show how fuzzy set theory and fuzzy logic is utilized in the implementation of the system.
Program transformation in the presence of errors
Authors: Alexander Aiken, Edward L. Wimmers, John H. Williams
Venue: Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages (1989)

Language designers and implementors have avoided specifying and preserving the meaning of programs that produce errors. This is apparently because being forced to preserve error behavior severely limits the scope of program optimization, even for correct programs. However, preserving error behavior is desirable for debugging, and error behavior must be preserved in any language that permits user-generated exceptions. This paper presents a technique for preserving the power of general program transformations in the presence of a rich collection of distinguishable error values. This is accomplished by introducing an annotation, &ldquo;Safe&rdquo;, to mark occurrences of functions that cannot produce errors. Succinct and general algebraic laws can be expressed using Safe, giving program transformations in a language with many error values the same power and generality as program transformations in a language with only a single error value.
Evaluating hardware models in DIGITAL's system simulation environment
Authors: A. K. George
Venue: Proceedings of the 26th ACM/IEEE Design Automation Conference (1989)

As the importance of system simulation increases [1], so does the need for good, fast and accurate models. Hardware models (or physical models) [1],[2] provide a quick and easy alternative for creating models; this paper analyzes performance of hardware models for two fairly complex devices where hardware models have been evaluated against behavior models written in C and hardware description languages.
Communication reduction for distributed sparse matrix factorization on a processor mesh
Authors: P. Sadayappan, S. K. Rao
Venue: Proceedings of the 1989 ACM/IEEE conference on Supercomputing (1989)

The problem of reducing the amount of interprocessor communication during the distributed factorization of a sparse matrix on a mesh-connected processor network is investigated. Two strategies are evaluated - 1) use of a fragmented distribution of row/columns of the matrix to limit the number of processors to which each row/column segment is transmitted, and 2) use of the elimination tree to permute the matrix so as to internalize as much of the communication as possible. Empirical evaluation of the schemes using matrices derived from circuit simulation shows significant reduction in the amount of communication for a 64 processor mesh.
Olympus: an interactive simulation system
Authors: G. J. Nutt, A. Beguelin, I. Demeure, S. Elliot, J. McWhirter
Venue: Proceedings of the 21st conference on Winter simulation (1989)

In this paper, we describe the Olympus Modeling System, a prototype modeling and simulation system we have built to interpret formal models of computation. Olympus employs a graphical, interactive user interface that enables one to control the system as it interprets a model. The system supports animation and simulation; animation is used to observe qualitative behavior of a model and simulation is used to obtain quantitative information about the model's behavior. The system supports multiple simultaneous users with fine-grained interaction between the users and the system.
Polling in concurrent programming
Authors: C.-D. Jung, E. Siberrt
Venue: Proceedings of the 17th conference on ACM Annual Computer Science Conference (1989)

Hoare introduced the concept of polling in his Communicating Sequential Processes (CSP) to handle nondeterministic message communication in distributed and concurrent programming. In order to introduce the polling concept effectively in a programming language, the problems of simultaneous polling, effective termination, busy waiting, and expressive power in one-to-many or many-to-one communication must be solved. This paper discusses the concept of polling, the details about the problems, and how a new concurrent programming language, COPL, solves the problems. COPL introduces a general algorithm to establish a hierarchical relationship between two communicating processes, an efficient mechanism to handle polling termination, a flexible polling to avoid busy waiting, and implicit polling to add asymmetry in the language for more expressive power. [Key words: concurrent programming, programming languages, polling, nondeterminism, and distributed systems]
Untyped sets, invention, and computable queries
Authors: R. Hull, J. Su
Venue: Proceedings of the eighth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems (1989)

Conventional database query languages are considered in the context of untyped sets. The algebra without while has the expressive power of the typed complex object algebra. The algebra plus while, and COL with untyped sets (under stratified semantics or inflationary semantics) have the power of the computable queries. The calculus has power beyond the computable queries; and is characterized using the typed complex object calculus with invention. The Bancilhon-Khoshafian calculus is also discussed. A technical tool, called &ldquo;generic Turing machine&rdquo;, is introduced and used in several of the proofs.
Supernode partitioning
Authors: F. Irigoin, R. Triolet
Venue: Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages (1988)

Supercompilers must reschedule computations defined by nested DO-loops in order to make an efficient use of supercomputer features (vector units, multiple elementary processors, cache memory, etc&hellip;). Many rescheduling techniques like loop interchange, loop strip-mining or rectangular partitioning have been described to speedup program execution. We present here a class of partitionings that encompasses previous techniques and provides enough flexibility to adapt code to multiprocessors with two levels of parallelism and two levels of memory.
Ada: adding reliability and efficiency to task communication in programming distributed control systems
Authors: K. M. Sacha
Venue: ACM SIGAda Ada Letters (1989)

One of the main application areas of the Ada language is programming of embedded systems. The most important issues in such applications are reliability and efficiency. On the hardware level these issues are addressed by distribute d architectures. On the software level appropriate language constructs are needed to benefit the reliability of the distributed hardware. Two extensions to the Ada language are suggested: one to improve the reliability of the remote procedure call and the other to improve the efficiency of the message broadcasting facility.
Inference of monotonicity constraints in datalog programs
Authors: A. Brodsky, Y. Sagiv
Venue: Proceedings of the eighth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems (1989)

Datalog (i.e., function-free logic) programs with monotonicity constraints on extensional predicates are considered. A monotonicity constraint states that one argument of a predicate is always less than another argument, according to some partial order. Relations of an extensional database are required to satisfy the monotonicity constraints imposed on their predicates. More specifically, a partial order is defined on the domain (i.e., set of constants) of the database, and every tuple of each relation satisfies the monotonicity constraints imposed on its predicate. An algorithm is given for inferring all monotonicity constraints that hold in relations of the intensional database from monotonicity constraints that hold in the extensional database. A complete inference algorithm is also given for disjunctions of monotonicity and equality constraints. It is shown that the inference of monotonicity constraints in programs is a complete problem for exponential time. For linear programs, this problem is complete for polynomial space.
Bounded diameter minimum spanning trees and related problems
Authors: J. M. Ho, D. T. Lee
Venue: Proceedings of the fifth annual symposium on Computational geometry (1989)

We consider the problem of finding a minimum diameter spanning tree (MDST) of a set of n points in the Euclidean plane. The diameter of a spanning tree is the maximum distance between any two points in the tree. We give a characterization of an MDST and present a &thgr;(n3 time algorithm for solving the problem. We also show that for a weighted undirected graph, the problem of determining if a spanning tree with total weight and diameter upper bounded, respectively, by two given parameters C and D exists is N P-complete. The geometrical minimum diameter Steiner tree problem, in which new points are allowed to be part of the spanning tree, is shown to be solvable in &Ogr;(n) time.