private Expression distributeConjunctionWithUnion(Union lhs, Expression rhs) {
Expression uLhs = lhs.getLhs();
Expression uRhs = lhs.getRhs();
Expression newConj1 = getNext(new Conjunction(rhs, uLhs));
Expression newConj2 = getNext(new Conjunction(rhs, uRhs));
return getNext(new Union(newConj1, newConj2));
}