ppxscal/embedding_network huggingface dataset:
Analysis and Design in MSG.84: Formalizing Functional Specifications
Authors: Valdis Berzins, Michael Gray
Venue: IEEE Transactions on Software Engineering (1985)

Model building is identified as the most important part of the analysis and design process for software systems. A set of primitives to support this process is presented, along with a formal language, MSG.84, for recording the results of analysis and design. The semantics of the notation is defined in terms of the actor formalism, which is based on a message passing paradigm. The automatic derivation of a graphical form of the specification for user review is discussed. Potentials for computer-aided design based on MSG.84 are indicated.
Symbolic manipulation in an extended &lgr;-calculus
Authors: Terry Flaherty
Venue: ACM SIGSAM Bulletin (1988)

A symbolic differentiation functional that handles expressions containing free and bound variables in an extended lambda;-calculus programming language (SRL) is described. A formalization of partial derivatives of functions wrt position of parameters is presented.
Nonlinear programming on generalized networks
Authors: David P. Ahlfeld, John M. Mulvey, Ron S. Dembo, Stavros A. Zenios
Venue: ACM Transactions on Mathematical Software (TOMS) (1987)

We describe a specialization of the primal truncated Newton algorithm for solving nonlinear optimization problems on networks with gains. The algorithm and its implementation are able to capitalize on the special structure of the constraints. Extensive computational tests show that the algorithm is capable of solving very large problems. Testing of numerous tactical issues are described, including maximal basis, projected line search, and pivot strategies. Comparisons with NLPNET, a nonlinear network code, and MINOS, a general-purpose nonlinear programming code, are also included.
Proceedings of the seventeenth SIGCSE technical symposium on Computer science education
Authors: Joyce Currie Little, Lillian N. Cassel
Venue: Technical Symposium on Computer Science Education (1986)

[The] program contains a number of topics that have been discussed in previous symposia, but still remain matters of concern. In addition, the program contains sessions dealing with issues at the precollege level, and in information systems, fourth generation languages, graphics, studies of student performance, and career preparation. Several panel sessions are jointly listed with the ACM Computer Science Conference&hellip;. [The] program includes tutorials: one on teaching concepts related to programming and the other on Ada, jointly sponsored by SIGAda&hellip;. &mdash;From the Chairperson's Message
A course on &ldquo;expert systems&rdquo; for electrical engineering students
Authors: Ian H. Witten
Venue: ACM SIGCSE Bulletin (1987)

A final-year undergraduate course on Expert Systems, designed for Electrical Engineering students, is described. To cater for this audience the course has a highly practical nature, despite the students' lack of relevant prerequisites in Computer Science. This is achieved by emphasizing logic programming throughout to illustrate all concepts taught; weekly, scheduled laboratory sessions; and a carefully-graded series of assignments.We have demonstrated that bright engineering students can get to grips with practical issues in applied artificial intelligence through a short, intensive, course &mdash; starting from ground level. PROLOG was found invaluable as a pedagogical tool, as was the highly-structured engineering-style laboratory. Informal feedback indicates that the course has achieved its objectives and indeed exceeded expectations.
Processor Allocation for Horizontal and Vertical Parallelism and Related Speedup Bounds
Authors: C. D. Polychronopoulus, U. Banerjee
Venue: IEEE Transactions on Computers (1987)

The main aim of the paper is to study allocation of processors to, parallel programs executing on a multiprocessor system, and the resulting speedups. First, we consider a parallel program as a sequence of steps where each step consists of a set of parallel operations. General bounds on the speedup on a p- processor system are derived based on this model. Measurements of code parallelism for the, LINPACK numerical package are presented to support the belief that typical numerical programs contain much potential parallelism that can be discovered by a good restructuring compiler. Next, a parallel program is represented as a task graph whose nodes are do across loops (i.e., loops whose iterations can be partially, overlapped). It is shown how processors can be allocated to exploit horizontal and vertical parallelism in such graphs. Two processor allocation heuristic algorithms (WP and PA) are presented. PA is the heart of the WP and is used to obtain efficient processor allocations for a set of independent parallel tasks. WP allocates processors to general task graphs. Finally, a general formula for the speedup of a DO across loop is given that is more accurate than the known formula.
Data flow analysis of recursive procedures
Authors: P. Fairfield, M. A. Hennell
Venue: ACM SIGPLAN Notices (1988)

Data flow analysis is a technique used to detect suspicious variable usage within a program. Its evaluation requires analysis of the flow graphs of the program. This causes difficulties when the program contains recursive procedures because in order to fully evaluate each procedure, the data flow value of its own recursive invocation needs to be known first. This however cannot be determined until the whole procedure has been analysed. This paper describes a technique for resolving this difficulty and successfully completing data flow analysis on recursive procedures.
Normalizing and optimising documentation
Authors: Jean E. Tardy
Venue: ACM SIGDOC Asterisk Journal of Computer Documentation (1988)

Applying the Data Base design principles of Normalization and Performance Optimisation to software documentation will yield a clear efficient and useful set of documents, listings and procedures. These "principles" of documentation, can be applied in a straightforward way to produce and manage software documentation; sometimes with revolutionary consequences.
Computer abuse and security: Update on an empirical pilot study
Authors: Detmar Straub
Venue: ACM SIGSAC Review (1986)

Questions about computer abuse abound in the popular press and in the computer trade and professional journals. Frequently asked questions focus on the extent of the problem and the abusers themselves. Some typical, critical questions are:* Is computer abuse a serious problem today in the U.S.?* How are systems being abused?* Who are the abusers and what motivates them?* Are privileged system users more prone to abuse systems than other users?
Some important features and issues in user interface management systems
Authors: R D Hill
Venue: ACM SIGGRAPH Computer Graphics (1987)

Some key features that are believed to be required in future User Interface Management Systems (UIMSs) are presented and discussed, as are some key philosophical issues. These features and issues concern the range and quality of user interfaces that can be supported, and the ease with which the user interfaces can be implemented and modified.The arguments presented are based on experience gained with the Sassafras UIMS. Sassafras is a prototype UMIS that was explicitly designed to support some features that were not common in UMISs, but were belived to be necessary to support many styles of interaction.
Improved methods for storing and updating information in the out-of-kilter algorithm
Authors: Samar Singh
Venue: Journal of the ACM (JACM) (1986)

Currently, network codes based on the primal simplex algorithm are believed to be computationally superior to those based on other methods. Some modifications of the out-of-kilter algorithm of Ford and Fulkerson are given, together with proofs of their correctness and computer implementations using appropriate data structures. The computational tests in this paper indicate that the final code based on these modifications is superior to any previously implemented version of this algorithm. Although this code is not competitive with state-of-the-art primal simplex codes, its performance is encouraging, especially in the case of assignment problems.
NESS: A coupled simulation expert system
Authors: K Kawamura, G Beale, J Rodriquez-Moscoso, B J Hsieh, S Padalkar
Venue: Proceedings of the ACM SIGART international symposium on Methodologies for intelligent systems (1986)

This paper reports on work being conducted for NASA to develop a simulation expert system called NESS that can assist the user to run digital simulations of dynamic systems and interpret the output data to determine system characteristics. The paper describes our design principle, system architecture and knowledge base. Finally, in order to demonstrate NESS' simulation and analysis capabilities, a session log involving a printwheel position controller is shown.
Using Decision Trees to Derive the Complement of a Binary Function with Multiple-Valued Inputs
Authors: A. H. Chan
Venue: IEEE Transactions on Computers (1987)

An algorithm to minimize decision trees of Boolean functions with multiple-valued inputs is presented. The recursive algorithm is used to obtain a complement of a sum-of-products expression for a binary function with multiple-valued inputs. In the case where each input is p-valued, the algorithm produces at most pn-l products for n-variable functions, whereas Sasao's algorithm produces pn/2 products. This upper bound on the number of products is the best possible.
Modeling a Slotted Ring Local Area Network
Authors: P. J. B. King, I. Mitrani
Venue: IEEE Transactions on Computers (1987)

Models for local area networks of the slotted ring style of architecture are developed and evaluated. The hardware protocol is modeled using a BCMP network. The Basic Block protocol of the Cambridge ring is modeled using an approximate solution method of the fixed-point type. A limited comparison between the Cambridge Ring and another ring architecture the token ring is carried out.
Appraising fairness in distributed languages
Authors: K. R. Apt, N. Francez, S. Katz
Venue: Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages (1987)

The relations among various languages and models for distributed computation and various possible definitions of fairness are considered. Natural semantic criteria are presented which an acceptable notion of fairness should satisfy. These are then used to demonstrate differences among the basic models, the added power of the fairness notion, and the sensitivity of the fairness notion to irrelevant semantic interleavings of independent operations. These results are used to show that from the considerable variety of commonly used possibilities, only strong process fairness is appropriate for CSP if these criteria are adopted. We also show that under these criteria, none of the commonly used notions of fairness are fully acceptable for a model with an n-way synchronization mechanism. Finally, the notion of fairness most often mentioned for Ada is shown to be fully acceptable.
The transitive groups of degree twelve
Authors: Gordon F. Royle
Venue: Journal of Symbolic Computation (1987)

This paper describes a simple method for constructing all the pairwise non-conjugate transitive groups of degree twelve. The construction was performed using the group theory package CAYLEY yielding a list of 301 transitive groups of twelve. A detailed list of all the minimal transitive groups of degree twelve is given.
Comments on "Grosch's law re-revisited: CPU power and the cost of computation"
Authors: Young Moo Kang, Robert B. Miller, Roger Alan Pick
Venue: Communications of the ACM (1986)

Taking Ein-Dor's recent reevaluation of Grosch's law one step further, the authors find evidence of different slopes for different classes of computers and the utility of an additional variable: the IBM or IBM-compatible factor. The analysis indicates that Grosch's law no longer applies to minicomputers.
Teaching oral communication in computer science
Authors: Vianney Coté
Venue: ACM SIGCSE Bulletin (1987)

Software analysts currently spend a large portion of their time communicating with others. Effective communication skills is of extreme importance if one wishes to be an efficient and productive software analyst. This article describes some of the exercises related to oral communications that are imposed on our students. Advantages and difficulties are discussed.
A dynamic very high-level debugger for low-level microprograms
Authors: N. J. Wahl, S. R. Schach, R. I. Winner
Venue: ACM SIGMICRO Newsletter (1986)

Microcode debuggers may be classified according to the following three criteria: static or dynamic output, the level of debugging, and the type of debugging facilities provided. A very high level interactive debugger that supports dynamic debugging of microcode written for the Perkin-Elmer 3220 is described in this paper. The system allows the user to debug microcode at a very high level because the microarchitecture of the machine can be displayed in the format conceived by the user. The display is dynamic in that the user sees the flow of data as it occurs during the execution of microinstructions. The system supports the usual debugging facilities including setting breakpoints, executing in step or continuous modes, executing in trace mode, examining and changing the contents of memory locations and registers, and restarting the microprogram at an earlier location. But, these facilities are greatly enhanced because the output of the debugger is graphical and dynamic.
Perfornance Study of Two Phase Locking in Single-Site Database Systems
Authors: K. H. Pun, Geneva G. Belford
Venue: IEEE Transactions on Software Engineering (1987)

Many database systems guarantee the consistency of the database for concurrent transaction processing by a standard locking protocol called two phase locking. The performance of such systems is dependent on various factors, among which are the choices of locking granularity (the amount of data controlled by a single lock) and degree of multiprogramming (the maximum number of transactions allowed to run concurrently in the system). Previous simulation and experimental studies on such systems suggest that the choices are dependent on the properties of the application.
DOMAIN/DELPHI: retrieving documents online
Authors: P. Orwick, J. T. Jaynes, T. R. Barstow, L. S. Bohn
Venue: ACM SIGCHI Bulletin (1986)

DOMAIN/DELPHI is the retrieval component of Apollo's in-house, integrated publishing system. It retrieves and displays documentation in a networked workstation environment in which each workstation has access to a common database of user and systems documents. Users can find information by &ldquo;browsing&rdquo; through a table of contents or by an indexed search for all documents on a subject. DELPHI incorporates a graphical, menu-driven user interface and displays output with multiple fonts and line art.
Optimal VLSI circuits for sorting
Authors: Richard Cole, Alan Siegel
Venue: Journal of the ACM (JACM) (1988)

This work describes a large number of constructions for sorting N integers in the range [0, M - 1], for N &le; M &le; N2, for the standard VLSI bit model. Among other results, we attain: VLSI sorter constructions that are within a constant factor of optimal size, for all M and almost all running times T. a fundamentally new merging network for sorting numbers in a bit model. new organizational approaches for optimal tuning of merging networks and the proper management of data flow.
Using cautious heuristics to bias generlization and guide example section
Authors: Diana F. Gordon
Venue: Issue 105 (July 1988) (1988)

Bias plays a significant role in inductive inference. In the framework of inductive concept learning from examples, there is an unknown target concept to be learned and a set of instances classified as positive or negative examples of the target concept. If learning is incremental, hypotheses (usually expressed in terms of instance features) are formed and then modified to remain consistent with the growing set of known instances. Generalization and specialization are frequently used for making modifications. A hypothesis is consistent with the instances if it logically implies all known positive instances and no known negative instances. If learning is empirical and the concept language is rich, the number of hypotheses consistent with the instances may be quite large. Since the purpose of each hypothesis is to predict over future instances, a judicious choice of one hypothesis over others ("bias")1 can improve these predictions, thereby enhancing system performance.
Integrating design information for IC diagnosis
Authors: S. E. Concina, G. S. Liu
Venue: Proceedings of the 24th ACM/IEEE Design Automation Conference (1987)

This paper focuses on the data structures and algorithms used in an integrated electron-beam probing system for IC diagnosis. The goal is to create an effective debugging environment through access to various types of design information. Dedicated databases permit separate schematics and layouts to be cross referenced on line. Special algorithms deliver fast, interactive performance by capitalizing on design hierarchies.
An Efficient Class of Unidirectional Error Detecting/Correcting Codes
Authors: D. L. Tao, R. P. Hartmann, P. K. Lala
Venue: IEEE Transactions on Computers (1988)

A method for constructing a class of t-error correcting and all unidirectional error-detecting systematic codes is proposed. These codes have been shown to be more efficient than codes constructed using other methods proposed in the literature. In a special case, the code constructed is the Berger code.
Special relations in automated deduction
Authors: Zohar Manna, Richard Waldinger
Venue: Journal of the ACM (JACM) (1986)

Two deduction rules are introduced to give streamlined treatment to relations of special importance in an automated theorem-proving system. These rules, the relation replacement and relation matching rules, generalize to an arbitrary binary relation the paramodulation and E-resolution rules, respectively, for equality, and may operate within a nonclausal or clausal system. The new rules depend on an extension of the notion of polarity to apply to subterms as well as to subsentences, with respect to a given binary relation. The rules allow us to eliminate troublesome axioms, such as transitivity and monotonicity, from the system; proofs are shorter and more comprehensible, and the search space is correspondingly deflated.
The V distributed system
Authors: David Cheriton
Venue: Communications of the ACM (1988)

The V distributed System was developed at Stanford University as part of a research project to explore issues in distributed systems. Aspects of the design suggest important directions for the design of future operating systems and communication systems.
Self-organizing sequential search and Hilbert's inequalities
Authors: F R Chung, D J Hajela, P D Seymour
Venue: Proceedings of the seventeenth annual ACM symposium on Theory of computing (1985)

In this paper we describe a general technique which can be used to solve an old problem in analyzing self-organizing sequential search. We prove that the average time required for the move-to-front heuristic is no more than &pgr;/2 times that of the optimal order and this bound is best possible. Hilbert's inequalities will be used to derive large classes of inequalities some of which can be applied to obtain tight worst-case bounds for several self-organizing heuristics.
System architectures for computer music
Authors: John W. Gordon
Venue: ACM Computing Surveys (CSUR) (1985)

Computer music is a relatively new field. While a large proportion of the public is aware of computer music in one form or another, there seems to be a need for a better understanding of its capabilities and limitations in terms of synthesis, performance, and recording hardware. This article addresses that need by surveying and discussing the architecture of existing computer music systems. System requirements vary according to what the system will be used for. Common uses for computer music systems include composition, performance, research, home entertainment, and studio recording/mixing. This paper outlines system components with this wide diversity of possible uses in mind. Current synthesis and analysis techniques, and the different way in which these techniques can be implemented in special-purpose hardware, are comprehensively reviewed. Design specifications are given for certain digital-to-analog (and analog-to-digital) converters, disk interfaces, system organization, control hardware and software, and numerical precision. Several synthesis systems are described in detail, with an emphasis on theoretical developments and innovative design. Commercial synthesizers and other architectures are also briefly mentioned.
High-performance operating system primitives for robotics and real-time control systems
Authors: Karsten Schwan, Tom Bihari, Bruce W. Weide, Gregor Taulbee
Venue: ACM Transactions on Computer Systems (TOCS) (1987)

To increase speed and reliability of operation, multiple computers are replacing uniprocessors and wired-logic controllers in modern robots and industrial control systems. However, performance increases are not attained by such hardware alone. The operating software controlling the robots or control systems must exploit the possible parallelism of various control tasks in order to perform the necessary computations within given real-time and reliability constraints. Such software consists of both control programs written by application programmers and operating system software offering means of task scheduling, intertask communication, and device control. The Generalized Executive for real-time Multiprocessor applications (GEM) is an operating system that addresses several requirements of operating software. First, when using GEM, programmers can select one of two different types of tasks differing in size, called processes and microprocesses. Second, the scheduling calls offered by GEM permit the implementation of several models of task interaction. Third, GEM supports multiple models of communication with a parameterized communication mechanism. Fourth, GEM is closely coupled to prototype real-time programming environments that provide programming support for the models of computation offered by the operating system. GEM is being used on a multiprocessor with robotics application software of substantial size and complexity.
The influence of training on use of end-user software
Authors: Lorne Olfman Robert P. Bostrom
Venue: Proceedings of the ACM SIGOIS and IEEECS TC-OA 1988 conference on Office information systems (1988)

Research in end-user software training has not addressed the issue of designing methods to influence use of software. The research reported here is based on a field experiment that compared two software training methods for Lotus 1-2-3. Applications-based training was designed to be more personally relevant than construct-based training with the expectation that personal relevance would lead to higher levels of use. Self-reported hours of use by applications-based trainees were higher, although only 38 of 70 trainees used the software after training. Post-training interviews were conducted to determine reasons for use and nonuse.
A study of application program development techniques
Authors: Tor Guimaraes
Venue: Communications of the ACM (1985)

A survey of application development techniques in 43 organizations identifies the methods and tools found most effective in application software development.