fix(Geometry/Manifold): restore the Hausdorff hypothesis in NonemptyDiffeomorphSphere - #43606
fix(Geometry/Manifold): restore the Hausdorff hypothesis in NonemptyDiffeomorphSphere#43606Deicyde wants to merge 9 commits into
NonemptyDiffeomorphSphere#43606Conversation
…DiffeomorphSphere` `ContinuousMap.HomotopyEquiv.NonemptyDiffeomorphSphere` lost its `[T2Space M]` hypothesis in leanprover-community#15607, which moved it from the `variable` line onto the `proof_wanted` statements but not onto this `def`. Without it the statement is false: a sphere with a duplicated open half-space is a non-Hausdorff `C^∞` manifold that is homotopy equivalent to the sphere. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
PR summary 915b9d6803Import changes for modified filesNo significant changes to the import graph Import changes for all files
|
|
Nice catch, thanks! (And using comparator is great :-)) You need to fix a linter failure, otherwise this looks good to me! |
|
✌️ Deicyde can now approve this pull request until 2026-09-23 10:22 UTC (in 2 weeks). To approve and merge, reply with
|
|
Aside, looking at the formalisation:
|
The `unusedArguments` linter rejects `[T2Space M]` as an argument of `NonemptyDiffeomorphSphere`, since the body never uses it. Quantify over the instance inside the `Prop` instead, alongside the charted-space and manifold structure the definition already quantifies over. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
| def ContinuousMap.HomotopyEquiv.NonemptyDiffeomorphSphere (n : ℕ) : Prop := | ||
| ∀ (_ : ChartedSpace ℝⁿ M) (_ : IsManifold (𝓡 n) ∞ M), | ||
| ∀ [T2Space M] (_ : ChartedSpace ℝⁿ M) (_ : IsManifold (𝓡 n) ∞ M), |
There was a problem hiding this comment.
Doesn't it make more sense to require T2Space M instead of defining the proposition with it?
Currently every non-Hausdorff space satisfies this vacuously, which seems strange (although I don't know the maths here, so maybe it makes sense).
There was a problem hiding this comment.
Also, every topological space which is not a manifold satisfies this vacuously... so I'm not convinced yet that Hausdorff-ness is very particular in this regard.
There was a problem hiding this comment.
I wrote it this way in order to fix a linter warning. The other option is to add @[nolint unusedArguments]. Do you prefer it like this?
…rphSphere` Following review, make `[T2Space M]` an argument of the definition rather than a binder inside the quantifier. The body does not use the hypothesis, so the `unusedArguments` linter is silenced with an explanatory comment. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
|
Yeah that is what I meant, but I'm not an expert, so it's best to ask @grunweg. btw what's the point of this |
ContinuousMap.HomotopyEquiv.NonemptyDiffeomorphSphere M n(the smooth Poincaré conjecture forMin dimensionn) has no Hausdorff hypothesis. As stated it is false in every positive dimension. One can construct a non-Hausdorff counter-example by taking𝕊ⁿas the one-point compactification ofℝⁿand glue a second copy of the open half-spaceB = {x₀ < 1}onto𝕊ⁿalong the smaller open half-spaceA = {x₀ < 0}.A Lean proof of
¬ NonemptyDiffeomorphSphere M (n + 1)for thisMcompiles against Mathlib.The variable-inclusion backport #15607 removed
[T2Space M]from thevariableline and added it to eachproof_wantedin the file, but not to thisdef, which silently lost it.comparator