ppxscal/embedding_network huggingface dataset:
Public key encryption
Authors: W. Küchlin
Venue: ACM SIGSAM Bulletin (1987)

The RSA method is used for the interchange of secret messages via insecure channels. It is elegant in theory and fast and reliable in practice. Applications are in the field of communication networks.The method is initialized by choosing some suitable large prime numbers. Encrypting and decrypting of a message are done by modular arithmetic. The modulus is a large integer (e.g. 200 decimal digits). Any attempt to break the system amounts to factoring the modulus.The basic operations that are needed for an implementation are fundamental for any computer algebra package, e.g. SAC-2 offers them in an suitable way. This project therefore requires only little programming, but some insight into theory and the ability to find and put together existing components. An optional part of the project deals with the security of the method.
Program style analysis: a natural by-product of program compilation
Authors: K. A. Redish, W. F. Smyth
Venue: Communications of the ACM (1986)

Analyzing program style may be properly considered an integral part of program compilation&mdash;as successfully implemented in two style-analysis tools for Fortran 77: AUTOMARK and ASSESS. The authors look forward to the day when all major language compilers routinely provide a standard style-analysis vector for users to interpret as they see fit.
Query processing in deductive databases with incomplete information
Authors: Tomasz Imielinski
Venue: ACM SIGMOD Record (1986)

We study here automated deduction in databases in the presence of various types of inference rules of the form of Horn Clauses with Skolem functions. These inference rules are typical for databases with incomplete information. We demonstrate a number of results related to processing of conjunctive queries for different types of database intensions. In particular, we show that when a database intension is built from possibly cyclic inclusion dependencies and view definitions any conjunctive query can be translated to the an equivalent form which can be evaluated directly over the database extension (disregarding inference rules). We also demonstrate that the complexity of query processing significantly grows when we mix incomplete information with recursive rules. In particular, we demonstrate here that even the power of least fixpoint extension of first order logic may be not sufficient to process queries in the presence of incomplete data and recursive rules. The same is demonstrated in case disjunctive information is allowed in the database.
Controlling dynamic simulation with kinematic constraints
Authors: Paul M. Isaacs, Michael F. Cohen
Venue: Proceedings of the 14th annual conference on Computer graphics and interactive techniques (1987)

Theoretical and numerical aspects of the implementation of a DYNAmic MOtion system, dubbed DYNAMO, for the dynamic simulation of linked figures is presented. The system introduces three means for achieving, control of the resulting motion which have not been present in previous dynamic simulation systems for computer animation. (1) "Kinematic constraints" permit traditional keyframe animation systems to be embedded within a dynamic analysis. Joint limit constraints are also handled correctly through kinematic constraints. (2) "Behavior functions" relate the momentary state of the dynamic system to desired forces and accelerations within the figure. (3) "Inverse dynamics" provides a means of determining the forces required to perform a specified motion.The combination of kinematic and dynamic specifications allows the animator to think about each part of the animation in the way that is most suitable for the task. Successful experimental results are presented which demonstate the ability to provide control without disrupting the dynamic integrity of the resulting motion.
On design principles for a molecular computer
Authors: Michael Conrad
Venue: Communications of the ACM (1985)

If the unique information-processing capabilities of protein enzymes could be adapted for computers, then evolvable, more efficient systems for such applications as pattern recognition and process control are in principle possible.
The dragon processor
Authors: Russell R. Atkinson, Edward M. McCreight
Venue: ACM SIGARCH Computer Architecture News (1987)

The Xerox PARC Dragon is a VLSI research computer that uses several techniques to achieve dense code and fast procedure calls in a system that can support multiple processors on a central high bandwidth memory bus.
Trees as nested arrays and the use of underdisclose
Authors: G. C. Nauta
Venue: Proceedings of the international conference on APL: APL in transition (1987)

A notation is presented to denote a tree as a vector, using nested arrays. The construction of a tree as well as operations on it, make use of the operator under (also called each) and the function disclose. The definition of a new operator useful for the handling of nested arrays is given.
Fortran 8X&mdash;the emerging standard
Authors: M Metcalf
Venue: ACM SIGPLAN Fortran Forum (1987)

Since 1979, the Fortran standardization committee, X3J3, has been labouring over a draft for the next version of the standard. Its initial intention of publishing this draft in 1982 was hopelessly optimistic, and at best it may be ready this year. However, a number of fundamental issues have been thrown up over the past two years, such that it is clear that unanimity cannot be achieved: efficiency versus functionality; safety versus obsolescence; small and simple or big and powerful?This paper reviews the current state and content of Fortran 8x, and attempts to bring out some of the controversial issues surrounding its development.
A cognitive model of database querying: a tool for novice instruction
Authors: M. S. Schlager, W. C. Ogden
Venue: ACM SIGCHI Bulletin (1986)

Two experiments examine the effects of incorporating user knowledge into the design of training materials for a database querying system. In Experiment 1 an informal cognitive model of a query language is derived from the verbal reports of expert users, and incorporated into existing documentation. Two groups of subjects were then asked to solve queries using either the revised or original manual. In Experiment 2 the cognitive model was formalized to explicitly describe the conceptual and procedural information that was incorporated into training materials. Three groups of subjects then received either a conceptual model, procedural model, or neither in addition to basic instructions, and then solved four sets of queries. The results show that whether or not a given type of information facilitates performance depends on the type of query, and whether the model is consistent with the operation of the query system.
Support for Reusability in Genesis
Authors: C. V. Ramamoorthy, Vijay Garg, Atul Prakash
Venue: IEEE Transactions on Software Engineering (1988)

Genesis is a software-engineering-based programming environment geared to support big software projects. The authors first discuss a reusability-driven development methodology that advocates software development based on reusability considerations. Then, they discuss the tools and techniques provided in Genesis to support this methodology. Techniques are suggested for improving the retrievability, composability, and understandability of software resources. Retrievability is improved by use of ESL (entity specification language) for tying resources through attributes and relations. Composability is improved through a mechanism called functional composition that provides considerably more generality than Unix pipes for composing programs. Understandability is improved by the use of program abstractors.
RED: resistance extraction for digital simulation
Authors: D. Stark, M. Horowitz
Venue: Proceedings of the 24th ACM/IEEE Design Automation Conference (1987)

This paper describes an extractor designed to produce resistance values for use in digital circuit simulation. REDS avoids resistance extraction on most nets in a design using a simple filter based on the perimeter and area values calculated by the capacitance extractor, allowing it to concentrate on areas where resistance may substantially affect circuit timing. Nets are extracted using a fast square counting algorithm, and simplified before output to remove spurious elements. REDS is designed to work on the Magic layout database.
Whiteboards: a graphical database tool
Authors: James Donahue, Jennifer Widom
Venue: ACM Transactions on Information Systems (TOIS) (1986)

The &ldquo;Whiteboards&rdquo; system is intended to be an electronic equivalent of the whiteboards and corkboards that we have in our offices. A Whiteboard database has similar qualities of storing disparate collections of data and saving their spatial location in a window to help with organization. A Whiteboard database can contain references to arbitrary entities: text files, notes, programs, tools, pictures, etc. Whiteboards runs as an application in the Cedar programming environment developed at the Xerox Palo Alto Research Center.
The use of regression methodology for the compromise of confidential information in statistical databases
Authors: Michael A. Palley, Jeffrey S. Simonoff
Venue: ACM Transactions on Database Systems (TODS) (1987)

A regression methodology based technique can be used to compromise confidentiality in a statistical database. This holds true even when the DBMS prevents application of regression methodology to the database. Existing inference controls, including cell restriction, perturbation, and table restriction approaches, are shown to be generally ineffective against this compromise technique. The effect of incomplete supplemental knowledge on the regression methodology based compromise technique is examined. Finally, some potential complicators of this disclosure scheme are introduced.
An assessment of the overhead associated with tasking facilities and task paradigms in Ada
Authors: T M Burger, K W Nielsen
Venue: ACM SIGAda Ada Letters (1987)

The design of real-time systems with Ada requires consideration of design alternatives related to the use of tasks for buffering, creation of tasks with allocators, exception handling, and other factors. This paper describes an assessment made of the overhead associated with Ada tasking facilities and tasking paradigms commonly used in real-time design. The tasking facilities examined included task communication and synchronization, task activation and termination, creating tasks via allocators, and exception handling. The tasking paradigms measured focused on the degree of uncoupling required between a producer and consumer, using intermediary tasks. The timing measurements used in the assessment were obtained with DEC Ada (version 1.2) on a VAX 8600.
Concerning the Fortran 8X draft
Authors: Lorer P. Meissner
Venue: ACM SIGPLAN Fortran Forum (1987)

In case you missed the October 1987 issue of Fortran Forum, you are reminded that the draft proposal for Fortran 8X is available for public review and comment, from now through February 23. Copies of the draft ($50.00) may be obtained from Global Engineering Documents Inc.: call them at (800) 248-0084 or (800) 854-7179. For international orders ($65.00), call (714) 540-9870.
Drawing Ada structure charts
Authors: B Burkhard, M Lee
Venue: ACM SIGAda Ada Letters (1986)

This paper describes a method for drawing Ada structure charts and "with"ing trees. This method was used at GTE in developing the Ada version of a project management tool, TRACKER, for NOSC. The paper defines a set of symbols for various Ada entities. It further describes how these symbols can be combined to show nesting, packaging, "with"ing, generic instantiation, exported procedures and data, or any combination thereof. It also shows how visibility can be easily traced from the structure chart. Several examples are shown, including portions of the actual chart for Tracker. The paper concludes with a brief discussion of the benefits and limitations of this method, and compares it to those of Booch and Buhr.
How are windows used? Some notes on creating an empirically-based windowing benchmark task
Authors: K. B. Gaylin
Venue: ACM SIGCHI Bulletin (1986)

Users of a windowing system were studied for the purpose of creating an empirically based windowing benchmark. Each filled out a paper questionnaire that sampled subjective opinions of windowing commands, and were observed for approximately 22 minutes while performing typical daily activities on the computer. Subjects were also asked to demonstrate a typical log-on procedure and were personally interviewed. Windowing command frequencies, and screen layout characteristics were collected and analyzed. The data revealed a relatively high use of a small number of commands that were primarily concerned with moving between windows. This study enabled the creation of a more accurate windowing benchmark task.
Combinatorics, complexity, and randomness
Authors: Richard M. Karp
Venue: Communications of the ACM (1986)

The 1985 Turing Award winner presents his perspective on the development of the field that has come to be called theoretical computer science.
Static evaluation of functional programs
Authors: Gary Lindstrom
Venue: ACM SIGPLAN Notices (1986)

Static evaluation underlies essentially all techniques for a priori semantic program manipulation, i.e. those that stop short of fully general execution. Included are such activities as type checking, partial evaluation, and, ultimately, optimized compilation.This paper describes a novel approach to static evaluation of programs in functional languages involving infinite data objects, i.e. those using normal order or &ldquo;lazy&rdquo; evaluation. Its principal features are abstract interpretation on a domain of demand patterns, and a notion of function &ldquo;reversal&rdquo;. The latter associates with each function f a derived function f' mapping demand patterns on f to demand patterns on its formal parameter. This is used for a comprehensive form of strictness analysis, aiding in efficient compilation.This analysis leads to a revised notion of basic block, appropriate as an intermediate representation for a normal order functional language. An implementation of the analysis technique in Prolog is sketched, as well as an effort currently underway to apply the technique to the generation of optimized G-machine code.
A weighted voting algorithm for replicated directories
Authors: Joshua J. Bloch, Dean S. Daniels, Alfred Z. Spector
Venue: Journal of the ACM (JACM) (1987)

Weighted voting is used as the basis for a replication technique for directories. This technique affords arbitrarily high data availability as well as high concurrency. Efficient algorithms are presented for all of the standard directory operations. A structural property of the replicated directory that permits the construction of an efficient algorithm for deletion is proven. Simulation results are presented and the system is modeled and analyzed. The analysis agrees well with the simulation, and the space and time performance are shown to be good for all configurations of the system.
Transformation and Verification of Office Procedures
Authors: Shi-Kuo Chang, Wu-Lung Chan
Venue: IEEE Transactions on Software Engineering (1985)

An office procedure is a structured set of office activities for accomplishing a specific office task. A unified model, called office procedure model (OPM), is presented to model office procedures. The OPM describes the relationships among messages, databases, alerters, and activities. The OPM can be used to coordinate and integrate the activities of an office procedure. The OPM also allows the specification of office protocols in an office information system. A methodology for the verification of office procedures is presented. With this methodology, potential problems in office procedure specification, such as deadlock, unspecified message reception, etc., can be analyzed effectively.
A logic programming tool for qualitative system design
Authors: Gert L. Moller
Venue: ACM SIGAPL APL Quote Quad (1986)

Introducing a geometrical approach to propositional divalent logic with the truth-tables of the Boolean connectives as the geometrical objects, we can make a simple operational implementation in APL of basic inference methods. This is the basis for a logic programming tool used for preliminary product design at the Danish company Bang Olufsen.
A change of mind or the story of Fuzzies in Purgatory
Authors: Scott Luebking
Venue: ACM SIGCHI Bulletin (1988)

A user interface enables a person to enter data, which are values for attributes, into an application. A good interface allows the user to change his mind while entering these values. The user might choose a new value or restore a previous value with an "undo" feature. If an interface is to have this flexibility, the underlying data structures must be designed to facilitate these changes in attribute values with minimum execution overhead.
A Heuristic for Suffix Solutions
Authors: Avinoam Bilgory, Daniel D Gajski
Venue: IEEE Transactions on Computers (1986)

The suffix problem has appeared in solutions of recurrence systems for parallel and pipelined machines and more recently in the design of gate and silicon compilers. In this paper we present two algorithms. The first algorithm generates parallel suffix solutions with minimum cost for a given length, time delay, availability of initial values, and fanout. This algorithm generates a minimal solution for any length n and depth range from log2 n to n. The second algorithm reduces the size of the solutions generated by the first algorithm.
Some distributions that allow perfect packing
Authors: Wansoo T. Rhee, Michel Talagrand
Venue: Journal of the ACM (JACM) (1988)

A probability distribution &mgr; on [0, 1] allows perfect packing if n items of size X1, &hellip; , Xn, independent and identically distributed according to &mgr; can be packed in unit size bins in such a way that the expected wasted space is o(n). A large class of distributions that allow perfect packing is exhibited. As a corollary, the intervals [a, b] for which the uniform distribution on [a, b] allows perfect packing are determined.
Solutions to logic problems in APL2
Authors: James A. Brown, Manuel Alfonseca
Venue: Proceedings of the international conference on APL: APL in transition (1987)

Logic problems are traditionally solved using notations invented for their solution. APL provides a different way to look at logic problems. This paper looks at some logic problems and shows how they can be solved, at least conceptually, in parallel using APL. The solutions are contrasted with solutions to the same problems in PROLOG. Thus, it is shown that APL has logic programming capabilities in addition to its well known computational abilities.
Integrating computers into the university curriculum: the experience of the UK computers
Authors: Nigel Gardner
Venue: Proceedings of the 15th annual ACM SIGUCCS conference on User Services (1987)

Special initiatives in the field of computing and information technology in the United Kingdom have had a mixed history. Recent appraisals of the much-publicized Alvey programme, for example, cast real doubts on the extent to which any centrally directed initiative can effectively mediate change in a field developing as quickly as information technology1. Where computing and education coincide in a single special initiative, the experience appears particularly unhappy. NDPCAL and MEP have come and gone, leaving no enduring positive mark on our educational system2. Indeed, if a recent report in The Times is to be believed, four out of five teachers in the UK do not judge that the introduction of computers into schools has enhanced any aspects of teaching methodology3. And, to judge from the continuing stream of publications4 bemoaning the acute shortage of adequately trained personnel to fill IT-related positions in industry, commerce, government, and education, the widespread introduction of computers into schools, colleges and universities has yet to even start palliating the problem of a perceived mismatch between the products of our educational system and the needs of employers. On the face of it, therefore, the Computers in Teaching Initiative (CTI) appears to be attempting the impossible, or, at best, entering a domain where recent past experience is discouraging. But a longer view of history is replete with examples where technological innovation has been the lynchpin of successful educational and economic change. Sir John Hale's interpretation of intellectual revival in Renaissance Florence is an opposite example5. The Computers in Teaching Initiative was prompted by the Nelson Report, published in 1983, which identified the inadequate provision of student workstations in UK universities6. The report explored future scenarios, delineating the well-equipped campus of the early 1990's as having one workstation available for every five undergraduates. Although adventurous by British stations the aspirations for the next decade encompassed within the Nelson Report were very modest by comparison with the levels of workstation provision already being achieved by certain American universities7. Rapid developments in computer
Speech recognition enhancement by lip information
Authors: S. Nishida
Venue: ACM SIGCHI Bulletin (1986)

Though technology in speech recognition has progressed recently, Automatic Speech Recognition (ASR) is vulnerable to noise. Lip-information is thought to be useful for speech recognition in noisy situations, such as in a factory or in a car. This paper describes speech recognition enhancement by lip-information. Two types of usage are dealt with. One is the detection of start and stop of speech from lip-information. This is the simplest usage of lip-information. The other is lip-pattern recognition, and it is used for speech recognition together with sound information. The algorithms for both usages are proposed, and the experimental system shows they work well. The algorithms proposed here are composed of simple image-processing. Future progress in image-processing will make it possible to realize them in real-time.
A graphical, extensible integrated environment for software development
Authors: Anthony I Wasserman, Peter A Pircher
Venue: ACM SIGPLAN Notices (1987)

Analysis and design are the essential first phases in most software development projects, yet most automated support environments are aimed at the programming phase. This paper describes a workstation-based environment that provides an integrated ensemble of graphical tools for analysis and design coupled to a project database, along with mechanisms for producing declarations, code skeletons, and executable programs. The environment is built on an &ldquo;open architecture,&rdquo; in which interfaces to the tools and their associated files are visible and accessible. The open architecture supports customization and extensibility of the tool environment, so that it can be effectively linked with traditional programming tools.
Algorithm for computing formal invariants of linear differential systems
Authors: A. Hilali, A. Wazner
Venue: Proceedings of the fifth ACM symposium on Symbolic and algebraic computation (1986)

This paper deals with the system of n linear differential equations (*) y'(x) = A(x)y where A(x) is a matrix with formal series coefficients. A sequence of formal invariants related to (*) is defined. An algorithm which reduces (*) by means of meromorphic transformations to a &ldquo;super-irreducible&rdquo; form is given. The computation of these invariants follows directly from this form. This algorithm is implemented in Reduce.
Growth stages of end user computing
Authors: Sid L. Huff, Malcolm C. Munro
Venue: Communications of the ACM (1988)

The stages of growth and interconnectedness of the applications of end user computing are described in a model that is directed toward management and planning.