On Detecting Semantic Clones in Constraint Logic Programs

Résultats de recherche: Contribution dans un livre/un catalogue/un rapport/dans les actes d'une conférenceArticle dans les actes d'une conférence/un colloque

Résumé

Deciding whether two code fragments are semantic clones, or type-4 clones, is a problem with many ramifications. Current research often focuses on the problem in an imperative or object-oriented setting and most existing work uses abstract syntax trees, program dependency graphs, program metrics or text-based, token-based and machine learning-based approaches to identify semantic clones. In this work, we adopt a fundamentally different point of view and express clone detection as a search problem in a logic programming setting. Due to their restricted syntax and semantics, (constraint) logic programs are by nature simple and elegant candidates for automated analysis. After having formalized the clone detection problem at the level of predicates, we develop a study of the different parameters that come into play in the resulting framework. We try and identify the complexity issues involved in a general semantic clone detection procedure that essentially computes so-called most specific generalizations for predicates written in constraint logic programming (CLP). Even though well-known for basic structures such as literals and terms, generalization (or anti-unification) of more complex structures such as clauses and predicates has received very little attention. We show that the anti-unification allows both to control the search and guide the detection of cloned predicates. We pinpoint where efficient approximations are needed in order to be able to identify semantic code clones in a manageable time frame.
langue originaleAnglais
titreProceedings - 2022 IEEE 16th International Workshop on Software Clones, IWSC 2022
Sous-titreProceedings
EditeurIEEE Computer society
Pages32 - 38
Nombre de pages7
ISBN (Electronique)978-1-6654-8447-3
ISBN (imprimé)978-1-6654-8448-0
Les DOIs
Etat de la publicationPublié - 14 déc. 2022
Evénement2022 IEEE 16th International Workshop on Software Clones - Limassol, Chypre
Durée: 2 oct. 20222 oct. 2022
https://iwsc2022.github.io/

Série de publications

NomProceedings - 2022 IEEE 16th International Workshop on Software Clones, IWSC 2022

Une conférence

Une conférence2022 IEEE 16th International Workshop on Software Clones
Titre abrégéIWSC 2022
Pays/TerritoireChypre
La villeLimassol
période2/10/222/10/22
Adresse Internet

Empreinte digitale

Examiner les sujets de recherche de « On Detecting Semantic Clones in Constraint Logic Programs ». Ensemble, ils forment une empreinte digitale unique.

Contient cette citation