public HiveLoptMultiJoin.Edge createEdge(RexNode condition) {
    ImmutableBitSet fieldRefBitmap = fieldBitmap(condition);
    ImmutableBitSet factorRefBitmap = factorBitmap(fieldRefBitmap);
    return new HiveLoptMultiJoin.Edge(condition, factorRefBitmap, fieldRefBitmap);
  }
Determines whether there is a mapping from a column in the right factor
of a self-join to a column from the left factor. Assumes that the right
factor is a part of a self-join.

@param rightFactor the index of the right factor
@param rightOffset the column offset of the right factor

@return the offset of the corresponding column in the left factor, if
such a column mapping exists; otherwise, null is returned
ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveLoptMultiJoin.java