Skip to content

feat(Topology): Sobrification - #43946

Open
thomaskwaring wants to merge 20 commits into
leanprover-community:masterfrom
thomaskwaring:sober
Open

thomaskwaring wants to merge 20 commits into
leanprover-community:masterfrom
thomaskwaring:sober

Conversation

@thomaskwaring

@thomaskwaring thomaskwaring commented Sep 18, 2026 •

Copy link
Copy Markdown
Contributor

Construct the sobrification of a topological space X: the universal continuous map from X to a sober (T0Space and QuasiSober) space.


Open in Gitpod

@github-actions

github-actions Bot commented Sep 18, 2026 •

Copy link
Copy Markdown

PR summary 567b865e36

Import changes for modified files

Dependency changes

File Base Count Head Count Change
Mathlib.Topology.Order.Category.FrameAdjunction 1814 1816 +2 (+0.11%)
Import changes for all files
Files Import difference
Mathlib.Topology.Order.Category.FrameAdjunction 2
Mathlib.Topology.Sobrification (new file) 1817

Declarations diff (regex)

+ _root_.IsIrreducible.toPTOpens
+ _root_.OrderIso.boundedLatticeHomCongr
+ _root_.OrderIso.completeLatticeHomCongr
+ _root_.OrderIso.frameHomCongr
+ _root_.OrderIso.latticeHomCongr
+ _root_.OrderIso.sSupHomCongr
+ _root_.OrderIso.supBotHomCongr
+ _root_.OrderIso.supHomCongr
+ compl_inter_nonempty_iff
+ continuousMapEquivFrameHom
+ continuousMapEquivFrameHom_apply
+ continuousMapPTEquivFrameHomOpens
+ equivIrreducibleCloseds
+ homEquivFrameHom
+ homeomorphPtOpens
+ instance : QuasiSober (PT L)
+ instance : T0Space (PT L)
+ isClosed_iff
+ isEmbedding_localePointOfSpacePoint
+ isHomeomorph_localePointOfSpacePoint
+ isInducing_localePointOfSpacePoint
+ isPreirreducible_compl_iff
+ localePointOfSpacePoint_injective_iff_t0Space
+ localePointOfSpacePoint_surjective
+ localePointOfSpacePoint_surjective_iff_quasiSober
+ map_sSup_not_eq
+ orderIsoOpensPtOpens
+ sobrificationEquiv
+ sobrificationEquiv_apply
+ sobrificationEquiv_apply_coe
+ specializes_iff
+ subset_sSup_not_iff
+ toCloseds_injective
+ toIrreducibleCloseds
+ toIrreducibleCloseds_toPTOpens
+ toPTOpens_toCloseds
+ toPT_singleton

You can run this locally as follows
## from your `mathlib4` directory:
git clone https://github.com/leanprover-community/mathlib-ci.git ../mathlib-ci

## summary with just the declaration names:
../mathlib-ci/scripts/pr_summary/declarations_diff.sh <optional_commit>

## more verbose report:
../mathlib-ci/scripts/pr_summary/declarations_diff.sh long <optional_commit>

The doc-module for scripts/pr_summary/declarations_diff.sh in the mathlib-ci repository contains some details about this script.

Declarations diff (Lean)

✅ Lean-aware diff — post-build, computed from the Lean environment (commit 567b865).

  • +68 new declarations
  • −0 removed declarations
+CompleteLatticeHom.mk.congr_simp
+IsIrreducible.toPTOpens
+IsIrreducible.toPTOpens.congr_simp
+IsIrreducible.toPTOpens_toFun
+Locale.PT.coe_toIrreducibleCloseds
+Locale.PT.equivIrreducibleCloseds
+Locale.PT.equivIrreducibleCloseds_apply
+Locale.PT.equivIrreducibleCloseds_symm_apply
+Locale.PT.homeomorphPtOpens
+Locale.PT.instQuasiSober
+Locale.PT.instT0Space
+Locale.PT.isClosed_iff
+Locale.PT.isEmbedding_localePointOfSpacePoint
+Locale.PT.isHomeomorph_localePointOfSpacePoint
+Locale.PT.localePointOfSpacePoint_injective_iff_t0Space
+Locale.PT.localePointOfSpacePoint_surjective
+Locale.PT.localePointOfSpacePoint_surjective_iff_quasiSober
+Locale.PT.specializes_iff
+Locale.PT.toCloseds_injective
+Locale.PT.toIrreducibleCloseds
+Locale.PT.toIrreducibleCloseds_toPTOpens
+Locale.PT.toPTOpens_toCloseds
+Locale.PT.toPT_singleton
+Locale.homEquivFrameHom
+Locale.isInducing_localePointOfSpacePoint
+Locale.orderIsoOpensPtOpens
+OrderIso.boundedLatticeHomCongr
+OrderIso.boundedLatticeHomCongr_apply
+OrderIso.boundedLatticeHomCongr_symm_apply
+OrderIso.completeLatticeHomCongr
+OrderIso.completeLatticeHomCongr_apply
+OrderIso.completeLatticeHomCongr_symm_apply
+OrderIso.frameHomCongr
+OrderIso.frameHomCongr_apply
+OrderIso.frameHomCongr_symm_apply
+OrderIso.infHomCongr
+OrderIso.infHomCongr_apply
+OrderIso.infHomCongr_symm_apply
+OrderIso.infTopHomCongr
+OrderIso.infTopHomCongr_apply
+OrderIso.infTopHomCongr_symm_apply
+OrderIso.latticeHomCongr
+OrderIso.latticeHomCongr_apply
+OrderIso.latticeHomCongr_symm_apply
+OrderIso.sInfHomCongr
+OrderIso.sInfHomCongr_apply
+OrderIso.sInfHomCongr_symm_apply
+OrderIso.sSupHomCongr
+OrderIso.sSupHomCongr_apply
+OrderIso.sSupHomCongr_symm_apply
+OrderIso.supBotHomCongr
+OrderIso.supBotHomCongr_apply
+OrderIso.supBotHomCongr_symm_apply
+OrderIso.supHomCongr
+OrderIso.supHomCongr_apply
+OrderIso.supHomCongr_symm_apply
+Set.compl_inter_nonempty_iff
+continuousMapEquivFrameHom
+continuousMapEquivFrameHom.congr_simp
+continuousMapEquivFrameHom_apply
+continuousMapPTEquivFrameHomOpens
+isPreirreducible_compl_iff
+sInfHom.mk.congr_simp
+sSupHom.mk.congr_simp
+sobrificationEquiv
+sobrificationEquiv.congr_simp
+sobrificationEquiv_apply
+sobrificationEquiv_apply_coe

No changes to strong technical debt.

Increase in weak tech debt: (relative, absolute) = (1.00, 0.00)
Current number Change Type (weak)
exposed public sections 5077 1

Current commit 567b865e36
Reference commit dec5b2b780

This script lives in the mathlib-ci repository. To run it locally, from your mathlib4 directory:

git clone https://github.com/leanprover-community/mathlib-ci.git ../mathlib-ci
../mathlib-ci/scripts/reporting/technical-debt-metrics.py pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

@github-actions github-actions Bot added the t-order Order theory label Sep 18, 2026
twwar and others added 15 commits September 18, 2026 18:09
…ommunity#42947)

The existence of invariant probability measures for continuous maps on compact spaces.

Co-authored-by: Lua Viana Reis <me@lua.blog.br>
… abuse (leanprover-community#40648)

Co-authored-by: Batixx <s59fpern@uni-bonn.de>
Co-authored-by: Johan Commelin <johan@commelin.net>
…ply and Subrepresentation.quotient (leanprover-community#41081)

Add a lemma for `Subrepresentation` recording the inherited group action. Help avoid unfolding `Subrepresentation.toRepresentation` when analyzing the action.

Add the `quotient` representation associated to a `Subrepresentation`. It wraps up `Representation.quotient` and `Representation.Subrepresentation` and then we also record the inherited group action.
…y#41438)

Followup to leanprover-community#39123 (comment)

Co-authored-by: Monica Omar <23701951+themathqueen@users.noreply.github.com>
…43814)

This PR removes many uses of `to_additive existing`. Many of these used to be necessary, but are now not anymore thanks to various improvements to `to_additive`.
…rmations (leanprover-community#43847)

On the suggestion of @sgouezel, formulate the First Main Theorem of Value Distribution Theory as a statement on the invariance of the characteristic function under postcomposition with automorphisms of the projective line. Historically, this formulation is probably due to Georges Valiron.
The `upload_cache` job uploads a second copy of its staged set to R2, for the `master` container only. This PR extends it to `forks`.

The cache tool does not change. The `forks` upload passes `--container=forks` and sets `MATHLIB_CACHE_PUT_BASE_URL` to the developer bucket. The tool writes the container's layout under the bucket, `mathlib4-forks/f/{repo}/{sha}/{hash}.ltar` with the marker `mathlib4-forks/m/{repo}/{sha}`, the same paths the Azure container holds. `master` keeps its flat write to `MATHLIB_CACHE_R2_PUT_URL`. The bucket URL comes from a new secret, `MATHLIB_CACHE_R2_DEVELOPER_PUT_BASE_URL`.

🤖 Generated with [Claude Code](https://claude.com/claude-code)
@github-actions github-actions Bot added large-import Automatically added label for PRs with a significant increase in transitive imports tech debt Fixes cross-cutting technical debt, see the "technical debt counters" stream on zulip labels Sep 19, 2026
@github-actions github-actions Bot removed the large-import Automatically added label for PRs with a significant increase in transitive imports label Sep 19, 2026
@thomaskwaring
thomaskwaring marked this pull request as ready for review September 19, 2026 13:12
@mathlib-dependent-issues mathlib-dependent-issues Bot added the blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) label Sep 19, 2026
@mathlib-dependent-issues

Copy link
Copy Markdown

This PR/issue depends on:

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) t-order Order theory tech debt Fixes cross-cutting technical debt, see the "technical debt counters" stream on zulip

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants