1 ) A method for comparing two program source code files to help an expert determine whether one file contains source code that has been copied from the other file or whether both files contain code that has been copied from a third file, the method comprising a) eliminating programming comments from the first source code file; b) eliminating programming comments from the second source code file; c) substituting a single space character for sequences of whitespace characters in each remaining line of functional programming code in said first file; d) substituting a single space character for sequences of whitespace characters in each remaining line of functional programming code in said second file; e) putting each remaining line of functional programming code of the first file into an array of text strings; f) putting each remaining line of functional programming code of the second file into a second array of text strings; and g) finding all matches between text strings in said first array with text strings in said second array.