Mathlib theorem · Existing formal mathematics

Existing in Mathlib · Logic and foundations

Łoś's Theorem

Build an ultraproduct from a family of nonempty structures and an ultrafilter on their indices. A first-order sentence is true in the resulting ultraproduct exactly when the set of indices whose structures satisfy that sentence belongs to the ultrafilter.

Exact theorem

Exact Mathlib statement

theorem FirstOrder.Language.Ultraproduct.sentence_realize {α : Type*} {M : α → Type*} {u : Ultrafilter α} {L : FirstOrder.Language.{u, v}} [∀ a, L.Structure (M a)] [∀ a : α, Nonempty (M a)] (φ : L.Sentence) : (u : Filter α).Product M ⊨ φ ↔ ∀ᶠ a : α in u, M a ⊨ φ

The theorem at a glance

Łoś's theorem at a glance

A visual guide to the theorem's hypotheses, structure, and conclusion; the exact statement gives the formal detail.

Sentence truth in an ultraproduct is equivalent to truth on an ultrafilter-large set of factors. Explanatory diagram.
Detailed visual description

The poster keeps the exact sentence-level endpoint prominent. Every displayed factor feeds the construction, a gold contour distinguishes an ultrafilter-large satisfying region without implying a vote, and a balanced two-way mark communicates the if-and-only-if truth transfer.

Statement structure

Statement and scope

Statement map for Łoś's TheoremAn ultraproduct satisfies a first-order sentence if and only if that sentence holds in ultrafilter-many factors. Claim boundary: This target indexes Mathlib's sentence-level form of Łoś's theorem. For an ultrafilter u and a family M of nonempty L-structures, the ultraproduct satisfies a sentence φ exactly when M a satisfies φ for u-almost every a. “u-almost every” means membership in the ultrafilter; it is not numerical majority, probability, or measure. The selected endpoint does not itself display parameters for formulas with free variables. The pinned upstream declaration is FirstOrder.Language.Ultraproduct.sentence_realize. The complete formal statement is available in the Exact Mathlib statement section.Mathematical readingAn ultraproductsatisfies a first-ordersentence if and only ifthat sentence holds inultrafilter-manyfactors.Claim boundaryThis target indexesMathlib's sentence-levelform of Łoś's theorem.For an ultrafilter u anda family M of nonemptyL-structures, theultraproduct satisfies asentence φ exactly whenM a satisfies φ foru-almost every a.“u-almost every” meansmembership in theultrafilter; it is notnumerical majority,probability, or measure.The selected endpointdoes not itself displayparameters for formulaswith free variables.Pinned declarationmathlib ·FirstOrder.Language.Ultraproduct.sentence_realizeStatement map for Łoś's TheoremAn ultraproduct satisfies a first-order sentence if and only if that sentence holds in ultrafilter-many factors. Claim boundary: This target indexes Mathlib's sentence-level form of Łoś's theorem. For an ultrafilter u and a family M of nonempty L-structures, the ultraproduct satisfies a sentence φ exactly when M a satisfies φ for u-almost every a. “u-almost every” means membership in the ultrafilter; it is not numerical majority, probability, or measure. The selected endpoint does not itself display parameters for formulas with free variables. The pinned upstream declaration is FirstOrder.Language.Ultraproduct.sentence_realize. The complete formal statement is available in the Exact Mathlib statement section.Mathematical readingAn ultraproductsatisfies a first-ordersentence if and only ifthat sentence holds inultrafilter-manyfactors.Claim boundaryThis target indexesMathlib's sentence-levelform of Łoś's theorem.For an ultrafilter u anda family M of nonemptyL-structures, theultraproduct satisfies asentence φ exactly whenM a satisfies φ foru-almost every a.“u-almost every” meansmembership in theultrafilter; it is notnumerical majority,probability, or measure.The selected endpointdoes not itself displayparameters for formulaswith free variables.Pinned declarationmathlib ·FirstOrder.Language.Ultraproduct.sentence_realize

Read the exact Mathlib declaration

This map summarizes the statement's structure; the exact Mathlib declaration remains authoritative.

All factors form the ultraproduct, while truth of φ corresponds to the satisfying-index card Sφ belonging to the ultrafilter’s collection u. Explanatory scientific diagram.
Detailed visual description

The left column shows seven differently shaped first-order structure glyphs followed by continuation dots. A strand from every displayed factor enters the product braid, passes through a single quotient ring, and reaches one ultraproduct. Separately, the satisfying-index subset is a card labeled Sφ, and the membership symbol places that entire card in a stacked collection of subsets labeled u. The drawing represents ultrafilter membership structurally; no count, fraction, area, probability, measure, or numerical majority encodes largeness.

Why it matters

A mathematical landmark

Łoś's theorem is the central transfer principle for ultraproducts: first-order truth in the quotient structure is governed exactly by ultrafilter-large truth among the factors. It is foundational to compactness arguments, nonstandard models, and modern model theory.

ProofAtlas record

What has been checked

Upstream indexedPinned source bytes verified locally
Locally reproducedExact upstream declaration replayed
Reviewed pageCurrent public presentation reviewed
Accepted Atlas resultNot recorded for the preferred artifact

Mathlib is the source of the theorem; the local Lean replay and page review are separate.

Claim boundary

No new theorem is claimed

This target indexes Mathlib's sentence-level form of Łoś's theorem. For an ultrafilter u and a family M of nonempty L-structures, the ultraproduct satisfies a sentence φ exactly when M a satisfies φ for u-almost every a. “u-almost every” means membership in the ultrafilter; it is not numerical majority, probability, or measure. The selected endpoint does not itself display parameters for formulas with free variables.

Source and local evidence

Where the theorem comes from

Existing declaration
FirstOrder.Language.Ultraproduct.sentence_realize in mathlib
Relationship
The checked artifact is the upstream declaration itself
Local Lean evidence
artifact.library.mathlib.los-theorem.v001
Source
Open the pinned upstream reference