Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(RingTheory/Perfectoid): Fontaine's theta map #21564

Open
wants to merge 98 commits into
base: master
Choose a base branch
from

Conversation

jjdishere
Copy link
Collaborator

@jjdishere jjdishere commented Feb 7, 2025

In this PR, we define the Fontaine's theta map and show it is surjective.


@jjdishere jjdishere added WIP Work in progress t-number-theory Number theory (also use t-algebra or t-analysis to specialize) t-algebra Algebra (groups, rings, fields, etc) labels Feb 7, 2025
Copy link

github-actions bot commented Feb 7, 2025

PR summary 59985ff44b

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference
Mathlib.RingTheory.Perfectoid.IntergalPerfectoid (new file) 1856
Mathlib.RingTheory.Perfectoid.FontaineTheta (new file) 1915

Declarations diff

+ BDeRham
+ BDeRhamPlus
+ Ideal.Quotient.eq_factor_of_eq_factor_succ
+ IntegralPerfectoid
+ IsAdicComplete.surjective_of_surjective_mkQ_comp
+ IsHausdorff.map
+ IsPerfectoidPsU
+ MonoidHom.map_frobeniusEquiv_symm
+ MonoidHom.map_iterate_frobeniusEquiv_symm
+ Perfection.coeff_frobeniusEquiv_symm
+ Perfection.coeff_iterate_frobeniusEquiv_symm
+ PreTilt.coeff_frobenius
+ PreTilt.coeff_frobeniusEquiv_symm
+ PreTilt.coeff_frobenius_pow
+ PreTilt.coeff_iterate_frobeniusEquiv_symm
+ PreTilt.untilt_frobeniusEquiv_symm_pow_pow
+ RingAut.coe_one
+ RingAut.coe_pow
+ RingAut.inv_apply
+ RingAut.mul_apply
+ RingAut.one_apply
+ RingAut.one_eq_refl
+ RingHom.eq_liftOfSurjective
+ RingHom.liftOfSurjective_comp
+ RingHom.liftOfSurjective_comp_apply
+ RingHom.map_frobeniusEquiv_symm
+ RingHom.map_iterate_frobeniusEquiv_symm
+ SModEq.of_toAddSubgroup_le
+ Submodule.eq_factor_of_eq_factor_succ
+ Submodule.toAddSubgroup_toAddSubmonoid
+ Tilt
+ WittVector.map_id
+ _root_.isHausdorff_iff
+ _root_.isPrecomplete_iff
+ coe_frobenius_comp_coe_frobeniusEquiv
+ coeff_sum_of_disjoint
+ dvd_sub_sum_teichmuller_iterateFrobeniusEquiv_coeff
+ eq_iff_smodEq
+ eq_iff_smodEq'
+ eq_iff_smodEq_of_strictMono
+ eq_iff_smodEq_of_strictMono'
+ eq_of_apply_teichmuller_eq
+ eq_of_smodEq
+ eq_of_smodEq'
+ eq_one
+ eq_zero
+ eq_zero'
+ exists_pow_dvd
+ factorPowSucc_comp_fontaineThetaModPPow
+ factorPowSucc_fontaineThetaModPPow_eq
+ factor_eq_factor
+ fontaineTheta
+ fontaineThetaInvertP
+ fontaineThetaModPPow
+ fontaineThetaModPPow_teichmuller
+ fontaineTheta_teichmuller
+ frobeniusEquiv_symm_pow_pow_p_pow
+ function_of_eq_factorPow
+ function_of_eq_factorPow'
+ ghostComponentModPPow
+ ghostComponentModPPow'
+ ghostComponentModPPow_teichmuller_coeff
+ haus
+ instance : CommRing (BDeRhamPlus O p) := AdicCompletion.instCommRing _
+ instance : CommRing (Tilt A p) := Perfection.commRing p (A ⧸ Ideal.span {(p : A)}) -- p is not invertible in integral perfectoid case
+ instance : PerfectRing (PreTilt O p) p
+ ker_map_le_ker_mk_comp_ghostComponent
+ limLinearMap
+ limRingHom
+ map_add
+ map_add'
+ map_eq_zero_iff
+ map_mk_teichmuller_frobeniusEquiv_symm_pow_untilt
+ map_mul
+ map_smul
+ mkQ_comp_limLinearMap
+ mk_comp_limRingHom
+ mk_fontaineTheta
+ mk_limLinearMap
+ mk_limRingHom
+ mk_out
+ mk_pow_fontaineTheta
+ of_SModEq_succ
+ of_eq_factorPow
+ of_eq_factorPow'
+ of_eq_factorPowSucc
+ of_eq_factorPowSucc'
+ pow_dvd_ghostComponent_of_dvd_coeff
+ prec
+ quotEquivOfEq_eq_factor
+ quotEquivOfEq_ghostComponentModPPow
+ sharp
+ sharp_p_pow
+ surjective_fontaineTheta
+ teichmuller_mul_pow_coeff
+ teichmuller_mul_pow_coeff_of_ne
++ _
- IsHausdorff.eq_iff_smodEq
- IsHausdorff.haus
- IsPrecomplete.prec
- isHausdorff_iff
- isPrecomplete_iff

You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>

The doc-module for script/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/technical-debt-metrics.sh 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).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@mathlib4-dependent-issues-bot
Copy link
Collaborator

mathlib4-dependent-issues-bot commented Feb 7, 2025

@mathlib4-dependent-issues-bot mathlib4-dependent-issues-bot added the blocked-by-other-PR This PR depends on another PR to Mathlib (this label is automatically managed by a bot) label Feb 7, 2025
@github-actions github-actions bot removed the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Feb 21, 2025
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 to Mathlib (this label is automatically managed by a bot) t-algebra Algebra (groups, rings, fields, etc) t-number-theory Number theory (also use t-algebra or t-analysis to specialize) WIP Work in progress
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants