Communicating sequential processes
Communicating sequential processes
The program dependence graph and its use in optimization
ACM Transactions on Programming Languages and Systems (TOPLAS)
A practical algorithm for static analysis of parallel programs
Journal of Parallel and Distributed Computing
Detection of Ada Static Deadlocks Using Petri Net Invariants
IEEE Transactions on Software Engineering
Task interaction graphs for concurrency analysis
ICSE '89 Proceedings of the 11th international conference on Software engineering
Integrated concurrency analysis in a software development enviornment
TAV3 Proceedings of the ACM SIGSOFT '89 third symposium on Software testing, analysis, and verification
Design and validation of computer protocols
Design and validation of computer protocols
Starvation and Critical Race Analyzers for Ada
IEEE Transactions on Software Engineering
Reachability analysis of Petri nets using symmetries
Systems Analysis Modelling Simulation
Compositional reachability analysis using process algebra
TAV4 Proceedings of the symposium on Testing, analysis, and verification
Automated Analysis of Concurrent Systems with the Constrained Expression Toolset
IEEE Transactions on Software Engineering
Symbolic Boolean manipulation with ordered binary-decision diagrams
ACM Computing Surveys (CSUR)
The concurrency workbench: a semantics-based tool for the verification of concurrent systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
Proceedings of the 1993 ACM SIGSOFT international symposium on Software testing and analysis
ISSTA93 International Symposium on Software Testing and Analysis
Using state space reduction methods for deadlock analysis in Ada tasking
ISSTA '93 Proceedings of the 1993 ACM SIGSOFT international symposium on Software testing and analysis
A practical technique for bounding the time between events in concurrent real-time systems
ISSTA '93 Proceedings of the 1993 ACM SIGSOFT international symposium on Software testing and analysis
Enhancing compositional reachability analysis with context constraints
SIGSOFT '93 Proceedings of the 1st ACM SIGSOFT symposium on Foundations of software engineering
Model checking and abstraction
ACM Transactions on Programming Languages and Systems (TOPLAS)
An empirical evaluation of three methods for deadlock analysis of Ada tasking programs
ISSTA '94 Proceedings of the 1994 ACM SIGSOFT international symposium on Software testing and analysis
Automated Derivation of Time Bounds in Uniprocessor Concurrent Systems
IEEE Transactions on Software Engineering
Data flow analysis for verifying properties of concurrent programs
SIGSOFT '94 Proceedings of the 2nd ACM SIGSOFT symposium on Foundations of software engineering
Using integer programming to verify general safety and liveness properties
Formal Methods in System Design - Special issue on computer-aided verification (based on CAV'92 workshop)
Symbolic Model Checking
A Calculus of Communicating Systems
A Calculus of Communicating Systems
Concurrent Algorithms for Real-Time Memory Management
IEEE Software
A Proposed Testing and Analysis Research Initiative
IEEE Software
Proceedings of the 5th International Conference on Computer Aided Verification
CAV '93 Proceedings of the 5th International Conference on Computer Aided Verification
A Stubborn Attack On State Explosion
CAV '90 Proceedings of the 2nd International Workshop on Computer Aided Verification
Higher-Level Specification and Verification with BDDs
CAV '92 Proceedings of the Fourth International Workshop on Computer Aided Verification
Verifying General Safety and Liveness Propterties with Integer Programming
CAV '92 Proceedings of the Fourth International Workshop on Computer Aided Verification
Refining Dependencies Improves Partial-Order Verification Methods (Extended Abstract)
CAV '93 Proceedings of the 5th International Conference on Computer Aided Verification
A Tool for Symbolic Program Verification and Abstration
CAV '93 Proceedings of the 5th International Conference on Computer Aided Verification
Using Partial Orders for the Efficient Verification of Deadlock Freedom and Safety Properties
CAV '91 Proceedings of the 3rd International Workshop on Computer Aided Verification
Efficient Verification with BDDs using Implicitly Conjoined Invariants
CAV '93 Proceedings of the 5th International Conference on Computer Aided Verification
Word problems requiring exponential time(Preliminary Report)
STOC '73 Proceedings of the fifth annual ACM symposium on Theory of computing
Data flow analysis for verifying correctness properties of concurrent programs
Data flow analysis for verifying correctness properties of concurrent programs
Timing Analysis of Ada Tasking Programs
IEEE Transactions on Software Engineering - Special issue: best papers of the 1996 international symposium on software testing and analysis ISSTA'96
Model checking large software specifications
SIGSOFT '96 Proceedings of the 4th ACM SIGSOFT symposium on Foundations of software engineering
IEEE Transactions on Software Engineering - Special issue on formal methods in software practice
Model checking graphical user interfaces using abstractions
ESEC '97/FSE-5 Proceedings of the 6th European SOFTWARE ENGINEERING conference held jointly with the 5th ACM SIGSOFT international symposium on Foundations of software engineering
Filter-based model checking of partial systems
SIGSOFT '98/FSE-6 Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering
Using partial evaluation to enable verification of concurrent software
ACM Computing Surveys (CSUR) - Special issue: electronic supplement to the September 1998 issue
Compositional verification of concurrent systems using Petri-net-based condensation rules
ACM Transactions on Programming Languages and Systems (TOPLAS)
Checking safety properties using compositional reachability analysis
ACM Transactions on Software Engineering and Methodology (TOSEM)
Modeling and analysis of a virtual reality system with time Petri nets
Proceedings of the 20th international conference on Software engineering
Using partial order techniques to improve performance of data flow analysis based verification
Proceedings of the 1999 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Using shape analysis to reduce finite-state models of concurrent Java programs
ACM Transactions on Software Engineering and Methodology (TOSEM)
Bandera: extracting finite-state models from Java source code
Proceedings of the 22nd international conference on Software engineering
Improving the precision of INCA by preventing spurious cycles
Proceedings of the 2000 ACM SIGSOFT international symposium on Software testing and analysis
Efficient verification using generalized partial order analysis
Proceedings of the conference on Design, automation and test in Europe
Slicing Software for Model Construction
Higher-Order and Symbolic Computation
Improving the Precision of INCA by Eliminating Solutions with Spurious Cycles
IEEE Transactions on Software Engineering
A conservative algorithm for computing the flow of permissions in Java programs
ISSTA '02 Proceedings of the 2002 ACM SIGSOFT international symposium on Software testing and analysis
Isolating failure-inducing thread schedules
ISSTA '02 Proceedings of the 2002 ACM SIGSOFT international symposium on Software testing and analysis
An empirical evaluation of deadlock detection in software architecture specifications
Annals of Software Engineering
Logic Control and “Reactive” Systems: Algorithmization and Programming
Automation and Remote Control
Automatic Real-Time Analysis of Reactive Systems with the PARTS Toolset
Automated Software Engineering
Pointer analysis for structured parallel programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Model Checking Large Software Specifications
IEEE Transactions on Software Engineering
ESOP '99 Proceedings of the 8th European Symposium on Programming Languages and Systems
Assume-Guarantee Model Checking of Software: A Comparative Case Study
Proceedings of the 5th and 6th International SPIN Workshops on Theoretical and Practical Aspects of SPIN Model Checking
On Combining the Persistent Sets Method with the Covering Steps Graph Method
FORTE '02 Proceedings of the 22nd IFIP WG 6.1 International Conference Houston on Formal Techniques for Networked and Distributed Systems
Detecting Deadlock in Ada Rendezvous Flow Structure Based on Process Algebra
ICFEM '02 Proceedings of the 4th International Conference on Formal Engineering Methods: Formal Methods and Software Engineering
Fighting Livelock in the i-Protocol: A Comparative Study of Verification Tools
TACAS '99 Proceedings of the 5th International Conference on Tools and Algorithms for Construction and Analysis of Systems
Models, Formalisms and Methods for Object-Oriented Distributed Computing (ECOOP Workshop)
ECOOP '97 Proceedings of the Workshops on Object-Oriented Technology
Analysis of Multithreaded Programs
SAS '01 Proceedings of the 8th International Symposium on Static Analysis
Model Checking Generic Container Implementations
Selected Papers from the International Seminar on Generic Programming
Towards scalable compositional analysis by refactoring design models
Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
RacerX: effective, static detection of race conditions and deadlocks
SOSP '03 Proceedings of the nineteenth ACM symposium on Operating systems principles
A top down approach for MAS protocol descriptions
Proceedings of the 2003 ACM symposium on Applied computing
Atomizer: a dynamic atomicity checker for multithreaded programs
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Experimental Evaluation of Verification and Validation Tools on Martian Rover Software
Formal Methods in System Design
Merged processes: a new condensed representation of Petri net behaviour
CONCUR 2005 - Concurrency Theory
Types for safe locking: Static race detection for Java
ACM Transactions on Programming Languages and Systems (TOPLAS)
Using heuristic search for finding deadlocks in concurrent systems
Information and Computation
Proceedings of the 2006 ACM/IEEE international symposium on Empirical software engineering
Controlling factors in evaluating path-sensitive error detection techniques
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
Science of Computer Programming
Verification of bounded Petri nets using integer programming
Formal Methods in System Design
Parallel-stage decoupled software pipelining
Proceedings of the 6th annual IEEE/ACM international symposium on Code generation and optimization
Spice: speculative parallel iteration chunk execution
Proceedings of the 6th annual IEEE/ACM international symposium on Code generation and optimization
Atomizer: A dynamic atomicity checker for multithreaded programs
Science of Computer Programming
Types for atomicity: Static checking and inference for Java
ACM Transactions on Programming Languages and Systems (TOPLAS)
Dreadlocks: efficient deadlock detection
Proceedings of the twentieth annual symposium on Parallelism in algorithms and architectures
Directed Unfolding of Petri Nets
Transactions on Petri Nets and Other Models of Concurrency I
Decompositional Petri Net Reductions
IFM '09 Proceedings of the 7th International Conference on Integrated Formal Methods
Static Analysis of Concurrent Programs Using Ordinary Differential Equations
ICTAC '09 Proceedings of the 6th International Colloquium on Theoretical Aspects of Computing
Planning via Petri net unfolding
IJCAI'07 Proceedings of the 20th international joint conference on Artifical intelligence
Compositional deadlock detection for rendezvous communication
EMSOFT '09 Proceedings of the seventh ACM international conference on Embedded software
Symbolic algorithmic verification of generalized noninterference
WSEAS Transactions on Computers
Action Planning for Directed Model Checking of Petri Nets
Electronic Notes in Theoretical Computer Science (ENTCS)
Using heuristic search for finding deadlocks in concurrent systems
Information and Computation
Bounded reachability checking of asynchronous systems using decision diagrams
TACAS'07 Proceedings of the 13th international conference on Tools and algorithms for the construction and analysis of systems
Improving static variable orders via invariants
ICATPN'07 Proceedings of the 28th international conference on Applications and theory of Petri nets and other models of concurrency
BEEM: benchmarks for explicit model checkers
Proceedings of the 14th international SPIN conference on Model checking software
Slicing Petri nets with an application to workflow verification
SOFSEM'08 Proceedings of the 34th conference on Current trends in theory and practice of computer science
An algorithm for direct construction of complete merged processes
PETRI NETS'11 Proceedings of the 32nd international conference on Applications and theory of Petri Nets
Symbolic modular deadlock analysis
Automated Software Engineering
Efficient contextual unfolding
CONCUR'11 Proceedings of the 22nd international conference on Concurrency theory
Static deadlock detection for java libraries
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
SPIN'05 Proceedings of the 12th international conference on Model Checking Software
PETRI NETS'12 Proceedings of the 33rd international conference on Application and Theory of Petri Nets
PETRI NETS'13 Proceedings of the 34th international conference on Application and Theory of Petri Nets and Concurrency
Hi-index | 0.00 |
Static analysis of concurrent programs has been hindered by the well known state explosion problem. Although many different techniques have been proposed to combat this state explosion, there is little empirical data comparing the performance of the methods. This information is essential for assessing the practical value of a technique and for choosing the best method for a particular problem. In this paper, we carry out an evaluation of three techniques for combating the state explosion problem in deadlock detection: reachability search with a partial order state space reduction, symbolic model checking, and inequality necessary conditions. We justify the method used for the comparison, and carefully analyze several sources of potential bias. The results of our evaluation provide valuable data on the kinds of programs to which each technique might best be applied. Furthermore, we believe that the methodological issues we discuss are of general significance in comparison of analysis techniques.