Why the set of models of a proposition is a closed set in the product topology I'm trying to understand the topological proof of compactness of propositional logic, so here's the part (I think) I understand:  We let $\mathcal A$ be the set of propositional variables, $\Gamma$ any set of finitely satisfiable sentences.  (I.e. every finite subset of $\Gamma$ has a model.)  We consider the set of points $\{0,1\}^\mathcal{A}$ to have the topology given by the sub-base of all models of all sentences.  That is to say, the sub-base is $\{{\frak U}\subseteq \{0,1\}^\mathcal A|\exists \phi\in \Gamma, \ \mathfrak{U}\vDash \phi\}$.
Now suppose $\phi\in\Gamma$ and define the set of all its models, $F_\phi=\{{\frak U}\subseteq \{0,1\}^\mathcal A|{\frak U}\vDash \phi\}$.  It is trivial that in this topology $F_\phi$ is open, but in Tao's post on this, he says that it is also closed:  https://terrytao.wordpress.com/2009/04/10/the-completeness-and-compactness-theorems-of-first-order-logic/  His explanation is that $\phi$ has only finitely many propositional variables.
Now I thought that the justification for why $F_\phi$ would be closed is to argue that its complement is open.  To show that the complement is open we remark that $F_\phi^c=\{{\frak U}\subseteq\{0,1\}^\mathcal A|{\frak U}\vDash \neg\phi\}$.  Maybe I'm skipping a step here, but if so I'm not sure what it is.  I don't see where it's important that $\phi$ has finitely many variables.

However, as I type this, I now realize that actually I think I'm severely confused about exactly what topology we're putting on $\{0,1\}^\mathcal A$.  The only place Tao mentions which topology it is, is where he mentions this sub-base idea.  But if that's the topology then either it's not the product topology, or it's equivalent to some product topology that I don't understand.
Now if we are actually using the product topology, I would have to guess that the topology we're putting on any individual space $\{0,1\}$ is the Sierpinski topology.  And I assume that just because the only other option is the discrete or trivial topologies, both of which seem useless here.
But if it's Sierpinski, then I don't see how $F_\phi$ is open OR closed!  If $\phi=P_1$ then $F_\phi=\{1\}\times \{0,1\}\times \{0,1\}\times \cdots$ which is not closed because it's complement $F_\phi=\{0\}\times \{0,1\}\times \{0,1\}\times \cdots$ is not a product of open sets and therefore is not open.
 A: The fact that we have finitely many variables implies that $F_\phi=\{{\frak U}\subseteq \{0,1\}^\mathcal A|{\frak U}\vDash \phi\}$ is open for a formula $\phi$.
As a consequence it follows that $F_{\lnot \phi}$ is also open and as this is the complement of $F_\phi$, as you note, it follows that $F_\phi$ is closed. So the closedness uses the openness which uses the finiteness (and there the fact that we have open sets depending on finitely many coordinates is essential).
BTW: $\{0,1\}$ has the discrete topology in each coordinate. And a basic open set is of the form $\{f \in \{0,1\}^{\mathcal{A}}\mid f(v_1)= i_0,\ldots f(v_n) = i_n\}$, so the set of all truth assignments $f$ that assume the values $i_0 \in \{0,1\}$ for the finitely many   variables $v_1,\ldots v_n$. A set is open iff it is a union of basic sets, as usual. If $f$ describes a valid model for $\phi$, we just need to use such a set for the exact set of variables that occur in $\phi$ as the truth value only depends on those assignments.
