change subscript predicate index type to size_t since it must be positive
implement subscript predicate evaluation