A partial approach to model checking

  title={A partial approach to model checking},
  author={Patrice Godefroid and Pierre Wolper},
  journal={[1991] Proceedings Sixth Annual IEEE Symposium on Logic in Computer Science},
  • Patrice Godefroid, P. Wolper
  • Published 15 July 1991
  • Computer Science
  • [1991] Proceedings Sixth Annual IEEE Symposium on Logic in Computer Science
A model-checking method for linear-time temporal logic that avoids the state explosion due to the modeling of concurrency by interleaving is presented. The method relies on the concept of the Mazurkiewicz trace as a semantic basis and uses automata-theoretic techniques, including automata that operate on words of ordinality higher than omega . In particular, automata operating on words of length omega *n, n in omega are defined. These automata are studied, and an efficient algorithm to check… 
Protocol Specification, Testing and Verification XV
A tableau-based algorithm for obtaining an automaton from a temporal logic formula geared towards being used in model checking in an "on-the-fly" fashion, that is the automaton can be constructed simultaneously with, and guided by, the generation of the model.
A partial order approach to branching time logic model checking
The paper shows, for the first time, how this approach can be applied to languages that model the behavior of a program as a tree, e.g., the logics CTL and CTL* and process algebras such as CCS.
Using asynchronous Büchi automata for efficient automatic verification of concurrent systems
An efficient method for verifying that a protocol satisfies its Asynchronous Buchi Automaton specification is presented, and can be used to check the validity of specification languages that can be translated into such automata, such as Thiagarajan’s TrPTL.
Symbolic Model Checking : IO * ’ States and Beyond *
A model checking algorithm for MuCalculus formulas that uses Bryant’s Binary Decision Diagrams to represent relations and formulas and can be used to derive efficient decision procedures for CTL model checking, satistiability of linear-time temporal logic formulas, strong and weak observational equivalence of finite transition systems, and language containment for finite w-automata.
Computer Aided Verification
This paper unify these two frameworks in the linear time setting for the specification of stutter-invariant properties, which are used in the context of partial-order verification, and shows that the improved practical algorithms for converting LTL formulas to automata can be modified to incorporate this extension to LTL with the same benefits.
Compact Data Structures and State-Space Reduction for Model-Checking Real-Time Systems
A compact data structure for representing clock constraints is presented based on an O(n3) algorithm which, given a constraint system over real-valued variables consisting of bounds on differences, constructs an equivalent system with a minimal number of constraints.
An Automata-Theoretic Approach to Infinite-State Systems
An automata-theoretic framework for reasoning about infinite-state sequential systems based on the observation that states of such systems can be viewed as nodes in an infinite tree, and transitions between states can be simulated by finite-state automata.
Compositional model-checking for real-time systems
A quotient construction is presented, which allows timed automata components to be gradually moved from the network expression into the specification and the intermediate specifications are kept small using minimization heuristics suggested by Andersen.
Linear-Time Temporal LogicandB uchi Automata
This work presents a self-contained introduction to the basic techniques used for automated verification of finite-state systems using Büchi automata, and describes some recent spaceefficient techniques which work on-the-fly.


An Improved Algorithm for the Automatic Verification of Finite State Systems Using Temporal Logic
This paper presents an improved CTL model checking algorithm that allows conditional transitions and presents a new algorithm that can verify systems with conditional transitions without the additional preprocessing that the old algorithm requires.
Avoiding the state explosion problem in temporal logic model checking
A linear algorithm that determines whether the global state transition graph associated with some concurrent program satisfies a formula in the temporal logic CTL and has been used successfully to find errors in network protocols and asynchronous circuits designs.
Model-checking for real-time systems
An algorithm is developed for model checking, that is, for determining the truth of a TCTL formula with respect to a timed graph, and it is argued that choosing a dense domain, instead of a discrete domain, to model time does not blow up the complexity of the model-checking problem.
Symbolic Model Checking: 10^20 States and Beyond
Memory-efficient algorithms for the verification of temporal properties
Algorithms are presented that solve the emptiness problem without explicitly constructing the strongly connected components of the graph representing the product automaton by allowing the algorithms to err with some probability.
Using Partial Orders to Improve Automatic Verification Methods
A verification method for concurrent finite-state systems that attempts to avoid the part of the combinatorial explosion due to the modeling of concurrency by interleavings and introduces the notion of “trace automation” which generates only one linearization per partial order.
Using Partial-Order Semantics to Avoid the State Explosion Problem in Asynchronous Systems
This work avoids state explosion in model checking of delay-insensitive VLSI systems by not using states, and uses a specification strategy based on partial orders that allows precise description of the branching and recurrence structure of processes.
Modalities for Model Checking: Branching Time Logic Strikes Back
Memory-Ecient Algorithms for the Verication of Temporal Properties
Algorithms which solve the empti- ness problem without explicitly constructing the strongly connected components of the graph representing the product automaton can be implemented with a randomly accessed memory of size O(n) bits, where n is the number of states of thegraph.
Reasoning about systems with many processes
Methods are given for automatically verifying temporal properties of concurrent systems containing an arbitrary number of finite-state processes that communicate using CCS actions and how these decision procedures can be used to reason about certain systems with a communication network.