Alphabeta Math
How statement and proof provenance work

The first chip identifies the source of the statement or construction; the second identifies the source of its local proof or verification.

  • Literature-sourced: the exact statement appears in a cited source; only wording and notation differ.
  • AI-adapted: a semantically identical restatement of literature-sourced material, modulo indexing, notation, and boundary cases adopted by the library.
  • AI-generated: a genuinely novel statement formulated by AI, with no source for the claim itself.

These labels describe origin, not correctness: citations and verification chips remain separate evidence.

✓ 7 results · all verified · 6 also independently AI-judged
Every result on this page is machine-checked by a proof checker and read in full by a delegated reviewing agent on the owner's instruction; the judge is an additional, independent cross-model AI review of the proofs. The 1 not AI-judged were verified by owner audit (typically over a confirmed judge false positive), not failures.

Filters and Ultrafilters

1 · Prerequisites

2 · Summary

Filters formalize families of subsets that are closed under finite intersection and enlargement. The development uses partial orders, chains, upper bounds, and maximal elements in its application of Zorn's lemma. Natural-number order and induction support the tail-filter construction, while the Axiom of Choice and its known equivalents provide the background for comparing the strength of the ultrafilter lemma.

The definitions of filters, filter bases, the finite intersection property, and ultrafilters lead first to the generated-filter lemmas. The union-of-a-chain lemma then supplies the upper bounds needed for the ultrafilter lemma. Maximality is converted into the complement-decision characterization, from which finite primality follows. The final results distinguish principal from free ultrafilters and record precisely which implications use full choice and which belong to weaker choice principles.

3 · Logical flowchart

4 · Definitions, theorems and proofs

DefinitionDefinition: Literature-sourcedProof: Not applicablejudge pass (z-ai/glm-5.2)verified 2026-07-26 (claude-opus-5)Open item page →

Filter on a set

Definition

Let X be a set. A family F⊆P(X) of subsets of X (The power set P(x)={ z:z⊆x }, Subset x⊆y, proper subset x⊊y, and the separation notation { z∈x:φ(z) }) is a filter on X when it satisfies:

The set of all filters on X is written Filt(X). It is a subset of P(P(X)), hence a set, and it is ordered by inclusion: F⊆G is read "G is finer than F", and F is coarser than G.

Convention: filters are proper. Condition (F2) is part of the definition throughout this library, so "filter" always means "proper filter". The competing convention drops (F2), calls the resulting objects filters, and says proper filter for one that omits ∅. The two conventions differ by exactly one object, since (F4) forces any family satisfying (F1), (F3) and (F4) that contains ∅ to be all of P(X): if ∅∈F then ∅⊆B⊆X gives B∈F for every B⊆X. That single extra object is the improper filter P(X). This library follows the more widely adopted convention, in which the improper filter is not a filter; a reader arriving from the other convention should read every unqualified "filter" below as "proper filter".

Remarks

  • The intuition is "large". Read A∈F as "A is a large subset of X", where largeness is relative to F. Then (F1) says the whole space is large, (F2) says the empty set is not, (F3) says two large sets overlap largely, and (F4) says a superset of a large set is large. Properness is what stops "large" from being vacuous: without (F2) every subset counts as large and the notion carries no information, which is the mathematical reason the improper filter is excluded rather than a matter of taste.
  • X≠∅ follows. By (F1) the set X belongs to F and by (F2) the set ∅ does not, so X≠∅. Equivalently, there are no filters on the empty set: P(∅)={∅}, and any filter on ∅ would have to contain ∅ by (F1) and omit it by (F2). No hypothesis "X≠∅" is therefore needed anywhere below; it is delivered by the existence of a filter.
  • (F3) extends to any finite list of members and not beyond: an intersection of infinitely many members of a filter is usually not a member, and demanding that it be one is a strictly stronger notion. The families that generate filters by finite intersections are exactly those with the finite intersection property (Finite intersection property, A family lies in a filter exactly when it has the finite intersection property).
  • Filters are usually presented by a smaller family that they are generated from, a filter base (Filter base and the filter it generates, The upward closure of a filter base is the smallest filter containing it), because writing out every superset is neither possible nor informative.
  • The maximal filters under the inclusion order recorded above are the ultrafilters (Ultrafilter), and every filter is contained in one (The ultrafilter lemma, from the Axiom of Choice: every filter extends to an ultrafilter). Maximal here means maximal, not greatest: as soon as X has two distinct points x≠y there is no finest filter, since a filter containing every filter would contain the principal filters at x and at y, hence both {x} and {y}, hence their intersection ∅, which (F2) forbids. Incomparability of those two principal filters is not the reason: incomparable elements are perfectly compatible with a greatest element above them both, and reading "maximal" as "greatest" is the error recorded in FALSE: every maximal element is a greatest element. The argument is set out in Ultrafilter.
DefinitionDefinition: AI-adaptedProof: Not applicablejudge pass (z-ai/glm-5.2)verified 2026-07-26 (claude-opus-5)Open item page →

Filter base and the filter it generates

Definition

Let X be a set. A family B⊆P(X) is a filter base on X when it satisfies:

  • (B1) nonemptiness: B≠∅;
  • (B2) properness: ∅∉B;
  • (B3) downward directedness: for all B1,B2∈B there is B3∈B with B3⊆B1∩B2.

The upward closure of B in X is

⟨B⟩:={ A⊆X  :  B⊆A for some B∈B }.

This is a filter on X (Filter on a set), indeed the smallest filter on X containing B, by The upward closure of a filter base is the smallest filter containing it ↗; it is called the filter generated by B, and B is called a base of it. The definite article is licensed by that lemma and by nothing else: the notation ⟨B⟩ is used only for a family already known to be a filter base.

Remarks

  • (B3) does not ask that B1∩B2 itself belong to B, only that some member of B sit inside it. That is what makes a base usable: a family described by a shape, for instance the open discs of the plane that contain the origin, is generally not closed under intersection, since the intersection of two such discs is not a disc, yet it always contains a smaller such disc. Families that are closed under pairwise intersection, such as the tails {n∈N:N≤n} of N, are the special case B3=B1∩B2 of (B3).
  • Every filter is a filter base, and it generates itself. A filter satisfies (B1) because it contains X, satisfies (B2) by (F2), and satisfies (B3) with B3=B1∩B2 by (F3). Both halves are proved in The upward closure of a filter base is the smallest filter containing it ↗, so "base" is a way of presenting a filter, never a different kind of object.
  • When a subfamily is a base for the filter it sits in. If B⊆F and every member of F contains a member of B, then B is a filter base and ⟨B⟩=F: (B1) holds because X∈F contains some member of B, (B2) because B⊆F, and (B3) because B1∩B2∈F contains some member of B. So a base is a presentation, not an invariant. What is determined is the generated filter, which is why every statement below is about ⟨B⟩ and never about B itself. The criterion is sufficient, and it is not a claim that a filter has many bases: any base of F is a subfamily of it, so the filter {X} on X has exactly one base, namely {X}.
  • (B2) is exactly the properness of the generated filter, and it is not automatic: dropping it would allow ∅∈B and then ⟨B⟩=P(X), the improper filter excluded by the convention recorded in Filter on a set.
LemmaStatement: AI-adaptedProof: AI-adaptedprecheck passjudge pass (openai/gpt-5.4)verified 2026-07-26 (claude-opus-5)Open item page →

The upward closure of a filter base is the smallest filter containing it

Statement

Let X be a set and let B be a filter base on X (Filter base and the filter it generates), with upward closure

⟨B⟩={ A⊆X  :  B⊆A for some B∈B }.

Then:

  1. ⟨B⟩ is a filter on X (Filter on a set);
  2. B⊆⟨B⟩, and ⟨B⟩⊆F for every filter F on X with B⊆F, so ⟨B⟩ is the smallest filter on X containing B;
  3. every filter F on X is itself a filter base, and it generates itself: ⟨F⟩=F.

Facts & Assumptions

Given: A set X, a filter base B⊆P(X), and ⟨B⟩ as displayed in the statement.

[A1]

B≠∅, ∅∉B, and for all B1,B2∈B there is B3∈B with B3⊆B1∩B2 (Filter base and the filter it generates).

[L1]

A filter on X is a family F⊆P(X) with X∈F, ∅∉F, A∩B∈F whenever A,B∈F, and B∈F whenever A∈F and A⊆B⊆X (Filter on a set).

[L2]

A filter base on X is a nonempty family of subsets of X that omits ∅ and is downward directed, the three conditions listed in [A1] (Filter base and the filter it generates).

Proof

technique · direct
1.1

Every member of ⟨B⟩ is a subset of X by definition, so ⟨B⟩⊆P(X); and X∈⟨B⟩, since B has a member B and B⊆X.

givenA1
1.2

∅∉⟨B⟩: if B⊆∅ for some B∈B then B=∅, and ∅∉B.

givenA1
1.3

⟨B⟩ is closed upward in X: if A∈⟨B⟩, say B⊆A with B∈B, and A⊆A′⊆X, then B⊆A′, so A′∈⟨B⟩.

given
1.4

⟨B⟩ is closed under pairwise intersection: given A1,A2∈⟨B⟩ pick B1,B2∈B with Bi⊆Ai, and then B3∈B with B3⊆B1∩B2⊆A1∩A2⊆X, so A1∩A2∈⟨B⟩.

givenA1
1.5

B⊆⟨B⟩, because B⊆B and B⊆X for every B∈B.

given
1.6

If F is a filter on X with B⊆F and A∈⟨B⟩, say B⊆A⊆X with B∈B⊆F, then upward closure of F gives A∈F; hence ⟨B⟩⊆F.

givenL1
1.7

Every filter F on X is a filter base: X∈F gives F≠∅, properness gives ∅∉F, and for B1,B2∈F the member B3=B1∩B2 of F satisfies B3⊆B1∩B2.

L1L2
2.1

⟨B⟩ satisfies all four filter axioms, so it is a filter on X.

step 1.1step 1.2step 1.3step 1.4L1
2.2

For a filter F on X, applying step 1.5 and step 1.6 to the filter base F gives F⊆⟨F⟩ and ⟨F⟩⊆F, that is ⟨F⟩=F.

step 1.7step 1.5step 1.6
3.1

So ⟨B⟩ is a filter containing B and contained in every filter that contains B, hence the smallest such filter, and every filter is a filter base generating itself.

step 2.1step 2.2step 1.5step 1.6∎

Remarks

  • The only place directedness (B3) is used is step 1.4, the intersection axiom. Drop it and the upward closure of B is still closed upward and still proper, but it need not be closed under intersection: on X={0,1} the family B={{0},{1}} has upward closure {{0},{1},X}, which does not contain {0}∩{1}=∅ and is not a filter.
  • Part 3 is what licenses the phrase "the filter generated by" being applied to a filter: generation is idempotent, so nothing is gained by generating twice.
  • Smallest is meant in the inclusion order on Filt(X) and is a genuine least element of the set of filters containing B, not merely a minimal one, since part 2 compares ⟨B⟩ with every such filter. This is the opposite situation to Ultrafilter, where only maximality is available.
DefinitionDefinition: AI-adaptedProof: Not applicablejudge pass (z-ai/glm-5.2)verified 2026-07-26 (claude-opus-5)Open item page →

Finite intersection property

Definition

Let X be a set and A⊆P(X) a family of subsets of X. A finite list in A is a function s:n→A for some n∈N, where n={0,1,…,n−1} is its own set of predecessors in the von Neumann encoding (The natural numbers N (von Neumann)). Its intersection is the subset of X

⋂i∈ns(i):={ x∈X  :  x∈s(i) for every i∈n },

a definition by Separation alone, with no recursion involved. For n=0, that is n=∅, the condition is vacuous and the empty intersection is X.

The family A has the finite intersection property, abbreviated FIP, when

⋂i∈ns(i)≠∅for every n∈N and every finite list s:n→A.

Equivalently: no finitely many members of A have empty intersection.

Remarks

  • The empty intersection is X, and it is included above, so a family with the FIP forces X≠∅ (take n=0). Many texts state the condition only for n≥1 and add "X≠∅" or "A≠∅" as a separate standing hypothesis. The two readings agree except when A=∅, where the n≥1 reading is vacuous and this one still asks that X be nonempty. Including n=0 is what makes A family lies in a filter exactly when it has the finite intersection property hold with no side condition, since the empty intersection is exactly the member X that every filter must contain.
  • Lists may repeat, and this is harmless: repeating a member does not change an intersection, so quantifying over lists is the same as quantifying over finite subfamilies. Lists are used rather than "finite subfamilies" because a function out of a natural number is available immediately from The natural numbers N (von Neumann), whereas a general theory of finite sets is not needed anywhere here.
  • The FIP is exactly the condition for a family to sit inside some filter (A family lies in a filter exactly when it has the finite intersection property): the finite intersections of A form a filter base (Filter base and the filter it generates) precisely when none of them is empty, and conversely every family inside a filter inherits the property from properness (Filter on a set).
  • The property is about finite intersections only. The family { {n∈N:N≤n}:N∈N } of tails of N has the FIP, since the intersection of finitely many tails is the one with the largest starting index and no tail is empty, yet the intersection of all of them is empty, because no n lies in the tail starting at σ(n). That gap between finite and infinite intersections is the whole reason filters are worth having.
LemmaStatement: AI-adaptedProof: AI-adaptedprecheck passjudge pass (deepseek-v4-pro + gpt-5.6-terra)verified 2026-08-04 (gpt-5.6-sol-codex-subscription)Open item page →

A family lies in a filter exactly when it has the finite intersection property

Statement

Let X be a set and A⊆P(X). Write

A∩:={ ⋂i∈ns(i)  :  n∈N, s:n→A }

for the family of intersections of finite lists in A (Finite intersection property), which contains X as the empty intersection. Then:

  1. A∩ is closed under pairwise intersection and contains A∪{X};
  2. if A has the finite intersection property, then A∩ is a filter base on X (Filter base and the filter it generates) and ⟨A∩⟩ is the smallest filter on X containing A (Filter on a set, The upward closure of a filter base is the smallest filter containing it);
  3. conversely, if A⊆F for some filter F on X, then A has the finite intersection property.

Consequently a family of subsets of X is contained in some filter on X if and only if it has the finite intersection property.

Facts & Assumptions

Given: A set X, a family A⊆P(X), and A∩ as displayed in the statement. Parts 2 and 3 assume, respectively, that A has the finite intersection property and that A is contained in a filter on X.

[A1]

A has the finite intersection property when ⋂i∈ns(i)≠∅ for every n∈N and every s:n→A, the case n=0 reading X≠∅ (Finite intersection property).

[L1]

A filter on X contains X, omits ∅, is closed under pairwise intersection, and is closed upward in X (Filter on a set).

[L2]

A filter base on X is nonempty, omits ∅, and is downward directed; its upward closure is the smallest filter on X containing it (Filter base and the filter it generates, The upward closure of a filter base is the smallest filter containing it).

[L3]

In the von Neumann encoding σ(n)=n∪{n} and n∉n, so, A being nonempty, a function u:n→A extends to a function u′:σ(n)→A by prescribing u′(n) to be any member of A (The natural numbers N (von Neumann), Every natural number is a transitive set and is not a member of itself).

[L4]

Induction on N: a property holding at 0 and passing from n to σ(n) holds for every natural number (The principle of mathematical induction).

Proof

technique · direct
1.1

Every member of A∩ is a subset of X, and X∈A∩ as the intersection of the empty list, so A∩≠∅.

givenA1
1.2

A⊆A∩: for A∈A the list s:1→A with s(0)=A has ⋂i∈1s(i)=A, since 1=σ(0)={0}.

givenL3
1.3

Adjoining one member keeps the family: if B=⋂k∈pu(k)∈A∩ and A∈A, then extending u to u′:σ(p)→A with u′(p)=A gives ⋂k∈σ(p)u′(k)=B∩A, so B∩A∈A∩.

givenL3
1.4

Splitting off the last entry: for t:σ(n)→A one has ⋂j∈σ(n)t(j)=(⋂j∈nt(j))∩t(n), since σ(n)=n∪{n}.

givenL3
1.5

If A has the finite intersection property then no member of A∩ is empty, that is ∅∉A∩.

A1given
2.1

A∩ is closed under pairwise intersection, by induction on the length n of the second list: for n=0 the second intersection is X and B∩X=B∈A∩; and if the claim holds for all lists of length n, then for t:σ(n)→A the set B∩⋂j∈σ(n)t(j)=(B∩⋂j∈nt(j))∩t(n) lies in A∩ by the case n followed by step 1.3.

step 1.3step 1.4L4
2.2

Every filter F on X with A⊆F satisfies A∩⊆F, by induction on the length n of the list: the empty intersection is X∈F, and ⋂j∈σ(n)t(j)=(⋂j∈nt(j))∩t(n) is an intersection of two members of F.

step 1.4L1L4
3.1

Under the finite intersection property, A∩ is a filter base on X: it is nonempty by step 1.1, omits ∅ by step 1.5, and is downward directed because B1∩B2 itself lies in A∩.

step 1.1step 1.5step 2.1L2
3.2

Conversely, if A⊆F with F a filter on X, then A∩⊆F and ∅∉F, so no intersection of a finite list in A is empty: A has the finite intersection property.

step 2.2L1A1
4.1

Under the finite intersection property, ⟨A∩⟩ is the smallest filter on X containing A: it is a filter containing A∩⊇A, and any filter containing A contains A∩ and hence its upward closure.

step 3.1step 2.2step 1.2L2
5.1

So A∩ contains A∪{X} and is closed under pairwise intersection, and A is contained in some filter on X if and only if it has the finite intersection property, in which case the smallest such filter is ⟨A∩⟩.

step 1.1step 1.2step 2.1step 4.1step 3.2∎

Remarks

  • Where the hypothesis bites. Part 1 is unconditional: finite lists can always be extended one entry at a time. Only properness, ∅∉A∩, needs the finite intersection property, and it is exactly that property restated. So the content of the lemma is bookkeeping in one direction and a definition unfolded in the other, which is why the finite intersection property is the right hypothesis rather than a convenient one.
  • The proof uses induction only to move along the length of a list. No theory of finite sets is needed, because a finite list is a function out of a natural number and a natural number is its own set of predecessors (The natural numbers N (von Neumann)).
  • The empty list matters twice: it puts X into A∩, which is what makes A∩ nonempty even when A is empty, and it is the base case of both inductions. With the n≥1 reading of the finite intersection property one would have to add A≠∅ as a hypothesis to part 2.
  • The generated filter ⟨A∩⟩ is the filter usually written ⟨A⟩ and called the filter generated by A. It is only defined when A has the finite intersection property, which is why this library names the base explicitly.
DefinitionDefinition: Literature-sourcedProof: Not applicablejudge pass (deepseek-v4-pro + gpt-5.6-terra)verified 2026-08-04 (gpt-5.6-sol-codex-subscription)Open item page →

Ultrafilter

Definition

Let X be a set and let Filt(X) be the set of all filters on X (Filter on a set). Since every filter is a subset of P(X), the family Filt(X) is a subset of P(P(X)) and is therefore a set, carved out by Separation. Inclusion is a partial order on it (Partial order and partially ordered set): ⊆ is reflexive, antisymmetric by extensionality, and transitive.

An ultrafilter on X is a filter on X that is a maximal element of (Filt(X),⊆) (Maximal element and greatest element): a filter U on X such that no filter on X strictly contains U, equivalently such that every filter G on X with U⊆G satisfies G=U.

An ultrafilter is principal if it is of the form { A⊆X:x∈A } for some x∈X, and free, or non-principal, otherwise.

Remarks

  • Maximal is not greatest, and here the distinction is not academic. A greatest element of (Filt(X),⊆) would be a filter containing every filter, and as soon as X has two distinct points x≠y no such filter exists: it would contain the principal filters at x and at y, hence both {x} and {y}, hence their intersection ∅, which properness forbids (Filter on a set). So on such an X there is no greatest filter, and reading "maximal" as "greatest" is the error recorded in FALSE: every maximal element is a greatest element. Note what that argument does and does not deliver. It says nothing whatever about which filters are maximal, nor that any is: the absence of a greatest element is compatible with there being no maximal element at all. What does follow, from maximality itself and not from the argument above, is that two distinct ultrafilters are never comparable, since U⊆V with U maximal forces V=U. How many ultrafilters there are is a separate question again, which the argument above does not touch and which this library does not answer at all: the ultrafilter lemma gives EXISTENCE (every filter extends to an ultrafilter), never a count, and The ultrafilter lemma, from the Axiom of Choice: every filter extends to an ultrafilter says so in its own remarks. See the existence bullet below.
  • Maximality is a negative condition, which is what makes it usable: it says nothing can be added, not that everything is already there. The positive reformulation, that U decides every subset by containing either A or its complement, is Characterisation of ultrafilters: every set or its complement, and it is the form used in practice.
  • Existence is free; extension and freeness are not. Ultrafilters exist on every nonempty set with no choice principle at all: the principal filter at a point is one, as the next bullet verifies outright. Two stronger existence statements are what cost something. That every filter is contained in an ultrafilter is The ultrafilter lemma, from the Axiom of Choice: every filter extends to an ultrafilter, proved here from Zorn's lemma (Zorn's lemma); and that some ultrafilter is free is what the ultrafilter lemma buys, since extending the filter of cofinite subsets of N produces a non-principal one. Neither is a theorem of ZF alone: if ZF is consistent, ZF does not prove that a free ultrafilter on N exists (Feferman 1965, Feferman 1965: ZF does not prove that a free ultrafilter on the naturals exists ‡), and hence does not prove the ultrafilter lemma either. That external result is recorded, not proved, in this library, and the strength the lemma costs is set out in The proved choice cost of the ultrafilter lemma. So on N the principal ultrafilters are the only ones ZF alone can be relied on to produce. The same conclusion for every set at once does not follow from Feferman's model, which concerns N; it is the separate and stronger external result Blass 1977: a model of ZF with no free ultrafilter on any set ‡, likewise recorded and not proved here. Once the ultrafilter lemma is available -- and this library proves it from the Axiom of Choice (The ultrafilter lemma, from the Axiom of Choice: every filter extends to an ultrafilter) -- the principal ultrafilters are nevertheless not all of them (FALSE, once the ultrafilter lemma is available: every ultrafilter is principal); in ZF alone that cannot be concluded.
  • Principal ultrafilters really are ultrafilters: {A⊆X:x∈A} is a filter, and if a filter G contains it then any B∈G must meet {x}, since otherwise B∩{x}=∅ lies in G, so x∈B and G is contained in the principal filter at x. This is the one family of examples available without any choice principle.
LemmaStatement: AI-adaptedProof: AI-adaptedprecheck passjudge pass (z-ai/glm-5.2)verified 2026-07-26 (claude-opus-5)Open item page →

The union of a nonempty chain of filters is a filter

Statement

Let X be a set and let D be a nonempty chain (Chain in a poset) in the set of filters on X ordered by inclusion (Filter on a set, Partial order and partially ordered set): every member of D is a filter on X, and any two members of D are comparable under ⊆. Then ⋃D is a filter on X, and it is an upper bound of D for inclusion.

The hypothesis D≠∅ cannot be dropped: ⋃∅=∅ contains no set at all, in particular not X, so it is not a filter.

Facts & Assumptions

Given: A set X and a nonempty family D of filters on X, any two members of which are comparable under inclusion.

[A1]

D≠∅; every F∈D is a filter on X; and for all F1,F2∈D either F1⊆F2 or F2⊆F1 (Chain in a poset).

[L1]

A filter on X is a family of subsets of X containing X, omitting ∅, closed under pairwise intersection, and closed upward in X (Filter on a set).

[L2]

Inclusion is a partial order on any set of sets (Partial order and partially ordered set), and u is an upper bound of S when s⊆u for every s∈S (Upper bound, least upper bound, and strict upper bound).

Proof

technique · direct
1.1

Fix a member F∗∈D, which exists because D is nonempty.

A1choose
1.2

⋃D⊆P(X): a member of the union belongs to some filter on X, hence is a subset of X.

A1L1
1.3

∅∉⋃D: a member of the union belongs to some F∈D, and ∅∉F.

A1L1
1.4

⋃D is closed upward in X: if A∈F∈D and A⊆B⊆X then B∈F⊆⋃D.

A1L1
1.5

⋃D is closed under pairwise intersection: let A∈F1 and B∈F2 with F1,F2∈D; comparability puts one of the two inside the other, so A and B both belong to the larger one, which contains A∩B, and A∩B∈⋃D.

A1L1
1.6

Every F∈D satisfies F⊆⋃D, so ⋃D is an upper bound of D for inclusion.

A1L2
1.7

If instead D=∅ then ⋃D=∅, which fails the requirement X∈⋃D, so nonemptiness of D is genuinely used and cannot be removed.

L1
2.1

X∈⋃D, because X∈F∗ and F∗⊆⋃D.

step 1.1A1L1
3.1

So ⋃D satisfies all four filter axioms and is an upper bound of D: it is a filter on X above every member of D.

step 2.1step 1.2step 1.3step 1.4step 1.5step 1.6L1∎

Remarks

  • Nonemptiness is used exactly once, at step 1.1, and only for the axiom X∈⋃D. The other three axioms hold vacuously for the empty chain, which is precisely why the failure is easy to overlook: three of the four checks go through and the one that does not is the one nobody writes out.
  • This is the chain-bound half of the hypothesis of Zorn's lemma (Zorn's lemma), and the empty chain is the other half. In The ultrafilter lemma, from the Axiom of Choice: every filter extends to an ultrafilter the empty chain is bounded not by this lemma but by the given filter F0, which is why that proof must treat the two cases separately.
  • Unions of chains are used rather than unions of arbitrary families because an arbitrary union of filters is almost never a filter: for x≠y the union of the principal filters at x and at y contains {x} and {y} but not ∅={x}∩{y}, so it is not closed under intersection. Comparability at step 1.5 is what repairs this.
TheoremStatement: Literature-sourcedProof: AI-adaptedprecheck passjudge pass (deepseek-v4-pro + gpt-5.6-terra)verified 2026-08-04 (gpt-5.6-sol-codex-subscription)Open item page →

The ultrafilter lemma, from the Axiom of Choice: every filter extends to an ultrafilter

Statement

Assume the Axiom of Choice (The Axiom of Choice). Let X be a set and let F0 be a filter on X (Filter on a set). Then there is an ultrafilter U on X (Ultrafilter) with F0⊆U.

The hypothesis is spent exactly once, through Zorn's lemma at step 4.1; the rest of the argument is a theorem of ZF.

In particular, every set that carries a filter carries an ultrafilter. The proof uses Zorn's lemma (Zorn's lemma) and therefore the Axiom of Choice. That some choice principle is unavoidable here, if ZF is consistent, is an external independence result, not proved in this library; see the remarks below.

Facts & Assumptions

Given: A set X, a filter F0 on X, and Zorn's lemma.

[A1]

F0 is a filter on X: X∈F0, ∅∉F0, and F0 is closed under pairwise intersection and upward in X (Filter on a set).

[L1]

Zorn's lemma, which assumes the Axiom of Choice: a nonempty poset in which every chain has an upper bound has a maximal element; the hypothesis is about all chains, the empty chain included (Zorn's lemma, The Axiom of Choice).

[L2]

The union of a nonempty inclusion-chain of filters on X is a filter on X and an upper bound of the chain (The union of a nonempty chain of filters is a filter).

[L3]

An ultrafilter on X is a filter that is a maximal element of (Filt(X),⊆), and m is maximal exactly when m≤x forces x=m (Ultrafilter, Maximal element and greatest element).

[L4]

Inclusion partially orders any set of sets, and a chain is a subset any two of whose members are comparable, the empty set included (Partial order and partially ordered set, Chain in a poset); an element u of a poset is an upper bound of a subset S when s≤u for every s∈S (Upper bound, least upper bound, and strict upper bound).

Proof

technique · direct
1.1

Let Filt(X) be the set of filters on X, a subset of P(P(X)), partially ordered by inclusion.

L3L4construct
1.2

F0∈Filt(X).

A1
2.1

Let P={ F∈Filt(X):F0⊆F }, partially ordered by inclusion as a subset of Filt(X).

step 1.1construct
2.2

P≠∅, since F0⊆F0 puts F0 in P.

step 1.2L4
3.1

The empty chain of P has an upper bound in P: every element of P is vacuously above all of its members, and P is nonempty, so F0 is such an upper bound.

step 2.1step 2.2L4
3.2

A nonempty chain D⊆P has an upper bound in P: ⋃D is a filter on X and an upper bound of D; it contains F0 because some member of D does and every member is contained in the union; hence ⋃D∈P.

step 2.1L2L4
4.1

Every chain of P has an upper bound in P, and P is a nonempty poset, so Zorn's lemma yields a maximal element U of P.

step 2.2step 3.1step 3.2L1
5.1

U is a filter on X with F0⊆U, since U∈P.

step 4.1step 2.1
6.1

Let G be any filter on X with U⊆G; then F0⊆U⊆G, so G∈P, and maximality of U in P forces G=U.

step 4.1step 5.1step 2.1L3
7.1

So no filter on X strictly contains U: U is a maximal element of Filt(X), that is an ultrafilter on X, and it contains F0.

step 5.1step 6.1L3∎

Remarks

  • The empty chain is the load-bearing case. Zorn's lemma requires an upper bound for every chain of P, and the empty chain has one exactly when P is nonempty. Step 3.1 discharges it with F0 itself, and step 2.2 is what makes that possible. This is not a formality: the conclusion of The union of a nonempty chain of filters is a filter fails for the empty chain, since ⋃∅=∅ is not a filter, which is exactly why that lemma assumes its chain nonempty; so a proof that says "the union of a chain is a filter" without the case split has a genuine gap at the one chain the hypothesis of Zorn's lemma is easiest to forget.
  • Why the poset is P and not Filt(X). Applying Zorn to Filt(X) would produce a maximal filter unrelated to F0. Restricting to the filters above F0 costs nothing, because step 6.1 transfers maximality back: a filter above U is automatically above F0, so maximality in P already means maximality among all filters. That transfer is the only step where the shape of P is used.
  • The conclusion is an ultrafilter, not the ultrafilter. Zorn's lemma delivers a maximal element and no construction, so nothing in the proof distinguishes the ultrafilter it produces from any other filter above F0; the statement asserts existence and no uniqueness whatever. FALSE, once the ultrafilter lemma is available: every ultrafilter is principal runs the argument on the filter of tails of N and obtains a single free ultrafilter, which it can describe no further. How many ultrafilters extend a given filter is a separate counting question, and this library neither states nor uses an answer to it.
  • Combined with A family lies in a filter exactly when it has the finite intersection property, the lemma takes its most usable form: every family of subsets of X with the finite intersection property is contained in an ultrafilter on X. That is the version applied in topology and in model theory.
  • What this costs. The proof buys the conclusion with the full Axiom of Choice, through Zorn's lemma and The Axiom of Choice and Zorn's lemma are equivalent, but the statement is, if ZF is consistent, strictly weaker than the Axiom of Choice: it is then neither provable in ZF nor strong enough to recover choice. Both of those are external metamathematical results, conditional on the consistency of ZF, and are recorded, with references and without a claim to prove them, in The proved choice cost of the ultrafilter lemma.
TheoremStatement: Literature-sourcedProof: AI-adaptedprecheck passjudge pass (z-ai/glm-5.2)verified 2026-07-26 (claude-opus-5)Open item page →

Characterisation of ultrafilters: every set or its complement

Statement

Let X be a set and U a filter on X (Filter on a set). The following are equivalent:

  1. U is an ultrafilter on X (Ultrafilter);
  2. for every A⊆X, either A∈U or X∖A∈U.

Moreover, for any filter the two alternatives are exclusive: never both A∈U and X∖A∈U. So an ultrafilter decides every subset of X, containing exactly one of A and X∖A.

Facts & Assumptions

Given: A set X and a filter U on X.

[A1]

U is a filter on X: X∈U, ∅∉U, U is closed under pairwise intersection, and B∈U whenever A∈U and A⊆B⊆X (Filter on a set).

[L1]

An ultrafilter on X is a filter that is maximal for inclusion among the filters on X; maximality of m says that m≤x forces x=m (Ultrafilter, Maximal element and greatest element).

Proof

technique · direct
1.1

Exclusivity, for any filter. If A and X∖A both lay in U then so would A∩(X∖A)=∅, which properness forbids.

A1
1.2

Forward. Assume statement 1, let A⊆X, and suppose X∖A∉U; the goal is A∈U.

assume-hyp
1.3

Forward. Let G={ B⊆X:C∩A⊆B for some C∈U }.

construct
2.1

Forward. Every C∈U satisfies C∩A≠∅: from C∩A=∅ one gets C⊆X∖A, and upward closure would then put X∖A into U, which step 1.2 excludes.

step 1.2A1
2.2

Forward. U⊆G, since C∩A⊆C for C∈U; and A∈G, since X∈U and X∩A⊆A⊆X.

step 1.3A1
2.3

Converse. Assume statement 2 and let H be any filter on X with U⊆H; for A∈H one cannot have X∖A∈U, since then X∖A∈H and ∅=A∩(X∖A)∈H, against properness of H.

step 1.1A1assume-hyp
3.1

Forward. G is a filter on X: its members are subsets of X by definition; X∈G by step 2.2; ∅∉G, because C∩A⊆∅ would make C∩A empty against step 2.1; it is closed upward in X by transitivity of ⊆; and if C1∩A⊆B1 and C2∩A⊆B2 with C1,C2∈U then (C1∩C2)∩A⊆B1∩B2 with C1∩C2∈U, so B1∩B2∈G.

step 1.3step 2.1step 2.2A1
3.2

Converse. So A∈U for every A∈H by statement 2, giving H⊆U and hence H=U; no filter strictly contains U, so U is maximal and statement 2 implies statement 1.

step 2.3L1
4.1

Forward. Maximality of U applied to the filter G⊇U gives G=U, hence A∈U by step 2.2; so statement 1 implies statement 2.

step 3.1step 2.2step 1.2L1
5.1

The two statements are therefore equivalent, and by step 1.1 an ultrafilter contains exactly one of A and X∖A for each A⊆X.

step 4.1step 3.2step 1.1∎

Remarks

  • This is the working form of the definition. Maximality is a statement about the whole poset of filters; deciding complements is a statement about U alone, and it is what one actually checks and uses. It is the route taken by Ultrafilters are prime: a union in U has a member in U, for instance. It is not the only route: FALSE, once the ultrafilter lemma is available: every ultrafilter is principal is refuted from properness and the ultrafilter lemma directly, without this characterisation, and does not list it among its dependencies.
  • The two directions run as separate threads, and the mechanical stratification interleaves them, so each step is labelled Forward or Converse. They share nothing except the filter U and the exclusivity of step 1.1: the forward thread builds a specific filter G, the converse thread argues about an arbitrary filter H above U.
  • The filter G built at step 1.3 is the filter generated by U∪{A} (A family lies in a filter exactly when it has the finite intersection property): its members are the supersets of the sets C∩A with C∈U. Those sets are not all the intersections of finite lists drawn from U∪{A}, since a list omitting A intersects to a member C of U and not to a set of the form C∩A. The two families generate the same filter all the same: finitely many members of U intersect to a single C∈U, so every such finite intersection either is a C or is a C∩A, and in the first case it contains C∩A; conversely each C∩A is itself one of the finite intersections. The upward closures therefore coincide, which is all that "generated by" asks. Step 2.1 is the check that U∪{A} has the finite intersection property, and that check is exactly where X∖A∉U is used.
  • Exclusivity is a property of filters, not of ultrafilters, and it holds for the trivial reason that A and X∖A are disjoint. What maximality buys is only the "at least one" half. Reading the characterisation as a two-valued decision on P(X) makes an ultrafilter a finitely additive {0,1}-valued measure on X, which is the standard way it is used.
  • The characterisation makes ultrafilters visibly rigid: U is determined by which of each complementary pair it takes, so an ultrafilter is a consistent choice on all of P(X) at once. This is why producing one in general is done here from a choice principle rather than by a construction (The ultrafilter lemma, from the Axiom of Choice: every filter extends to an ultrafilter).
LemmaStatement: AI-adaptedProof: AI-adaptedprecheck passjudge pass (openai/gpt-5.4)verified 2026-07-26 (claude-opus-5)Open item page →

Ultrafilters are prime: a union in U has a member in U

Statement

Let U be an ultrafilter on a set X (Ultrafilter) and let A,B⊆X. If A∪B∈U then A∈U or B∈U.

More generally, for every n∈N and every finite list s:n→P(X) (The natural numbers N (von Neumann)), writing ⋃i∈ns(i)={ x∈X:x∈s(i) for some i∈n }, which is ∅ when n=0: if ⋃i∈ns(i)∈U then s(i)∈U for some i∈n.

Facts & Assumptions

Given: A set X, an ultrafilter U on X, and subsets A,B⊆X with A∪B∈U.

[A1]

U is a filter on X: X∈U, ∅∉U, U is closed under pairwise intersection, and closed upward in X (Filter on a set, Ultrafilter).

[L1]

For every C⊆X, exactly one of C∈U and X∖C∈U holds (Characterisation of ultrafilters: every set or its complement).

[L2]

Induction on N: a property holding at 0 and passing from n to σ(n) holds for every natural number; and σ(n)=n∪{n} (The principle of mathematical induction, The natural numbers N (von Neumann)).

Proof

technique · direct
1.1

Suppose A∉U; then X∖A∈U.

L1assume-hyp
1.2

As sets, (A∪B)∩(X∖A)=B∩(X∖A)⊆B⊆X.

given
2.1

Both A∪B and X∖A lie in U, hence so does their intersection.

step 1.1givenA1
3.1

Upward closure applied to (A∪B)∩(X∖A)⊆B gives B∈U; so A∈U or B∈U.

step 2.1step 1.2A1
4.1

The finite case follows by induction on n: for n=0 the union is empty and ∅∉U, so the hypothesis never holds and the claim is vacuous; and if the claim holds for lists of length n, then for s:σ(n)→P(X) one has ⋃i∈σ(n)s(i)=(⋃i∈ns(i))∪s(n), so the binary case puts either s(n) or ⋃i∈ns(i) in U, and in the second alternative the claim for n supplies an i∈n with s(i)∈U.

step 3.1A1L2
5.1

So an ultrafilter is prime: it contains a member of every finite union it contains.

step 3.1step 4.1∎

Remarks

RemarkRemark: AI-adaptedProof: Not applicableverified 2026-07-26 (claude-opus-5)Open item page →

The proved choice cost of the ultrafilter lemma

This item records only the choice cost established by proofs already present in the library.

The Axiom of Choice implies Zorn's lemma, and the converse implication is also proved here (The Axiom of Choice and Zorn's lemma are equivalent). The proof of the ultrafilter lemma applies Zorn's lemma to the partially ordered set of filters extending a given filter (The ultrafilter lemma, from the Axiom of Choice: every filter extends to an ultrafilter). Consequently the present development proves

AC⟹every filter extends to an ultrafilter.

That is an upper bound on this proof, not a lower bound on the statement. Nothing in the argument proves that the ultrafilter lemma implies AC, that it is provable in ZF, or that it is not provable in ZF. Those questions require the later Boolean-algebra and symmetric-model machinery. Until those proofs are built, no Foundations item may use the recorded model results as a substitute.

The distinction matters downstream. A theorem that assumes an ultrafilter may cite that assumption directly. A theorem that constructs one using The ultrafilter lemma, from the Axiom of Choice: every filter extends to an ultrafilter inherits the AC-based proof supplied here. Neither case licenses an unproved assertion about the least possible choice principle.

5 · Examples, counterexamples and false statements

False statementConstruction: AI-adaptedVerification: AI-generatedprecheck passverified 2026-08-04 (gpt-5.6-sol-codex-subscription)Open item page →

FALSE, once the ultrafilter lemma is available: every ultrafilter is principal

Statement

FALSE. For every set X, every ultrafilter U on X (Ultrafilter) is principal: there is an x∈X with U={ A⊆X:x∈A }.

The claim is plausible because the principal ultrafilters are the only ones anybody can write down. Each is given by a formula in one parameter, they are easy to check, and on a finite X there are no others. What the claim misses is that The ultrafilter lemma, from the Axiom of Choice: every filter extends to an ultrafilter manufactures ultrafilters from filters that no point generates, and it does so without ever naming the result.

What refutes the claim, and what that costs. The refutation below assumes the ultrafilter lemma, which this library proves from the Axiom of Choice (The ultrafilter lemma, from the Axiom of Choice: every filter extends to an ultrafilter). The claim is not refuted in ZF alone: as the remarks record, it is consistent with ZF that every ultrafilter on N is principal.

Facts & Assumptions

Given: The natural numbers N with 0, the successor σ and the order ≤ (The natural numbers N (von Neumann), Order on the natural numbers), and the Axiom of Choice in the form used by the ultrafilter lemma.

[A1]

A filter on X contains X, omits ∅, and is closed under pairwise intersection and upward in X; a filter base is a nonempty, downward directed family of nonempty subsets (Filter on a set, Filter base and the filter it generates). The principal filter at x is {A⊆X:x∈A}, and it contains {x}.

[L1]

The upward closure ⟨B⟩ of a filter base B on X is a filter on X, and B⊆⟨B⟩ (The upward closure of a filter base is the smallest filter containing it).

[L2]

Every filter on a set is contained in an ultrafilter on that set, and an ultrafilter is in particular a filter (The ultrafilter lemma, from the Axiom of Choice: every filter extends to an ultrafilter, Ultrafilter).

[L3]

≤ on N is reflexive, transitive, antisymmetric and total (≤ is a linear order on N).

[L4]

m<n  ⟺  σ(m)≤n, and m<n means m≤n with m≠n (Discreteness: σ(n) is the immediate successor, Order on the natural numbers).

Refutation

technique · direct
1.1

For N∈N put TN={ n∈N:N≤n }, the tail at N, and let B={ TN:N∈N }.

construct
2.1

B≠∅ because T0∈B, and ∅∉B because N∈TN by reflexivity.

step 1.1L3
2.2

B is downward directed: given M,N, totality gives say M≤N, and then transitivity gives TN⊆TM, so the member TN of B satisfies TN⊆TM∩TN.

step 1.1L3
2.3

For every x∈N, {x}∩Tσ(x)=∅: an element of the intersection equals x and satisfies σ(x)≤x, which would give x<x and hence x≠x.

step 1.1L4
3.1

B is a filter base on N, so F=⟨B⟩ is a filter on N and every tail TN belongs to it.

step 2.1step 2.2A1L1
4.1

By the ultrafilter lemma there is an ultrafilter U on N with F⊆U; in particular TN∈U for every N∈N.

step 3.1L2
5.1

No singleton lies in U: if {x}∈U then {x} and Tσ(x) both lie in U, hence so does their intersection ∅, which a filter omits.

step 4.1step 2.3A1L2
6.1

The principal filter at x contains {x}, so U is not the principal filter at any x∈N; thus U is an ultrafilter on N that is not principal, and the claim is refuted.

step 5.1A1∎

Remarks

  • What the refutation consumes. The ultrafilter U is produced by The ultrafilter lemma, from the Axiom of Choice: every filter extends to an ultrafilter, which rests on Zorn's lemma and so on the Axiom of Choice. That is not an artefact of this argument: if ZF is consistent, the existence of a non-principal ultrafilter is not provable in ZF. On that same hypothesis there is a model of ZF in which every ultrafilter, on every set, is principal (Blass 1977: a model of ZF with no free ultrafilter on any set ‡, recorded in this library and not proved here), so the false statement above is consistent with ZF alone and is refuted only once a choice principle is available; how much of one it takes is The proved choice cost of the ultrafilter lemma. This item is therefore false in ZFC and, if ZF is consistent, not refutable in ZF, an unusual status worth stating plainly rather than hiding.
  • The filter used is the Fréchet filter in disguise. The standard witness is the filter of cofinite subsets of N. A subset of N is cofinite exactly when it contains a tail, so the filter generated by the tails and the filter of cofinite sets coincide; tails are used here because they need only the order on N, whereas "cofinite" needs a theory of finite sets that this library has not yet developed. Nothing else changes.
  • On a finite X the claim is true, which is why the intuition survives: a finite X is a finite union of its singletons, primeness (Ultrafilters are prime: a union in U has a member in U) puts one singleton {x} into U, and upward closure then makes U the principal filter at x. Stating that argument in full needs the notion of a finite set, so it is recorded here as motivation rather than as a proved item.
  • The ultrafilter comes with no description. Zorn's lemma supplies a maximal element and no construction, and no free ultrafilter on N, read as a subset of {0,1}N, is Lebesgue measurable or has the Baire property (Sierpiński 1938: no free ultrafilter on N is measurable or has the Baire property ‡, an external result recorded and not proved here), so none can be produced by the usual explicit constructions. The refutation therefore names an object it cannot write down, which is the characteristic mark of the Axiom of Choice (Zorn's lemma).

Sources