TzuYu: Learning stateful typestates

@article{Xiao2013TzuYuLS,
  title={TzuYu: Learning stateful typestates},
  author={Hao Xiao and Jun Sun and Yang Liu and Shang-Wei Lin and Chengnian Sun},
  journal={2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE)},
  year={2013},
  pages={432-442}
}
  • Hao Xiao, Jun Sun, +2 authors Chengnian Sun
  • Published 2013
  • Computer Science
  • 2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE)
Behavioral models are useful for various software engineering tasks. They are, however, often missing in practice. Thus, specification mining was proposed to tackle this problem. Existing work either focuses on learning simple behavioral models such as finite-state automata, or relies on techniques (e.g., symbolic execution) to infer finite-state machines equipped with data states, referred to as stateful typestates. The former is often inadequate as finite-state automata lack expressiveness in… Expand
Foundations of active automata learning: an algorithmic perspective
TLDR
One of the stated goals of this thesis is to change this situation, by giving a rigorously formal description of an approach to active automata learning that is independent of specific data structures or algorithmic realizations. Expand
Active Learning for Extended Finite State Machines 12
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 ofExpand
Active learning for extended finite state machines
TLDR
A black-box active learning algorithm for inferring extended finite state machines (EFSM) by dynamic black- box analysis based on a novel learning model based on so-called tree queries that induces a generalization of the classical Nerode equivalence and canonical automata construction to the symbolic setting. Expand
TLV: abstraction through testing, learning, and validation
TLDR
The approach is designed such that a large part of the abstraction is generated based on testing and learning so as to minimize the use of heavy-weight techniques like symbolic execution, and shows that TLV generates abstraction for program analysis and verification more efficiently. Expand
Extending Automata Learning to Extended Finite State Machines
TLDR
This work extends techniques for inferring automata models by observing how they respond to a sample of input words to infer extended finite state machines (EFSMs) by dynamic black-box analysis. Expand
Mining understandable state machine models from embedded code
TLDR
The results show that the approach is highly effective in making the guards understandable, and that guards reduced by the approach and presented with priorities are easier to understand than guards without priorities. Expand
Do Extracted State Machine Models Help to Understand Embedded Software?
Program understanding is a prerequisite for several software activities, such as maintenance, evolution, and reengineering. Code in itself is so detailed that it is often hard to understand. MoreExpand
On State Machine Mining from Embedded Control Software
TLDR
Several techniques that enable state machine mining from embedded control code and an empirical study examines the limits of transition conditions' complexity that can still be understood by humans are proposed and evaluated. Expand
Learning Extended Finite State Machines
TLDR
An active learning algorithm for inferring extended finite state machines (EFSM)s, combining data flow and control behavior, based on a novel learning model based on so-called tree queries is presented. Expand
Automata based monitoring and mining of execution traces
This thesis contributes work to the fields of runtime monitoring and specification mining. It develops a formalism for specifying patterns of behaviour in execution traces and defines techniques forExpand
...
1
2
3
...

References

SHOWING 1-10 OF 38 REFERENCES
Symbolic Learning of Component Interfaces
TLDR
The technique, named Psyco (Predicate-based SYmbolic COmpositional reasoning), employs a novel combination of the L* automata learning algorithm with symbolic execution, generating interfaces that capture whether a sequence of method invocations is safe, unsafe, or its effect on the component state is unresolved by the symbolic execution engine. Expand
Automata Learning through Counterexample Guided Abstraction Refinement
TLDR
This article shows how such abstractions can be constructed fully automatically for a restricted class of extended finite state machines in which one can test for equality of data parameters, but no operations on data are allowed. Expand
Hybrid learning: interface generation through static, dynamic, and symbolic analysis
TLDR
The explosion of method sequences that learning generates to validate its computed interfaces is reduced through partial order reduction resulting from a static analysis of the component, and novel algorithms that are primarily based on dynamic, concrete component execution, while resorts to symbolic analysis on a limited, as needed, basis are proposed. Expand
Synthesis of interface specifications for Java classes
TLDR
This paper proposes a novel solution for automatically extracting temporal specifications for Java classes using algorithms for learning finite automata and symbolic model checking for branching-time logics and describes an implementation of the proposed techniques in the tool JIST--- Java Interface Synthesis Tool---and demonstrates that the tool can construct interfaces accurately and efficiently for sample Java2SDK library classes. Expand
Counterexample-Guided Assume-Guarantee Synthesis through Learning
TLDR
A framework is proposed that can automatically eliminate all counterexamples from a system model such that the synthesized model satisfies a given safety specification and the synthesis flow terminates after a finite number of iterations. Expand
Mining specifications
Program verification is a promising approach to improving program quality, because it can search all possible program executions for specific errors. However, the need to formally describe correctExpand
Automatic Compositional Verification of Timed Systems
TLDR
A self-contained toolkit to analyze real-time systems specified using event-recording automata (ERAs), which supports system modeling, animated simulation, and fully automatic compositional verification based on learning techniques is presented. Expand
CUTE: a concolic unit testing engine for C
TLDR
A method to represent and track constraints that capture the behavior of a symbolic execution of a unit with memory graphs as inputs is developed and an efficient constraint solver is proposed to facilitate incremental generation of such test inputs. Expand
Principles and methods of testing finite state machines-a survey
TLDR
The fundamental problems in testing finite state machines and techniques for solving these problems are reviewed, tracing progress in the area from its inception to the present and the stare of the art is traced. Expand
Proof Rules for Automated Compositional Verification through Learning
TLDR
Novel assume- guarantee rules in the setting of finite labelled transition systems with blocking communication are presented and it is shown how these rules can be applied in an iterative and fully automated fashion within a framework based on learning. Expand
...
1
2
3
4
...