TODO: make sure no equal Pattern objects are added to the candidate_tuples list