Model Learning as a Satisfiability Modulo Theories Problem

We explore an approach to model learning that is based on using satisfiability modulo theories (SMT) solvers. To that end, we explain how DFAs, Mealy machines and register automata, and observations of their behavior can be encoded as logic formulas. An SMT solver is then tasked with finding an assignment for such a formula, from which we can extract an automaton of minimal size. We provide an implementation of this approach which we use to conduct experiments on a series of benchmarks. These experiments address both the scalability of the approach and its performance relative to existing active learning tools.

[1]  D. Angluin Negative Results for Equivalence Queries , 1990, Machine Learning.

[2]  Rick Smetsers Grammatical Inference as a Satisfiability Modulo Theories Problem , 2017, ArXiv.

[3]  Dana Angluin,et al.  Learning Regular Sets from Queries and Counterexamples , 1987, Inf. Comput..

[4]  Daniel Neider Computing Minimal Separating DFAs and Regular Invariants Using SAT and SMT Solvers , 2012, ATVA.

[5]  Frits W. Vaandrager,et al.  Model learning , 2017, Commun. ACM.

[6]  Maurice Bruynooghe,et al.  Predicate logic as a modeling language: modeling and solving some machine learning and data mining problems with IDP3 , 2013, Theory and Practice of Logic Programming.

[7]  Jozef Hooman,et al.  Refactoring of Legacy Software Using Model Learning and Equivalence Checking: An Industrial Experience Report , 2016, IFM.

[8]  Colin de la Higuera,et al.  Grammatical Inference: Learning Automata and Grammars , 2010 .

[9]  Alexandre Petrenko,et al.  From Passive to Active FSM Inference via Checking Sequence Construction , 2017, ICTSS.

[10]  Nikolaj Bjørner,et al.  Satisfiability modulo theories , 2011, Commun. ACM.

[11]  David Lee,et al.  Principles and methods of testing finite state machines-a survey , 1996, Proc. IEEE.

[12]  Tiziana Margaria,et al.  LearnLib: a framework for extrapolating behavioral models , 2009, International Journal on Software Tools for Technology Transfer.

[13]  Bengt Jonsson,et al.  Generating models of infinite-state communication protocols using regular inference with abstraction , 2015, Formal Methods Syst. Des..

[14]  Mihalis Yannakakis,et al.  Black Box Checking , 1999 .

[15]  Marijn J. H. Heule,et al.  Software model synthesis using satisfiability solvers , 2012, Empirical Software Engineering.

[16]  Bengt Jonsson,et al.  Active learning for extended finite state machines , 2016, Formal Aspects of Computing.

[17]  Frits W. Vaandrager,et al.  Learning Register Automata with Fresh Value Generation , 2015, ICTAC.

[18]  Bengt Jonsson,et al.  Inferring Canonical Register Automata , 2012, VMCAI.

[19]  Bernhard Steffen,et al.  The TTT Algorithm: A Redundancy-Free Approach to Active Automata Learning , 2014, RV.

[20]  Joeri de Ruiter,et al.  Formal Models of Bank Cards for Free , 2013, 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation Workshops.

[21]  E. Mark Gold,et al.  Language Identification in the Limit , 1967, Inf. Control..

[22]  David Lee,et al.  Testing Finite-State Machines: State Identification and Verification , 1994, IEEE Trans. Computers.

[23]  Frits W. Vaandrager,et al.  Inference and Abstraction of the Biometric Passport , 2010, ISoLA.

[24]  John Derrick,et al.  Iterative Refinement of Reverse-Engineered Models by Model-Based Testing , 2009, FM.

[25]  Frits W. Vaandrager,et al.  Applying Automata Learning to Embedded Control Software , 2015, ICFEM.

[26]  Sicco Verwer,et al.  Regular inference as vertex coloring , 2012, Theor. Comput. Sci..