if (leftArg instanceof Var && !bindingNames.contains(((Var)leftArg).getName())
|| rightArg instanceof Var && !bindingNames.contains(((Var)rightArg).getName()))
{
// One or both var(s) are unbound, this expression will never
// return any results
filter.replaceWith(new EmptySet());
return;
}
if (leftArg instanceof Var && rightArg instanceof Var) {
// Rename rightArg to leftArg