ppxscal/embedding_network huggingface dataset:
The design tree: a visual approach to top-down design and data flow
Authors: Jacobo Carrasquel, Jim Roberts, John Pane
Venue: ACM SIGCSE Bulletin (1989)

Top-down design, an accepted technique for program development in most teaching environments, is an integral part of the introductory computing courses taught at Carnegie Mellon University. Although this planning technique works well for experts, it's application among less experienced users is limited: many novices abandon this technique as soon as implementation begins, focusing their attention instead on low-level details. This paper proposes a solution to this problem: the Design Tree, a simple graphic tool used to represent the top-down decomposition of a problem. This tool can be used by instructors, as well as students, independent of the software used to build their programs. The Design Tree not only facilitates top-down decomposition of problems, but also help students decide what type of control structures and data flow to use in implementation.
Testing the correctness of tasking supervisors with TSL specifications
Authors: D. Rosenblum, D. Luckham
Venue: Proceedings of the ACM SIGSOFT '89 third symposium on Software testing, analysis, and verification (1989)

This paper describes the application of behavior specifications to the testing of tasking supervisors, an important component of an implementation of a concurrent programming language. The goal of such testing is to determine whether or not a tasking supervisor correctly implements the semantics of its associated language. We have tested a distributed tasking supervisor for the Ada programming language by monitoring the execution behavior of Ada tasking programs that have been compiled and linked with the supervisor. This behavior is checked for consistency with an event-based formalization of the Ada tasking semantics expressed in the TSL specification language. The TSL Runtime System automatically performs all monitoring and consistency checking at runtime. Our approach improves upon other approaches to testing tasking supervisors, particularly the Ada Compiler Validation Capability (ACVC), and also an approach described by Klarund. In contrast with these other approaches, in our approach (1) we test only the behavior of the tasking supervisor, not the behavior of the test programs; and (2) any Ada tasking program may be employed as test data, because the TSL specifications we construct describe the semantics of Ada language statements, not the semantics of application programs.
A knowledge-based approach for internal control evaluation
Authors: C. K. Looi, S. L. Tan, P. C. Teow, H. S. Chan
Venue: Proceedings of the 2nd international conference on Industrial and engineering applications of artificial intelligence and expert systems - Volume 1 (1989)

The evaluation of internal control is one component of the audit process. It establishes to what extent controls in a company's accounting system prevent, correct or detect system exposure to loss or misrepresentation. This information is used for determining what tests to subject accounting procedures to. Internal control evaluation is a complex process in terms of the judgments necessary and the lack of normative criteria for specifying these judgments. The main advantages to be gained from automating part of the evaluation process include reducing the variability in the quality of evaluation, and enabling the auditor to concentrate of more complex judgment areas. Our goal is to explore the feasibility of developing an intelligent audit assistant for internal control evaluation. This paper describes a computational model for internal control evaluation which uses a knowledge-based approach.
The relationship between business and higher education: a perspective on the 21st century
Authors: John Sculley
Venue: Communications of the ACM (1989)

Apple's Chairman of the Board discusses the future of three core technologies&mdash;hypermedia, simulation and artificial intelligence&mdash;and the role each will play in education. The following speech was presented to an audience of teachers almost two years ago. Its message, however, is as timely and inspirational today as we prepare for a new era.
A Methodology for Solving Problems: Problem Modeling and Heuristic Generation
Authors: K. B. Irani, S. I. Yoo
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (1988)

A methodology is given for modeling a problem and solving it using the A* algorithm. The heuristic used for A* is mechanically generated from the simplified problem, which is derived by relaxing each of the predicate formulas describing the rules and the goal state of the problem. The generated heuristic satisfies the conditions of admissibility and monotonicity. The methodology is applicable for solving general problems. The overall procedure for this methodology is illustrated by four well-known problems, namely, the eight-puzzle problem, the traveling salesman problem, the robot planning problem, and the consistent labeling problem. The values of the heuristics generated by this procedure are compared to the corresponding values of problem-oriented heuristics reported in the literature.
A closed network with a discriminatory processor-sharing server
Authors: D. Mitra, A. Weiss
Venue: ACM SIGMETRICS Performance Evaluation Review (1989)

This paper gives a simple, accurate first order asymptotic analysis of the transient and steady state behavior of a network which is closed, not product-form and has multiple classes. One of the two nodes of the network is an infinite server and the discipline in the other node is discriminatory processor-sharing. Specifically, if there are nj jobs of class j at the latter node, then each class j job receives a fraction wj/(&Sgr;wini) of the processor capacity. This work has applications to data networks. For the asymptotic regime of high loading of the processor and high processing capacity, we derive the explicit first order transient behavior of the means of queue lengths. We also give explicit expressions for the steady state mean values and a simple procedure for finding the time constants (eigenvalues) that govern the approach to steady state. The results are based on an extension of Kurtz's theorem concerning the fluid limit of Markov processes. Some numerical experiments show that the analysis is quite accurate.
An Object-Oriented VLSI CAD Framework
Authors: Rajiv Gupta, Wesley H. Cheng, Rajesh Gupta, Ido Hardonag, Melvin A. Breuer
Venue: Computer (1989)

It is shown, in the context of an actual prototype VLSI CAD framework called Cbase, how concepts such as data abstraction, property and operation inheritance, object specialization/generalization, code reusability, and polymorphism offered by object-oriented database management systems (OODBMSs) support rapid prototyping. The work was conducted on Vbase, a commercially available OODBMS, but the results and conclusions apply to any database with comparable capabilities. To implement the prototype user interface, the X11 toolkit, a windowing package that is also built around the object paradigm, was used.
A uniform object model for parallel programming
Authors: L. A. Crowl
Venue: ACM SIGPLAN Notices (1989)

This position statement presents a uniform object model of parallel programming that enables use of multiple programming styles, binding parallelism late, and porting programs among a wide variety of architectures. It then argues for concurrent operations on objects, as opposed to mutually exclusive operations on objects, based on orthogonality between encapsulation and concurrency. The final section argues for its relatively novel insistence on uniform control, based on the flexibility it provides the programmer.
On the Communication Complexity of Generalized 2-D Convolution on Array Processors
Authors: Z. Fang, X. Li, L. M. Ni
Venue: IEEE Transactions on Computers (1989)

Several parallel convolution algorithms for array processors with N/sup 2/ processing elements (PEs) connected by mesh, hypercube, and shuffle-exchange topologies, respectively, are presented. The computation time complexity is the same for array processors with different interconnection networks. The communication time complexity, however, varies from network to network, and is the main focus. It is shown that by using inter-PE communication networks efficiently, each PE requires only a small local memory, many unnecessary data transmissions are eliminated, and the overall time complexity (including computation and communication) of algorithms is reduced to O(M/sup 2/).
Programming practices: analysis of Ada source developed for the air force, army,and navy
Authors: J. Perkins
Venue: Proceedings of the conference on Tri-Ada '89: Ada technology in context: application, development, and deployment (1989)

In this paper, we discuss programming practices that have been applied to the development of Ada source for the Air Force, Army, and Navy. We focus on practices shared by various developers producing Ada software for different military applications. We identified these practices by applying automated, hierarchical, Ada-specific metrics frameworks to the analysis of segments of Ada source for several military projects. In total, over 2 million text lines of Ada source were analyzed, with the amount of code examined for any individual project ranging from a few thousand to more than a million lines. Our discussion includes the relationship of these practices to 1) the augmentation or attenuation of quality, 2) published guidelines and coding standards for Ada, 3) programming practices for other Von Neumann languages, and 4) excerpts of analyzed Ada source.
Systematic hardware adaptation of systolic algorithms
Authors: M. Valero-Garcia, J. J. Navarro, J. M. Llaberia, M. Valero
Venue: ACM SIGARCH Computer Architecture News (1989)

In this paper we propose a methodology to adapt Systolic Algorithms to the hardware selected for their implementation. Systolic Algorithms obtained can be efficiently implemented using Pipelined Functional Units. The methodology is based on two transformation rules. These rules are applied to an initial Systolic Algorithm, possibly obtained through one of the design methodologies proposed by other authors. Parameters for these transformations are obtained from the specification of the hardware to be used. The methodology has been particularized in the case of one-dimensional Systolic Algorithms with data contraflow.
Resolution limits at potential contrast registration in a SEM
Authors: V. V. Aristov, V. V. Kazmiruk
Venue: Microelectronic Engineering (1988)

This paper deals with the influence of secondary electrons signal formation on the utmost achievable SEM characteristics in the voltage contrast mode. Principal relations between the signal recorded and the surface potential and SE signals are derived.
An Ada-based software engineering course
Authors: G. Scott Owen
Venue: Proceedings of the twentieth SIGCSE technical symposium on Computer science education (1989)

Currently, many Computer Science Departments have introduced or are considering the introduction of courses in software Engineering. At the same time many departments are considering the use of a language other than Pascal either for an entire Computer Science curriculum, or at least for some advanced courses, such as Data Structures or Software Engineering. At Georgia State University, where our program is primarily based on IBM PC compatible microcomputers, both our Data Structures and Software Engineering courses are based on Ada. In this paper we will discuss the rationale behind our choice of Ada and our experience with using Ada in the Software Engineering course.
Code generation using tree matching and dynamic programming
Authors: Alfred V. Aho, Mahadevan Ganapathi, Steven W. K. Tjiang
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1989)

Compiler-component generators, such as lexical analyzer generators and parser generators, have long been used to facilitate the construction of compilers. A tree-manipulation language called twig has been developed to help construct efficient code generators. Twig transforms a tree-translation scheme into a code generator that combines a fast top-down tree-pattern matching algorithm with dynamic programming. Twig has been used to specify and construct code generators for several experimental compilers targeted for different machines.
A Robust Algorithm for Text String Separation from Mixed Text/Graphics Images
Authors: Lloyd A. Fletcher, Rangachar Kasturi
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (1988)

The development and implementation of an algorithm for automated text string separation that is relatively independent of changes in text font style and size and of string orientation are described. It is intended for use in an automated system for document analysis. The principal parts of the algorithm are the generation of connected components and the application of the Hough transform in order to group components into logical character strings that can then be separated from the graphics. The algorithm outputs two images, one containing text strings and the other graphics. These images can then be processed by suitable character recognition and graphics recognition systems. The performance of the algorithm, both in terms of its effectiveness and computational efficiency, was evaluated using several test images and showed superior performance compared to other techniques.
Efficient encoding of application layer PDU's for fieldbus networks
Authors: J. R. Pimentel
Venue: ACM SIGCOMM Computer Communication Review (1988)

A new and efficient encoder suitable for encoding application layer PDU's is suggested. Because of its good efficiency, it is particularly useful for fieldbus networks where real time behaviour is a major requirement. The encoder is able to work with ASN. 1 syntax rules and produces a new transfer syntax which can be negotiated with the ISO presentation layer. The overhead length required by the new encoder is at least half of that required by ASN. 1 encoding. Several examples using MMS protocol data units demonstrate the enhanced features of the new encoder.
Expert systems for user service
Authors: R. T. DeWitt
Venue: Proceedings of the 17th annual ACM SIGUCCS conference on User Services (1989)

Over the last few years, expert systems have moved from very expensive LISP or PROLOG based computers to easy-to-use software packages for the PC. As this switch has taken place, the popularity of these expert systems has grown significantly with applications being developed for many areas. As experts in the use of computers, many User Service departments may be considering using these &ldquo;tools of our trade&rdquo; to assist them in solving user problems. This paper will address what an expert system is, how to determine whether an expert system is applicable to your User Service's operations, and considerations regarding the time and cost of developing an expert system.
A sketch of logic without truth
Authors: C. E. Alchourrón, A. A. Martino
Venue: Proceedings of the 2nd international conference on Artificial intelligence and law (1989)

1. J&oslash;gensen's Dilemma - 2. The Proposed Solution - 3. Short History of a Philosophical Prejudice - 4. The Abstract, Syntactical and Semantic Notion of Consequence - 4.1. The Abstract Notion of Consequence - 4.2. The Syntactical Notion of Consequence - 4.3. The Semantic Notion of Consequence - 4.4. The Meaning Given by Rules of Use in a Context - 4.5. Which Operators does Logic Require? - 5. Deontic Logic - 6. The Consequences for Computer Scientists.
Toward the perfect workplace?
Authors: L. Bailyn
Venue: Communications of the ACM (1989)

The experience of home-based systems developers is compared with their office-based counterparts in a UK computer firm. The analysis produced two major patterns: the home-based workers find intrinsic value in the job, whereas office-based employees view it more instrumentally and find it interferes with satisfaction on a personal level.
Product Form Approximations for Queueing Networks with Multiple Servers and Blocking
Authors: I. F. Akyildiz
Venue: IEEE Transactions on Computers (1989)

It is shown that the equilibrium-state probabilities for this type of blocking queuing network have an approximate product-form solution, which is based on normalizing the infeasible states that violate station capacities. To obtain the throughput values, a state-space transformation is introduced. This concept is based on finding a nonblocking network with an appropriate total number of jobs of which the number of feasible states is equal or approximately equal to the number of feasible states in the blocking queuing network. This guarantees that the Markov processes describing the evolution networks over time have approximately the same structure, so the throughputs of both systems are approximately equal. The approximations are validated by executing several examples and comparing them with simulation results.
Module modeling and economic optimization for large-scale AS/RS
Authors: S. Takakuwa
Venue: Proceedings of the 21st conference on Winter simulation (1989)

A method of decomposing models for large-scale Automated Storage/Retrieval Systems (AS/RS) is proposed in an attempt to determine the optimum combination of warehouses and material handling systems. AS/RS which is considered in this paper comprises the automated warehouse with stacker cranes, the conveyance system and the handling systems. There are three alternatives in the conveyance system, i.e., single-track AGV (Automated Guided Vehicle) systems, looped-track AGVs system and conveyor systems. Effectiveness of the proposed approach is confirmed by performing both simulation and animation of models based upon an actual example. In addition, a procedure for obtaining the optimum combination of subsystems for constructing AS/RS warehouses is presented with numerical examples from an economic standpoint.
A Distributed Deadlock Detection and Resolution Algorithm and its Correctness Proof
Authors: A. K. Elmagarmid, N. Soundararajan, M. T. Liu
Venue: IEEE Transactions on Software Engineering (1988)

The key idea of the algorithm is to let one transaction controller be in charge of all transactions in a set of interacting transactions. Two transactions are interacting if they are both interested in (accessing) the same resource. In addition, the controller is in charge of all the resources allocated to any of the transactions in the set. Having one controller in charge of all the transactions in a set of interacting transactions and all the resources allocated to them makes it easier to detect deadlocks and avoid them. The main problem dealt with is how a controller takes charge of another transaction when the transaction tries to access one of the resources currently in the control of the controller and how a controller releases a transaction back to its original controller when the transaction is no longer interested in any of the resources in which one or more of the other transactions are also interested. Communicating sequential processes (CSP) is used to code the algorithm. The correctness of the algorithm is proved in a semiformal manner.
Static synchronization beyond VLIW
Authors: H. Dietz, T. Schwederski, M. O'Keefe, A. Zaafrani
Venue: Proceedings of the 1989 ACM/IEEE conference on Supercomputing (1989)

A key advantage of SIMD (Single Instruction stream, Multiple Data stream) architectures is that synchronization is effected statically at compile-time, hence the execution-time cost of synchronization between &ldquo;processes&rdquo; is essentially zero. VLIW (Very Long Instruction Word) machines are successful in large part because they preserve this property while providing more flexibility in terms of what kinds of operations can be parallelized. In this paper, we propose a new kind of architecture &mdash; the &ldquo;static barrier MIMD&rdquo; or SBM &mdash; which can be viewed as a further generalization of the parallel execution abilities of static synchronization machines. Barrier MIMDs are asynchronous Multiple Instruction stream Multiple Data stream architectures capable of parallel execution of loops, subprogram calls, and variable-execution-time instructions. However, instead of using barriers as a synchronization mechanism, the proposed barrier hardware is used to impose static timing constraints. Since the compiler can know at compile time all instructions which each processor could be executing when a particular conceptual synchronization operation is needed, it can resolve most synchronizations by using VLIW-like compile-time instruction scheduling &mdash; without use of a runtime synchronization mechanism. The effect is that the proposed barrier mechanism greatly extends the generality of efficient static scheduling without adding a significant hardware cost. Traditional, directed-synchronization, MIMD architectures are more flexible than barrier MIMDs, but the benefits of static scheduling make barrier MIMDs superior for fine to medium grain parallelism. Both the barrier architecture and the supporting compiler technology are discussed in this paper.
The user consultant handbook: the species develops
Authors: V. L. Johnston, T. L. Case
Venue: Proceedings of the 17th annual ACM SIGUCCS conference on User Services (1989)

We will now discuss in a little more detail the Struggle for Existence. Charles Darwin, The Origin of Species As a User Services office expands the number of policies, procedures, and staff usually expands with it. Old methods for disseminating information may no longer be effective with a larger staff. At the University of Alaska Anchorage, we found that a user consultant handbook helps us distribute information more effectively to our consulting staff. We discovered that producing a user consultant handbook is like turning a ferocious tiger into a tame house cat. You will tussle with it, but you'll gain a warm, loyal friend.
An interactive tolerance system
Authors: Osama K. Eyada, Yiannakis A. Ioannou, Jin B. Ong
Venue: Proceedings of the 2nd international conference on Industrial and engineering applications of artificial intelligence and expert systems - Volume 1 (1989)

The proper distribution of tolerances among the components of an assembly is necessary to ensure that the product would meet the desired design specifications at the lowest possible cost. Typically, designers have to manually determine the desired tolerances of a product to input into a CAD system. This paper describes an Interactive Tolerance System (ITS) designed to allow users to interactively select the appropriate class of fit and perform tolerance analysis for an assembly. The ITS is written in C programming Language for a micro-computer and can be interfaced with CAD software, such as AutoCAD and CADkey. With ITS, the productivity of designers is enhanced and design for manufacturability is easier to achieve.
On Lamport's interprocessor communication model
Authors: Frank D. Anger
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1989)

Leslie Lamport presented a set of axioms in 1979 that capture the essential properties of the temporal relationships between complex and perhaps unspecified activities within any system, and proceeded to use this axiom system to prove the correctness of sophisticated algorithms for reliable communication and mutual exclusion in systems without shared memory. As a step toward a more complete metatheory of Lamport's axiom system, this paper determines the extent to which that system differs from systems based on &ldquo;atomic,&rdquo; or indivisible, actions. Theorem 1 shows that only very weak conditions need be satisfied in addition to the given axioms to guarantee the existence of an atomic &ldquo;model,&rdquo; while Proposition 1 gives sufficient conditions under which any such model must be a &ldquo;faithful&rdquo; representation. Finally, Theorem 2 restates a result of Lamport showing exactly when a system can be thought of as made up of a set of atomic events that can be totally ordered temporally. A new constructive proof is offered for this result.