feat(RingTheory/AdicCompletion): more APIs for IsAdicComplete - #21582
feat(RingTheory/AdicCompletion): more APIs for IsAdicComplete#21582jjdishere wants to merge 75 commits into
Conversation
This reverts commit acd93bb.
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…ng_fontaine_theta
…ng_fontaine_theta
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…nprover-community/mathlib4 into jiedong_jiang_fontaine_theta
|
|
PR summary c13c0b4820Import changes for modified filesNo significant changes to the import graph Import changes for all files
|
riccardobrasca
left a comment
There was a problem hiding this comment.
I had to stop at some point, but already a couple of comments.
| /-- | ||
| The `M = R` invariant of `IsHausdorff.eq_iff_smodEq_of_strictMono`. | ||
| -/ | ||
| theorem eq_iff_smodEq_of_strictMono' [IsHausdorff I R] {x y : R} : |
There was a problem hiding this comment.
Wouldn't be faster to prove that I ^ n • ⊤ = I ^ n (this is probably already there) and rw this? Or there is some type theoretic issue I don't see?
| limit function of `f n : N → M ⧸ (I ^ a n • ⊤)`, and each | ||
| `f n` is additive, then `F` is additive. | ||
| -/ | ||
| protected theorem map_add {N : Type*} [Add N] {f : (n : ℕ) → N → M ⧸ (I ^ (a n) • ⊤)} |
There was a problem hiding this comment.
I am a bit skeptical that this lemma is not a special case of AdicCompletion.lift. Of course there is the same problem as above, and I am not against having a primed version to handle the case M = R, but the that is the standard formulation of the universal property.
There was a problem hiding this comment.
I mean, you are expressing the universal property in the relevant category of algebras, right?
There was a problem hiding this comment.
I mean, you are expressing the universal property in the relevant category of algebras, right?
Thank you for your careful review! These lemmas are used in the construction limRingHom (at line 355) and limLinearMap (at line 404). (Maybe I should rename them into liftRingHom and liftLinearMap) They are formulated in a way very similar to AdicCompletion.lift, which expresses the universal property of adic-completeness. They are formulated using the property IsAdicComplete instead of an explicit construction AdicCompletion.
For this map_add lemma, I found that it can be stated without any condition on N except for [Add N]. So I wrote down this general form here.
What do you think about these lemmas here? @riccardobrasca
There was a problem hiding this comment.
Ah sorry, I didn't realize AdicCompletion.lift is only about the completion. Then I agree we want this. Why not calling it IsAdicComplete.lift? Putting aside for a moment the ring map version, I think you can just copy the API, and the names, of AdicCompletion.lift (I think we cannot remove it since the completion is not always complete).
There was a problem hiding this comment.
Thank you for your advice! I'll rename it as IsAdicComplete.lift and copy APIs for it and names from AdicCompletion.lift. I think I would also leave several original lemmas unchanged since there are also cases people would like to construct single elements instead of a whole linear map using the universal property.
There was a problem hiding this comment.
Yeah, if they're more general why not keeping them. Can you please add a comment saying where the "usual" universal property is? Also, IsAdicComplete.lift and AdicCompletion.lift should have comments relating them. here a reference for a completion that is not complete.
|
This PR has been migrated to a fork-based workflow: #25927 |
In this PR, we establish more APIs for IsAdicComplete.
IsPrecomplete(starting with a compatible sequence in M), we build APIs to lift elements (or maps) from compatible sequences inM ⧸ I ^ n • ⊤.LinearMaps toLinearMapand a sequence ofRingHoms toRingHomdirectly.I * ⊤is not definitionally equal toI, we build special APIs for theM = Rcase, enabling one to useR ⧸ I ^ ninstead ofR ⧸ I ^ n • ⊤.M ⧸ I ^ n • ⊤to only defined onM ⧸ I ^ a n • ⊤for a strictly increasing sequencea n. (I would use the casea n = n + 1in feat(RingTheory/Perfectoid): Fontaine's theta map and the de Rham period rings #21564 )