ppxscal/embedding_network huggingface dataset:
Deciding ML typability is complete for deterministic exponential time
Authors: Harry G. Mairson
Venue: Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages (1989)

A well known but incorrect piece of functional programming folklore is that ML expressions can be efficiently typed in polynomial time. In probing the truth of that folklore, various researchers, including Wand, Buneman, Kanellakis, and Mitchell, constructed simple counterexamples consisting of typable ML programs having length n, with principal types having &OHgr;(2cn) distinct type variables and length &OHgr;(22cn). When the types associated with these ML constructions were represented as directed acyclic graphs, their sizes grew as &OHgr;(2cn). The folklore was even more strongly contradicted by the recent result of Kanellakis and Mitchell that simply deciding whether or not an ML expression is typable is PSPACE-hard. We improve the latter result, showing that deciding ML typability is DEXPTIME-hard. As Kanellakis and Mitchell have shown containment in DEXPTIME, the problem is DEXPTIME-complete. The proof of DEXPTIME-hardness is carried out via a generic reduction: it consists of a very straightforward simulation of any deterministic one-tape Turing machine M with input &khgr; running in &Ogr;(c|&khgr;|) time by a polynomial-sized ML formula &PHgr;M,&khgr;, such that M accepts &khgr; iff &PHgr;M,&khgr; is typable. The simulation of the transition function &dgr; of the Turing Machine is realized uniquely through terms in the lambda calculus without the use of the polymorphic let construct. We use let for two purposes only: to generate an exponential amount of blank tape for the Turing Machine simulation to begin, and to compose an exponential number of applications of the ML formula simulating state transition. It is purely the expressive power of ML polymorphism to succinctly express function composition which results in a proof of DEXPTIME-hardness. We conjecture that lower bounds on deciding typability for extensions to the typed lambda calculus can be regarded precisely in terms of this expressive capacity for succinct function composition. To further understand this lower bound, we relate it to the problem of proving equality of type variables in a system of type equations generated from an ML expression with let-polymorphism. We show that given an oracle for solving this problem, deciding typability would be in PSPACE, as would be the actual computation of the principal type of the expression, were it indeed typable.
Time space tradeoffs in vector algorithms for APL functions
Authors: T. Budd
Venue: ACM SIGPLAN Notices (1988)

When considering algorithms which will run on processors in which large vectors of values can be manipulated in time which is independent of the length of the vector, many issues of time versus space arise which are not important, or of less importance, on more conventional machines. This paper explores various alternative techniques which might be used in an implementation of APL on such a machine, and considers some of these time/space tradeoffs.
A parallelization of the Buchberger algorithm
Authors: R. Bradford
Venue: Proceedings of the international symposium on Symbolic and algebraic computation (1990)

We have experimented with a little elementary parallelism applied to Buchberger's algorithm. This is in contrast to [Ponder] and [Vidal], as gains can be achieved by using the method even on a single processor.
How users repeat their actions on computers: principles for design of history mechanisms
Authors: S. Greenberg, I. H. Witten
Venue: Proceedings of the SIGCHI conference on Human factors in computing systems (1988)

Several striking characteristics of how often people repeat their actions on interactive systems are abstracted from usage data gleaned from many users of different classes over a period of months. Reformulated as empirically-based general principles, these provide design guidelines for history mechanisms specifically and modern user interfaces generally. Particular attention is paid to the repetition of command lines, and to the probability distribution of the next line given a sequential &ldquo;history list&rdquo; of previous ones. Several ways are examined of conditioning this distribution to enhance predictive power. A brief case study of actual use of a widely-used history system is also included.
A better way to combine efficient string length encoding and zero-termination
Authors: C. Bron, E. J. Dijkstra
Venue: ACM SIGPLAN Notices (1989)

In this note we describe conventions for string handling, and in particular for efficient string length encoding. These conventions are based on the (C-language) zero--terminator convention, and assume that the size of the area containing the string is known. They do not require any special provisions on the part of the language implementation. The mechanism to be described caters smoothly for strings of arbitrary length. The notes are based on several years of experience within the framework of Modular Pascal.
Scripted documents: a hypermedia path mechanism
Authors: P. T. Zellweger
Venue: Proceedings of the second annual ACM conference on Hypertext (1989)

The concept of a path, or ordered traversal of some links in a hypertext, has been a part of the hypertext notion from its early formation. Although paths can help to solve two major problems with hypertext systems, namely user disorientation and high cognitive overhead for users, their value has not been recognized. Paths can also provide the backbone for computations over a hypertext, an important issue for the future of hypertext. This paper constructs a framework for understanding path mechanisms for hypertext and explores the basic issues surrounding them. Given this framework, it reviews path mechanisms that have been provided by other hypertext systems. Finally, it describes the Scripted Documents system, which has been developed to test the potential of one powerful path mechanism.
Discrete smooth interpolation
Authors: Jean-Laurent Mallet
Venue: ACM Transactions on Graphics (TOG) (1989)

Interpolation of a function &fnof; (.) known at some data points of RP is a common problem. Many computer applications (e.g., automatic contouring) need to perform interpolation only at the nodes of a given grid. Whereas most classical methods solve the problem by finding a function defined everywhere, the proposed method avoids explicitly computing such a function and instead produces values only at the grid points. For two-dimensional regular grids, a special case of this method is identical to the Briggs method (see &ldquo;Machine Contouring Using Minimum Curvature,&rdquo; Geophysics 17, 1 (1974)), while another special case is equivalent to a discrete version of thin plate splines (see J. Duchon, Fonctions Splines du type Plaque Mince en Dimention 2, S&eacute;minaire d'analyse num&eacute;rique, n 231, U.S.M.G., Grenoble, 1975; and J. Enriquez, J. Thomann, and M. Goupillot, Application of bidimensional spline functions to geophysics, Geophysics 48, 9 (1983)).
An O(logN) deterministic packet routing scheme
Authors: E. Upfal
Venue: Proceedings of the twenty-first annual ACM symposium on Theory of computing (1989)

We present a deterministic &Ogr;(log N) time algorithm for the problem of routing an arbitrary permutation on an N-processor bounded-degree network with bounded buffers. Unlike all previous deterministic solutions to this problem, our routing scheme does not reduce the routing problem to sorting and does not use the Ajtai, Komlos and Szemeredi sorting network [AKS]. Consequently, the constant in the run time of our routing scheme is substantially smaller, and the network topology is significantly simpler.
Unified algebras and modules
Authors: P. D. Mosses
Venue: Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages (1989)

This paper concerns the algebraic specification of abstract data types. It introduces and motivates the recently-developed framework of unified algebras, and provides a practical notation for their modular specification. It also compares unified algebras with the well-known framework of order-sorted algebras, which underlies the OBJ specification language.
A Distributed Algorithm for Fault Diagnosis in Systems with Soft Failures
Authors: C.-L. Yang, G. M. Masson
Venue: IEEE Transactions on Computers (1988)

The problem of diagnosis of soft failures at the system level in large and fully distributed networks of processors (or units) is considered. A system model in which each of the network's units is assumed to possess the ability to test (or evaluate) certain other units for the presence of failures is employed. Using this model and assuming that the total number of faulty units does not exceed a given bound, a distributed algorithm is presented which allows all the fault-free units to independently converge to correct and consistent diagnoses of the system status. This algorithm is also shown to be applicable to bounded fault situations where both units and communication links can be faulty.
Application level modeling of parallel machines
Authors: K. Kant
Venue: ACM SIGMETRICS Performance Evaluation Review (1988)

In this paper, we consider the application level performance modeling of parallel machines consisting of a large number of processing elements (PE's) connected in some regular structure such as mesh, tree, hypercube, etc. There are K problem types, each arriving according to a Poisson process, and each of which needs a PE substructure of some given size and topology. Thus several problems can run on the machine simultaneously. It is desired to characterize the performance of such a system under various types of allocation schemes. We show that if the queueing is considered external to our model, it is possible to construct a Markovian model with local balance property. The time for which a substructure is held by a problem could be generally distributed. The model can be solved efficiently using standard techniques; however, because of rather complex structure of the state space, its direct enumeration is difficult to avoid. We also show how the size of the state space can be reduced when the set of allowed substructures is highly regular. We then show how queueing delays can be modeled approximately. Finally, we consider the solution of models involving shared resources such as global memory.
DFTEXPERT: an expert system for design of testable VLSI circuits
Authors: Sudipta Bhawmik, P. Pal Chaudhuri
Venue: Proceedings of the 1st international conference on Industrial and engineering applications of artificial intelligence and expert systems - Volume 1 (1988)

To tackle the current day testing complexity of VLSI circuits Design For Testability (DFT) is becoming more of a necessity. However VLSI designers are yet to accept DFT mainly due to lack of effective tools. Expert Systems technology promises to be an useful means to present to the designer the gamut of DFT knowledge developed so far, primarily by test experts, in a more effective way. DFTEXPERT is an attempt towards this direction. This paper presents the major components of DFTEXPERT and also demonstrates its capability through a small illustration.
Off-Line Cursive Script Word Recognition
Authors: R. M. Bozinovic, S. N. Srihari
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (1989)

Cursive script word recognition is the problem of transforming a word from the iconic form of cursive writing to its symbolic form. Several component processes of a recognition system for isolated offline cursive script words are described. A word image is transformed through a hierarchy of representation levels: points, contours, features, letters, and words. A unique feature representation is generated bottom-up from the image using statistical dependences between letters and features. Ratings for partially formed words are computed using a stack algorithm and a lexicon represented as a trie. Several novel techniques for low- and intermediate-level processing for cursive script are described, including heuristics for reference line finding, letter segmentation based on detecting local minima along the lower contour and areas with low vertical profiles, simultaneous encoding of contours and their topological relationships, extracting features, and finding shape-oriented events. Experiments demonstrating the performance of the system are also described.
APL2 and the CMS system: Exploiting the APL2/REXX connection
Authors: D. M. Weintraub
Venue: Proceedings of the international conference on APL (1987)

APL2 and REXX are both powerful interpretive languages. APL2 generally isolates the user/programmer from the operating environment, whereas REXX includes integral hooks to directly access the environment. The second release of APL2 includes the ability to access REXX functions and some variables, using the external function call (Associated Processor) facility. APL2 programmers can use REXX and appropriately-designed REXX procedures and functions to, for example: Access host system function and services; Perform arithmetic with arbitrarily-large precision; Provide tailored access to applications packages (e.g., SCRIPT DCF); Perform string and word manipulation; Tailor the APL2 environment; Carry-over variables between workspaces in a given APL2 session; Communicate with the host after leaving APL2. REXX programmers can test REXX procedures from within APL2, and can access APL2 workspaces and operations, to bring the power of APL2 to manipulate REXX data objects. The REXX/APL2 interface is decried and some applications are discussed. Attention is spent on the proper design of REXX and APL2 code to take advantage of (or even to allow the use of) the existing interface.
Flow network reduction for unique topological ordering
Authors: H. Koh
Venue: Proceedings of the 17th conference on ACM Annual Computer Science Conference (1989)

This paper describes a more restrictive definition of cutsets as they are found useful in solving certain problems and presents a reduction method to reduce a flow network (an acyclic weighted digraph) with multiple topological orderings of vertices so that (1) the resulting reduced network has only one topological ordering and (2) the original network and the reduced network have the same maximal cutset. The motivation for such a reduction method is that if a network has only one topological ordering then the maximal cutset can be found in a linear time (linear in terms of the number of arcs).
The horizon supercomputing system: architecture and software
Authors: J. T. Kuehn, B. J. Smith
Venue: Proceedings of the 1988 ACM/IEEE conference on Supercomputing (1988)

Horizon is the name currently being used to refer to a shared-memory Multiple Instruction stream - Multiple Data stream (MIMD) computer architecture under study by independent groups at the Supercomputing Research Center and at Tera Computer Company. Its performance target is a sustained rate of 100 giga (1011) Floating Point Operations Per Second (FLOPS). Horizon achieves this speed with a few hundred identical scalar processors. Each processor has a horizontal instruction set that allows the production of one or more floating point results per cycle without resorting to vector operations. Memory latency is hidden, assuming enough parallelism is available, by allowing processors to switch context on each machine cycle. In this overview, the Horizon architecture is introduced and its performance is estimated. The processor instruction set and a simple programming example are given. Additional details on the processor architecture, interconnection network design, performance analyses, machine simulator, compiler development, and application studies can be found in companion papers.
Design of a Bitmapped Multilingual Workstation
Authors: Richard F. Walters
Venue: Computer (1990)

Previous work in multilingual support is reviewed. Research to date has involved four basic issues: character-set standardization, text input, internal storage and manipulation and display systems. Each of these areas is discussed. A workstation that supports many character sets in a windows environment and provides display and data manipulation of multiple character sets is also described.
A commentary on the POSTGRES rules system
Authors: M. Stonebraker, M. Hearst, S. Potamianos
Venue: ACM SIGMOD Record (1989)

This paper suggests modifications to the POSTGRES rules system (PRS) to increase its usability and function. Specifically, we suggest changing the rule syntax to a more powerful one and propose additional keywords, introduce the notion of rulesets whose purpose is to increase the user's control over the rule activation process, and expand the versioning facility to support a broader range of applications than is currently possible.
Optimal Dynamic Remapping of Data Parallel Computations
Authors: David M. Nicol, Paul F. Reynolds,  Jr.
Venue: IEEE Transactions on Computers (1990)

A large class of data parallel computations is characterized by a sequence of phases, with phase changes occurring unpredictably. Dynamic remapping of the workload to processors may be required to maintain good performance. The problem considered, for which the utility of remapping and the future behavior of the workload are uncertain, arises when phases exhibit stable execution requirements during a given phase, but requirements change radically between phases. For these situations, a workload assignment generated for one phase may hinder performance during the next phase. This problem is treated formally for a probabilistic model of computation with at most two phases. The authors address the fundamental problem of balancing the expected remapping performance gain against the delay cost, and they derive the optimal remapping decision policy. The promise of the approach is shown by application to multiprocessor implementations of an adaptive gridding fluid dynamics program and to a battlefield simulation program.
Ratio of uniforms as a convenient method for sampling from classical discrete distributions
Authors: E. Stadlober
Venue: Proceedings of the 21st conference on Winter simulation (1989)

Many computer methods for generating variates from classical discrete distributions are available; some of them are simple and others are very fast. However, simple or convenient procedures are slow when the means &mu; are large. Very fast algorithms are rather involved, so that most users will not go to the trouble of implementing them. Fortunately, algorithms having the advantage of being simple and fast are obtained by applying the ratio of uniforms method to discrete distributions in a skilful way. We discuss several issues of this approach with respect to Poisson, binomial and hypergeometric distributions.
Adding rule-based techniques to procedural languages
Authors: Keith R. Milliken, Allan J. Finkel, David A. Klein, Norman B. Waite
Venue: Proceedings of the 1st international conference on Industrial and engineering applications of artificial intelligence and expert systems - Volume 1 (1988)

The world of software for applications in industry is dominated by compiled, algebraic (Algol derivative) programming languages such as C, Pascal, and PL/I. One approach to popularizing expert systems techniques in the industrial environment is to integrate software techniques appropriate for expert systems development into algebraic programming languages. While programmers in industry seek more powerful software tools, generally they do not want to give up existing capabilities in order to gain access to new techniques. Thus the question becomes how to integrate expert system techniques into a procedural language so that important characteristics of the procedural language are preserved. YES/LI (Yorktown Expert System / Language One) is an experimental tool for developing expert systems that is an integration of PL/I with data-driven rules. This paper reviews a number of technical issues encountered in the development of YES/LI. The achieved resolution of these issues establishes that rule-based techniques intended for use in large, industrial expert systems can be integrated into the standard features of an existing, algebraic programming language without reducing the functionality of the underlying, procedural language. Features of YES/LI include: condition-action rules with support for both highly expressive conditions and complex actions, PL/I as a subset, block structuring including recursively invoked blocks of rules, support for large blocks of rules written in several source code files, the same access to data bases and routines written in other languages as found in PL/I, excellent performance, portability across several operating systems and computer architectures, the ability for YES/LI routines to be linked, loaded, started, and called just as PL/I routines.
EQL: The Language and its Implementation
Authors: Bharat Jayaraman, Gopal Gupta
Venue: IEEE Transactions on Software Engineering (1989)

EqL, a general-purpose language that combines the capabilities of functional and logic programming languages, is described. A program in EqL consists of a collection of conditional, pattern-directed rules, where the conditions are expressed as a conjunction of equations, and the patterns are terms built up of data-constructors and basic values. The computational paradigm in EqL is equation solving. Examples illustrating the major features of the language, nondeterminism, deferred evaluation of primitives, and logical variables are presented. The aspects of a sequential implementation for EqL, such as compile-time flattening of equations, run-time equation-delaying, and last-equation optimization, are also described.
Compiling on horizon
Authors: J. M. Daper
Venue: Proceedings of the 1988 ACM/IEEE conference on Supercomputing (1988)

Compiler research to test several hardware features of the Horizon supercomputer design has yielded some preliminary results based solely on code generation and local optimization. Correctly packing operations into the moderately wide instruction word seems relatively straightforward, and there is nothing to suggest that it will be impossible to discover a good heuristic for instruction scheduling. Lookahead values are easy to compute within basic blocks, but they have not yet been tested across block boundaries, and the overall efficacy of this hardware feature has not been proved. Static analysis shows that the arithmetic unit is noticeably busier than the control unit, but this apparent imbalance may disappear once global optimization permits reasonable dynamic analysis of compiler output. Similarly, it is too early to determine either the adequacy of 32 registers or the usefulness of multiple target registers and condition codes.
The Modula&ndash;3 type system
Authors: L. Cardelli, J. Donahue, M. Jordan, B. Kalsow, G. Nelson
Venue: Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages (1989)

This paper presents an overview of the programming language Modula-3, and a more detailed description of its type system.
A Statistical Viewpoint on the Theory of Evidence
Authors: R. A. Hummel, M. S. Landy
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (1988)

The authors provide a perspective and interpretation regarding the Dempster-Shafer theory of evidence that regards the combination formulas as statistics of the opinions of experts. This is done by introducing spaces with binary operations that are simpler to interpret or simpler to implement than the standard combination formula, and showing that these spaces can be mapped homomorphically onto the Dempster-Shafer theory-of-evidence space. The experts in the space of opinions-of-experts combine information in a Bayesian fashion. Alternative spaces for the combination of evidence suggested by this viewpoint are presented.