🤖 AI Summary
This work addresses two core challenges in model checking—complementation and inclusion checking for Büchi automata—by proposing a modular solution framework. The approach decomposes automata into strongly connected components and applies structure-aware strategies to tailor complementation algorithms for each component. It introduces a novel on-the-fly emptiness-checking technique targeting simple generalized Rabin pairs, enabling immediate termination upon satisfaction of stopping conditions. Additionally, efficient heuristic strategies are devised to accelerate modular inclusion verification. Experimental results demonstrate that the method significantly outperforms existing tools in both robustness and efficiency, often achieving speedups of several orders of magnitude on standard benchmarks, thereby establishing itself as one of the most robust solutions currently available.
📝 Abstract
We present Kofola, an efficient tool for complementation and inclusion checking of B\"uchi automata, two central tasks in automata-theoretic verification with applications in model checking, monitoring, and theorem proving. Kofola implements a state-of-the-art modular complementation framework that decomposes the input automaton into strongly connected components and applies to each component a complementation algorithm tailored to its structural properties. Building on this modular construction, Kofola also provides modular inclusion checking with new heuristics. A key ingredient is a new on-the-fly emptiness-checking algorithm for the simple generalized Rabin pair condition produced by our complementation, allowing the search to terminate as soon as the explored state space suffices. Empirical evaluation shows that Kofola is highly competitive with state-of-the-art complementation and inclusion-checking tools: it is the most robust tool in our evaluation and often outperforms competitors by several orders of magnitude on benchmarks from practical applications.