Abstract

Many analysis and verifications tasks, such as static program analyses and model-checking for temporal logics, reduce to the solution of systems of equations over suitable lattices. Inspired by recent work on lattice-theoretic progress measures, we develop a game-theoretical approach to the solution of systems of monotone equations over lattices, where for each single equation either the least or greatest solution is taken. A simple parity game, referred to as fixpoint game, is defined that provides a correct and complete characterisation of the solution of systems of equations over continuous lattices, a quite general class of lattices widely used in semantics. For powerset lattices the fixpoint game is intimately connected with classical parity games for µ-calculus model-checking, whose solution can exploit as a key tool Jurdziński’s small progress measures. We show how the notion of progress measure can be naturally generalised to fixpoint games over continuous lattices and we prove the existence of small progress measures. Our results lead to a constructive formulation of progress measures as (least) fixpoints. We refine this characterisation by introducing the notion of selection that allows one to constrain the plays in the parity game, enabling an effective (and possibly efficient) solution of the game, and thus of the associated verification problem. We also propose a logic for specifying the moves of the existential player that can be used to systematically derive simplified equations for efficiently computing progress measures. We discuss potential applications to the model-checking of latticed µ-calculi.

Highlights

  • Systems of fixpoint equations are ubiquitous in formal analysis and verification

  • In particular we introduce a notion of progress measure for fixpoint games over continuous lattices and we prove the existence of suitably defined small progress measures

  • Along the lines of [Jurdziński 2000], influenced by [Hasuo et al 2016], we introduce a general notion of progress measure for fixpoint games over continuous lattices

Read more

Summary

INTRODUCTION

A detailed discussion of the complexity of μ-calculus model-checking can be found in [Bradfield and Walukiewicz 2018] It has been recently observed in [Hasuo et al 2016] that progress measures, a key ingredient in Jurdzisńki’s algorithm for solving parity games, are amenable to a generalisation to systems of fixpoint equations over general lattices. In particular we introduce a notion of progress measure for fixpoint games over continuous lattices and we prove the existence of suitably defined small progress measures This result enables a constructive characterisation of progress measures as (least) fixpoints and provides a recipe for computing the progress measure that can be straightforwardly implemented, at least for finite lattices. Further details on the encoding of μ-calculus formulae into fixpoint equation systems (and vice versa) and a detailed comparison to [Hasuo et al 2016] are included in the full version [Baldan et al 2018]

PRELIMINARIES ON ORDERED STRUCTURES
Lattices
Tuples and Ordinals
Systems of Fixpoint Equations
A Prototypical Example
Data-Flow Analysis
Approximating the Solution
FIXPOINT GAMES
Definition of the Game
Correctness and Completeness
Relation to μ-Calculus Model-Checking
Fixpoint Games in Data-Flow Analysis
STRATEGIES AS PROGRESS MEASURES
Progress Measures as Fixpoints
Computing Progress Measures
MODEL-CHECKING LATTICED μ-CALCULI
CONCLUSION
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call