Predicate optimization improvements

- Between ranges
- Simplified effective predicates from partitions