TL;DR: An effect-based static analysis technique is proposed on communication for asynchronous concurrent programming languages that gives an upper-bound of the number of enqueued messages and receivers for each communication channel, which can be used for compiletime optimizations for implementation of message passing.
Abstract: We propose an effect-based static analysis technique on communication for asynchronous concurrent programming languages. Our analysis gives an upper-bound of the number of enqueued messages and receivers for each communication channel, which can be used for compiletime optimizations for implementation of message passing. The main targets of our analysis are concurrent object-oriented languages, for which no formal static analysis method has been established.
TL;DR: In this paper, a simplified method for estimating the natural frequency of vibration is developed, based on the Rayleigh method applied to a grillage model of the bridge, which is quick to apply and accurate to within 10%.
TL;DR: This article shows that the nature of the translation from source code to a modeling formalism is of greater practical importance than the underlying formalism.
Abstract: The problem of analyzing concurrent systems has been investigated by many researchers, and several solutions have been proposed. Among the proposed techniques, reachability analysis—systematic enumeration of reachable states in a finite-state model—is attractive because it is conceptually simple and relatively straightforward to automate and can be used in conjunction with model-checking procedures to check for application-specific as well as general properties. This article shows that the nature of the translation from source code to a modeling formalism is of greater practical importance than the underlying formalism. Features identified as pragmatically important are the representation of internal choice, selection of a dynamic or static matching rule, and the ease of applying reductions. Since combinatorial explosion is the primary impediment to application of reachability analysis, a particular concern in choosing a model is facilitating divide-and-conquer analysis of large programs. Recently, much interest in finite-state verification systems has centered on algebraic theories of concurrency. Algebraic structure can be used to decompose reachability analysis based on a flowgraph model. The semantic equivalence of graph and Petri net-based models suggests that one ought to be able to apply a similar strategy for decomposing Petri nets. We describe how category-theoretic treatments of Petri nets provide a basis for decomposition of Petri net reachability analysis.
TL;DR: A core semantics parameterised by a pre-interpretation of the language underlying the program is defined, given by an extended Herbrand interpretation, capturing the correct answers of a program.
Abstract: The declarative semantics of definite programs is the basis of an elegant and practical framework for static analysis of definite logic programs. We define a core semantics parameterised by a pre-interpretation of the language underlying the program. The concrete semantics is given by an extended Herbrand interpretation, capturing the correct answers of a program. The semantics is computed as the least fixed point of an immediate consequences operator. An abstract semantics is specified simply by giving, for each constant and function in the program, a denotation in an abstract domain of interpretation. No abstract operations such as abstract unification need to be defined. The directness and simplicity of this approach is then illustrated by specifying and implementing a number of abstract interpretations. These include various mode analyses, analyses on the structure of lists and the length of lists, and simple and polymorphic types. The implementations used for the experiments are based on abstract compilation and existing bottom-up analysis tools. Even without any domain-specific optimisations, the results indicate that the approach is practical for many useful domains.
TL;DR: This research developed a method for backcalculating pavement layer moduli from FWD data in real time by training an artificial neural network to approximate the backcalculation function using large volumes of synthetic test data generated by static and dynamic pavement response models.
Abstract: The Falling Weight Deflectometer (FWD) test is one of the most widely used tests for assessing the structural integrity of pavement systems in a nondestructive manner. A major limitation of existing techniques for backcalculating pavement layer moduli from FWD results is that they are computationally inefficient. This not only makes them tedious to use, it also constrains them to employ simplified static models of the FWD test that can be computed relatively quickly. Studies have shown that significant errors in the backcalculated pavement moduli can accrue from using a static model of what is inherently a dynamic test.
The goal of this research was to develop a method for backcalculating pavement layer moduli from FWD data in real time. This was accomplished by training an artificial neural network to approximate the backcalculation function using large volumes of synthetic test data generated by static and dynamic pavement response models. One neural network was trained using synthetic test data generated by the same static, layered-elastic model used in the conventional backcalculation program WESDEF. That neural network was shown to be just as accurate but 2500 times faster. The same neural network was subsequently retrained using data generated by a elastodynamic model of the FWD test. The dynamic analysis provides a much better approximation of the actual test conditions and avoids problems inherent in the static analysis. Based on the amounts of time needed to create the static and dynamic training sets, a conventional program would likely run 20 times slower if it employed the dynamic model. The processing time of the neural network, on the other hand, is unchanged because it was simply retrained using different data.
These artificial neural networks provide the real-time backcalculation capabilities needed for more thorough, more frequent, and more cost-effective pavement evaluations. Furthermore, they permit the use of more-realistic models, which can increase the accuracy of the backcalculated moduli.
TL;DR: In this article, a method for improving a circuit having a logically false path through static analysis of a software model is presented. But the method is limited to the case where the model is static.
Abstract: In a method for improving a circuit having a logically false path through static analysis of a software model, a computer receives information describing the false path, determines a true path alternate to the false path, and analyses the circuit model with respect to the true path.
TL;DR: This paper presents the basic notions of laziness into type inference in the context of a higher-order strictness analysis of list-processing functions and presents a general framework for program analysis based on these ideas.
Abstract: Approaches to static analysis based on nonstandard type systems have received considerable interest recently. Most work has concentrated on the relationship between such analyses and abstract interpretation. In this paper, we focus on the problem of producing efficient algorithms from such type-based analyses. The key idea is the introduction of laziness into type inference. We present the basic notions in the context of a higher-order strictness analysis of list-processing functions. We also present a general framework for program analysis based on these ideas. We conclude with some experimental results.
TL;DR: In this article, a finite element modeling technique was developed to accurately predict both the static and dynamic response of a structure containing embedded piezoelectric actuators, which can be used with shell or solid elements in any static analysis, time-domain or frequency-domain dynamic analysis.
Abstract: A finite element modeling technique has been developed to accurately predict both the static and dynamic response of a structure containing embedded piezoelectric actuators. This process utilizes a commercially available and benchmarked finite element program and can be used with shell or solid elements in any static analysis, time-domain or frequency-domain dynamic analysis. It is possible to apply the piezoelectric loads while simultaneously applying other mechanical or thermal loads even though the induced strain of the piezoelectric actuators is modeled using thermal expansion. The technique uses superelements to apply the thermal loads at any frequency and magnitude and to incorporate a fine mesh near the actuator even if a course mesh is used over the remaining portions of the structure. The technique's generic and modular nature allows a complex actuator superelement to be used multiple times in multiple smart structure models. Experiments conducted on composite coupons with embedded actuators validate the current modeling technique and demonstrate the method's successful prediction of the dynamic response of the specimens. This process is one of several smart structure modeling techniques being developed under the Synthesis and Processing of Intelligent Cost Effective Structures program sponsored by the Advanced Research Projects Agency.
TL;DR: In this paper, the static VAr compensator (SVC) has shown great potential among all the voltage stability enhancement measures available, and studies have shown that an SVC, which is properly placed, can also improve the transmission capacity.
Abstract: The static VAr compensator (SVC) has shown great potential among all the voltage stability enhancement measures available. Studies have shown that an SVC, which is properly placed, can also improve the transmission capacity. In this paper, the authors have developed different SVC models for power system dynamics (short-term and long-term) as well as static analysis. With these SVC models imbedded in the dispatcher training simulator (DTS) and associated transient stability simulation, the results obtained by analytical methods, such as the optimal location for installing an SVC as well as the control parameter settings, can be tested, evaluated and tuned under 'real-time' conditions. This kind of implementation could provide valuable assistance for power system planning and operation. The authors have conducted various tests under different operating conditions and using different SVC models to evaluate the influence of major parameter settings. >
TL;DR: A new method for calculating transitive dependencies in the presence of recursion is described, which requires neither the (explicit) calculation of the GMOD and GREF sets nor the construction of a linkage grammar and the corresponding subordinate characteristic graphs of the linkage grammar's nonterminals.
Abstract: Program slicing can be used to aid in a variety of software maintenance activities including code understanding, code testing, debugging, and program re-engineering. Program slicing (as well as other program analysis functions including ripple analysis) can be efficiently performed on an internal program representation called a system dependence graph (SDG). This paper will describe a new method for calculating transitive dependencies in the presence of recursion. This method requires neither the (explicit) calculation of the GMOD and GREF sets nor the construction of a linkage grammar and the corresponding subordinate characteristic graphs of the linkage grammar's nonterminals. Additionally, a beneficial side effect of this method is that it provides us with a new method for performing interprocedural, flow-sensitive data flow analysis.
Finally, this paper will illustrate the versatility of the SDG as an internal program representation by briefly describing a tool that we have developed that permits slicing, dicing, ripple analysis, and other static analysis functions to be performed on programs written in a subset of ANSI C (e.g., C without gotos and pointers).
TL;DR: In this paper, the displacement-dependent loads have been included in static analysis with inertia relief, which allows for a free-free static analysis by balancing the applied load with inertia loads generated by the applied loads.
Abstract: Solving for the displacements of free-free coupled systems acted upon by static loads is commonly performed throughout the aerospace industry. Many times, these problems are solved using static analysis with inertia relief. This solution technique allows for a free-free static analysis by balancing the applied loads with inertia loads generated by the applied loads. For some engineering applications, the displacements of the free-free coupled system induce additional static loads. Hence, the applied loads are equal to the original loads plus displacement-dependent loads. Solving for the final displacements of such systems is commonly performed using iterative solution techniques. Unfortunately, these techniques can be time-consuming and labor-intensive. Since the coupled system equations for free-free systems with displacement-dependent loads can be written in closed-form, it is advantageous to solve for the displacements in this manner. Implementing closed-form equations in static analysis with inertia relief is analogous to implementing transfer functions in dynamic analysis. Using a MSC/NASTRAN DMAP Alter, displacement-dependent loads have been included in static analysis with inertia relief. Such an Alter has been used successfully to solve efficiently a common aerospace problem typically solved using an iterative technique.
TL;DR: In this article, the displacement-based finite element method was applied to the static structural analysis of complex catenary mooring systems, and the resulting dynamic equations of motion were solved by using Newmark's integration formulas.
TL;DR: In this paper, the authors present a DMAP Alter for static analysis of a system model with displacement-dependent loads, which can be used to solve a class of aerospace engineering problems.
Abstract: SummaryA MSC/NASTRAN Solution 91 DMAP Alter has been written for performing closed-form static analyses with inertiarelief and displacement-dependent loads. Through the combined use of DMAP and user-defined sets, static equationsfor a system model with displacement-dependent loads are generated in closed-form via linear displacementrelationships. Special considerations are made for inertia relief effects due to the displacement-dependent loads.The Alter was written to replace iterative solution techniques typically used to solve a class of aerospace engineeringproblems. It has been shown via a numerical example that the new Alter allows for accurate solutions without theinefficiencies and added expenses typically associated with iterative solution methodologies. [1] [21 [3][4] ReferencesMSC/NASTRAN Users' Manual, Version 67, Vol. II, The MacNeal-Schwendler Corporation, Los Angeles,CA, 1991.Magnus, RJ. el. al.: "Quasi-steady Aerodynamic Normal Forces on Bent Atlas Launch Vehicles," ReportNo. GDSS-TP-ACI-90-OO1,General Dynamics Space Systems Division, 1990.Craig, R.R., Jr. and Chang, C-J.:"Onthe Use of Attachment Modes in Substructure Coupling for DynamicAnalysis," AIAA/ASME 18th Structures, Structural Dynamics, and Materials Conference, San Diego, CA,1977, Paper No. 77--405.Craig, R.R., Jr. and Bampton, M.C.C.: "Coupling of Substructures for Dynamic Analysis," A/AA Journal,Vol. 6, No. 7, July 1968, pp. 1313-1319.f, f_ f3= c(u,- u2) t,
TL;DR: Methods are given for statically analyzing sets of database production rules to determine if the rules are guaranteed to terminate, guaranteed to produce a unique final database state, and guaranteed toproduce a unique stream of observable actions.
Abstract: Methods are given for statically analyzing sets of database production rules to determine if the rules are (1) guaranteed to terminate, (2) guaranteed to produce a unique final database state, and (3) guaranteed to produce a unique stream of observable actions. If the analysis determines that one of these properties is not guaranteed, it isolates the rules responsible for the problem and determines criteria that, if satisfied, guarantee the property. The analysis methods are presented in the context of the Starburst Rule System.
TL;DR: Two promising optimization techniques for object-oriented languages are type feedback (profile-based receiver class prediction) and concrete type inference (static analysis) and this work directly compares them.
Abstract: Two promising optimization techniques for object-oriented languages are type feedback (profile-based receiver class prediction) and concrete type inference (static analysis). We directly compare th...
TL;DR: In this article, the static analysis of programs in the functional programming language Miranda ∗ is described based on two graph models: a control-flow graph model of Miranda definitions, and a model with four classes of callgraphs.
Abstract: In this paper, the static analysis of programs in the functional programming language Miranda ∗ is described based on two graph models. A new control-flow graph model of Miranda definitions is presented, and a model with four classes of callgraphs. Standard software metrics are applicable to these models. A Miranda front end for Prometrix † , a tool for the automated analysis of flowgraphs and callgraphs, has been developed. This front end produces the flowgraph and callgraph representations of Miranda programs. Some features of the metric analyser are illustrated with an example program. The tool provides a promising access to standard metrics on functional programs.
TL;DR: In this article, a series of drop tests were conducted on a small scale SWATH characteristic model to get a better understanding of the physical aspects of ship slamming, and to generate slamming pressure data pertinent to twin hull vessels.
Abstract: To get a better understanding of the physical aspects of ship slamming, and to generate slamming pressure data pertinent to twin- hull vessels, a series of drop tests were conducted on a small scale SWATH characteristic model. The model was made from mild steel material and represents specific features of the SWATH type ship under deck configuration. Detailed information about pressures and strain time histories is presented at various positions in the bottom panel of the model. The dynamic strain measurements are compared with results obtained from numerical simulations. The investigation has provided useful insight into the slamming behaviour of panels at varying angles of impact. The pressure and strain measurements indicate strongly the dynamic behaviour of the structural panel under wedge impact and the static analysis in these circumstances is no longer adequate. The correlations of slamming pressures and strains revealed that the air cushion effect is of particular importance, not only on peak pressure, but also on pressure rise-time and duration. At flat impact the local structural response is quasi-static in essence. Due to the structural characteristics of the twin-hull vessel the pressure coefficients measured from drop tests are significantly smaller than the 2-D wedge test and other drop test from various earlier sources. The practical aspects of slamming pressure for design are addressed in terms of the experimental data.
TL;DR: This dissertation describes methods for automatically analyzing formal, state-based requirements specifications for completeness and consistency and uses a low-level functional formalism, simplifying the analysis process.
Abstract: Software requirements errors have been found to account for a majority of production software failures and have been implicated in a large number of accidents. Errors introduced during the requirements phase are also more costly to correct than errors introduced later in the life cycle. Therefore, techniques to provide adequate requirements specifications and to find errors early are of great importance.
This dissertation describes methods for automatically analyzing formal, state-based requirements specifications for completeness and consistency. The approach uses a low-level functional formalism, simplifying the analysis process. The method scales up to large systems by decomposing the specification into smaller, analyzable parts and then using functional composition rules to ensure that verified properties hold for the entire specification. State space explosion problems are handled by applying the analysis at a high level of abstraction; i.e, instead of generating a reachability graph for analysis, the analysis is performed directly on the model. The analysis algorithms and tools have been validated on TCAS II, a complex, airborne, collision-avoidance system required on all commercial aircraft with more than 30 passengers that fly in U.S. airspace.
TL;DR: The main difficulty in formalization of a static analysis framework for CC programs is probably related to the correct approximation of the entailment relation between constraints This approximation is needed for the abstract evaluation of the ask guards and directly influences the overall precision of the analysis.
Abstract: The main difficulty in the formalization of a static analysis framework for CC programs is probably related to the correct approximation of the entailment relation between constraints This approximation is needed for the abstract evaluation of the ask guards and directly influences the overall precision of the analysis In this paper we provide a solution to this problem by stating reasonable correctness conditions relating the abstract and the concrete domains of computation The solution is domain independent in the sense that it can be applied to the class of downward closed observables Properties falling in this class have already been studied in the context of the analysis of sequential (constraint) logic programs As an example, we consider an abstract domain designed for the analysis of freeness in CLP programs and we show how it can be usefully applied in the CC context to discover undesired data dependencies between concurrent processes
TL;DR: A translation methodology for transforming a high level algorithmic specification written in ALPHA to an imperative data parallel language is discussed and how it is adapted for doing static analysis and transformation is explained.
Abstract: We discuss a translation methodology for transforming a high level algorithmic specification written in ALPHA to an imperative data parallel language. We informally introduce the ALPHA language with the aid of an example and explain how it is adapted for doing static analysis and transformation. An ALPHA program can be naively compiled (P. Quinton et al., 1985) using applicative caching. Our compilation method makes incremental transformations on the abstract syntax tree of can ALPHA program in order to make efficiency and performance improvements over the naive code and optimize it for a given architecture. The compilation steps described include scheduling, alignment, partitioning, allocation, loop nest generation, and code generation and they are illustrated with an example. >
TL;DR: This work puts forward a methodology for defining a static analysis by successive refinements of the natural semantics of the language and provides a language for defining properties in terms of recurrence equations on paths.
Abstract: We advocate the use of operational semantics as a basis for specifying program analyses for functional languages. We put forward a methodology for defining a static analysis by successive refinements of the natural semantics of the language. We use paths as the abstract representation of proof trees and we provide a language for defining properties in terms of recurrence equations on paths. We show the specification of several standard properties on paths (neededness, absence, uniqueness, \ldots) and the mechanical derivation of the corresponding analyses
TL;DR: A three-phased approach to the analysis of routes is described: static analysis to establish potential routes, detailed simulation to capture dynamic behaviors in the system, and human-in-the-loop evaluation of the most promising routes.
Abstract: A rapid-planning system for military aircraft strikes is under design. It is intended to be capable of creating aircraft routes through enemy and friendly space with minimum loss of aircraft and maximal damage to specified target areas. The system must support joint strike planning, where the effects of several simultaneous strikes by differing groups of aircraft are captured. This paper describes a three-phased approach to the analysis of routes: static analysis to establish potential routes, detailed simulation to capture dynamic behaviors in the system, and human-in-the-loop evaluation of the most promising routes. A parallel, discrete-event simulation technique is proposed to support the detailed simulation. Optimizations based on application characteristics are described. A technique to combine discrete-event and time-stepped models is proposed. Performance results of the current simulation engine are given.
TL;DR: In this paper, the static response and reliability of uncertain structures with vector-valued and matrix-valued functions was studied. But the static responses were not analyzed for the case of the random variables and system derivatives, and generalized mathematical formulae for probabilistic perturbation were obtained.
Abstract: This paper studies the static response and reliability of uncertain structures with vector-valued and matrix-valued functions. The finite element analysis method of uncertain structures is based on matrix calculus, Kronecker algebra and perturbation theory. Random variables and system derivatives are conveniently arranged into 2D matrices and generalized mathematical formulae for probabilistic perturbation are obtained.
TL;DR: In this article, an in-depth examination of the analogy between the behavior of the framework arrangement and that of the wall or slab is carried out, and the similarities and differences in the procedure compared with the finite element method are shown.
TL;DR: This paper presents three techniques to counter the effects of infeasible path consideration and aliasing, and presents empirical results that demonstrate the improvements in accuracy and the reduction in the search space that result from application of these techniques.
Abstract: This paper presents several techniques for improving the accuracy of static analysis of concurrent Ada programs. We determine the cost of building the program representations used to perform the analysis and examine the complexity of performing analysis on those representations. Inaccuracies in the static analysis are reflected in spurious results, which can be generated if the analysis considers paths through the program that are infeasible, or if the effects of aliasing lead to consideration of task communications that can not actually occur. We present three techniques to counter the effects of infeasible path consideration and aliasing and determine the cost of using these techniques. We present empirical results that demonstrate the improvements in accuracy and, in some cases, the reduction in the search space that result from application of our techniques.
TL;DR: In this paper, the authors optimize the constitution and learning of a neural net for performing function approximation by monitoring the learning of the network in the step 2 of dynamic analysis, the step 4 of static analysis is performed by the step 3 of user interruption and the network is optimized by the judgment of a user based on it.
Abstract: PURPOSE:To optimize the constitution and learning of a neural net for performing function approximation. CONSTITUTION:The step 1 of the learning of a network is monitored in the step 2 of dynamic analysis, the step 4 of static analysis is performed by the step 3 of user interruption and the network is optimized by the step 5 of the judgment of a user based on it.
TL;DR: In this article, the Detect and Reproduce method is proposed to guarantee the reproducible behaviors of a target program and to alleviate probe effects by reducing both the number of the probes to be inserted into a program and the amount of information gathered by those probes.
Abstract: Guaranteeing reproducibility and minimizing probe effects are major issues in the parallel program debugging. The paper suggests a new debugging method, called the Detect and Reproduce method, for message-based parallel programs. The proposed method is designed to guarantee the reproducible behaviors of a target program and to alleviate probe effects by reducing both the number of the probes to be inserted into a program and the amount of information gathered by those probes. The proposed method achieves such effects by employing a static analysis technique to detect nondeterminacy. By detecting nondeterminacy before running the program, only a small number of probes are required to assure reproducibility. To analyze message-based programs statically, an MHB (minimal happened before) model is designed to catch the synchronization structures and algorithms have been developed to locate nondeterminacy based on the MHB model. Utilizing the analysis results, probes are inserted only into the places where nondeterminacy is likely to take place.
TL;DR: This work traces a single processor system executing an N-processor workload, then performs static analysis on the trace and produces individual process characterizations that can be used to build input workloads for models of multiple processor systems.
Abstract: We present a method for developing a multiple processor workload characterization based on actual system level traces of user and kernel accesses. We trace a single processor system executing an N-processor workload. We then perform static analysis on the trace and produce individual process characterizations. These characterizations can be used to build input workloads for models of multiple processor systems. This provides a method for using real workload traces to drive multiple processor simulations without requiring that a similarly configured machine exist. Additionally, a wealth of static information can be obtained from the traces. As an example, we have traced and analyzed the popular commercial benchmark, TPC-B. We present results from the analysis.