General
11 min
Token Fingerprinting vs AST Matching on 1,000 Refactored Java Programs
When students rename variables, extract methods, and reorder statements to hide copied code, which detection algorithm actually holds up? A controlled experiment pits winnowing, token-based matching, and AST structural hashing against a ladder of refactoring transformations — and reveals why single-technique checkers miss the cases that academic-integrity panels care about most.