The fixed point of a C¹ family of contractions of a Banach space is a C¹ function of the parameter
ProvedAnosovPlugs.contDiffOn_fixedPoint_of_contractionLet and be real Banach spaces, let be open, and let be a map of class C¹. Assume that for every the map is a contraction: there is with for all . Let be a map such that is the fixed point of for every . Then
In words: the fixed point of a C¹ family of contractions depends in a C¹ way on the parameter. The contraction constant may depend on and need not be uniformly smaller than 1 on . A general fact of analysis, not stated in the paper. In this mission it is a step in the proof of the companion theorem exists_localFlow_contMDiff_of_isInteriorPoint. That theorem says that the local flow of a C¹ vector field at an interior point is jointly C¹ in the initial point and the time. The proof of Proposition 1.1 (Section 3.1 of arXiv v1) uses it tacitly. There is the space of initial points and time scales, is a space of continuous curves, and is the Picard operator.
Formalization Note is curried in Lean (T : P → B → B), and the C¹ hypothesis is on the uncurried map fun q : P × B => T q.1 q.2. The fixed-point map fp is an arbitrary function with T p (fp p) = fp p for p ∈ U; it is unique there because each T p is a contraction. C¹ on is Mathlib's ContDiffOn ℝ 1 fp U. The expected proof applies the C¹ implicit function theorem (ContDiffAt.implicitFunction in Mathlib) to ; the partial derivative in is the identity minus an operator of norm at most , which is invertible.
import Mathlib import Definitions.Def_AnosovPlugs_Gluing open scoped Manifold ContDiff Topology open Set
namespace AnosovPlugs
theorem contDiffOn_fixedPoint_of_contraction
{P : Type} [NormedAddCommGroup P] [NormedSpace ℝ P] [CompleteSpace P]
{B : Type} [NormedAddCommGroup B] [NormedSpace ℝ B] [CompleteSpace B]
(T : P → B → B) (hT : ContDiff ℝ 1 (fun q : P × B => T q.1 q.2))
(U : Set P) (hU : IsOpen U)
(hlip : ∀ p ∈ U, ∃ K : NNReal, K < 1 ∧ LipschitzWith K (T p))
(fp : P → B) (hfp : ∀ p ∈ U, T p (fp p) = fp p) :
ContDiffOn ℝ 1 fp U := by sorry
end AnosovPlugs