State Space Estimation for DPOR-Based Model Checkers
A. R. Balasubramanian, Mohammad Hossein Khoshechin Jorshari, Rupak Majumdar, Umang Mathur, Minjian Zhang
Abstract
We study the estimation problem for concurrent programs: given a bounded program P , estimate the number of maximal Mazurkiewicz trace–equivalence classes induced by its interleavings. This quantity informs two practical questions for enumeration-based model checking: how long a model checking run is likely to take, and what fraction of the search space has been covered so far. We first show the counting problem is #P-hard even for restricted programs and, unless P = NP , inapproximable within any subexponential factor in polynomial time. Thus, we cannot expect efficient exact or randomized approximation algorithms. We give a Monte Carlo approach to find a polynomial-time unbiased estimator: we convert a stateless optimal DPOR algorithm into an unbiased estimator by viewing its exploration as a bounded-depth, bounded-width, tree whose leaves are the maximal Mazurkiewicz traces. A classical estimator by Knuth, when run on this tree, gives an unbiased estimation. In order to control the variance of the estimation, we apply stochastic enumeration by maintaining a small population of partial paths per depth whose evolution is coupled. We have implemented our estimator in the JMC model checker and evaluated it on shared-memory benchmarks. We find that with modest budgets, our estimator yields stable estimates—typically within a 20% band—within a few hundred trials, even when the state space has 10 5 –10 6 classes. We also show how the same machinery estimates model-checking cost by weighting all explored traces, not only the maximal ones. Our algorithms provide the first provable poly-time unbiased estimators for counting Mazurkiewicz traces.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext b80f7b2d-be2b-4e7e-9758-df017e3d75c7Builds on10
- Boosting fuzzer efficiency: an information theoretic perspectiveMarcel Böhme, Valentin J. M. Manès, Sang Kil ChaFSE 2020 · 115 citations
- Truly stateless, optimal dynamic partial order reductionMichalis Kokologiannakis, Iason Marmanis, Vladimir Gladstein, Viktor VafeiadisPOPL 2022 · 46 citations
- Estimating residual risk in greybox fuzzingMarcel Böhme, Danushka Liyanage, Valentin WüstholzFSE 2021 · 27 citations
- Stateless Model Checking Under a Reads-Value-From EquivalencePratyush Agarwal, Krishnendu Chatterjee, Shreya Pathak, Andreas Pavlogiannis et al.CAV 2021 · 25 citations
- Coarser Equivalences for Causal ConcurrencyAzadeh Farzan, Umang MathurPOPL 2024 · 8 citations
Related papers
- Counting and Sampling Traces in Regular LanguagesAlexis de Colnet, Kuldeep S. Meel, Umang MathurPOPL 2026 · 1 citation
- The reads-from equivalence for the TSO and PSO memory modelsTruc Lam Bui, Krishnendu Chatterjee, Tushar Gautam, Andreas Pavlogiannis et al.OOPSLA 2021 · 13 citations
- An Approximate Skolem Function CounterArijit Shaw, Brendan Juba, Kuldeep S. MeelAAAI 2024 · 2 citations
- Efficient Enumeration of Markov Equivalent DAGsMarcel Wienöbst, Malte Luttermann, Max Bannach, Maciej LiskiewiczAAAI 2023 · 7 citations
- Fast Converging Anytime Model CountingYong Lai, Kuldeep S. Meel, Roland H. C. YapAAAI 2023 · 4 citations
