Generalization-Driven Semantic Clone Detection in CLP

Research output: Contribution in Book/Catalog/Report/Conference proceedingConference contribution

56 Downloads (Pure)


In this work we provide an algorithm capable of searching for semantic clones in CLP program code. Two code fragments are considered semantically cloned (at least to some extent) when they can both be transformed into a single code fragment thus representing the functionality that is shared between the fragments. While the framework of what constitutes such semantic clones has been established before, it is parametrized by a set of admissible program transformations and no algorithm exists that effectively performs the search with a concrete set of allowed transformations. In this work we use the well-known unfolding and slicing transformations to establish such an algorithm, and we show how the generalization of CLP goals can be a driving factor both for controlling the search process (i.e. keeping it finite) as for guiding the search (i.e. choosing what transformation(s) to apply at what moment).

Original languageEnglish
Title of host publicationLogic-Based Program Synthesis and Transformation - 29th International Symposium, LOPSTR 2019, Revised Selected Papers
EditorsMaurizio Gabbrielli
Number of pages15
ISBN (Print)9783030452599
Publication statusPublished - 21 Apr 2020
Event29th International Symposium on Logic-Based Program Synthesis and Transformation, LOPSTR 2019 - Porto, Portugal
Duration: 8 Oct 201910 Oct 2019

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume12042 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349


Conference29th International Symposium on Logic-Based Program Synthesis and Transformation, LOPSTR 2019


Dive into the research topics of 'Generalization-Driven Semantic Clone Detection in CLP'. Together they form a unique fingerprint.

Cite this