Models come in every infinite size
The Löwenheim-Skolem theorems reveal a surprising fact about first-order logic: it cannot pin down the size of infinite structures. If a countable first-order theory has any infinite model at all, then it has models of every infinite cardinality. The downward direction builds small elementary substructures via Skolem hulls; the upward direction inflates models using compactness and new constants.
More precisely, given any structure M and any subset A of its domain, the downward theorem produces an elementary substructure N containing A with |N| = |A| + |L| + ℵ0. The construction proceeds by iteratively adding witness elements: for every existential formula satisfied in M, we throw a witnessing element into the hull. After countably many steps the hull closes, and the Tarski-Vaught test guarantees it is an elementary substructure.
The upward theorem uses the Compactness Theorem. To build a model of cardinality κ, we add κ-many new constant symbols with axioms saying they are all distinct. Every finite subset of the expanded theory is satisfiable in the original model (finitely many constants can always be mapped to distinct elements), so by compactness the whole theory has a model -- one of size at least κ.
Select seed elements in a large structure, then build the Skolem hull. At each step the construction finds an existential sentence witnessed in the ambient structure and adds the witness to the hull, until it closes under the Tarski-Vaught test.
Click elements in the structure to select seed elements, then build the Skolem hull. For each existential sentence witnessed in the big structure, the hull adds the witness element until it closes under the Tarski-Vaught test.
Key insight: No matter how large the original structure is, the Skolem hull construction always produces an elementary substructure whose size is controlled by the number of seed elements and the size of the language. For a countable language, you always get a countable elementary substructure.
Starting from a countable model, we add uncountably many new constants with distinctness axioms. Every finite subset is satisfiable (just interpret the finitely many constants as distinct elements), so compactness delivers a model of any desired cardinality.
Start with a countable model, add new constant symbols with distinctness axioms, verify every finite subset is satisfiable, and apply compactness to obtain a larger model.
Model elements (0):
Key insight: The upward theorem is a direct consequence of compactness. The trick is to demand distinctness of enough new constants: any finite fragment of these demands is trivially satisfiable, so the full set of demands is satisfiable too -- giving a model as large as you want.
If ZFC is consistent, the downward Löwenheim-Skolem theorem gives it a countable model. But ZFC proves that uncountable sets exist. How can a countable universe contain an uncountable set? Explore the internal vs. external perspective to resolve the paradox.
A countable model of ZFC "thinks" uncountable sets exist. Click elements to explore the gap between the model's internal perspective and the external reality. Toggle between views to see the paradox.
The resolution: "uncountable" is defined internally by the non-existence of a bijection with ω -- but the model is missing most bijections. From outside, we see that P(ω) has only countably many elements in the model, but the model lacks any internal bijection between ω and P(ω), so it correctly satisfies the ZFC axiom that P(ω) is uncountable. The concept of cardinality is relative to the model.
Key insight: "Uncountable" is not an absolute property -- it means there is no bijection within the model between the set and the natural numbers. A countable model simply lacks the bijections that would witness countability, so it honestly believes certain sets are uncountable. Skolem's paradox is not a contradiction but a lesson in the relativity of set-theoretic concepts.