Automatic Test Pattern Generation Algorithms