parquet-column/src/main/java/org/apache/parquet/filter2/compat/FilterCompat.java
public static Filter get(FilterPredicate filterPredicate) {
    checkNotNull(filterPredicate, "filterPredicate");

    LOG.info("Filtering using predicate: {}", filterPredicate);

    // rewrite the predicate to not include the not() operator
    FilterPredicate collapsedPredicate = LogicalInverseRewriter.rewrite(filterPredicate);

    if (!filterPredicate.equals(collapsedPredicate)) {
      LOG.info("Predicate has been collapsed to: {}", collapsedPredicate);
    }

    return new FilterPredicateCompat(collapsedPredicate);
  }
public static Filter get(FilterPredicate filterPredicate) {
    checkNotNull(filterPredicate, "filterPredicate");

    LOG.info("Filtering using predicate: {}", filterPredicate);

    // rewrite the predicate to not include the not() operator
    FilterPredicate collapsedPredicate = LogicalInverseRewriter.rewrite(filterPredicate);

    if (!filterPredicate.equals(collapsedPredicate)) {
      LOG.info("Predicate has been collapsed to: {}", collapsedPredicate);
    }

    return new FilterPredicateCompat(collapsedPredicate);
  }
Given a FilterPredicate, return a Filter that wraps it.
This method also logs the filter being used and rewrites
the predicate to not include the not() operator.

@param filterPredicate a filter predicate
@return a filter for the given predicate