Active Learning of Symbolic Automata for Reactive Programs via Dynamic Symbolic Mapper
Yoel Kim, Yunja Choi
Abstract
Active learning of formal behavior models from program source code is a powerful approach for a wide range of software analysis, validation, and verification tasks, including understanding system intent, automating specification mining, generating test oracles, and checking formal properties. Recent advances in active learning of symbolic automata, powered by program synthesis and model checking, provide both rich expressiveness and soundness guarantees for the learned models. However, these techniques often encounter significant performance bottlenecks, particularly when dealing with reactive programs that expose many program variables with large value domains. This work introduces an extended active learning algorithm tailored for reactive programs by incorporating a novel dynamic symbolic mapper for learning symbolic automata. The mapper abstracts program behavior using learner-inferred predicates over program variables, encodes each valuation of these variables as a Boolean vector induced by these predicates (Boolean abstraction), and dynamically refines the abstraction in response to missing behaviors identified by the teacher. The mapper is granularity-aware: for teaching, it employs the coarsest predicates sufficient to expose missing behaviors, enabling broad exploration; for learning, it refines the abstraction only to the finest predicates necessary to resolve the uncovered gaps, trying to avoid refinements that could otherwise be triggered by coarse abstraction. We evaluated our approach on 120 benchmarks, including SV-COMP tasks, Simulink model-driven programs, LeetCode problems, and representative embedded control software. The results show that our method learns 32 more symbolic automata and reduces the average active learning time by 55.6% compared to the state-of-the-art.
Ask about this paper
Ask your agent about it.
Lune has read the top-tier papers around this one, so every answer names the papers it rests on.
Your agent calls
Lunesearch_papers
Free to start. No credit card required.
Terminal
Install the CLIlune papers get 598609b0-c5e7-49bf-831d-5dac85adab93Related papers
- Automata Learning from Preference and Equivalence QueriesEric Hsiung, Joydeep Biswas, Swarat ChaudhuriCAV 2025 · 1 citation
- Sound and Precise Symbolic Automata Model for Stateful Software SystemsXinlong Wu, Ruiyu Zhou, Peisen Yao, Qingkai ShiCAV 2026
- Error-Awareness Accelerates Active Automata LearningLoes Kruger, Sebastian Junges, Jurriaan RotFM 2026
- Choose, Don't Label: Multiple-Choice Query Synthesis for Program DisambiguationCeleste Barnaby, Danny Ding, Osbert Bastani, Isil DilligPLDI 2026
- Active Learning of Symbolic Automata over Rational NumbersSebastián Hagedorn Gaete, Martín Muñoz, Cristian Riveros, Rodrigo Toro IcarteAAAI 2026
