Transforms predicate (attribute = 1 or attribute = 2 or attribute = 3) into
 (attribute in (1, 2, 3)
 InPredicate is easier to evaluate in both indexed and non-indexed scenarios.
 When index is not used then 
Predicate require just a single reflective call
 the extract an attribute for 
QueryableEntry while
 disjunction of equalPredicate(s) requires one reflective call for each equalPredicate.
 The performance is even more significant when tha 
AbstractPredicate.attributeName is indexed.
 As then the InPrecicate can be evaluated by just a single hit into index.
 When index is used then