Detection of similarities in student programs: YAP'ing may be preferable to plague'ing
SIGCSE '92 Proceedings of the twenty-third SIGCSE technical symposium on Computer science education
Sim: a utility for detecting similarity in computer programs
SIGCSE '99 The proceedings of the thirtieth SIGCSE technical symposium on Computer science education
An algorithmic approach to the detection and prevention of plagiarism
ACM SIGCSE Bulletin
SIGCSE '81 Proceedings of the twelfth SIGCSE technical symposium on Computer science education
Clone Detection Using Abstract Syntax Trees
ICSM '98 Proceedings of the International Conference on Software Maintenance
Identifying redundancy in source code using fingerprints
CASCON '93 Proceedings of the 1993 conference of the Centre for Advanced Studies on Collaborative research: software engineering - Volume 1
Measurements of program similarity in identical task environments
ACM SIGPLAN Notices
Plagiarism in programming assignments
IEEE Transactions on Education
Value-based program characterization and its application to software plagiarism detection
Proceedings of the 33rd International Conference on Software Engineering
Hi-index | 0.00 |
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 distinguishing 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.