I have a language $L$. Its theory is $(T,Q)$ where $P$ is a unary predicate and $\{x/y\}$ is a substitution:
$$T = \forall x.\forall y.((P(x) \iff P\{ x /y \}) \Rightarrow y = x)$$ $$Q = \exists x. \exists y. (x \neq y)$$
And I want to prove that this theory is complete.
The first thing which came to my mind is to find a model of this theory and show that there is only one such model so the theory is complete (I think it is complete).
I think the only model has domain $M = \{1,2\}$ and that $P = \{1\}$.
From $Q$ I can say that there have to be at least 2 items in domain. And I think that the max size of domain is 2 too because:
From
$$T = \forall x.\forall y.((P(x) \iff P\{ x /y \}) \Rightarrow y = x)$$
I can conclude that
$$T = \forall x.\forall y.((P(x) \iff P(y)) \Rightarrow y = x)$$
But I do not know how to continue, I think it is obvious that there can be at most 2 elements of $M$. Do you know what to do?
Any model must have at most two elements, by the pigeonhole principle. Suppose $M\models T$ has three distinct elements $a, b, c$. Look at whether $P$ holds or fails of each $a, b, c$. By the pigeonhole principle, we can find two of $a, b, c$ on which $P$ fails or on which $P$ holds - for example, maybe $P(a)$ and $P(b)$ both hold.
But now look at what $T$ says about these! "$P(a)$ and $P(b)$" implies "$P(a)\iff P(b)$" (do you see why?), so what does $T$ allow us to conclude about $a$ and $b$?
Meanwhile, you seem to be conflating "only one model" with "only one model up to isomorphism." For example, if we take $M=\{1, 32\}$ and $P=\{32\}$, this also yields a model of the theory; so your statement is not quite right as phrased.