Counting and Sampling Traces in Regular Languages
Alexis de Colnet, Kuldeep S. Meel, Umang Mathur
摘要
In this work, we study the fundamental problems of counting and sampling traces that a regular language touches. Formally, one fixes the alphabet Σ and an independence relation I ⊆ Σ × Σ. The computational problems we address take as input a regular language 𝐿 over Σ, presented as a finite automaton with 𝑚 states, together with a natural number 𝑛 (presented in unary). For the counting problem, the output is the number of Mazurkiewicz traces (induced by I) that intersect the 𝑛 th slice 𝐿 𝑛 = 𝐿 ∩ Σ 𝑛 of 𝐿, i.e., traces that have at least one linearization in 𝐿 𝑛 . For the sampling problem, the output is a trace drawn from a distribution that is approximately uniform over all such traces. These problems are motivated by applications such as bounded model checking based on partial-order reduction, where an a priori estimate of the size of the state space can significantly improve usability, as well as testing approaches for concurrent programs that use partial-order-aware random sampling, where uniform exploration is desirable for effective bug detection.
We first show that the counting problem is #P-hard even when the automaton accepting the language 𝐿 is deterministic, which is in sharp contrast to the corresponding problem for counting the words of a DFA, which is solvable in polynomial time. We then show that the counting problem remains in the class #P for both NFAs and DFAs, independent of whether 𝐿 is trace-closed. Finally, our main contributions are a fully polynomial-time randomized approximation scheme (FPRAS) that, with high probability, estimates the desired count within a specified accuracy parameter, and a fully polynomial-time almost uniform sampler (FPAUS) that generates traces while ensuring that the distribution induced on them is approximately uniform with high probability. CCS Concepts: • Theory of computation → Regular languages; Concurrency; • Mathematics of computing → Probabilistic algorithms; • Software and its engineering → Software verification and validation.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper1
问问它们各自怎么用它它引用的顶会 Paper9
- Using Lightweight Formal Methods to Validate a Key-Value Storage Node in Amazon S3James Bornholt, Rajeev Joshi, Vytautas Astrauskas, Brendan Cully 等SOSP 2021 · 被引用 63 次
- Truly stateless, optimal dynamic partial order reductionMichalis Kokologiannakis, Iason Marmanis, Vladimir Gladstein, Viktor VafeiadisPOPL 2022 · 被引用 46 次
- VSync: push-button verification and optimization for synchronization primitives on weak memory modelsJonas Oberhauser, Rafael Lourenco de Lima Chehab, Diogo Behrens, Ming Fu 等ASPLOS 2021 · 被引用 40 次
- Greybox Fuzzing for Concurrency TestingDylan Wolff, Zheng Shi, Gregory J. Duck, Umang Mathur 等ASPLOS 2024 · 被引用 19 次
- Complete Multiparty Session Type Projection with AutomataElaine Li, Felix Stutz, Thomas Wies, Damien ZuffereyCAV 2023 · 被引用 17 次
相关 Paper
- When is approximate counting for conjunctive queries tractable?Marcelo Arenas, Luis Alberto Croquevielle, Rajesh Jayaram, Cristian RiverosSTOC 2021 · 被引用 1 次
- FPTAS for Holant Problems with Log-Concave SignaturesKun He, Zhidan Li, Guoliang Qiu, Chihao ZhangSODA 2025
- #CFG and #DNNF admit FPRASKuldeep S. Meel, Alexis de ColnetSODA 2026
- Approximate counting and sampling via local central limit theoremsVishesh Jain, Will Perkins, Ashwin Sah, Mehtaab SawhneySTOC 2022 · 被引用 9 次
- Predictive Monitoring with Strong Trace PrefixesZhendong Ang, Umang MathurCAV 2024 · 被引用 3 次
