Inductive specification recovery: Understanding software by learning from example behaviors

作者:William W. Cohen

摘要

We describe a technique for extracting specifications from software using machine learning techniques. In our proposed technique, instrumented code is run on a number of representative test cases, generating examples of its behavior. Inductive learning techniques are then used to generalize these examples, forming a general description of some aspect of the system's behavior. A case study is presented in which this “inductive specification recovery” method is used to find Datalog specifications forC code that implements database views, in the context of a large real-world software system. It is demonstrated that off-the-shelf inductive logic programming methods can be successfully used for specification recovery in this domain, but that these methods can be substantially improved by adapting them more closely to the task at hand.

论文关键词:induction, machine learning, reverse engineering, Datalog

论文评审过程:

论文官网地址:https://doi.org/10.1007/BF00871824