The documentation doesn't make clear that derived predicates are evaluated from the predicates_df columns AFTER (subject_id,tiemstamp) aggregation. This order of operations poses an issue with the support of range only predicates (predicates with null codes) as described here.