Esto se debe a que el tipo de datos TIMESTAMP es más preciso que DATE, por lo que cuando proporciona el valor del parámetro TIMESTAMP en la condición de columna DATE, Oracle tiene que convertir todos los valores DATE en TIMESTAMP para hacer una comparación (este es el uso de INTERNAL_FUNCTION anterior) y, por lo tanto, el índice debe estar completo escaneado