2010) proposed a hybrid technique using Abstract Syntax Tree (AST) to identify clone candidates and textual methods to discard false positives.
An Automatic Refactoring Method of Cloned Code Using Abstract Syntax Tree and Static Analysis, Journal of Chinese Computer Systems, 28.
A typical tree-oriented mobile code representations compilation unit consists of a source module's abstract syntax tree and symbol table of a program (which would typically be generated during the compilation of the source program even if native machine code were to be targeted) [12, 29, 39, 28].
Slim Binaries avoid these disadvantages by using a portable and high-level intermediate representation, that is based on the encoded abstract syntax tree and symbol table of a program.
The abstract syntax tree is then traversed and encoded into a stream of symbols from the evolving vocabulary.
Rather, every symbol in a slim binary describes a subtree of an abstract syntax tree in terms of all the subtrees that precede it in the file.
The task of the recognition algorithm is to construct a plan hierarchy that maps entries from the plan library onto this abstract syntax tree.
This is initially the entries appearing in the abstract syntax tree.
It operates on the code base abstract syntax trees
that are part of the DISCOVER information model.