Model Checking and Transitive-Closure Logic

  title={Model Checking and Transitive-Closure Logic},
  author={Neil Immerman and Moshe Y. Vardi},
We give a linear-time algorithm to translate any formula from computation tree logic (CTL or CTL*) into an equivalent expression in a variable-confined fragment of transitive-closure logic FO(TC). Traditionally, CTL and CTL* have been used to express queries for model checking and then translated into μ-calculus for symbolic evaluation. Evaluation of μ-calculus formulas is, however, complete for time polynomial in the (typically huge) number of states in the Kripke structure. Thus, this is… 

Reachability Logic: An Efficient Fragment of Transitive Closure Logic

We define reachability logic (RL), a fragment of FO(TC) (with boolean variables) that admits efficient model checking – linear time with a small constant – as a function of the size of the structure

Quantified Computation Tree Logic

Reducing CTL-live model checking to first-order logic validity checking

This paper shows that it is possible to reduce model checking of a finite or infinite Kripke structure that is expressed in F OL to a validity problem in FOL for a fragment of computational tree logic (CTL), which is called CTL-live.

Reducing CTL-live Model Checking to Semantic Entailment in First-Order Logic ( Version 1 )

This article presents a method for reducing model checking of finite and infinite Kripke structures that are expressed in F OL to entailment checking in FOL for a fragment of computational tree logic (CTL), which it is proved that CTL-live is maximal in the sense that model Checking of CTL connectives that are not included in CTL -live is not reducible to semantic.

Extracting Counterexamples from Transitive-Closure-Based Model Checking

This work addresses the problem of how to extract counterexamples for the transitive-closure-based model checking (TCMC) technique by adding constraints that do not depend on the property.

Temporal Logic Model Checking in Alloy

This article shows how a symbolic representation of the semantics of computational tree logic with fairness constraints (CTLFC) can be written in first-order logic with the transitive closure operator, and therefore described in Alloy.

Transitive-closure-based model checking (TCMC) in Alloy

This work presents transitive-closure-based model checking (TCMC), an expression of the complete model checking problem for CTLFC as a set of constraints in FOLTC without induction, iteration, or invariants, and implements it in the Alloy Analyzer.

Improvements to Transitive-Closure-based Model Checking in Alloy

This thesis provides style guidelines for writing concise declarative models of transition systems for behavioural analysis in Alloy without any extensions to the Alloy language and compares TCMC in Alloy to NuSMV and bounded model checking in terms of modelling practices, expressibility of temporal properties, model checking results, and performance.

On temporal logic versus datalog

Datalog LITE: a deductive query language with linear time model checking

Datalog LITE is a variant of Datalog that uses stratified negation, restricted variable occurrences and a limited form of universal quantification in rule bodies, and linear-time model checking algorithms for all mentioned logics are obtained in a unified way.



On the parallel complexity of model checking in the modal mu-calculus

It is shown that Model Checking in the Modal Mu-Calculus (MCMMC) is P-hard even for a very restrictive version of the problem involving the alternation-free fragment, and a polynomial-time reduction is provided in the other direction thereby establishing an interesting link between the two formalisms.

An Automata-Theoretic Approach to Branching-Time Model Checking (Extended Abstract)

It is shown that alternating tree automata are the key to a comprehensive automata-theoretic framework for branching temporal logics, and can be used to obtain optimal decision procedures and make it possible to derive optimal model-checking algorithms.

Checking that finite state concurrent programs satisfy their linear specification

An algorithm for checking satisfiability of a linear time temporal logic formula over a finite state concurrent program and a formal proof in case the formula is valid over the program is presented.

Testing Language Containment for omega-Automata Using BDD's

Two new BDD-based language containment checks in COSPAN are implemented, one with a time advantage and the other with a space advantage, which have increased significantly the size of system models which can be verified.

Reasoning About Infinite Computations

This work investigates extensions of temporal logic by connectives defined by finite automata on infinite words and shows that they do not increase the expressive power of the logic or the complexity of the decision problem.

Model Checking and the Mu-calculus

  • E. Emerson
  • Computer Science
    Descriptive Complexity and Finite Models
  • 1996
This work describes model checking algorithms and discusses their application on a particularly important type of temporal logic known as the Mu-calculus, which can provide an eecient and expressive tool for automatic veriication that a nite state system meets a correctness speciication formulated in temporal logic.

Why is Modal Logic So Robustly Decidable?

  • Moshe Y. Vardi
  • Philosophy, Computer Science
    Descriptive Complexity and Finite Models
  • 1996
It is argued that the robust decidability of modal logic can be explained by the so-called tree- model property, and it is shown how the tree-model property leads to automata-based decision procedures.

Dyn-FO: A Parallel, Dynamic Complexity Class

It is proved that certain standard complete problems for static complexity classes, such as REACHafor P, remain complete via these new reductions, and that other such problems, including REACH for NL and REACHdfor L, are no longer complete via bounded-expansion reductions.

Yet Another Process Logic (Preliminary Version)

We present a process logic that differs from the one introduced by Harel, Kozen and Parikh in several ways. First, we use the extended temporal logic of Wolper for statements about paths. Second, we