Mathlib v3 is deprecated. Go to Mathlib v4

Commit 2023-02-08 10:26 b018406a

View on Github →

feat(analysis/calculus/special_functions): refactor bump functions (#17453) Currently, we have satisfactory bump functions on inner spaces (equal to 1 on ball c r and support equal to ball c R), and less satisfactory bump functions on general finite-dimensional normed spaces (equal to 1 on a neighborhood of c, with support a larger neighborhood of c), where the latter are obtained from the former by composing with an arbitrary linear equiv with an inner product space called to_euclidean. In particular, they have different names (bump_function_of_inner and bump_function) and whenever one wants to prove properties of bump_function one has to juggle with the to_euclidean. We refactor bump functions to get a coherent theory, which is uniform over all normed spaces. We remove completely bump_function_of_inner, and we make sure that bump_function c r R is a smooth function equal to 1 on ball c r and with support exactly ball c R, on all normed spaces. For this, we provide a typeclass has_cont_diff_bump saying that a space has nice bump functions, and we instantiate it both on inner product spaces (using the old approach with a function constructed from the norm and from exp(-1/x^2)), and on finite-dimensional normed spaces (where the bump functions have already been constructed by convolution in #18095).

Estimated changes

modified theorem cont_diff.cont_diff_bump
modified theorem cont_diff_bump.R_pos
modified theorem cont_diff_bump.le_one
added theorem cont_diff_bump.nonneg'
modified theorem cont_diff_bump.nonneg
modified theorem cont_diff_bump.support_eq
modified def cont_diff_bump.to_fun
modified theorem cont_diff_bump.tsupport_eq
modified structure cont_diff_bump
added structure cont_diff_bump_base
deleted structure cont_diff_bump_of_inner