Active learning for extended finite state machines
Autor: | Falk Howar, Bernhard Steffen, Sofia Cassel, Bengt Jonsson |
---|---|
Rok vydání: | 2016 |
Předmět: |
Theoretical computer science
Finite-state machine Computer science Programming language Data domain Extended finite-state machine 020207 software engineering 02 engineering and technology computer.software_genre Automata construction Theoretical Computer Science Automaton Data flow diagram Theory of computation 0202 electrical engineering electronic engineering information engineering 020201 artificial intelligence & image processing Priority queue computer Software |
Zdroj: | Formal Aspects of Computing. 28:233-263 |
ISSN: | 1433-299X 0934-5043 |
DOI: | 10.1007/s00165-016-0355-5 |
Popis: | We present a black-box active learning algorithm for inferring extended finite state machines (EFSM)s by dynamic black-box analysis. EFSMs can be used to model both data flow and control behavior of software and hardware components. Different dialects of EFSMs are widely used in tools for model-based software development, verification, and testing. Our algorithm infers a class of EFSMs called register automata . Register automata have a finite control structure, extended with variables (registers), assignments, and guards. Our algorithm is parameterized on a particular theory , i.e., a set of operations and tests on the data domain that can be used in guards. Key to our learning technique is a novel learning model based on so-called tree queries . The learning algorithm uses tree queries to infer symbolic data constraints on parameters, e.g., sequence numbers, time stamps, identifiers, or even simple arithmetic. We describe sufficient conditions for the properties that the symbolic constraints provided by a tree query in general must have to be usable in our learning model. We also show that, under these conditions, our framework induces a generalization of the classical Nerode equivalence and canonical automata construction to the symbolic setting. We have evaluated our algorithm in a black-box scenario, where tree queries are realized through (black-box) testing. Our case studies include connection establishment in TCP and a priority queue from the Java Class Library. |
Databáze: | OpenAIRE |
Externí odkaz: |