ppxscal/embedding_network huggingface dataset:
Algorithms to Process Distributed Queries in Fast Local Networks
Authors: C. T. Yu, K.-C. Guh, W. Zhang, M. Templeton, D. Brill, A.L.P. Chen
Venue: IEEE Transactions on Computers (1987)

We propose a scheme to make use of semantic information to process distributed queries locally without data transfer with respect to the join clauses of the query. Since not all queries can be processed without data transfer, we give an algorithm to recognize the "locally processable queries." For nonlocally processable queries, a simple "fragment and replicate" algorithm is used. The algorithm chooses a relation to remain fragmented at the sites where they are situated while replicating the other relations at those sites. Our algorithm determines the chosen relation and the chosen copy of every fragment of the chosen relation such that the minimum response time is obtained. The algorithm runs in linear time. If the fragments of the relation are allowed to be processed in other sites, then the problem is NP hard. Two heuristics are given for that situation. They are compared to the optimal situation. Experimental results show that the strategies produced by the heuristics have small errors relative to the optimal strategy.
The enhancement of understanding through visual representations
Authors: H. D. Bocker, G. Fischer, H. Nieper
Venue: Proceedings of the SIGCHI conference on Human factors in computing systems (1986)

It has been argued for a long time that the representation of a problem is of crucial importance to understanding and solving it. Equally accepted is the fact that the human visual system is a powerful system to be used in information processing tasks. However, there, exist few systems which try to take advantage of these insights. We have constructed a variety of system components which automatically generate graphical representations of complex structures. We are pursuing the long-range goal of constructing a software oscilloscope which makes the invisible visible. Our tools are used in a variety of contexts: in programming environments, in intelligent tutoring systems, and in human-computer interaction in general by offering aesthetically pleasing interfaces.
A functional level simulation engine of MAN-YO: a special purpose parallel machine for logic design automation
Authors: T. Nakata, N. Koike
Venue: ACM SIGARCH Computer Architecture News (1986)

The architecture of a proto-type functional level simulator element of a massively parallel machine (MAN-YO) designed for logic design automation is presented. At functional level, hardware systems are described in a hardware description language, FDL. The FDL description is compiled into stack oriented intermediate language instructions. Communicating with other gate level/block level/ functional level processors, each functional simulator interprets the compiled instructions and simulates various circuits using 4-value logic. In order to realize high speed processing of 4-value logic/arithmetic operations, the functional simulator utilizes low-level parallelism realized by 3 ALUs which are controlled by the different fields of a long horizontal type microinstruction.By utilizing low-level parallelism at processor level, as well as processor level parallelism, high speed execution of mixed level simulation becomes possible. The system also provides further performance enhancement by compiling often used FDL macros into microcode.This paper describes an outline of the MAN-YO (Japanese for ten thousand leaf-nodes in the processor tree), a brief description of FDL, and the architecture of the functional level simulator element (called FDLPE). A rough performance based on the current design is also described.
Decomposing a sequence of matrices that differ only in one submatrix
Authors: Wlodzimierz Proskurowski
Venue: ACM SIGNUM Newsletter (1988)

This paper is a development of a project assigned to a graduate class in Numerical Methods in the Fall Semester 1980 at USC. This approach to teaching shows some similarities with the Claremont Mathematics Clinic, see [4].
The Architecture of SM3: A Dynamically Partitionable Multicomputer System
Authors: C K Baru, S Y W Su
Venue: IEEE Transactions on Computers (1986)

The architecture of a multicomputer system with switchable main memory modules (SM3) is presented. This architecture supports the efficient execution of parallel algorithms for nonnumeric processing by 1) allowing the sharing of switchable main memory modules between computers, 2) supporting dynamic partitioning of the system, and 3) employing global control lines to efficiently support interprocessor communication. Data transfer time is reduced to memory switching time by allowing some main memory modules to be switched between processors. Dynamic partitioning gives a common bus system the capability of an MIMD machine while performing global operations. The global control lines establish a quick and efficient high-level protocol in the system. The network is supervised by a control computer which oversees network partitioning and other global functions. The hardware involved is quite simple and the network is easily extensible. A simulation study using discrete event simulation techniques has been carried out and the results of the study are presented. The architecture of this system is compared to those of conventional local area networks and shared-memory systems in order to establish the distinct nature and characteristics of a multicomputer system based on the SM3 concept.
A Classifier for Feature Vectors Whose Prototypes are a Function of Multiple Continuous Parameters
Authors: John E. McFee, Yogadhish Das
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (1988)

A fast, compact continuous-parameter (CP) classifier, suitable for a 16-bit microprocessor, is developed for classes which consist of a prototype manifold which is a function of one or more continuous parameters. The classification method consists of approximating the manifold by a number of unit cells and assigning a test vector to the closest cell using a Euclidean distance measure. An experiment is described in which computer-generated magnetic dipole moments are used as feature vectors to classify a set of homogeneous ferrous spheroids. The CP classifier provides accurate estimates of the orientation angles of the test object with error equal to a small fraction of the design set increment (1 degrees out of 15 degrees ).
Writing Larch interface language specifications
Authors: Jeannette M. Wing
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1987)

Current research in specifications is emphasizing the practical use of formal specifications in program design. One way to encourage their use in practice is to provide specification languages that are accessible to both designers and programmers. With this goal in mind, the Larch family of formal specification languages has evolved to support a two-tiered approach to writing specifications. This approach separates the specification of state transformations and programming language dependencies from the specification of underlying abstractions. Thus, each member of the Larch family has a subset derived from a programming language and another subset independent of any programming languages. We call the former interface languages, and the latter the Larch Shared Language. This paper focuses on Larch interface language specifications. Through examples, we illustrate some salient features of Larch/CLU, a Larch interface language for the programming language CLU. We give an example of writing an interface specification following the two-tiered approach and discuss in detail issues involved in writing interface specifications and their interaction with their Shared Language components.
Optimal static load balancing in distributed computer systems
Authors: Asser N. Tantawi, Don Towsley
Venue: Journal of the ACM (JACM) (1985)

A distributed computer system that consists of a set of heterogeneous host computers connected in an arbitrary fashion by a communications network is considered. A general model is developed for such a distributed computer system, in which the host computers and the communications network are represented by product-form queuing networks. In this model, a job may be either processed at the host to which it arrives or transferred to another host. In the latter case, a transferred job incurs a communication delay in addition to the queuing delay at the host on which the job is processed. It is assumed that the decision of transferring a job does not depend on the system state, and hence is static in nature. Performance is optimized by determining the load on each host that minimizes the mean job response time. A nonlinear optimization problem is formulated, and the properties of the optimal solution in the special case where the communication delay does not depend on the source-destination pair is shown. Two efficient algorithms that determine the optimal load on each host computer are presented. The first algorithm, called the parametric-study algorithm, generates the optimal solution as a function of the communication time. This algorithm is suited for the study of the effect of the speed of the communications network on the optimal solution. The second algorithm is a single-point algorithm; it yields the optimal solution for given system parameters. Queuing models of host computers, communications networks, and a numerical example are illustrated.
Artificial intelligence and software engineering
Authors: D. Barstow
Venue: Proceedings of the 9th international conference on Software Engineering (1987)

Software Engineering is a knowledge-intensive activity, requiring extensive knowledge of the application domain and of the target software itself. Many Software Engineering costs can be attributed to the ineffectiveness of current techniques for managing this knowledge, and Artificial Intelligence techniques can help alleviate this situation. More than two decades of research have led to many significant theoretical results, but few demonstrations of practical utility. This is due in part to the amount and diversity of knowledge required by Software Engineering activities, and in part to the fact that much of the research has been narrowly focused, missing many issues that are of great practical importance. Important issues that remain to be addressed include the representation and use of domain knowledge and the representation of the design and implementation history of a software system. If solutions to these issues are found, and experiments in practical situations are successful, the implications for the practice of Software Engineering will be profound, and radically different software development paradigms will become possible.
System reconnaissance for system development
Authors: Barry Clemson, Hasan Sayani, Syril Svoboda
Venue: Proceedings of the twenty-first annual conference on Computer personnel research (1985)

This paper examines methodologies for large scale system development. By &ldquo;large scale&rdquo; we mean system projects carried out by teams as compared to a single person. System development is taken to mean the whole range of activities from (some one, some how) deciding a system is needed to eventually (some one, some how) deciding to scrap the system. The typical organizational setting we are concerned with would be a large corporation or government agency with a systems staff numbering in the hundreds or thousands. Existing life cycle methodologies have a number of commonalities. The rather poor results from use of these methods is traced to a basic flaw in all of the methods. A number of common results stemming from this flaw are discussed. The solution to the problem is conceptually simple but somewhat more difficult to implement. Implementation schemes for the solution are discussed and our particular incarnation of a solution is briefly presented.
An exemplar based Smalltalk
Authors: Wilf R. LaLonde, Dave A. Thomas, John R. Pugh
Venue: ACM SIGPLAN Notices (1986)

Two varieties of object-oriented systems exist: one based on classes as in Smalltalk and another based on exemplars (or prototypical objects) as in Act/1. By converting Smalltalk from a class based orientation to an exemplar base, independent instance hierarchies and class hierarchies can be provided. Decoupling the two hierarchies in this way enables the user's (logical) view of a data type to be separated from the implementer's (physical) view. It permits the instances of a class to have a representation totally different from the instances of a superclass. Additionally, it permits the notion of multiple representations to be provided without the need to introduce specialized classes for each representation. In the context of multiple inheritance, it leads to a novel view of inheritance (or-inheritance) that differentiates it from the more traditional multiple inheritance notions (and-inheritance). In general, we show that exemplar based systems are more powerful than class based systems. We also describe how an existing class based Smalltalk can be transformed into an exemplar-based Smalltalk and discuss possible approaches for the implementation of both and-inheritance and or-inheritance.
Fairness in parallel programs: the transformational approach
Authors: Ernst-Rüdiger Olderog, Krzysztof R. Apt
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1988)

Program transformations are proposed as a means of providing fair parallelism semantics for parallel programs with shared variables. The transformations are developed in two steps. First, abstract schedulers that implement the various fairness policies are introduced. These schedulers use random assignments z := ? to represent the unbounded nondeterminism induced by fairness. Concrete schedulers are derived by suitably refining the ?. The transformations are then obtained by embedding the abstract schedulers into the parallel programs. This embedding is proved correct on the basis of a simple transition semantics. Since the parallel structure of the original program is preserved, the transformations also provide a basis for syntax-directed proofs of total correctness under the fairness assumption. These proofs make use of infinite ordinals.
Design approaches and DoD-STD-2167
Authors: P Coad,  Jr.
Venue: ACM SIGSOFT Software Engineering Notes (1987)

Far too often people assume that DoD-STD-2167, Defense System Software Development, requires a top-down design approach. Yet this is not true. Some exact quotes are in order. But first, some acronyms and an appendix name are needed:CSCI Computer Software Configuration ItemSAM Software Acquisition ManagerSDP Software Development PlanSSPM Software and Standards Procedures ManualTLCSC Top-Level Computer Software Component
Fixed versus variable order Runge-Kutta
Authors: L. F. Shampine, L. S. Baca
Venue: ACM Transactions on Mathematical Software (TOMS) (1986)

Popular codes for the numerical solution of nonstiff ordinary differential equations (ODEs) are based on a (fixed order) Runge-Kutta method, a variable order Adams method, or an extrapolation method. Extrapolation can be viewed as a variable order Runge-Kutta method. It is plausible that variation of order could lead to a much more efficient Runge-Kutta code, but numerical comparisons have been contradictory. We reconcile previous comparisons by exposing differences in testing methodology and incompatibilities of the implementations tested. An experimental Runge-Kutta code is compared to a state-of-the-art extrapolation code. With some qualifications, the extrapolation code shows no advantage. Extrapolation does not appear to be a particularly effective way to vary the order of Runge-Kutta methods. Although an acceptable way to solve nonstiff problems, our tests raise the question as to whether there is any point in pursuing it as a separate method.
A software development environment database
Authors: R Soupos, S Goutas, D Christodoulakis, C Zaroliagis
Venue: ACM SIGSOFT Software Engineering Notes (1987)

In your report on Software Development/Programming Environments in the April 86 issue you made some well-aimed remarks about the "fundamental underlying concepts" of software engineering environments, concerning their maturity and stability. Since we have been working on the development of a software engineering database for about three years in the frame of the ESPRIT project GRASPIN +), we were urged to send you the following abstract of our work in the field, hoping to contribute to the solution of the problems you mentioned.
An object-oriented programming discipline for standard Pascal
Authors: Jonathan P. Jacky, Ira J. Kalet
Venue: Communications of the ACM (1987)

A successful application, using standard Pascal in a large medical application program, demonstrates that benefits similar to those of specialized languages are possible in object-oriented programming.
Complexity Based on Partitioning of Boolean Circuits and their Relation to Multivalued Circuits
Authors: A HHHHHHHHHHHH Maruoka
Venue: IEEE Transactions on Computers (1986)

We present a new complexity measure for Boolean functions based on partitions of combinatorial circuits into subcircuits, and give upper and lower bounds on the complexity for Boolean functions. Roughly speaking, for a function g whose range is the set of positive integers, g(n)-partition of a circuit is a partition of a circuit into subcircuits such that. 1) each subcircuit has at most g(n) output gates, through which gates in the subcircuit are connected to gates in another succeeding subcircuits and 2) each subcircuit has at most two preceding subcircuits where subcircuit N1 (N2) is said to precede (succeed) subcircuit N2 (N1) when there is a line directed from a gate in N1 to a gate in N2. Our main result, which is stated in terms of a lower bound theorem and an upper bound theorem, is a precise version of the following statement: For "almost all" n-argument Boolean functions fn, the minimum nu mber of subcircuits over g n)-partition of a circuit to compute fn is given as (2n/g(n)22g(n)) unless g(n) grows much more slowly than n as n increases. To prove the theorems, we regard a Boolean circuit, together with g(n)-partition of it, as the multivalued circuit composed of multivalued gates corresponding to the subcircuits obtained from the g(n)-partition.
Obstacles which split computer science and numerical analysis
Authors: Tony F. Chan
Venue: ACM SIGNUM Newsletter (1987)

This article reports on a panel discussion with the same title at the "Workshop on Problems Relating Computer Science to Numerical Analysis" held at the Mathematical Sciences Research Institute at Berkeley, California on January 17, 1986. Speeches by the four panelists (Chorin, Collela, Kahan and Karp) are summarized, as well as discussions initiated by other participants. Additional comments by four leading scientists in this interdisciplinary area (Denning, Gear, Perlis and Rice) are included in an appendix.
A bucketing algorithm for the orthogonal segment intersection search problem and its practical efficiency
Authors: M. Edahiro, K. Tanaka, T. Hoshino, T. Asano
Venue: Proceedings of the third annual symposium on Computational geometry (1987)

The orthogonal segment intersection search problem is stated as follows: Given a set S of n orthogonal segments in the plane, report all the segments of S that intersect a given orthogonal query segment. For this problem, we propose a simple and practical algorithm based on bucketing techniques. It constructs, in &Ogr;(n) time preprocessing, a search structure of size &Ogr;(n) so that all the segments of S intersecting a query segment can be reported in &Ogr;(k) time in the average case, where k is the number of the reported segments. The proposed algorithm as well as existing algorithms is implemented in FORTRAN, and their practical efficiencies are investigated through computational experiments. It is shown that our &Ogr;(k) search time, &Ogr;(n) space and &Ogr;(n) preprocessing time algorithm is practically the most efficient among the tested algorithms.
Reducing the Diameters of Computer Networks
Authors: Shahid H. Bokhari, A. D. Raza
Venue: IEEE Transactions on Computers (1986)

We discuss three methods of reducing the diameters of computer networks by adding additional processor to processor links under the constraint that no more than one I/O port be added to each processor. This is equivalent to adding edges to a given graph under the constraint that the degree of any node be increased, at most, by one.
Teaching object-oriented programming with the KEE system
Authors: Renate Kempf, Marilyn Stelzner
Venue: Conference proceedings on Object-oriented programming systems, languages and applications (1987)

Successful learning of an object-oriented programming style is greatly facilitated by a flexible, window-oriented interface and a &ldquo;step-by-step&rdquo; instructional methodology. Specifically, students can benefit from a learning sequence moving from working with object hierarchies to working with objects with behavior to more complex problems (conditional or sequential message passing, automation of behavior). Within each area in turn, a step-by-step approach of learning by conceptualization, learning by analogy, learning by experience, and learning by reinforcement is suggested. This is demonstrated using examples from the training of the KEE&reg; Knowledge Engineering Environment&trade;.
Reducing managerial risk with expert systems
Authors: Herman P Hoplin
Venue: Proceedings of the conference on The 1987 ACM SIGBDP-SIGCPR Conference (1987)

Particularly over the past ten years much progress has been made in developing computer-based decision systems for business. These systems have worked well with structured types of decisions or problems. Unfortunately, many business decisions are of the unstructured variety which are not adequately handled by pre-Artificial Intelligence (AI) state-of-the-art technology. This situation has continued to force business managers to make decisions on ill-structured problems via the old methods of judgment, intuition, insight, or experience. Making unstructured types of decisions in imprecise methods has added to managerial risk taking. However, AI/Expert Systems have added the missing dimension in decision making to come up with a &ldquo;smart&rdquo; computer that is making it profitable to solve unstructured problems on a computer-based Decision Support System (DSS). Problems have existed in bringing AI/Expert Systems from the laboratory to commercial uses. This transition from research and development to production is now happening and, as the Conference now proclaims, there is a &ldquo;Rising Tide of Business Expert Systems.&rdquo;
A simulator to test four models of advising systems
Authors: Paul S Licker
Venue: Proceedings of the conference on The 1987 ACM SIGBDP-SIGCPR Conference (1987)

CARMART is a simulation of a new-car sales environment, used to teach about to research computer-based advising. CARMART illustrates four increasingly powerful advising situations: Data query and report facilities (MIS) Consultant advice on past history (CS) Logical models (ES&mdash;Expert system) Mathematical models (DSS) This scale of specificity is based on the degree of assist from the computer and the amount of pre-existing knowledge necessary to construct valid models. MIS is based upon data models and relies heavily upon either analyst or user knowledge to assist decision-making. CS requires similarity models and rely upon ad-hoc analyses of past history to provide advice. Logical modeling is based upon implicational or associational relationships between situation descriptions and outcomes or payoffs. Finally DSS and its relatives depend upon causal models which can compute payoffs for specific situations and therefore require high-quality theories (but less user knowledge). CARMART provides a vehicle for teaching students about these four modes of advising given a specific 19-factor description requiring a decision from the student concerning sales technique. In addition, CARMART is helping to test hypotheses about the applicability of each mode of advising to situations which differ in the ease of access to systematic knowledge.