a user wants a more efficient search capability. (It is more efficient than calling equivalent_patterns() over and over in a loop, because it doesn't repeatedly re-canonicalize the search pattern.)