ppxscal/embedding_network huggingface dataset:
Using predicate abstraction to reduce object-oriented programs for model checking
Authors: William Visser, SeungJoon Park, John Penix
Venue: Proceedings of the third workshop on Formal methods in software practice (2000)

While it is becoming more common to see model checking applied to software requirements specifications, it is seldom applied to software implementations. The Automated Software Engineering group at NASA Ames is currently investigating the use of model checking for actual source code, with the eventual goal of allowing software developers to augment traditional testing with model checking. Because model checking suffers from the state-explosion problem, one of the main hurdles for program model checking is reducing the size of the program. In this paper we investigate the use of abstraction techniques to reduce the state-space of a real-time operating system kernel written in C++. We show how informal abstraction arguments could be formalized and improved upon within the framework of predicate abstraction, a technique based on abstract interpretation. We introduce some extensions to predicate abstraction that all allow it to be used within the class-instance framework of object-oriented languages. We then demonstrate how these extensions were integrated into an abstraction tool that performs automated predicate abstraction of Java programs.
Complex interval arithmetic
Authors: J. Rokne, P. Lancaster
Venue: Communications of the ACM (1971)

Complex interval arithmetic is defined using real interval arithmetic. Complex interval division is defined so as to assure smallest possible resulting intervals.
A Randomized Contention-Based Load-Balancing Protocol for a Distributed Multiserver Queuing System
Authors: Alexander E. Kostin, Isik Aybay, Gurcu Oz
Venue: IEEE Transactions on Parallel and Distributed Systems (2000)

A novel protocol for load balancing in distributed multiserver queuing systems is proposed. The protocol is based on an anonymous multicast communication in a network of servers or workers. A formal description of the protocol in terms of a state diagram is given. The complexity issues of the protocol are considered. The protocol was investigated by the use of a simulation model in terms of a class of the extended Petri nets and implemented as a prototype system on a group of computers in a LAN of Ethernet type. The results of simulation and prototype-system studies of a distributed queuing system with the proposed protocol are compared to the behavior of an ideal, centralized queuing system. Limitations and possible extensions to the protocol are outlined.
Symbolic derivatives without list processing, subroutines, or recursion
Authors: Peter J. Smith
Venue: Communications of the ACM (1965)

A routine has been developed which computes and prints out the symbolic derivative of an absolutely continuous elementary function of one or several variables. No use is made of list processing languages. The chain rule is applied and the result is edited to produce results as elegant and efficient as those obtained by hand computation. A subset may be imbedded in a formula translator to introduce a differentiation operator into an &ldquo;algebraic&rdquo; programming language.
A framework for remote dynamic program optimization
Authors: Michael J. Voss, Rudolf Eigenmann
Venue: Proceedings of the ACM SIGPLAN workshop on Dynamic and adaptive compilation and optimization (2000)

Dynamic program optimization allows programs to be generated that are highly tuned for a given environment and input data set. Optimization techniques can be applied and re-applied as program and machine characteristics are discovered and change. In most dynamic optimization and compilation frameworks, the time spent in code generation and optimization must be minimized since it is directly reflected in the total program execution time. We propose a generic framework for remote dynamic program optimization that mitigates this need. A local optimizer thread monitors the program as it executes and selects program sections that should be optimized. An optimizer, running on a remote machine or a free processor of a multiprocessor, is then called to actually perform the optimization and generate a new code variant for the section. A dynamic selector is used to select the most appropriate code variant for each code interval based upon the current runtime environment. We describe this framework in detail and present an example of its use on a simple application. We show that our framework, when used with changing input, can outperform the best statically optimized version of the application.
Exception Handling in the Spreadsheet Paradigm
Authors: Margaret Burnett, Anurag Agrawal, Pieter van Zee
Venue: IEEE Transactions on Software Engineering (2000)

Exception handling is widely regarded as a necessity in programming languages today and almost every programming language currently used for professional software development supports some form of it. However, spreadsheet systems, which may be the most widely used type of ¿programming language¿ today in terms of number of users using it to create ¿programs¿ (spreadsheets), have traditionally had only extremely limited support for exception handling. Spreadsheet system users range from end users to professional programmers and this wide range suggests that an approach to exception handling for spreadsheet systems needs to be compatible with the equational reasoning model of spreadsheet formulas, yet feature expressive power comparable to that found in other programming languages. In this paper, we present an approach to exception handling for spreadsheet system users that is aimed at this goal. Some of the features of the approach are new; others are not new, but their effects on the programming language properties of spreadsheet systems have not been discussed before in the literature. We explore these properties, offer our solutions to problems that arise with these properties, and compare the functionality of the approach with that of exception handling approaches in other languages.
A knowledge-based method for inferring semantic concepts from visual models of system behavior
Authors: Kevin L. Mills, Hassan Gomaa
Venue: ACM Transactions on Software Engineering and Methodology (TOSEM) (2000)

Software designers use visual models, such as data flow/control flow diagrams or object collaboration diagrams, to express system behavior in a form that can be understood easily by users and by pogrammers, and from which designers can generate a software architecture. The research described in this paper is motivated by a desire to provide an automated designer's assistant that can generate software architectures for concurrent systems directly from behavioral models expressed visually as flow diagrams. To achieve this goal, an automated designer's assistant must be capable of interpreting flow diagrams in semantic, rather than syntactic, terms. While semantic concepts can be attached manually to diagrams using labels, such as stereotypes in the Unified Model Language (UML), this paper considers the possibility of providing autmated assistance to infer appropriate tags for symbols on a flow diagram. The approach relies upon constructing an underlying metamodel that defines semantic concepts based upon (1) syntactic relationships among visual symbols and (2) inheritance relationships among semantic concepts. Given such a metamodel, a rule-based inference engine can, in many situations, infer the presence of semantic concepts on flow diagram, and can tag symbols accordingly. Futher, an object-oriented query system can compare semantic tags on digram instances for conformance with their definition in the metamodel. To illustrate the approach, the paper describes a metamodel for data flow/control flow diagrams used in the context of a specific software modeling method, Concurrent Object-Based Real-time Analysis (COBRA). The metamodel is implemented using an expert-system shell, CLIPS V6.0, which integrates an object-oriented language with a rule-based inference engine. The paper applies the implemented metamodel to design software for an automobile cruise-control system and provides an evaluation of the approach based upon results from four case studies. For the case studies, the implemented metamodel recognized, automatically and correctly, the existence of 86% of all COBRA semantic concepts within the flow diagrams. Varying degrees of human assistance were used to correctly identify the remaining semantic concepts within the diagrams: in two percent of the cases the implemented metamodel reached tentative classifications that a designer was asked to confirm or override; in four percent of the cases a designer was asked to provide additional information before a concept was classified; in the remaining eight percent of the cases the designer was asked to identify the concept.
Transformations for imperfectly nested loops
Authors: Induprakas Kodukula, Keshav Pingali
Venue: Proceedings of the 1996 ACM/IEEE conference on Supercomputing (CDROM) (1996)

Loop transformations are critical for compiling high-performance code for modern computers. Existing work has focused on transformations for perfectly nested loops (that is, loops in which all assignment statements are contained within the innermost loop of a loop nest). In practice, most loop nests, such as those in matrix factorization codes, are imperfectly nested. In some programs, imperfectly nested loops can be transformed into perfectly nested loops by loop distribution, but this is not always legal. In this paper, we present an approach to transforming imperfectly nested loops directly. Our approach is an extension of the linear loop transformation framework for perfectly nested loops, and it models permutation, reversal, skewing, scaling, alignment, distribution and jamming. We also give a completion procedure which generates a complete transformation from a partial transformation.
Towards predicting coiled-coil protein interactions
Authors: Mona Singh, Peter S. Kim
Venue: Proceedings of the fifth annual international conference on Computational biology (2001)

Protein-protein interactions play a central role in many cellular functions, and as whole-genome data accumulates, computational methods for predicting these interactions become increasingly important. Computational methods have already proven to be a useful first step for rapid genome-wide identification of putative protein structure and function, but research on the problem of computationally determining biologically relevant partners for given protein sequences is just beginning. In this paper, we approach the problem of predicting protein-protein interactions by focusing on the 2- stranded coiled-coil motif. We introduce a computational method for predicting coiled-coil protein interactions, and give a novel framework that is able to use both genomic sequence data and experimental data in making these predictions. Cross-validation tests show that the method is able to predict many aspects of protein-protein interactions mediated by the coiled-coil motif, and suggest that this methodology can be used as the basis for genome-wide prediction of coiled-coil protein interactions.
Architecture-level power estimation and design experiments
Authors: Rita Yu Chen, Mary Jane Irwin, Raminder S. Bajwa
Venue: ACM Transactions on Design Automation of Electronic Systems (TODAES) (2001)

Architecture-level power estimation has received more attention recently because of its efficiency. This article presents a technique used to do power analysis of processors at the architecture level. It provides cycle-by-cycle power consumption data of the architecture on the basis of the instruction/data flow stream. To characterize the power dissipation of control units, a novel hierarchical method has been developed. Using this technique, a power estimator is implemented for a commercial processor. The accuracy of the estimator is validated by comparing the power values it produces against measurements made by a gate-level power simulator for the same benchmark set. Our estimation approach is shown to provide very efficient and accurate power analysis at the architecture level. The energy models built for first-pass estimation (such as ALU, MAC unit, register files) are reusable for future architecture design modification. In this article, we demonstrate the application of the technique. Furthermore, this technique can evaluate various kinds of software to achieve hardware/software codesign for low power.
An empirical study of list structure in Lisp
Authors: Douglas W. Clark, C. Cordell Green
Venue: Communications of the ACM (1977)

Static measurements of the list structure of five large Lisp programs are reported and analyzed in this paper. These measurements reveal substantial regularity, or predictability, among pointers to atoms and especially among pointers to lists. Pointers to atoms are found to obey, roughly, Zipf's law, which governs word frequencies in natural languages; pointers to lists usually point to a location physically nearby in memory. The use of such regularities in the space-efficient representation of list structure is discussed. Linearization of lists, whereby successive cdrs (or cars) are placed in consecutive memory locations whenever possible, greatly strengthens the observed regularity of list structure. It is shown that under some reasonable assumptions, the entropy or information content of a car-cdr pair in the programs measured is about 10 to 15 bits before linearization, and about 7 to 12 bits after.
The programmer's workbench&mdash;a machine for software development
Authors: Evan L. Ivie
Venue: Communications of the ACM (1977)

On almost all software development projects the assumption is made that the program development function will be done on the same machine on which the eventual system will run. It is only when this production machine is unavailable or when its programming environment is totally inadequate that alternatives are considered. In this paper it is suggested that there are many other situations where it would be advantageous to separate the program development and maintenance function onto a specialized computer which is dedicated to that purpose. Such a computer is here called a Programmer's Workbench. The four basic sections of the paper introduce the subject, outline the general concept, discuss areas where such an approach may prove beneficial, and describe an operational system utilizing this concept.
Flexible network support for mobile hosts
Authors: Xinhua Zhao, Claude Castelluccia, Mary Baker
Venue: Mobile Networks and Applications (2001)

Fueled by the large number of powerful light-weight portable computers, the expanding availability of wireless networks, and the popularity of the Internet, there is an increasing demand to connect portable computers to the Internet at any time and in any place. However, the dynamic nature of a mobile host's connectivity and its use of multiple network interfaces require more flexible network support than has typically been available for stationary workstations. This paper introduces two flow-oriented mechanisms, in the context of Mobile IP [25], to ensure a mobile host's robust and efficient communication with other hosts in a changing environment. One mechanism supports multiple packet delivery methods (such as regular IP or Mobile IP) and adaptively selects the most appropriate one to use according to the characteristics of each traffic flow. The other mechanism enables a mobile host to make use of multiple network interfaces simultaneously and to control the selection of the most desirable network interfaces for both outgoing and incoming packets for different traffic flows. We demonstrate the usefulness of these two network layer mechanisms and describe their implementation and performance.
Optimizing the performance of a relational algebra database interface
Authors: John Miles Smith, Philip Yen-Tang Chang
Venue: Communications of the ACM (1975)

An approach for implementing a &ldquo;smart&rdquo; interface to support a relational view of data is proposed. The basic idea is to employ automatic programming techniques so that the interface analyzes and efficiently refines the high level query specification supplied by the user. A relational algebra interface, called SQUIRAL, which was designed using this approach, is described in detail. SQUIRAL seeks to minimize query response time and space utilization by: (1) performing global query optimization, (2) exploiting disjoint and pipelined concurrency, (3) coordinating sort orders in temporary relations, (4) employing directory analysis, and (5) maintaining locality in page references. Algorithms for implementing the operators of E. F. Codd's relational algebra are presented, and a methodology for composing them to optimize the performance of a particular user query is described.
An enhanced pertubing algorithm for floorplan design using the O-tree representation
Authors: Y. Pang, C.-K. Cheng, T. Yoshimura
Venue: Proceedings of the 2000 international conference on Computer-aided design (2001)

Recently, a deterministic algorithm based on the O-tree representation has been proposed. This method generates excellent layout results on MCNC test cases with O(n3) complexity, where n is the number of blocks. In this paper, we reduce the complexity of the deterministic algorithm to O(n2). Experimental results indicate our algorithm maintains the high quality of the deterministic algorithm at a fraction of the CPU time.
Model-based varying pose face detection and facial feature registration in video images
Authors: Lixin Fan, Kah Kay Sung
Venue: Proceedings of the eighth ACM international conference on Multimedia (2000)

This paper presents an automatic method for simultaneous human face detection and facial feature registration from colour video images. At the first stage, we use a skin colour Gaussian model to identify possible face locations under varying pose. Secondly, we compare image patterns with a varying pose face model in terms of shape and texture differences, using a combined feature-texture similarity measure (FTSM). False detections from the first stage are eliminated by setting an appropriate FTSM threshold. Moreover, one can also register the facial features (eyes, nose and mouth) by aligning a prototype face with the unknown pose faces. Experimental results show that the proposed method can achieve reliable face detection and feature registration under various conditions, including different poses, face appearances, and lighting conditions.
VLSI architecture for lossless compression of medical images using the discrete wavelet transform
Authors: I. Urriza, J. I. Artigas, J. I. García, L. A. Barragán, D. Navarro
Venue: Proceedings of the conference on Design, automation and test in Europe (1998)

This paper presents a VLSI Architecture to implement the forward and inverse 2-D Discrete Wavelet Transform (FDWT/IDWT), to compress medical images for storage and retrieval. Lossless compression is usually required in the medical image field. The word length required for lossless compression makes too expensive the area cost of the architectures that appear in the literature. Thus, there is a clear need for designing an architecture to implement the lossless compression of medical images using DWT. The datapath word-length has been selected to ensure the lossless accuracy criteria leading a high speed implementation with small chip area. The result is a pipelined architecture that supports single chip implementation in VLSI technology. The architecture has been simulated in VHDL and has a hardware utilization efficiency greater than 99%. It can compute the FDWT/IDWT at a rate of 3.5 512'512 12 bit images/s corresponding to a clock speed of 33MHz.
On the Nonexistence of q-ary Linear Codesof Dimension Five
Authors: Tatsuya Maruta
Venue: Designs, Codes and Cryptography (2001)

There do not exist [n,5,d] codes over the Galois field GF (q) attaining the Griesmer bound for d = q^4 - 2q^2 - q + 1, 2q^4 - 2q^3 - q^2 - q + 1 for q \ge 3 and for d = 3q^4 - 4q^3 - q + 1 for q \ge 5.
Compiler-directed selection of dynamic memory layouts
Authors: Mahmut Kandemir, Ismail Kadayif
Venue: Proceedings of the ninth international symposium on Hardware/software codesign (2001)

Compiler technology is becoming a key component in the design of embedded systems, mostly due to increasing participation of software in the design process. Meeting system-level objectives usually requires flexible and retargetable compiler optimizations that can be ported across a wide variety of architectures. In particular, source-level compiler optimizations aiming at increasing locality of data accesses are expected to improve the quality of the generated code. Previous compiler-based approaches to improving locality have mainly focused on determining optimal memory layouts that remain in effect for the entire execution of an application. For large embedded codes, however, such static layouts may be insufficient to obtain acceptable performance. The selection of memory layouts that dynamically change over the course of a program's execution adds another dimension to data locality optimization. This paper presents a technique that can be used to automatically determine which layouts are most beneficial over specific regions of a program while taking into account the added overhead of dynamic (run time) layout changes. The results obtained using two benchmark codes show that such a dynamic approah brings significant benefits over a static state-of-the-art technique.
Automated deductive requirements analysis of critical systems
Authors: Angelo Gargantini, Angelo Morzenti
Venue: ACM Transactions on Software Engineering and Methodology (TOSEM) (2001)

We advocate the need for automated support to System Requirement Analysis in the development of time- and safety-critical computer-based systems. To this end we pursue an approach based on deductive analysis: high-level, real-world entities and notions, such as events, states, finite variability, cause-effect relations, are modeled through the temporal logic TRIO, and the resulting deductive system is implemented by means of the theorem prover PVS. Throughout the paper, the constructs and features of the deductive system are illustrated and validated by applying them to the well-known example of the Generalized Railway Crossing.
A Generalized Mathematical Program with Equilibrium Constraints
Authors: J. V. Outrata
Venue: SIAM Journal on Control and Optimization (2000)

The paper concerns an optimization problem with a generalized equation among the constraints. This model includes standard mathematical programs with parameter-dependent variational inequalities or complementarity problems as side constraints. Using Mordukhovich's generalized differential calculus, we derive necessary optimality conditions and apply them to problems, where the equilibria are governed by implicit complementarity problems and by hemivariational inequalities.