Prove2Me
Navigate
DiscoverCollectionsFormalpediaGalaxyBlogsUsersMomentumMy Missions+
Prove2Me
Log in
← Formalpedia

Proper posets and the proper forcing axiom (PFA)

Definition
SingularCardinals_PFA

by Lucas · Oct 11, 2026 · Mathlib 0df444a (Lean v4.33.1)

forcing-axiomsset-theory

Forcing notions are preorders (P,≤)(P,\le)(P,≤) with the convention that q≤pq\le pq≤p means qqq is stronger than ppp. Conditions p,qp,qp,q are compatible if some rrr satisfies r≤pr\le pr≤p and r≤qr\le qr≤q. A set S⊆PS\subseteq PS⊆P is predense below qqq if every r≤qr\le qr≤q is compatible with some member of SSS; D⊆PD\subseteq PD⊆P is dense if every ppp has an extension in DDD. A filter is a nonempty, upward-closed G⊆PG\subseteq PG⊆P in which any two members have a common extension in GGG.

Names for ordinals. Below a condition ppp, a name for an ordinal is given by a maximal antichain AAA below ppp (a set of pairwise incompatible conditions ≤p\le p≤p that is predense below ppp) together with an ordinal label ℓ(a)\ell(a)ℓ(a) for each a∈Aa\in Aa∈A; for an ordinal set BBB, a condition q≤pq\le pq≤p forces "the name lies in BBB" iff {a∈A:ℓ(a)∈B}\{a\in A:\ell(a)\in B\}{a∈A:ℓ(a)∈B} is predense below qqq.

Properness game. Fix ppp. In round nnn player I plays a name a˙n\dot a_na˙n​ for an ordinal below ppp, and player II answers with an ordinal βn\beta_nβn​. A strategy for II is winning if for every sequence of moves of I there is q≤pq\le pq≤p such that

q⊩ ∀n ∃m  a˙n=βm.q\Vdash\ \forall n\ \exists m\ \ \dot a_n=\beta_m .q⊩ ∀n ∃m  a˙n​=βm​.

PPP is proper if, for every p∈Pp\in Pp∈P, player II has a winning strategy in this game.

PFA. The proper forcing axiom states: for every nonempty proper poset PPP and every family (Di)i∈I(D_i)_{i\in I}(Di​)i∈I​ of dense subsets of PPP with ∣I∣=ℵ1|I|=\aleph_1∣I∣=ℵ1​, there is a filter G⊆PG\subseteq PG⊆P with G∩Di≠∅G\cap D_i\neq\emptysetG∩Di​=∅ for every iii.

Formalization Note The usual definition of properness (via countable elementary submodels of HθH_\thetaHθ​, or via preservation of stationary subsets of [λ]ω[\lambda]^{\omega}[λ]ω) needs a formalized forcing relation or model theory of set theory, which Mathlib lacks. This definition uses instead the game characterization of properness (Gray; Shelah, Proper and Improper Forcing), with names for ordinals given in antichain form and the forcing relation unfolded into predensity; this equivalence is a ZFC theorem but is not itself checked here, so this definition should be reviewed with particular care. Posets, index types and ordinal labels live in one fixed universe.

Definition code
import Mathlib

universe u

namespace SingularCardinals

open Cardinal

/-! Forcing convention throughout: in a poset `P`, `q ≤ p` means `q` is a stronger condition. -/

/-- Two conditions are compatible if they have a common extension. -/
def Compatible {P : Type u} [Preorder P] (p q : P) : Prop := ∃ r, r ≤ p ∧ r ≤ q

/-- `S` is predense below `q`: every extension of `q` is compatible with some member of `S`. -/
def PredenseBelow {P : Type u} [Preorder P] (S : Set P) (q : P) : Prop :=
  ∀ r ≤ q, ∃ s ∈ S, Compatible r s

/-- `D` is dense: every condition has an extension in `D`. -/
def IsDense {P : Type u} [Preorder P] (D : Set P) : Prop := ∀ p : P, ∃ d ∈ D, d ≤ p

/-- A filter in the forcing sense: nonempty, upward closed, and any two members have a common
extension inside it. -/
def IsForcingFilter {P : Type u} [Preorder P] (G : Set P) : Prop :=
  G.Nonempty ∧ (∀ p ∈ G, ∀ q, p ≤ q → q ∈ G) ∧ ∀ p ∈ G, ∀ q ∈ G, ∃ r ∈ G, r ≤ p ∧ r ≤ q

/-- A name for an ordinal below `p`, in antichain form: a maximal antichain below `p` whose
members are labelled by ordinals (the name takes the value `label a` on generic filters
containing `a`). -/
structure OrdinalNameBelow (P : Type u) [Preorder P] (p : P) where
  antichain : Set P
  le : ∀ a ∈ antichain, a ≤ p
  pairwise_incompatible : antichain.Pairwise fun a b => ¬ Compatible a b
  predense : PredenseBelow antichain p
  label : P → Ordinal.{u}

/-- The properness game below `p`: in round `n` player I plays a name `ȧₙ` for an ordinal and
player II answers with an ordinal `βₙ` (computed by the strategy `σ` from I's moves so far).
`σ` is winning if for every play of I there is `q ≤ p` forcing `∀ n ∃ m, ȧₙ = βₘ`, i.e. for
every `n` the members of the `n`-th antichain whose label is some `βₘ` are predense below `q`. -/
def IsWinningProperStrategy {P : Type u} [Preorder P] {p : P}
    (σ : List (OrdinalNameBelow P p) → Ordinal.{u}) : Prop :=
  ∀ x : ℕ → OrdinalNameBelow P p, ∃ q ≤ p, ∀ n : ℕ,
    PredenseBelow {a ∈ (x n).antichain |
      ∃ m : ℕ, (x n).label a = σ (List.ofFn fun i : Fin (m + 1) => x i)} q

/-- A poset is proper if, below every condition, player II has a winning strategy in the
properness game (Gray–Shelah game characterization of properness). -/
def IsProper (P : Type u) [Preorder P] : Prop :=
  ∀ p : P, ∃ σ : List (OrdinalNameBelow P p) → Ordinal.{u}, IsWinningProperStrategy σ

/-- The proper forcing axiom: for every nonempty proper poset `P` and every family of `ℵ₁`
dense subsets of `P`, some filter meets every member of the family. -/
def PFA : Prop :=
  ∀ (P : Type u) [Preorder P] [Nonempty P], IsProper P →
    ∀ (ι : Type u), #ι = aleph 1 → ∀ D : ι → Set P, (∀ i, IsDense (D i)) →
      ∃ G : Set P, IsForcingFilter G ∧ ∀ i, (G ∩ D i).Nonempty

end SingularCardinals
Source
Wikipedia, "Singular cardinals hypothesis", revision oldid=1349753131, https://en.wikipedia.org/w/index.php?title=Singular_cardinals_hypothesis&oldid=1349753131, last paragraph: "the proper forcing axiom, which implies 2^ℵ0 = ℵ2 and hence is incompatible with GCH also implies SCH". Definition of properness via the properness game: S. Shelah, Proper and Improper Forcing, Springer 1998; C. Gray, PhD thesis, Berkeley 1980.
Human review
  • Endorsed by Shuze Chen · Oct 11, 2026

    Confirmed by the moderator at approval.

  • Endorsed by Lucas · Oct 11, 2026

    Confirmed by the mission captain (proposal self-audit).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paperProve2Me Team
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me