We currently use std::binary_search for evaluating predicates. For IN list over primitives, it's more efficient to avoid branches and instead do linear search. Linear search can also be unrolled and implemented with SIMD comparisons. I would guess we can get a 4x or more perf improvement for relatively common cases like IN lists containing <10 elements.