copy vs rename detection: avoid unnecessary O(n*m) loops