public static <T extends Expression> Cluster<T> newCluster(
        List<T> expressions, Scope scope, Analysis analysis) {
      long count =
          expressions.stream()
              .map(expression -> scopeAwareKey(expression, analysis, scope))
              .distinct()
              .count();

      checkArgument(
          count == 1, "Cluster contains expressions that are not equivalent to each other");

      return new Cluster<>(expressions);
    }
A group of expressions that are equivalent to each other according to ScopeAware criteria
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/SubqueryPlanner.java