In this paper, we introduce an evaluation system for identifying program similarity by comparing syntax-trees for the given programs. By using syntax-trees, this system is capable of istinguishing plagiarism in spite of changes in program styles such as indent, white space and comments. It can also recognize plagiarism patterns resulting from changes in program structure such as statement exchanges, code block and function. Syntax-trees are created after program parsing, so they have the advantage of performing syntax and semantic analysis automatically. We also introduce an evaluation algorithm for program similarity and a grouping algorithm for the sake of reducing the count of comparisons. The experiment and estimation proves that a grouping algorithm can reduce a lot of counts of comparison. |