paper-with-me

Papers

Semantic Clone Detection via Probabilistic Software Modeling

2020-08-11 · Hannes Thaller, Lukas Linsbauer, Alexander Egyed

Semantic clone detection is the process of finding program elements with similar or equal runtime behavior. For example, detecting the semantic equality between the recursive and iterative implementation of the factorial computation. Semantic clone detection is the de facto technical boundary of clone detectors. In recent years, this boundary has been tested using interesting new approaches. This article contributes a semantic clone detection approach that detects clones that have 0% syntactic similarity. We present Semantic Clone Detection via Probabilistic Software Modeling (SCD-PSM) as a stable and precise solution to semantic clone detection. PSM builds a probabilistic model of a program that is capable of evaluating and generating runtime data. SCD-PSM leverages this model and its model elements for finding behaviorally equal model elements. This behavioral equality is then generalized to semantic equality of the original program elements. It uses the likelihood between model elements as a distance metric. Then, it employs the likelihood ratio significance test to decide whether this distance is significant, given a pre-specified and controllable false-positive rate. The output of SCD-PSM are pairs of program elements (i.e., methods), their distance, and a decision on whether they are clones or not. SCD-PSM yields excellent results with a Matthews Correlation Coefficient greater than 0.9. These results are obtained on classical semantic clone detection problems such as detecting recursive and iterative versions of an algorithm, but also on complex problems used in coding competitions.

📄 PDF Abstract BibTeX arXiv:2008.04891

Code (0)

등록된 구현이 없습니다.

Tasks

Clone Detection

Similar Papers 제목 키워드 기반

Code Clone Detection based on Event Embedding and Event Dependency

2021-11-28 · Cheng Huang, Hui Zhou, Chunyang Ye, Bingzhuo Li

The code clone detection method based on semantic similarity has important value in software engineering tasks (e.g., software evolution, software reuse). Traditional code clone detection technologies pay more attention …

Clone DetectionSemantic SimilaritySemantic Textual Similarity

On the Use of Deep Learning Models for Semantic Clone Detection

2024-12-19 · Subroto Nag Pinku, Debajyoti Mondal, Chanchal K. Roy

Detecting and tracking code clones can ease various software development and maintenance tasks when changes in a code fragment should be propagated over all its copies. Several deep learning-based clone detection models …

Clone DetectionDeep Learning

Detecting Code Clones with Graph Neural Networkand Flow-Augmented Abstract Syntax Tree

2020-02-20 · Wenhan Wang, Ge Li, Bo Ma, Xin Xia 외

Code clones are semantically similar code fragments pairs that are syntactically similar or different. Detection of code clones can help to reduce the cost of software maintenance and prevent bugs. Numerous approaches of…

Clone Detection

Clone-Seeker: Effective Code Clone Search Using Annotations

2021-06-06 · Muhammad Hammad, Önder Babur, Hamid Abdul Basit, Mark van den Brand

Source code search plays an important role in software development, e.g. for exploratory development or opportunistic reuse of existing code from a code base. Often, exploration of different implementations with the same…

Code SearchNatural Language Queries

AST-Enhanced or AST-Overloaded? The Surprising Impact of Hybrid Graph Representations on Code Clone Detection

2025-06-17 · Zixian Zhang, Takfarinas Saber

As one of the most detrimental code smells, code clones significantly increase software maintenance costs and heighten vulnerability risks, making their detection a critical challenge in software engineering. Abstract Sy…

Clone DetectionGraph AttentionGraph Neural Network