{'fraction_non_alphanumeric': 0.012064343163538873, 'fraction_numerical': 0.0, 'mean_word_length': 4.702290076335878, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Duplicate and Plagiarism Search in Program Code Using Suffix Trees over Compiled Code

The search for duplicate source code allow both to improve the quality of the software being developed and to detect plagiarism. In this paper, it is proposed to use a set of features of modern optimizing compilers to simplify and reduce this task to a search by similarity of text fragments. In this case, many types of cosmetic changes in code do not affect the search result. In order to effectively search by similarity, we use sparse suffix trees built on binary encoded data. Algorithms for constructing such a tree and performing a search are presented. The application of the results to detect cheating in a distance programming workshop is described.