DQL: Order of filter execution vs pagination

From what I understand, the filter is executed after the root filter and pagination, just as it reads. To paginate that after applying multiple filters, you could:

{
  set as var(func: type(Student)) @filter(allofterms(name, "Lydia  Spirits")) # or vise-versa, which ever filters to a smaller set faster
  student(func: uid(set), first: 10, offset: 0){
    uid
    name
  }
}

(feel free to correct me anyone who knows better, answering from recollection)