Results 1  10
of
25
Verification on Infinite Structures
, 2000
"... In this chapter, we present a hierarchy of infinitestate systems based on the primitive operations of sequential and parallel composition; the hierarchy includes a variety of commonlystudied classes of systems such as contextfree and pushdown automata, and Petri net processes. We then examine the ..."
Abstract

Cited by 91 (2 self)
 Add to MetaCart
In this chapter, we present a hierarchy of infinitestate systems based on the primitive operations of sequential and parallel composition; the hierarchy includes a variety of commonlystudied classes of systems such as contextfree and pushdown automata, and Petri net processes. We then examine the equivalence and regularity checking problems for these classes, with special emphasis on bisimulation equivalence, stressing the structural techniques which have been devised for solving these problems. Finally, we explore the model checking problem over these classes with respect to various linear and branchingtime temporal logics.
Precise Interprocedural Analysis through Linear Algebra
, 2004
"... We apply linear algebra techniques to precise interprocedural dataflow analysis. Specifically, we describe analyses that determine for each program point identities that are valid among the program variables whenever control reaches that program point. Our analyses fully interpret assignment stateme ..."
Abstract

Cited by 82 (12 self)
 Add to MetaCart
We apply linear algebra techniques to precise interprocedural dataflow analysis. Specifically, we describe analyses that determine for each program point identities that are valid among the program variables whenever control reaches that program point. Our analyses fully interpret assignment statements with affine expressions on the right hand side while considering other assignments as nondeterministic and ignoring conditions at branches. Under this abstraction, the analysis computes the set of all affine relations and, more generally, all polynomial relations of bounded degree precisely. The running time of our algorithms is linear in the program size and polynomial in the number of occurring variables. We also show how to deal with affine preconditions and local variables and indicate how to handle parameters and return values of procedures.
Regular Symbolic Analysis of Dynamic Networks of Pushdown Processes
, 2005
"... Abstract. We introduce two abstract models for multithreaded programs based on dynamic networks of pushdown systems. We address the problem of symbolic reachability analysis for these models. More precisely, we consider the problem of computing effective representations of their reachability sets us ..."
Abstract

Cited by 58 (20 self)
 Add to MetaCart
(Show Context)
Abstract. We introduce two abstract models for multithreaded programs based on dynamic networks of pushdown systems. We address the problem of symbolic reachability analysis for these models. More precisely, we consider the problem of computing effective representations of their reachability sets using finitestate automata. We show that, while forward reachability sets are not regular in general, backward reachability sets starting from regular sets of configurations are always regular. We provide algorithms for computing backward reachability sets using word/tree automata, and show how these algorithms can be applied for flow analysis of multithreaded programs. 1
Model checking multithreaded programs with asynchronous atomic methods
 In CAV 06, LNCS 4314
, 2006
"... ..."
(Show Context)
ContextSensitive Slicing of Concurrent Programs
, 2003
"... Program slicing is a technique to identify statements that may influence the computations at other statements. Precise slicing has been shown to be undecidable for concurrent programs. This work presents the first contextsensitive approach to slice concurrent programs accurately. It extends the wel ..."
Abstract

Cited by 31 (2 self)
 Add to MetaCart
Program slicing is a technique to identify statements that may influence the computations at other statements. Precise slicing has been shown to be undecidable for concurrent programs. This work presents the first contextsensitive approach to slice concurrent programs accurately. It extends the well known structures of the control flow graph and the (interprocedural) program dependence graph for concurrent programs with interference. This new technique does not require serialization or inlining.
On Optimal Slicing of Parallel Programs
 STOC'01
, 2001
"... Optimal program slicing determines for a statement S in a program pi whether or not S affects a specified set of statements, given that all conditionals in pi are interpreted as nondeterministic choices. Only recently ..."
Abstract

Cited by 22 (6 self)
 Add to MetaCart
Optimal program slicing determines for a statement S in a program pi whether or not S affects a specified set of statements, given that all conditionals in pi are interpreted as nondeterministic choices. Only recently
Grammars as processes
 In Formal and Natural Computing, volume 2300 of LNCS
, 2002
"... ETAPS conference and he was taking part in a meeting. The next day I was giving a talk with the title “Grammars as Processes”, and Grzegorz, who had seen it announced in the program, asked me about it. We had little time, and so I could barely sketch the contents. I think Grzegorz would have liked t ..."
Abstract

Cited by 13 (0 self)
 Add to MetaCart
(Show Context)
ETAPS conference and he was taking part in a meeting. The next day I was giving a talk with the title “Grammars as Processes”, and Grzegorz, who had seen it announced in the program, asked me about it. We had little time, and so I could barely sketch the contents. I think Grzegorz would have liked the talk, because it pointed out an interesting connection between two of his oldest loves, formal languages and concurrency theory, and showed how a model of computation derived from this connection has a natural application in the area of program analysis. He would have also liked to see how an abstract result obtained by Büchi in 1964 on regular canonical systems was the basis to new algorithms for the analysis of software. This paper is a written version of the talk, and it also surveys the new results
Reachability analysis of synchronized PA systems
 In Proceedings of Infinity 2004
, 2004
"... Abstract. We present a generic approach for the analysis of concurrent programs with (unbounded) dynamic creation of threads and recursive procedure calls. We define a model for such programs based on a set of term rewrite rules where terms represent control configurations. The reachability problem ..."
Abstract

Cited by 12 (5 self)
 Add to MetaCart
(Show Context)
Abstract. We present a generic approach for the analysis of concurrent programs with (unbounded) dynamic creation of threads and recursive procedure calls. We define a model for such programs based on a set of term rewrite rules where terms represent control configurations. The reachability problem for this model is undecidable. Therefore, we propose a method for analyzing such models based on computing abstractions of their sets of computation paths. Our approach allows to compute such abstractions as least solutions of a system of (path language) constraints. More precisely, given a program and two regular sets of configurations (process terms) T and T , we provide (1) a construction of a system of constraints which characterizes precisely the set of computation paths leading from T to T , and (2) a generic framework, based on abstract interpretation, allowing to solve this system in various abstract domains leading to abstract analysis with different precision and cost. 1
Formalization of conflict analysis of programs with procedures, thread creation, and monitors
 THE ARCHIVE OF FORMAL PROOFS. HTTP://AFP.SF.NET/ENTRIES/DISKPAXOS.SHTML
, 2007
"... We study conflict detection for programs with procedures, dynamic thread creation and a fixed finite set of (reentrant) monitors. We show that deciding the existence of a conflict is NPcomplete for our model (that abstracts guarded branching by nondeterministic choice) and present a fixpointbase ..."
Abstract

Cited by 5 (3 self)
 Add to MetaCart
(Show Context)
We study conflict detection for programs with procedures, dynamic thread creation and a fixed finite set of (reentrant) monitors. We show that deciding the existence of a conflict is NPcomplete for our model (that abstracts guarded branching by nondeterministic choice) and present a fixpointbased complete conflict detection algorithm. Our algorithm needs worstcase exponential time in the number of monitors, but is linear in the program size.