Commit 2024-11-29 21:45 67afcb68
View on Github →feat: update the ContDiff
definition to integrate analytic functions in the hierarchy (#17152)
We modify the definition of ContDiff
so that the smoothness exponent belongs to WithTop (ℕ∞)
, where top smoothness (denoted with ω
in the ContDiff
scope) means analyticity (together with analyticity of all the iterated derivatives).
This will make it possible to write theorems like: consider a function which is C^2
over the reals or complexes, or analytic over a general field. Then... Many theorems in calculus hold under these assumptions (and it's the way things are written in Bourbaki), so having this possibility is a necessary improvement unless one wants to duplicate everything.
The PR is mostly not changing the API: theorems that were proved for C^n
functions with n ∈ ℕ or n = ∞
are now proved for n ∈ ℕ or n = ∞ or n = ω
(unless they are not true for analytic functions, but it turns out in most cases things are fine). Of course, results have to be added in the files ContDiff.Def
and ContDiff.Basic
to deal with analytic functions.
I know that the PR is huge and hard to review. I have tried to separate all the other results in other PRs, but once one changes the basic definition one has to fix everything downstream to get mathlib compiling, so I can not make it shorter...