ppxscal/embedding_network huggingface dataset:
The effect of expertise on software selection
Authors: Dennis Galletta, Ruth C. King, Dina Rateb
Venue: ACM SIGMIS Database (1993)

Selection of hardware and software is a complicated task involving the consideration of multiple criteria decision making (MCDM) as well as the expertise of the decision maker. Two MCDM studies examined whether or not expertise in database management systems (DBMS) would facilitate selection among DBMS alternatives. The results of the first study suggest that (I) experts seemed to exhibit more agreement on criterion weights than did novices, (2) experts were about twice as consistent in applying the weights they assigned to the choice task compared to novices, (3) novices tended to rate criteria with scores that were closer to the neutral midpoint than did experts, and (4) experts made different choices than did novices. Consistency was assessed using two different quantitative measures; one was based on ordinality and the other on position. In the second study, concurrent verbal protocols showed that experts tended to bring their own experience to the choice task, were distracted less frequently, and used superior strategies in elimination of weakest alternatives. This implies that staff members with significant domain expertise should be used in DBMS acquisition tasks. Future research should determine whether or not these findings generalize to other task domains.
In-place updates in the presence of control operators
Authors: Sandip K. Biswas
Venue: Proceedings of the 1994 ACM conference on LISP and functional programming (1994)

This paper presents a formal account of the concept of in-place updates in purely functional languages. In purely functional languages, updates of abstract objects involve creating duplicates of these objects. This paper reviews static conditions, which, if satisfied by &lgr;-terms, guarantee that, even if updates are performed in-place, the purely functional semantics is retained. These static conditions, however, fail to guarantee the requisite safety in the presence of control operators like callcc and throw. The conditions are hence augmented by another condition which is defined on the operational semantics. Here we statically verify the satisfiability of a conservative approximation of this condition by data-flow analysis on CPS-terms. Also a significant class of programs is identified for which the condition holds even without data-flow analysis.
Teaching object-oriented programming and design (abstract)
Authors: James C. McKim,  Jr.
Venue: ACM SIGPLAN OOPS Messenger (1993)

Teaching Object-Oriented Programming and Design James C. McKim Jr., Hartford Graduate Center A course in object-oriented programming and design oriented paradigm, namely that it promotes reuse, should address the claims made for the object- models the problem space, facilitates maintenance, incorporates changes easily, and shortens the development lifecycle. One way (perhaps the only way) for students to test such claims is to build a small but high quality product as part of the course. This tutorial shows how to have students in a conventional computer science program build such a product, and addresses such issues as how to pick good projects, whether and how students should work together in teams, how to keep students on schedule, and how to divide a project into a sequence of deliverables within the context of a one semester course. The tutorial also describes how to scale back the approach so that students in short courses, common in industry, can get maximum benefit in the limited time that is allowed.
A temporal connectionist approach to natural language
Authors: Christian Jacquemin
Venue: ACM SIGART Bulletin (1994)

Time is an essential dimension of human natural language understanding but most of the symbolic models applied to linguistic data do not account for temporal structure. In contrast, the models from the connectionist paradigm have a natural ability to perform dynamic processing.After a presentation of some networks with a concern for time, we describe the model for Coincidence Detection which can be thought of as encoding spatio-temporal regularities of the input data. The architecture of the model is inspired from neurobiological studies of the cerebral cortex. It performs a dynamic interpretation of nominal composition and is analyzed in terms of micro-symbolic co-occurrences. The relevance of the Coincidence Detection machinery in language processing shows the significance of time in computational language understanding.
Geometric partitioning made easier, even in parallel
Authors: Michael T. Goodrich
Venue: Proceedings of the ninth annual symposium on Computational geometry (1993)

We present a simple approach for constructing geometric partitions in a way that is easy to apply to new problems. We avoid the use of VC-dimension arguments, and, instead, base our arguments on a notion we call the scaffold dimension, which subsumes the VC-dimension and is simpler to apply. We show how to easily construct (1/r)-nets and (1/r)-approximations for range spaces with bounded scaffold dimension, which immediately implies simple algorithms for constructing (1/r)-cuttings (by straight-forward recursive subdivision methods). More significant than simply being a conceptual simplification of previous approaches, however, is that our methods lead to asymptotically faster and more-efficient EREW PRAM parallel algorithms for a number of computational geometry problems, including the development of the first optimal-work NC algorithm for the well-known 3-dimensional convex hull problem, which solves an open problem of Amato and Preparata. Interestingly, our approach also yields a faster sequential algorithm for the distance selection problem, by the parametric searching paradigm, which solves an open problem posed by Agarwal, Aronov, Sharir, and Suri, and reiterated by Dickerson and Drysdale.
Using the Fortran 90 DO WHILE
Authors: Edward Reid
Venue: ACM SIGPLAN Fortran Forum (1993)

The development of the Fortran 90 standard included several flip-flops on the question of whether to include a DO WHILE construct --- that is, a loop statement whose termination is based on a logical condition rather than being controlled by a stepped variable. First DO WHILE was included based on the opinions of programmers who were accustomed to the availability of similar constructs in other languages. Later, as part of a move to trim down what some perceived as an overly large language, DO WHILE was dropped. In the final iteration, the original arguments prevailed, and DO WHILE became part of the standard.
Visual execution of assembly language programs
Authors: Mark Newsome, Cherri M. Pancake, Christopher Ward
Venue: Proceedings of the 1993 ACM conference on Computer science (1993)

Students learning computer organization and assembly language programming often have difficulty understanding the relationship between hardware functions and software instructions. This paper describes how a software tool can help students understand the organization and use of the Motorola 68000 processor family. XSIM68K employs a graphical interface to enhance a traditional &ldquo;black box&rdquo; simulator so that students can observe first-hand the effect of a running program on registers, memory, and II0 devices. Multiple data representations allow the student to choose the most appropriate format for data entry and display, which reduces confusion and eliminates conversion mistakes.
The derivation of distributed termination detection algorithms from garbage collection schemes
Authors: Gerard Tel, Friedemann Mattern
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1993)

It is shown that the termination detection problem for distributed computations can be modeled as an instance of the garbage collection problem. Consequently, algorithms for the termination detection problem are obtained by applying transformations to garbage collection algorithms. The transformation can be applied to collectors of the &ldquo;mark-and-sweep&rdquo; type as well as to reference-counting protocol of Lermen and Maurer, the weighted-reference-counting protocol, the local-reference-counting protocol, and Ben-Ari's mark-and-sweep collector into termination detection algorithms. Known termination detection algorithms as well as new variants are obtained.
Evaluating reusable class libraries (abstract)
Authors: Timothy Korson
Venue: ACM SIGPLAN OOPS Messenger (1993)

Evaluating Reusable Class Libraries Timothy Korson, Clemson University Object-oriented technology not only affects the way we design individual applications, it holds the potential of ushering in the software industrial revolution. A key to the success of object technology is the widespread availability of high quality class libraries. These class libraries are the re-usable parts of the software industry. This tutorial teaches how to evaluate object-oriented libraries. The same criteria can be used for selecting commercial libraries or for designing libraries for use in-house. The tutorial also describes practical criteria for specifying and cataloging in-house corporate software libraries. In addition to these technical criteria, the tutorial also shows you the corporate infrastructure that is necessary for enabling large scale reuse.
On lines missing polyhedral sets in 3-space
Authors: Marco Pellegrini
Venue: Proceedings of the ninth annual symposium on Computational geometry (1993)

We study some combinatorial and algorithmic problems on sets of lines and polyhedral objects in 3-space. Our main results include: (1) An On32clogn upper bound on the worst case complexity of the set of lines missing a star-shaped compact polyhedron with n edges. (2) Given a star-shaped compact polyhedron P with n edges we can compute on-line the shadow of P from a query direction v in almost-optimal output-sensitive time O(k log4 n), where k is the size of the shadow. The storage used by the data structure is O(n3+&egr;. (3) An On32clogn upper bound on the worst case complexity of the set of lines that can be moved to infinity without intersecting a set of n given lines. This bound is almost tight. (4) An O(n1.5+&egr;) randomized expected time algorithm that tests the separation property: there exists a direction v along which a set of n red lines can be translated away from a set of n blue lines without collisions? (5) Computing the intersection of two polyhedral terrains in 3-space with n edges in time O(n4/3+&egr; + k1/3n1+&egr; + k log2 n), where k is the size of the output, and &egr; > 0 an arbitrary small but fixed constant. This algorithm improves on the best previous result of Chazelle et al. [7] The tools used to obtain these results include Plu&uml;cker coordinates of lines, random sampling and polarity transformations in 3-space.
Parameterized Point Pattern Matching and Its Application to Recognition of Object Families
Authors: Shinji Umeyama
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (1993)

The problem of recognizing and localizing objects that can vary in parameterized ways is considered. To achieve this goal, a concept of parameterized point pattern is introduced to model parameterized families of such objects, and a parameterized point pattern matching algorithm is proposed. A parameterized point pattern is a very flexible concept that can be used to model a large class of parameterized objects, such as a pair of scissors with rotating blades. The proposed matching algorithm is formulated as a tree search procedure, and it generates all maximum matchings satisfying a condition called delta -boundedness. Several pruning methods based on the condition of delta -boundedness and their efficient computing techniques are given. The proposed matching algorithm is applied to a real shape matching problem in order to check the validity of the approach.
Scheduling multiple queries on a parallel machine
Authors: Joel L. Wolf, John Turek, Ming-Syan Chen, Philip S. Yu
Venue: Proceedings of the 1994 ACM SIGMETRICS conference on Measurement and modeling of computer systems (1994)

There has been a good deal of progress made recently towards the efficient parallelization of individual phases of single queries in multiprocessor database systems. In this paper we devise and evaluate a number of scheduling algorithms designed to handle multiple parallel queries. One of these algorithms emerges as a clear winner. This algorithm is hierarchical in nature: In the first phase, a good quality precedence-based schedule is created for each individual query and each possible number of processors. This component employs dynamic programming. In the second phase, the results of the first phase are used to create an overall schedule of the full set of queries. This component is based on previously published work on nonprecedence-based malleable scheduling. Even though the problem we are considering is NP-hard in the strong sense, the multiple query schedules generated by our hierarchical algorithm are seen experimentally to achieve results which are close to optimal.
A modern APL windows user interface with DOS downwards compatibility: the solution for two years onwards
Authors: Richard R. N. Eller
Venue: ACM SIGAPL APL Quote Quad (1993)

Windows 3.1 represents the biggest revolution to APL technology since the advent of full screen techniques. This creates a new challenge to APLers migrating their applications from mainframe or PC DOS environments into Windows 3.1. This paper describes an ease means to adapt existing and new applications to exploit Windows Graphical User Interfaces (GUI). By using the techniques described below one can utilize most GUI features without needing to comprehend the massive amount of detail typical to Windows programming. Additionally, any application will also be backwards compatible to the DOS character based screen interface.
CAPS&mdash;Communication and Access to information for Persons with Special needs
Authors: Tom Wesley, Christopher Tobin
Venue: Issue 48 (September 1993) (1993)

The SGML community is perfectly aware of the benefits International Standards bring to the interchange of digital information, especially when that information is textual in form. What the same community may be less aware of is the enormous group of individuals who have no access to such information because of visual disability. This paper will describe the efforts of a European Community funded project CAPS (Communication and Access to information for People with Special needs), to use SGML and its associated standards to fulfill the belief "that advancing computer based publishing and through adaptive computer technology for persons with disabilities offers the potential to make printed information accessible simultaneously and at no greater cost than the able bodied community enjoys."The paper will go on to describe how SGML has been used to define a DTD for the European Interchange Format (EIF) to enable print disabled access to newspapers
Computer image retrieval by features: suspect identification
Authors: Eric Lee, Thom Whalen
Venue: Proceedings of the INTERACT '93 and CHI '93 conference on Human factors in computing systems (1993)

Correct suspect identification of known offenders by witnesses deteriorates rapidly as more are examined in mugshot albums. Feature approaches, where mugshots are displayed in order of similarity to witnesses' descriptions, attempt to increase identification success by reducing this number. A methodology is proposed for system design and evaluation based on experiments, computer simulations, and four classes of system performance measures: identification performance, retrieval rank, tolerance performance, and feature quality. This was used to develop a system for 640 mugshots of known offenders. In three empirical tests, over 90% of witness searches resulted in suspects retrieved in the first eight mugshots.
A static partitioning and mapping algorithm for conservative parallel simulations
Authors: Azzedine Boukerche, Carl Tropper
Venue: ACM SIGSIM Simulation Digest (1994)

In this paper, we consider the problem of partitioning a conservative parallel simulation for execution on a multi-computer. The synchronization protocol makes use of null messages [6]. We propose the use of a simulated annealing algorithm with an adaptive search schedule to find good (sub-optimal) partitions. The paper discusses the algorithm, its implementation and reports on the performance results of simulations of a partitioned FCFS queueing network model executed on iPSC/860 hypercube. The results obtained are compared with a random partitioning. They show that a partitioning which makes use of our simulated annealing algorithm results in a reduction of 25-35% of the running time of the simulations when compared to the running time of a random partition of the model.
Parallel bounded quantification&mdash;preliminary results
Authors: Henrik Arro, Jonas Barklund, Johan Bevemyr
Venue: ACM SIGPLAN Notices (1993)

We have extended D. H. D. Warren's abstract machine for sequential Prolog with parallel instructions that implement bounded quantifications, an extension to Prolog proposed by Barklund and Bevemyr. These instructions are intended for parallel computers supporting the data parallel programming model. Luther, an emulator for the sequential abstract machine implemented in the C programming language, has been extended with these instructions, implemented in the data parallel C* programming language.We have coded three example programs that use bounded quantifications, and run them in the emulator on a Connection Machine model 200, a SIMD parallel computer. We compare the run times on this parallel computer with the run times obtained with a sequential implementation of bounded quantifications on a SUN-4M sequential computer.The best result is that one parallel bounded quantification program runs 30 times faster on the Connection Machine than an ordinary recursive program implementing the same algorithm running on the sequential computer. It is conceivable that one can obtain far higher speed-ups when running on larger data parallel computers using bounded quantifications.
Unique complements and decompositions of database schemata
Authors: Stephen J. Hegner
Venue: Journal of Computer and System Sciences (1994)

In earlier work, Bancilhon and Spyratos introduced the concept of a complement to a database schema, and showed how this notion could be used in theories of decomposition and update semantics. However, they also showed that, except in trivial cases, even minimal complements are never unique, so that many desirable results, such as canonical decompositions, cannot be realized. Their work dealt with database schemata which are sets and database mappings which are functions, without further structure. In this work, we show that by adding a modest amount of additional structure, many important uniqueness results may be obtained. Specifically, we work with database schemata whose legal states form partially ordered sets (posets) with least elements, and with database mappings which are isotonic and which preserve this least element. This is a natural algebraic structure which is inherent in many important examples, including relational schemata constrained by data dependencies, with views constructed by composition of projection, restriction, and selection. Other examples include deductive database schemata in which views are defined by rules, and general first-order logic databases. Within this context of posets, we show that direct (i.e., independent) complements must be unique, and that in fact the directly complementable views have the structure, in a very natural sense, of a Boolean algebra. Decompositions of the schema then become identifiable with finite subalgebras of this Boolean algebra. To demonstrate the utility of our approach, we examine in some detail its applicability to the relational model. Particularly, we establish that under the condition that the schema is constrained by universal Horn sentences, there is a unique ultimate decomposition into a finite set of type restrictions. The latter are a special class of views which includes classical projections which occur in direct decompositions. In particular, classical join-based decomposition is completely recovered within a framework which explicitly axiomatizes independence via null values.
Efficient top-down induction of logic programs
Authors: R. Mike Cameron-Jones, J. Ross Quinlan
Venue: ACM SIGART Bulletin (1994)

FOIL is a system for inducing function-free Horn clause definitions of relations from example and extensionally defined background relations. It demonstrates the successful application of a general to specific approach to clause induction using heuristically guided search. This paper describes the current version of FOIL, assesses its performance and notes areas for improvement. The successful application of similar methods in other systems is reviewed to demonstrate their general utility.
FLIP: an internetwork protocol for supporting distributed systems
Authors: M. Frans Kaashoek
Venue: ACM Transactions on Computer Systems (TOCS) (1993)

Most modern network protocols give adequate support for traditional applications such as file transfer and remote login. Distributed applications, however, have different requirements (e.g., efficient at-most-once remote procedure call even in the face of processor failures). Instead of using ad hoc protocols to meet each of the new requirements, we have designed a new protocol, called the Fast Local Internet Protocol (FLIP), that provides a clean and simple integrated approach to these new requirements. FLIP is an unreliable message protocol that provides both point-to-point communication and multicast communication, and requires almost no network management. Furthermore, by using FLIP we have simplified higher-level protocols such as remote procedure call and group communication, and enhanced support for process migration and security. A prototype implementation of FLIP has been built as part of the new kernel for the Amoeba distributed operating system, and is in daily use. Measurements of its performance are presented.
An alternative solution to a problem on self-stabilization
Authors: Sukumar Ghosh
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1993)

Dijkstra [4, 5] introduced the problem of self-stabilization in distributed systems as an interesting exercise for achieving global convergence through local actions. In [4] he presented three solutions to a specific version of the self-stabilization problem, one of which was proved in [6]. This paper presents an alternative solution of his self-stabilization problem with four-state machines.
Forward computation of dynamic program slices
Authors: Bogdan Korel, Satish Yalamanchili
Venue: Proceedings of the 1994 ACM SIGSOFT international symposium on Software testing and analysis (1994)

A dynamic program slice is an executable part of the program whose behavior is identical, for the same program input, to that of the original program with respect to a variable(s) of interest at some execution position. It has been shown that dynamic slicing is useful for the purpose of debugging, testing and software maintenance. The existing methods of dynamic slice computation are based on &ldquo;backward&rdquo; analysis, i.e., after the execution trace of the program is first recorded, the dynamic slice algorithm traces backwards the execution trace to derive dynamic dependence relations that are then used to compute dynamic slices. For many programs, during their execution extremely high volume of information may be recorded that may prevent accurate dynamic slice computation. In this paper we present a novel approach of dynamic slice computation, referred to as forward approach of dynamic slice computation. In this method, dynamic slices are computed during program execution without major recording of the execution trace. The major advantage of the forward approach is that space complexity is bounded as opposed to the backward methods of slice computation.