Definition of "separate" in Diestels‘s Graph Theory In Dietels Graph theory, he defined "separate" in chapter 1.4 as

If $A, B \subseteq V$ and $X \subseteq V \cup E$ are such that every $A-B$ path in $G$ contains a vertex or an edge from $X$, we say that $X$ separates the sets $A$ and $B$ in $G$. Note that this implies $A \cap B \subseteq X$.

So vertex in A or B is allowed to be in X? However, in chapter 3.3, he stated the following theorem:

A set of $a-B$ paths is called an $a-B$ fan if any two of the paths have only $a$ in common.
Corollary 3.3.4. For $B \subseteq V$ and $a \in V \backslash B$, the minimum number of vertices separating $a$ from $B$ in $G$ is equal to the maximum number of paths forming an $a-B$ fan in $G$.

Here is the contradiction: isn't {a} itself a separator of $a$ and B? Which makes the corollary wrong in most cases.
This is such a fundamental and important concept yet I can't find explicit explanation in the book, could someone clarify it? Thanks!

What Diestel is doing here is not standard; most treatments simply do not allow the case $A \cap B \ne \varnothing$. It makes some theorems a bit simpler or a bit stronger: for example, the proof of this corollary in Diestel reads "apply Menger's theorem to $N(a)$ and $B$" and this would ordinarily need to be qualified if $a$ had neighbors in $B$. The downside is that it's easy to make mistakes in the statements, like here.
My version of Diestel's Graph Theory (an electronic version of the third edition) has

Corollary 3.3.4. For $B \subseteq V$ and $a \in V \smallsetminus B$, the minimum number of vertices $\ne a$ separating $a$ from $B$ in $G$ is equal to the maximum number of paths forming an $a{-}B$ fan in $G$.

Note the extra qualifier "$\ne a$" which addresses your concern.
