• Documents
  • Authors
  • Tables
  • Log in
  • Sign up
  • MetaCart
  • DMCA
  • Donate

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations

A direct symbolic approach to model checking pushdown systems. In: Infinity. (1997)

by A Finkel, B Willems, P Wolper
Add To MetaCart

Tools

Sorted by:
Results 1 - 10 of 136
Next 10 →

Reachability Analysis of Pushdown Automata: Application to Model-Checking

by Ahmed Bouajjani, Javier Esparza, Oded Maler , 1997
"... We apply the symbolic analysis principle to pushdown systems. We represent (possibly infinite) sets of configurations of such systems by means of finite-state automata. In order to reason in a uniform way about analysis problems involving both existential and universal path quantification (like mode ..."
Abstract - Cited by 376 (38 self) - Add to MetaCart
We apply the symbolic analysis principle to pushdown systems. We represent (possibly infinite) sets of configurations of such systems by means of finite-state automata. In order to reason in a uniform way about analysis problems involving both existential and universal path quantification (like model-checking for branching-time logics), we consider the more general class of alternating pushdown systems and use alternating finite-state automata as a representation structure for their sets of configurations. We give a simple and natural procedure to compute sets of predecessors for this representation structure. We apply this procedure and the automata-theoretic approach to model-checking to define new model-checking algorithms for pushdown systems and both linear and branching-time properties. From these results we derive upper bounds for several model-checking problems, and we also provide matching lower bounds, using reductions based on some techniques introduced by Walukiewicz.
(Show Context)

Citation Context

...izations of global model-checking algorithms for branching-time logics and nite-state systems. An approach similar to ours, based on automata representation of the stack contents, has been adopted in =-=[15]-=-. However, the techniques used there are di erent from ours, and the branching-time properties are expressed there in a logic (CTL ) which is incomparable with the alternation-free modal -calculus. We...

Intrusion Detection via Static Analysis

by David Wagner, Drew Dean , 2001
"... One of the primary challenges in intrusion detection is modelling typical application behavior, so that we can recognize attacks by their atypical effects without raising too many false alarms. We show how static analysis may be used to automatically derive a model of application behavior. The resul ..."
Abstract - Cited by 352 (1 self) - Add to MetaCart
One of the primary challenges in intrusion detection is modelling typical application behavior, so that we can recognize attacks by their atypical effects without raising too many false alarms. We show how static analysis may be used to automatically derive a model of application behavior. The result is a host-based intrusion detection system with three advantages: a high degree of automation, protection against a broad class of attacks based on corrupted code, and the elimination of false alarms. We report on our experience with a prototype implementation of this technique. 1. Introduction Computer security has undergone a major renaissance in the last five years. Beginning with Sun's introduction of the Java language and its support of mobile code in 1995, programming languages have been a major focus of security research. Many papers have been published applying programming language theory to protection problems [25, 24], especially information flow [17]. Security, however, is a ma...
(Show Context)

Citation Context

...that our callgraph model is a finite automaton that appears nearly ideal for a model checker. Our stack model will be more challenging to model check, but there has been theoretical work in this area =-=[5, 13, 32, 36, 4]-=-. 8 Conclusions We have successfully applied static program analysis to intrusion detection. Our system scales to handle real world programs. Also, our approach is automatic: the programmer or system ...

Bebop: A Symbolic Model Checker for Boolean Programs

by Thomas Ball, Sriram K. Rajamani , 2000
"... We present the design, implementation and empirical evaluation of Bebop -- a symbolic model checker for boolean programs. Bebop represents control flow explicitly, and sets of states implicitly using BDDs. By harnessing the inherent modularity in procedural abstraction and exploiting the locality of ..."
Abstract - Cited by 255 (24 self) - Add to MetaCart
We present the design, implementation and empirical evaluation of Bebop -- a symbolic model checker for boolean programs. Bebop represents control flow explicitly, and sets of states implicitly using BDDs. By harnessing the inherent modularity in procedural abstraction and exploiting the locality of variable scoping, Bebop is able to model check boolean programs with several thousand lines of code, hundreds of procedures, and several thousand variables in a few minutes.
(Show Context)

Citation Context

...ograms implicitly have an unbounded stack, which makes them identical in expressive power to pushdown automata. The model checking problem for pushdown automata has been studied before [SB92] [BEM97] =-=[FWW97]-=-. Model checkers for push down automata have also been written before [EHRS00]. However, unlike boolean programs, these approaches abstract away data, and concentrate only on control. As a result spur...

Boolean and Cartesian Abstraction for Model Checking C Programs

by Thomas Ball, Andreas Podelski, Sriram K. Rajamani , 2001
"... The problem of model checking a specification in form of a C program with recursive procedures and many thousands of lines of code has not been addressed before. In this paper, we show how we attack this problem using an abstraction that is formalized with the Cartesian abstraction. It is implemente ..."
Abstract - Cited by 194 (12 self) - Add to MetaCart
The problem of model checking a specification in form of a C program with recursive procedures and many thousands of lines of code has not been addressed before. In this paper, we show how we attack this problem using an abstraction that is formalized with the Cartesian abstraction. It is implemented through a source-to-source transformation into a `Boolean' C program; we give an algorithm to compute the transformation with a cost that is exponential in its theoretical worst-case complexity but feasible in practice.

Efficient algorithms for model checking pushdown systems

by Javier Esparza, David Hansel, Peter Rossmanith, Stefan Schwoon - Proc. of CAV'2000 , 2000
"... We study model checking problems for pushdown systems and linear time logics. We show that the global model checking problem (computing the set of configurations, reachable or not, that violate the formula) can be solved in O(gP 3 ..."
Abstract - Cited by 185 (27 self) - Add to MetaCart
We study model checking problems for pushdown systems and linear time logics. We show that the global model checking problem (computing the set of configurations, reachable or not, that violate the formula) can be solved in O(gP 3

Regular Model Checking

by Ahmed Bouajjani, Bengt Jonsson, Marcus Nilsson, Tayssir Touili , 2000
"... . We present regular model checking, a framework for algorithmic verification of infinite-state systems with, e.g., queues, stacks, integers, or a parameterized linear topology. States are represented by strings over a finite alphabet and the transition relation by a regular length-preserving re ..."
Abstract - Cited by 164 (25 self) - Add to MetaCart
. We present regular model checking, a framework for algorithmic verification of infinite-state systems with, e.g., queues, stacks, integers, or a parameterized linear topology. States are represented by strings over a finite alphabet and the transition relation by a regular length-preserving relation on strings. Major problems in the verification of parameterized and infinite-state systems are to compute the set of states that are reachable from some set of initial states, and to compute the transitive closure of the transition relation. We present two complementary techniques for these problems. One is a direct automatatheoretic construction, and the other is based on widening. Both techniques are incomplete in general, but we give sufficient conditions under which they work. We also present a method for verifying !-regular properties of parameterized systems, by computation of the transitive closure of a transition relation. 1 Introduction This paper presents regular ...

Context-bounded model checking of concurrent software

by Shaz Qadeer Jakob Rehof - In TACAS , 2005
"... ..."
Abstract - Cited by 152 (9 self) - Add to MetaCart
Abstract not found
(Show Context)

Citation Context

... representation of an unbounded set of stack configurations by appealing to the result that the reachable configurations (sometimes called the pushdown store language) of a pushdown system is regular =-=[3, 12, 27]-=- and consequently representable by a finite automaton. We use this fact to design an algorithm for context-bounded model checking for a concurrent boolean proContext-Bounded Model Checking of Concurr...

Analysis of Recursive State Machines

by Rajeev Alur, Kousha Etessami, Mihalis Yannakakis - In Proceedings of CAV 2001 , 2001
"... . Recursive state machines (RSMs) enhance the power of ordinary state machines by allowing vertices to correspond either to ordinary states or to potentially recursive invocations of other state machines. RSMs can model the control flow in sequential imperative programs containing recursive proc ..."
Abstract - Cited by 140 (29 self) - Add to MetaCart
. Recursive state machines (RSMs) enhance the power of ordinary state machines by allowing vertices to correspond either to ordinary states or to potentially recursive invocations of other state machines. RSMs can model the control flow in sequential imperative programs containing recursive procedure calls. They can be viewed as a visual notation extending Statecharts-like hierarchical state machines, where concurrency is disallowed but recursion is allowed. They are also related to various models of pushdown systems studied in the verification and program analysis communities. After introducing RSMs, we focus on whether state-space analysis can be performed efficiently for RSMs. We consider the two central problems for algorithmic analysis and model checking, namely, reachability (is a target state reachable from initial states) and cycle detection (is there a reachable cycle containing an accepting state). We show that both these problems can be solved in time O(n` 2 ) and space O(n`), where n is the size of the recursive machine and ` is the maximum, over all component state machines, of the minimum of the number of entries and the number of exits of each component. We also study the precise relationship between RSMs and closely related models. 1
(Show Context)

Citation Context

...cal machines can not be applied to RSMs. RSMs are closely related to pushdown systems. Model checking of pushdown systems has been studied extensively for both linear- and branching-time requirements =-=[6, 7, 9, 8]-=-. These algorithms are based on an automata-theoretic approach. Each configuration is viewed as a string over stack symbols, and the reachable configurations are shown to be a regular set that can be ...

WYSINWYX: What You See Is Not What You eXecute

by Gogul Balakrishnan, Thomas Reps , 2009
"... Over the last seven years, we have developed static-analysis methods to recover a good approximation to the variables and dynamically-allocated memory objects of a stripped executable, and to track the flow of values through them. The paper presents the algorithms that we developed, explains how the ..."
Abstract - Cited by 91 (12 self) - Add to MetaCart
Over the last seven years, we have developed static-analysis methods to recover a good approximation to the variables and dynamically-allocated memory objects of a stripped executable, and to track the flow of values through them. The paper presents the algorithms that we developed, explains how they are used to recover intermediate representations (IRs) from executables that are similar to the IRs that would be available if one started from source code, and describes their application in the context of program understanding and automated bug hunting. Unlike algorithms for analyzing executables that existed prior to our work, the ones presented in this paper provide useful information about memory accesses, even in the absence of debugging information. The ideas described in the paper are incorporated in a tool for analyzing Intel x86 executables, called CodeSurfer/x86. CodeSurfer/x86 builds a system dependence graph for the program, and provides a GUI for exploring the graph by (i) navigating its edges, and (ii) invoking operations, such as forward slicing, backward slicing, and chopping, to discover how parts of the program can impact other parts. To assess the usefulness of the IRs recovered by CodeSurfer/x86 in the context of automated bug hunting, we built a tool on top of CodeSurfer/x86, called Device-Driver Analyzer for x86
(Show Context)

Citation Context

...ed to build a weighted pushdown system (WPDS) [7,35,36,31,30] that models possible program behaviors. Weighted pushdown systems generalize a model-checking technology known as pushdown systems (PDSs) =-=[6,19]-=-, which have been used for software model checking in the Moped [39,38] and MOPS [9] systems. Compared to ordinary (unweighted) PDSs, WPDSs are capable of representing more powerful kinds of abstracti...

Model-Checking LTL with Regular Valuations for Pushdown Systems

by Javier Esparza, Antonin Kucera, Stefan Schwoon , 2002
"... Recent works have proposed... In this paper we consider LTL with regular valuations: the set of configurations satisfying an atomic proposition can be an arbitrary regular language. The model-checking problem is solved via two different techniques, with an eye on efficiency. The resulting algorithms ..."
Abstract - Cited by 86 (8 self) - Add to MetaCart
Recent works have proposed... In this paper we consider LTL with regular valuations: the set of configurations satisfying an atomic proposition can be an arbitrary regular language. The model-checking problem is solved via two different techniques, with an eye on efficiency. The resulting algorithms are polynomial in certain measures of the...
Powered by: Apache Solr
  • About CiteSeerX
  • Submit and Index Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2019 The Pennsylvania State University