Very Short Course on Forcing for Participants of XIV International Congress of Topology

I’d like to show you that the basic idea of forcing is really quite natural and simple. In addition, the apprentice forcer needn’t be, in my view, concerned with the more basic technical aspects (Cohen’s theorem). I’d like to convince you that you could be reading forcing arguments in a very short time.

The major obstacle to forcing is that we let our Platonic view of the set-theoretic universe cause us to doubt the possibility that forcing works. We must remember that the language of set-theory is simply ∈ and that we are really studying consequences of the axioms and not the strucure of the “real” universe of sets.

Through some logical formalism we can take the following view: There are countable transitive models, M, of ZFC. If we fix any infinite set (element) P of M, there are sets G ⊂ P which are not in M. We construct an extension M[G] of M which includes G. M[G] should be as small as possible and be a model of ZFC.

The model M[G] is generated by names.

Fix any set X ∈ M and any set τ ⊂ P × X with τ ∈ M. τ is a P -name for a subset of X.

Since, τ, X and G are all in M[G], it is very clear that we must also have, in M[G],

τ_{G} = {x ∈ X : (∃p ∈ G) (p, x) ∈ τ}

We also say that τ is a name for τ_{G}. I.e. τ_{G} simply must be in M[G] and τ is how it gets there.

Forcing is the technique of making use of the fact that all subsets of X in M[G] have such a description from elements of M.

Again, for emphasis, each subset of X in M[G] is of the form τ_{G} for some τ ⊂ P × X with τ ∈ M.

But clearly we need more things in M[G], sets of new subsets of X and so on. E.g. we can fix a collection {τ_{y} : y ∈ Y } ∈ M and then {(τ_{y})_{G} : y ∈ Y } is again in M[G]. It’s a good technical exercise that each subset of P(X) has such a name.

The official names are recursive: if Σ is a collection of P -names and σ ⊂ P × Σ, then σ is a P -name (and we can only use those that are members of M). But we won’t need them.

Next, we don’t use just any P and G but rather restrict to the case that P is a poset and then G will be a generic subset.

This is how we can gain some control over M[G].

Poset will mean atomless, separative and with a largest element (1). Separative means if p ≰ q, then there is an r < p such that r ⊥ q. r ⊥ q means no element is below both.

D ⊂ P is dense if each p ∈ P is above some member of D.

G ⊂ P is a filter if it is upwards closed and downwards directed (given p, q ∈ G, there is an r ∈ G below both)

G ⊂ P is P -generic (over a model M) if G meets every dense subset of P which is a member of M. I always think of P as a ↓-tree and G as a new branch. Let D_{P} denote the set of dense subsets of P. Since M is countable, D_{P} ∩ M is countable, so there are such G (this is the only place we need the fact that M is countable).

It is a little confusing to realize that all countable atomless posets are forcing equivalent, so it is really the family D_{P} ∩ M which is the key. But it is best not to think about this; just take the view that M is the whole universe of sets and that by some magic a generic filter G can be found. Actually, it is necessary (and obvious) to realize that each p in P is a member of many generic filters.

Lemma: G will not be P -generic over M[G] (equivalently, there are no members of M which are P -generics over M).

Proof. (Identifying dense subsets of P). Check that if G is a filter, then D_{G} = {p ∈ P : p^{↓} ∩ G = ∅} is dense. To see this, let q ∈ P and show that p or r is in D_{G}. Since G is directed, it contains something below at most one of p and r, hence one of them is in D_{G}.

[figure: q; p; r; P]

Here is a name for D_{G}: {(p, q) : p ⊥ q}. It is good to think this through.

Some useful notions related to dense:

A ⊂ P is pre-dense below a condition p, if A^{↓} = ⋃{a^{↓} : a ∈ A} is dense in p^{↓}. In terms of meeting G, A and A^{↓} are indistinguishable.

p is called stronger than q if p < q since p ∈ G implies q ∈ G (more information about where G will go).

A ⊂ P is an antichain if a ⊥ b for all distinct a, b ∈ A. Every maximal antichain is pre-dense. For each set A, there is an antichain B, such that A^{↓} = B^{↓}.

The cellularity (chain condition) of P is the minimum cardinal such that each antichain is smaller. Of course, ccc posets are quite commonly mentioned. This condition preserves ω_{1} which is crucial for proving ¬CH is consistent.

Nice names are a useful concept and every name τ has an equivalent nice name. For a name τ and a value x ∈ X, set

A_{x} = {p ∈ P : (p, x) ∈ τ}

In general, replace x by a “smaller than τ” name σ. It is nice if each A_{x} is an antichain.

If (p, x) ∈ τ, then

(*) (∀G) (generic) p ∈ G implies x ∈ τ_{G}; say that p ⊩ x ∈ τ. p ⊩ x ∈ τ (i.e. (*)) iff A_{x} is pre-dense below p.

This is because A_{x} pre-dense below p iff p ⊩ G ∩ A_{x} ≠ ∅.

On the other hand, we’d say that p ⊩ x ∉ G if there’s no generic G such that p ∈ G and x ∈ τ_{G}. This simply means that A_{x}^{↓} ∩ p^{↓} is disjoint. This is different from p ⊮ x ∈ τ. We say that p decides the statement x ∈ τ if either p ⊩ x ∈ τ or p ⊩ x ∉ τ. The set {p ∈ P : p decides x ∈ τ} is dense.

This is not discussing any particular G and can result in important information, in M, about the behaviour of τ in the “generic” generic extension. Consider the case, for example, when P is countable and X is uncountable. Some particular p will make the ‘x ∈ τ’ decision for uncountably many x ∈ X.

I often use the notation τ_{p} and τ_{p}^{+} for

{x : p ⊩ x ∈ τ} and {x : (∃q < p)q ⊩ x ∈ τ}

These sets are both in M and p ⊩ τ_{p} ⊂ τ ⊂ τ_{p}^{+}. Neither involves generic filters or forcing, just looking at the various A_{x}’s. E.g., τ_{p}^{+} is just those x such that p^{↓} meets A_{x}^{↓}.

For a formula φ, p ⊩ φ(τ_{1}, …, τ_{n}) means that

M[G] ⊧ φ((τ_{1})_{G}, (τ_{2})_{G}, …, (τ_{n})_{G})

holds for all generic G such that p ∈ G.

The set of those p which decide φ(τ_{1}, …, τ_{n}) is dense. This innocuous seeming statement has the following very important re-formulation:

Forcing Theorem: For each statement φ and generic filter G, if M[G] ⊧ φ, then there is a p ∈ G such that p ⊩ φ.

Nothing happens in M[G] “by accident”, we can figure it out from M by looking at names and dense sets - sometime called “by genericity”.

It is important to remember that if q < p and p ⊩ φ then q ⊩ φ.

A basic example: force with 2^{<ω_{1}}, then 1. ω_{1} is preserved

2. the old 𝔠 now has cardinality ω_{1}

3. the old 𝔠^{+} is now the cardinal ω_{2}

4. CH holds

5. ℝ^{M} = ℝ

6. ♢ holds.

7. there are new subsets of ω_{1} but not too many.

Certain things passing from M to M[G] are obvious. non-cardinals do not become cardinals, but some cardinals may not remain cardinals. Basic statements, e.g. x ∈ y do not change.

In the jargon, this poset is countably closed and has the 𝔠^{+}-chain condition.

countably closed is guaranteeing that ω_{1} is preserved and that no new reals are added.

The chain condition is guaranteeing that 𝔠^{+} remains a cardinal. Also the new value of 2^{ω_{1}} is bounded by (|P | · ω_{1})^{<c(P)} (count the nice names).

Suppose τ ⊂ P ×(𝔠 × 𝔠^{+}). This τ is a potential map witnessing that 𝔠^{+} does not remain a cardinal. We may assume that it is a nice name and that 1 forces that it is a function (you may wish to check out the maximum principle in Kunen’s text).

For each γ < 𝔠, and ξ, ζ < 𝔠^{+}, A_{(γ,ξ)} and A_{(γ,ζ)} (as per above) are antichains of P. But, in this case, the members of A_{(γ,ξ)} and A_{(γ,ζ)} are pairwise incompatible because τ(γ) cannot equal both ξ and ζ (which is equivalent to assuming that 1 forced that it was a function).

Since ⋃{A_{(γ,ξ)} : ξ ∈ 𝔠^{+}} has cardinality at most 𝔠, there is a set, F (γ), with cardinality at most 𝔠 such that τ(γ) is a member of F (γ). I.e., F (γ) is just the set of those ξ such that A_{(γ,ξ)} is not empty. The main point to our discussion till now is to realize that if ζ ∉ F (γ), then there is no G such that M[G] ⊧ τ(γ) = ζ.

The function F is a ground model approximation to the function τ (It is essentially τ_{1}^{+}). The set ⋃_{γ} F (γ) has an upper bound (computed in M) and thus, so does τ. (𝔠^{+})^{M} remains bigger than |(𝔠)^{M}|.

P is countably closed if each countable chain has a lower bound.

Lemma: a countably closed poset does not add any new countable sets of ordinals.

Proof: Suppose that τ is a P -name of a function from ω into M (and τ ∈ M). We will show that there is a condition p which decides the value of τ(n) for each n. Since p and τ are members of M, so is this sequence of values (i.e., τ_{p}). Thus p forces that τ is equal to a ground model function. I.e. for each n, let h(n) denote the unique value such that p ⊩ τ(n) = h(n). Thus p ⊩ τ = h. This is just τ_{p} = h = τ_{p}^{+}.

It is trivial to find p: Start with any p_{0}. Since the set D_{0} of conditions that decide the value of τ(0) is dense, p_{0} has an extension p_{1} ∈ D_{0}, i.e. which decides the value of τ(0). Similar p_{1} has an extension, p_{2} in D_{1}, and continue. So p_{n} can be chosen for each n (NO assumptions on P used yet). Now use P is countably closed to pick a lower bound p.

We started with any p_{0} and showed it had an extension, p, deciding τ is in M, thus the set of such p is dense and so every generic must meet it. I’ll be careless with this point, most arguments should start below a general p ∈ P since M[G] ⊧?? means there is a p forcing the situation.

CH holds: for each α ∈ ω_{1}, we can decode a real from G. Note that ⋃ G is just a function from ω_{1} to 2. Thus ⋃ G ↾ [α, α + ω) can be thought of as a function from ω to 2 (the α’th). In this way, we can think of G as supplying us with a list of ω_{1} many reals. We prove every real is listed by simply showing (exercise) that for each r ∈ ^{ω}2,

D_{r} = {p ∈ 2^{<ω_{1}} : (∃α)p(α + n) = r(n) for each n}

is dense.

Here’s the proof of ♢. For each limit α < ω_{1}, set a_{α} ⊂ α equal to {β ∈ α : (∪G)(α + β) = 1}.

Assume p_{0} ⊩ τ ⊂ ω_{1} and Ċ ⊂ ω_{1} is a cub. It suffices to find a q < p_{0} and an α such that q ⊩ α ∈ Ċ and τ ∩ α = a_{α}.

Construct p_{0} > p_{1} > p_{2} ⋯ together with α_{n} = dom(p_{n}) and β_{n} (n odd) so that, e.g.,

p_{2} decides τ ∩ α_{1}, α_{2} < β_{3} p_{3} ⊩ β_{3} ∈ Ċ (as for each 2n and 2n + 1).

Then p_{ω} = ⋃_{n} p_{n} decides τ ∩ α where α = sup_{n} α_{n} and forces that α is in Ċ (a little tricky since it uses that Ċ is a cub).

Thus, q = p_{ω}^{⌢}χ_{τ∩α} is the desired condition.

With these, we’ve seen some standard basic arguments. Others are similar but more subtle combinatorics on P are required for more delicate distinctions in M[G].

Now we look at 4 posets that add reals

For discussion, let F denote a set of increasing functions in ω^{ω} (e.g. a scale) and let A denote any maximal (descending) tower in P(ω). I.e. for all b ∈ [ω]^{ω}, there’s an A ∈ A with |A ∩ b| = ω and assume for technical reasons that A is closed under finite intersections, F is closed under finite sups, and both are closed under finite modifications.

P_{C} = ^{<ω}ω  [figure: +; s ∈ ω^{<ω}; + denotes possible extensions]

P_{F} = {(s, f) : f ∈ F and s ⊂ f} ordered by (s, f) ≤ (t, g) if g ≤ f.

[figure: +; s ∈ ω^{<ω}; g]

P_{A} =

[figure: A; +]

where P_{A} = P_{C} × A
and (t, B) ≤ (s, A) if
B ⊂ A, s ⊂ t and ran(t \ s) ⊂ A

Finally let P_{M} denote the measure algebra, i.e. compact positive measure subsets of [0, 1] ordered by reverse inclusion.

All are ccc and it is easy to see how each naturally adds a real.

e.g. if G is a generic for P_{M}, then for each n, exactly one of [i/2^{n}, (i + 1)/2^{n}] will be in G.

None of them have a violent effect on M but there are differences:

we may preserve that F is dominating; or only preserve unbounded but add an unbounded real; or add a real which dominates F.

Similarly for A: we may or may not add a pseudointersection for A; i.e. maximality of A may or may not change.

In the following, G will denote a generic filter for the poset under discussion.

Fact. For P_{F}: h = ⋃{s : (∃f)(s, f) ∈ G} will be bigger, mod finite, than every member of F.

Proof: D_{f} = {(s, g) ∈ P_{F} : f ≤^{∗}g} is dense. Remember our picture? A condition (s, g) forces that h(n) ≥ g(n) for all n ∉ dom(s).

Fact. For P_{C}: ⋃ G witnesses that F is not dominating in M[G]. It can jump real high any time it wants - conditions can’t say much.

Again, for each f,

D_{f} = {s ∈ ^{<ω}ω : (∃n)s(n) ≥ f(n)}

is dense.

Fact. For P_{C}: If F is unbounded in M then F remains unbounded in M[G]. Just as it was hard to get ⋃ G to stay small, it’s also hard to get it to stay big.

Proof: Let ḣ be a P_{C}-name of a member of ω^{ω}. We must produce a condition p and an f ∈ F such that p ⊩ f≰^{∗} ḣ.

Enumerate P_{C} as {p_{n} : n ∈ ω} . For each n, fix g(n) such that

(∀k ≤ n)(∃q ≤ p_{k})q ⊩ ḣ(n) ≤ g(n)} .

Find f ∈ F such that f≮^{∗} g. Suppose there is some p_{ℓ} and some j such that p_{ℓ} ⊩ ḣ(n) ≥ f(n) for n ≥ j. It suffices to find q ≤ p_{ℓ}, q ⊩ ḣ(n) < f(n).

Pick any n larger than j and ℓ such that f(n) > g(n). By the definition of g(n), there is a q ≤ p_{ℓ} such that q ⊩ ḣ(n) ≤ g(n) < f(n).

Fact. For P_{M}: In M[G], each h ∈ ω^{ω} is bounded by some f ∈ M. (refine infinitely often)

Let ḣ be a name in ω^{ω}. For each integer n, D_{n} = {K ∈ P_{M} : (∃m) K ⊩ ḣ(n) = m} is dense. (i.e. each (K, (n, m)) is a member of ḣ)

For each n, pick a finite subset K_{n} of D_{n} such that μ (⋃ K_{n}) is greater than 1 − \frac{1}{2^{n+2}} . Then K = ⋂_{n} (⋃ K_{n}) has measure ≥ 1/2

For each n, there is a value m, call it f(n), such that ⋃ K_{n} ⊩ ḣ(n) ≤ f(n). Indeed, the finite antichain K_{n} is predense below ⋃ K_{n} and, a priori, K. I.e., K forces that G picks a member of K_{n}.

Thus K ⊩ ḣ(n) ≤ f(n) for all n.

Finally we look at the tower A:

Easy: P_{A} adds b such that b \ a is finite for all a ∈ A, namely ⋃ G′′ω; from our picture; (s, A) ∈ G implies ⋃ G \ s[ω] is contained in A.

Medium: P_{C} does not add such a b

Hard: P_{F} also does not add such a b (Probably needs that F is dominating)

But for more interesting consistency results (beyond V ≠ L) we must add more than one real. To do this effectively (not adding the reals, but prove the results) we must discuss iterated forcing.

Iterated forcing is really a recursive process for building posets. E.g. P = ⋃_{α} P_{α}. After some λ steps, we’ve got P_{λ}. Well, we can investigate the universe obtained by forcing with P_{λ} and then decide that more forcing should be done. So we cleverly build a P_{λ+1} ⊃ P_{λ} (and continue).

At some stage κ > λ, we stop; and we learn that V [G_{κ}] can be regarded as a forcing extension of V [G_{λ}].

That is, there is a poset, denoted P_{κ}/P_{λ} in the model V [G_{λ}], such that there is a generic filter H ⊂ P_{κ}/P_{λ} such that

V [G_{κ}] = V [G_{λ}][H]

May say H = G_{κ}/G_{λ} - factoring the forcing.

Even when we can construct a simple (but large) poset P all at once it is still very valuable to be able to view P as an iteration of various P_{0} followed by P/P_{0}.

The correct notation is P ∗ Q for forcing with P followed by forcing with Q. But note, we are just building a poset P_{κ}, and factoring the model V [G_{κ}] =

V [G_{λ}][G_{κ}/G_{λ}].

Valuable? V [G] is hard to investigate, but if we are interested in an object X, there may be P_{0} ⊂ P such that X already lives in V [G∩P_{0}]. We can determine what properties X has in V [G ∩ P_{0}] and then investigate which properties are preserved by the forcing P/P_{0}.

(Models of set theory are better understood than names of names).

The down side is that to learn what is preserved by P/P_{0} we still have to get into the nitty-gritty of the iterated construction of posets.

Let us first look at the single stage viewed as an iteration. The poset is Fn(ω_{2}, 2) (Cohen reals): Fn(I, 2) is simply finite partial functions from I into 2 ordered by reverse inclusion. We will assume CH holds in V.

It happens that Fn(I ˙∪J, 2) = Fn(I, 2) ∗ Fn(J, 2)

Theorem of V [G]: If F ⊂ ω^{ω} is unbounded then it has an ℵ_{1}-sized subset which is also unbounded.

The plan: find P_{0} ⊂ P, P_{0} = ω_{1}, set F′ equal F ∩ V [G ∩ P_{0}] so that F′ is unbounded in V [G ∩ P_{0}]. Then use our (enhanced) preservation result.

Lemma. If a family F′ ⊂ ω^{ω} is unbounded, then it remains so if we add any number of Cohen reals.

The Proof of the Lemma (uses nice names and factoring):

Proof. We take a nice name of a real ḣ and have to show that it does not dominate F′ in V [G]. Because ḣ is a nice name of a countable set, there is a countable J ⊂ I such that ḣ is in fact a Fn(J, 2)-name. This means that ḣ is a member of V [G ∩ Fn(J, 2)]. The poset Fn(J, 2) is “forcing isomorphic” to ^{<ω}ω and so we’ve already shown that F′ is unbounded in V [G ∩ Fn(J, 2)].

This means that, in this inner model, ḣ_{G} does not dominate F′. Clearly, forcing or no forcing, this will not change when we move to the full V [G].

Now to choose P_{0} (reflection): We can assume that F = {ḟ_{α} : α ∈ ω_{2}} and that {ṙ_{α} : α ∈ ω_{2}} enumerates all nice names for members of ω^{ω}. Consider an arbitrary λ < ω_{2} and realize that there is an α_{λ} < ω_{2} such that:

1. all nice Fn(λ, 2)-names in ω^{ω} occur among {ṙ_{α} : α < α_{λ}};

2. for each β < λ, ḟ_{β} is a Fn(α_{λ}, 2)-name;

3. for each p ∈ Fn(λ, 2) and α < λ, there is (this step is the key)

a q < p in Fn(α_{λ}, 2) and β < α_{λ} such that q ⊩ ḟ_{β} ≮ ṙ_{α}. This is all just counting. Now find an η < ω_{2} with cofinality ω_{1} such that for all λ < η, α_{λ} is also less

than η.

We’ll find that, in V [G_{η}]: {(ḟ_{α})_{G_{η}} : α < η} is unbounded. (basically from 3.) By the preservation Lemma, it is unbounded in V [G].

i.e. Fn(ω_{2}, 2) = Fn(λ, 2) ∗ Fn(ω_{2} \ λ, 2)

preserves F′ is unbounded

Proper Forcing

The notion of Proper Forcing is a brilliant creation of Shelah (with several important earlier contributions by others).

It is almost the minimum you can get away with by just saying that a poset must preserve ω_{1}. Recall the proof that ccc preserves ω_{1}: for each name τ of a function from ω into ORD, there’s a ground model countable set F such that τ(n) ∈ F for each n.

‘P is proper’ can be formulated as [this is (incorrectly) simplified slightly]: for each countable elementary submodel M (of V) with P ∈ M, there is a condition p (called (M, P)-generic) such that for each name τ ∈ M of an ordinal, p ⊩ τ ∈ M ∩ ORD.

Because M is an elementary submodel, this is equivalent to: D ∩ M is predense below p for each dense D ∈ M. Of course D ∩ M is countable. It is something like (M, P)-generic traps countably many maximal antichains to be essentially countable. You should think about why ccc posets and countably closed posets are proper.

Miller forcing is Proper. P is the set of all trees T ⊂ ω^{<ω} such that each node t ∈ T has either exactly one or infinitely many immediate successors and has an infinitely branching node somewhere above it. Remember the objects in the poset are the trees themselves, not the elements of the trees. We say that a tree T is stronger (or <) another T̃, if T ⊂ T̃. For a node t ∈ T, we let T_{t} denote the subtree consisting of those nodes which are compatible with t. Clearly T_{t} < T and if t ⊥ s, then T_{t} ⊥ T_{s}.

P is definitely not ccc, but it is proper.

It is instructive to see properness proved:

Fix any countable M and let {D_{n} : n ∈ ω} enumerate the dense (open) subsets of P. We build a tree T which will be (M, P)-generic by a fusion (induction).

Fix any tree T ∈ P ∩ M (this is actually necessary) and find a T̃ ⊂ T which is (M, P)-generic.

We build a descending sequence {T_{n} : n ∈ ω} as follows. At stage n, we assume by induction that for each t ∈ T_{n} such that t has no more than n branching predecessors, (T_{n})_{t} ∈ M.

Notice that, L_{n}, the set of infinitely branching nodes of T_{n} which have exactly n infinitely branching predecessors, forms an antichain of T_{n} and {(T_{n})_{t} : t ∈ L_{n}} is an antichain of P.

For each t ∈ L_{n} and each immediate successor t^{⌢}ℓ of t in T_{n}, choose a condition S(t^{⌢}ℓ) < (T_{n})_{(t^{⌢}ℓ)} which is in D_{n} ∩M (argue using elementarity of M and density of D_{n}).

...

...

T_{t^{⌢}ℓ}

S(t^{⌢}ℓ)

T_{t^{⌢}k}

S(t^{⌢}k)

t is at the

n-th branching level

The tree T_{n+1} = ⋃{S(t^{⌢}ℓ) : t ∈ L_{n}, t^{⌢}ℓ ∈ T_{n}} is again a condition and each t ∈ L_{n} remains a branching node in T_{n+1}. In fact, so too do all t in ⋃_{k<n} L_{k}. (subtlety: T_{n+1} ∈ M is not important but S(t^{⌢}ℓ) ∈ M is important)

The final tree is just T̃ = ⋂_{n} T_{n} (the key idea is that we’ve ensured certain nodes (increasing finite set of them would suffice) remain branching).

We can see at a glance, that T̃ forces that G ∩ D_{n} contains one of the S(t^{⌢}ℓ) (t ∈ L_{n}).

If P is a poset and Q̇ is a P -name of a poset, then we set P ∗ Q equal to the set of all pairs (p, q̇) with p ∈ P and q ∈ Q.

Actually Q is a set of P -names together with a P -name of an order. If q_{1} and q_{2} are members of Q̇, then we need various p in P to decide if q_{1} < q_{2} or q_{1} ⊥ q_{2}.

The order on P ∗ Q is given by (p_{1}, q_{1}) ≤ (p_{2}, q_{2}) if p_{1} ≤ p_{2} and p_{1} ⊩ q_{1} ≤ q_{2} and if G is P -generic, V [P ∗ Q] = V [P][Q_{G}].

For many posets at once: ⟨P_{α}, Q_{α}⟩_{α∈κ} can be the set of (partial) functions from κ into names such that, for each α, p(α) ∈ Q_{α}. If p(α) is not defined, then treat it as the 1 of Q_{α}. The ordering is given by p_{1} ≤ p_{0} iff for each α, p ↾ α ⊩_{P_{α}} p_{1}(α) ≤ p_{0}(α).

We do not have to take all such p. This makes a big difference in the behaviour. At a minimum, we take all functions with finite domain. If no others then this is called the finite support iteration. Another common example is the countable support iteration.

Major Theorems: finite support iteration of ccc is again ccc. (Δ-system Lemma; already P ∗ Q is ccc is subtle)

countable support iteration of countably closed is again countably closed.

countable support iteration of proper is again proper.

Let us look at Miller’s result(s) that if we iterate Miller forcing (or Laver) then there are no q-points. The Miller model is now more noteworthy because Blass-Shelah proved that NCF holds in it.

An ultrafilter U on ω is a q-point, if for each increasing h ∈ ω^{ω}, there’s a U ∈ U such that |U ∩ [h(n), h(n + 1))| ≤ 1 for all n.

It is easy to see that, e.g., Martin’s Axiom impies there are q-points. Also in the Cohen model and Random model they are known to exist.

Suppose that G is P_{ω_{2}}-generic (iterating Miller). In V [G], let U be an ultrafilter on ω. Then there is a sequence, {U̇_{α} : α ∈ ω_{2}}, of names which constitute the members of U in V [G].

Again, a nice name of a real has cardinality at most ω_{1}. Just as with Cohen forcing, there is a λ < ω_{2} with cofinality ω_{1}, such that {U̇_{α}, ω \ U̇_{α} : α ∈ λ} is the list of “all” P_{λ}-names of reals (we must use properness of P_{λ} and cf(λ) = ω_{1} for this).

We pass to the extension V [G_{λ}]. Clearly, {(U̇_{α})_{G_{λ}} : α < λ} is an ultrafilter here. I’ll skip the verification that P_{ω_{2}}/P_{λ} is just iterated Miller forcing. From the point of view of V [G_{λ}] (now call it V): we have an ultrafilter U_{λ} (now

call it U) which might extend to a q-point after adding Miller reals. We show single stage does not.

Let g denote the first Miller real added and assume that τ is a Miller name of a real which meets [g(n), g(n + 1)) in a singleton for each n. We will produce a condition T and a U ∈ U such that T ⊩ τ ∩ U is empty.

For a branching node t of a condition T, note that

|(τ)_{T_{t}} \ max t| ≤ 1 since T_{t^{⌢}ℓ} ⊩ |τ ∩ [max t, ℓ)| ≤ 1.

In a manner similar to the proof that the forcing is proper, we can also assume that ∀ℓ, F_{t^{⌢}ℓ} = (τ)_{T_{t^{⌢}ℓ}} \ (τ)_{T_{t}} ≠ ∅

Prune T so that if s ≠ t, then F_{s} ∩ F_{t} is empty.

Inductively partition T into two conditions. One of them works since τ_{T}^{+} = ⋃{F_{t} : t ∈ T′} for T′ ≤ T.

Contrast with Cohen: Suppose g ∈ ω^{ω} is any real and let h be added by Cohen forcing P_{C}. Define W to be all those h(k)’s which are the only ones in their [g(n), g(n + 1))-interval.

For each infinite U ⊂ ω, D_{U} = {p ∈ P_{C} : p ⊩ U ∩ W ≠ ∅} is dense. Indeed choose any n large enough so that U ∩ [g(n), g(n + 1)) is not empty, and p(j) < g(n) for all j ∈ k = dom(p). Extend p to q = p∪{(k, i)}∪{(k+1, g(n+1))} . Then q is in D_{U}.

Another example: Compact separable radial spaces are Frèchet.

We analyze the problem and look for vulnerability:

radial + not Frèchet implies ω is dense and there’s a converging free ω_{1}-sequence {x_{α} : α ≤ ω_{1}} (size ≤ ω_{1} here is quite important)

By radial, there are Y_{α} ⊂ ω converging to x_{α}. Also, using some dominating functions, an increasing mod finite sequence {A_{α} : α ∈ ω_{1}} of subsets of ω such that Y_{α} ⊂^{∗} A_{α} and the closure of A_{α} is disjoint from [x_{α+1}, x_{ω_{1}}].

Force a Y ⊂ ω such that

1) |Y ∩ Y_{α}| is infinite for each α < ω_{1}

2) for each Z ∈ [Y]^{ω}, |Z ∩ A_{α}| = ω for some α. (old? new?)

Well, this means that x_{ω_{1}} is in \overline{Y} and yet no Z ⊂ Y converges to x_{ω_{1}} (radial is destroyed).

But: there are other examples which must be killed (will doing so introduce a bad Z to this one?=preservation) and as we kill them off, we keep introducing more. (kill a subspace might work =reflection)

We know in advance that we design P_{ω_{2}} = ⟨P_{α}, Q_{α}⟩_{α∈ω_{2}} (finite support).

In V [G_{ω_{2}}], consider a space with {Ẏ_{α} : α ∈ ω_{1}}, {Ẇ_{α} : α ∈ ω_{1}}, W_{α} regular closed so that W_{α} ∩ [x_{0}, x_{α}] is empty and [x_{α+1}, x_{ω_{1}}] ⊂ int W_{α}. ω is dense, so W_{α} ∩ ω is all we need.

As before, there’s a λ < ω_{2} so that V [G_{λ}] ⊧ Y_{α}, W_{α}, x_{α} have all the above relationships.

So Q_{λ} (or some Q_{γ} (γ ≥ λ)) should introduce Y and the A_{α}’s as described before (i.e., |A_{α} ∩ W_{α}| should be finite).

Then, V [G_{λ+1}] ⊧ |Y ∩ Y_{α}| = ω and

(*) for all Z ∈ [Y]^{ω}, Z ∩ A_{α} is infinite for some α.

So, (*) must be preserved. We mentioned that P_{F} does this. So hard work needed to design Q_{λ} to all “preserve towers”. Finally

Lemma: finite support iteration of ccc tower preserving, also preserves towers.

Set A = {A_{α} : α ∈ ω_{1}} an ⊂^{∗}-increasing maximal chain in Y ⊂ ω. Suppose that ⟨P_{β}, Q_{β}⟩ is a FS ccc iteration and that τ is a nice name of a subset of Y.

Let δ be minimal such that τ ⊂ P_{δ} × Y (proceed by induction on δ).

1) If δ = γ + 1. Then ⊩_{P_{γ}} A is maximal. Pass to V [G_{γ}] ⊧ Q_{γ} preserves A is maximal, hence V [G_{γ}][G_{γ+1}/G_{γ}] ⊧ A is a maximal, i.e., V [G_{δ}] ⊧ A is maximal.

2) if cf(δ) = ω, then fix δ_{m} : m ∈ ω increasing cofinal in δ. For each α ∈ ω_{1}, assume there is a p_{α} and an n_{α} such that τ ∩ A_{α} ⊂ n_{α}. Also let m_{α} be such that p_{α} ∈ P_{δ_{mα}}.

So, there is an uncountable I ⊂ ω_{1} and a pair n, m such that n_{α} = n and m_{α} = m for all α ∈ I.

Special fact about ccc poset P_{δ_{m}}: there is a generic filter G such that G ∩ {p_{α} : α ∈ I} is uncountable. Fix such a G. Pass to the extension V [G].

In V [G], let J = {α ∈ I : p_{α} ∈ G}. Also consider the set

τ^{+} = {ℓ ∈ Y : (∃p ∈ P_{δ}) p ↾ δ_{m} ∈ G and p ⊩ ℓ ∈ τ}

i.e., those ℓ that still have a chance to get into τ. Fix an α ∈ J such that A_{α} ∩ τ^{+} is infinite. Then pick any ℓ ∈ A_{α} ∩ τ^{+} such that ℓ ≥ n. So there is a p such that p ↾ δ_{m} ∈ G and p ⊩ ℓ ∈ τ.

But now, p_{α} and p are compatible because p_{α} and p ↾ δ_{m} are both in G and so are compatible. Let q be any common extension.

q ⊩ τ ∩ A_{α} ⊄ n_{α} - a contradiction to q ≤ p_{α}