1. Introduction
A software clone is a fragment of source or executable code, that is copied in the same program or in a different one, whereas the act of copy is called software cloning [20]. Software cloning is a form of software reuse; in fact clones are identical or similar pieces of code, designs, or other artifacts exploited during the development of a software system. The copy-paste of someone else's code fragments into a different author's software program is a widely used programming practice, ranging from 5%-15% of the code base [24] up to 50% [22]. On average, the reuse of other people's code in large software programs is estimated around 20%-30% of code [1].