Russell's paradox and axiom of separation I don't quite understand how the axiom of separation resolves Russell's paradox in an entirely satisfactory way (without relying on other axioms).
I see that it removes the immediate contradiction that is produced by unrestricted comprehension, but it seems that we still need further axioms to guarantee that a well-formed set $S$ will never contain the set of all given elements (of $S$) which do not contain themselves.
Is that correct? 
 A: The guarantee that such a set can't exist is already given by the argument of Russell's paradox: its existence leads to a contradiction therefore it can't exist.
The problem with unrestricted comprehension was that it guaranteed the set does exist, which causes a problem because of the conflicting guarantees.
A: I don't think the axiom scheme of separation "resolves" Russell's paradox at all, but restricts the way of using predicates to determine sets.
The paradox is nothing but a proof that there is no one-to-one correspondence between predicates and classes: there are predicates that not defines a class. When writing sets as $\{x|p(x)\}$ that one-to-one correspondence is understood. Therefore axiomatic set theory is to show that sets exists and show rules how to create sets. If $A$ is a set, then the set $\{x\in A|p(x)\}$ never will cause any trouble, due to the theories.
A: Axioms are used to show that under some circumstances, some sets exist.
Russell's paradox shows that not every definable collection can be a set. So we have to restrict what sort of definable collections we allow. The separation axiom schema essentially say that if $A$ is already a set, then every definable subcollection of $A$ is also a set.
If we repeat the Russell paradox over a set $A$ using Separation, then we don't get a contradiction. We get an interesting theorem:

For every set $A$ there is a set $B$ such that $B\notin A$.

A: You are correct.
Russell's Paradox exposed the inconsistency of a proposed formal set theory of his day. This so-called naive set theory allowed you to derive theorems of the form:

$\exists S: \forall a:[a \in S \iff P(a)]$ for any unary predicate $P$. 

This was called the axiom schema of unrestricted comprehension. 
For $P(a)\equiv a\notin a$, however, we could then prove to the contrary that:
$\neg\exists S:\forall a:[a\in S \iff a\notin a]$
The moral of the story: Just because you can "define" a set doesn't mean it actually exists. Some restrictions must apply. 
These restrictions were described, at least in part, in the so-called axiom schema of restricted comprehension that replaced the above axiom:

$\forall X:\exists S: \forall a:[a \in S \iff a\in X \land P(a)]$ for any unary predicate $P$ where $S$ is not referred to in $P(a)$.

This eliminated the direct route to Russell's Paradox and plugged one hole in naive set theory. Various ways including effectively banning self-reference altogether (e.g. $x\in x$) were also introduced into set theory. This, it was hoped, would banish anything resembling Russell's Paradox for good. 
