# Why was this line in the loop? It appears to be 'constant' # WRT to $j... # convert the binaries to decimals out here before we get into the loop... my @final_values = map { bintodec($_) } split(/[\s|\t]+/, $current_case); my %hash; # just initialize these, but need no values... @hash{ @final_values } = (); my $not_found = 0; for $j (0..((2**$current_size) - 1)) { $not_found ||= !defined(%hash{ $j }); last if $not_found; } # $not_found will be 1 if at least one was missed...