For queries with multiple predicates over a multikey field, you can't intersect the index bounds. Suppose there is a multikey index on field 'a'. The following query
would have empty index bounds if 'a' were not a multikey field. Since it is multikey, however, we either use bounds
Which bounds to use is chosen arbitrarily. As an optimization, we could make sure that we always choose the smallest interval over which to perform the index scan. For instance, for the query
we would choose
because the former is a subset of the latter.