Complement of languages and coNP
The complement (note spelling) of $\mathrm{SAT}$ is the set of all binary strings that do not encode a satisfiable Boolean formula. That is all strings that encode unsatisfiable formulas, and also any strings that don't encode any formula at all.

In practice, we tend to ignore strings that don't encode a valid input to the problem. For any sane encoding, recognising which strings are valid encodings is computationally very easy.  For any such encoding, the computational complexity of the two languages
$$\{w\mid w\text{ encodes an unsatisfiable formula}\}$$
and
$$\{w\mid w\text{ encodes an unsatisfiable formula or is not a valid encoding}\}$$
is the same, so we tend not to distinguish between them.

Alternatively, it's usually fairly straightforward to come up with an encoding where every string is a valid encoding of some input. For example, consider a problem whose input is a graph.  Na&iuml;vely (and normally!) we would encode a graph as the binary listing of its adjacency matrix. However, that means that only inputs whose length is a perfect square are valid.  We could make every string valid by adding zeros to the end until the length is a perfect square so that, e.g., the string $01101$ would encode the graph whose adjacency matrix is
$$\left(\begin{matrix}0&amp;1&amp;1\\0&amp;1&amp;0\\0&amp;0&amp;0\end{matrix}\right).$$
If our input is supposed to be an undirected graph, that's still no good, since the matrix isn't symmetric.  In that case, we could just encode the entries above the diagonal, again padding with zeros to reach the next triangular number.  In this encoding, $01101$ would encode the graph with adjacency matrix
$$\left(\begin{matrix}0&amp;0&amp;1&amp;1\\0&amp;0&amp;0&amp;1\\1&amp;0&amp;0&amp;0\\1&amp;1&amp;0&amp;0\end{matrix}\right).$$

But translating between these inputs is easy (it can be done in, e.g., deterministic logspace), so we usually just ignore these fine details.