The “member” predicate is not a predicate like “shaves”; it is a primitive predicate, like “and”, with special semantics. If you want to generate the set of X for which member(X,Y) is true, you need Y to be bound. To generate the set of Y for which member(X,Y) is true, you need X to be bound. That’s what I meant.
That’s not a problem, because, like I said, both arguments of member(X,X) are bound in Russell’s paradox. They are both bound by the phrase “The set of all X such that. . .” that precedes them.
Asking for the set of all for which member(X,Y) is true is going to get stuck in an infinite loop without ever generating any results.
Again, I need to know how you are encoding sets before I can answer any question about what an algorithm would do on given input.
but if you define set theory and the algorithms used to answer queries, I think (but am not sure) you will find that you can prove what the algorithm will produce when run.
That’s not a problem, because, like I said, both arguments of member(X,X) are bound in Russell’s paradox. They are both bound by the phrase “The set of all X such that. . .” that precedes them.
Again, I need to know how you are encoding sets before I can answer any question about what an algorithm would do on given input.
One wouldn’t want all queries within set theory to be decidable by some algorithm. If that were the case, then set theory would not be able to capture enough of arithmetic.
I’m aware of that. This particular paradox, though, is one where the question seems to be decidable both ways, not one where it’s undecidable.