Let the class of languages $$X = \{ L \ | \ L\in NPC \land L\in coNPC\}$$
Why is it true that $NP \ne coNP \implies X = \emptyset$?
Computer Science Stack Exchange is a question and answer site for students, researchers and practitioners of computer science. It only takes a minute to sign up.
Sign up to join this communityLet the class of languages $$X = \{ L \ | \ L\in NPC \land L\in coNPC\}$$
Why is it true that $NP \ne coNP \implies X = \emptyset$?
Summarizing the comment as an answer:
Consider $L\in NPC$. By definition it means that every $A\in NP$ satisfies $$ A\le_p NPC.$$ Similarly, if $L\in coNPC$, then by definition (which is not very common, but we can defined it in similar way to NPC), every $B \in coNP$ satisfies $$B\le_p coNPC.$$
So assume $X$ is non-empty, that is, there is $L$ which is both NP-complete, and coNP-complete.
Now, $L$ is in $NP$ (since $NPC\subseteq NP$), but it is also in $coNP$ from a similar reason. From here we will get that $NP=coNP$. Assume not, so there is a language $A\in NP$ but $A\notin coNP$ (or the other way). But $A\le_p L$ since $L$ is complete for $NP$. This means $A$ can be reduced to a $coNP$ language (L!), which implies that $A\in coNP$, a contradiction. More generally, this reasoning implies that $NP \subseteq coNP$, and the other direction holds symmetrically. Thus $NP=coNP$ under these assumptions.