The Daikon system for dynamic detection of likely invariants
β Scribed by Michael D. Ernst; Jeff H. Perkins; Philip J. Guo; Stephen McCamant; Carlos Pacheco; Matthew S. Tschantz; Chen Xiao
- Publisher
- Elsevier Science
- Year
- 2007
- Tongue
- English
- Weight
- 264 KB
- Volume
- 69
- Category
- Article
- ISSN
- 0167-6423
No coin nor oath required. For personal study only.
β¦ Synopsis
Daikon is an implementation of dynamic detection of likely invariants; that is, the Daikon invariant detector reports likely program invariants. An invariant is a property that holds at a certain point or points in a program; these are often used in assert statements, documentation, and formal specifications. Examples include being constant (x = a), non-zero (x = 0), being in a range (a β€ x β€ b), linear relationships (y = ax + b), ordering (x β€ y), functions from a library (x = fn(y)), containment (x β y), sortedness (x is sorted), and many more. Users can extend Daikon to check for additional invariants.
Dynamic invariant detection runs a program, observes the values that the program computes, and then reports properties that were true over the observed executions. Dynamic invariant detection is a machine learning technique that can be applied to arbitrary data. Daikon can detect invariants in C, C + +, Java, and Perl programs, and in record-structured data sources; it is easy to extend Daikon to other applications.
Invariants can be useful in program understanding and a host of other applications. Daikon's output has been used for generating test cases, predicting incompatibilities in component integration, automating theorem proving, repairing inconsistent data structures, and checking the validity of data streams, among other tasks.
Daikon is freely available in source and binary form, along with extensive documentation, at http://pag.csail.mit.edu/daikon/.
π SIMILAR VOLUMES
With a view to extracting some further insight into the features of a dynamical system, we investigate here the possibility of its admitting complex dynamical invariants. For this purpose, both the rationalization and the Lie algebraic methods are employed to study the one-dimensional Hamiltonian sy
Conditions are given for smooth finite dimensional mappings which are precluding the existence of invariant Lipschitz compact submanifolds for those mappings. Flows, their discretizations, and their averagings are studied as well. Mappings and flows with constraints are also investigated.
For the set of linear dynamic systems with a given number of inputs and outputs, a complete set of independent invariants may be constructed and used to create state space and transfer function canonical forms. Snmmary--This paper is a study of the problem of how to parametfize the set of all finit