Why $L$-structures cannot satisfy a contradiction Looking at Tarki's semantics wrt First Order Logic, I have some problems in pinning down the true reason why, given an $L$-structure $M$, and any $L$-sentece $\sigma$ (atomic for simplicity), we have $$M \not\models \sigma \wedge \neg\sigma$$
In this context, structures are sets with given functions and relations that interpret their symbolic counterparts. Given the actual definition of "$\models$", everything boils down to the fact that the sets we are working with are well-behaved, in the sense that we cannot have $$a \in P \wedge a \not\in P$$ But then I ask myself why the reason behind this. Is it a "consistency" assumption we are making on these sets? And if these sets are described by ZF, are we assuming the consistency of ZF? 
Thanks
 A: I don't follow your analysis that this is related to sets being "well-behaved". Set theory isn't relevant to this question (though of course it's involved in the definition of Tarkian semantics: the notion of $L$-structure and the definition of satisfaction). Instead, your question just comes down to the fact that we reason in classical logic at the meta level (i.e. whenever we do ordinary mathematics). 
Let's unpack what Tarski's semantics say about the situation:
Suppose $M$ is an $L$-structure and $\sigma$ is an $L$-sentence such that $M\models \sigma\land \lnot\sigma$. By the semantics of $\land$, $M\models \sigma$ and $M\models \lnot \sigma$. By the semantics of $\lnot$, $M\not\models \sigma$. So we have that $M$ satisfies $\sigma$ and $M$ does not satisfy $\sigma$. This is a contradiction. 
So (viewing the above as a proof by contradiction), we have established that for all $L$-structures $M$ and all $L$-sentences $\sigma$, $M\not\models \sigma\land \lnot \sigma$. 

What happened in that argument is that the definition of satisfaction turned a contradiction at the object level (satisfaction of the sentence $\sigma\land\lnot \sigma$) into a contradiction at the meta-level (the statements "$M\models \sigma$" and "$M\not\models \sigma$"). This is a contradiction just like any other in mathematics (e.g. the statements "$n$ is even" and "$n$ is not even" when $n\in \mathbb{N}$).  
At the risk of entertaining what is really a red herring in your question: We are no more assuming "ZF is consistent" when doing model theory than we do when doing any other kind of ordinary mathematics. The usual standard for proof in ordinary mathematics is the ability (in principle) to formalize our proofs in ZF(C), which means that it would be very concerning if ZF were found to be inconsistent. But we do not need to assume the axiom "ZF is consistent" to prove things from ZF. In particular, we do not need to assume "ZF is consistent" to use the method of proof by contradiction. This proof method is baked into the logic we use when doing mathematics and has nothing to do with set theory. 
