For readability, I'd extract this to `define_query_method(name) if instance_predicate`

Also, should it be subject to the same `remove_possible_method` logic as the non-predicate method?