Recognizing patterns