// keep track of docs that appear in all terms that are filtered in.
  private void computeDocsIntersection(Set<Integer> docs) {
    // sanity check
    if (!hasFilters()) {
      return;
    }

    if (mDocsIntersection.isEmpty()) {
      mDocsIntersection = docs;
    } else {
      mDocsIntersection = SetUtil.intersect(mDocsIntersection, docs);
    }
  }