Skip to content

Commit f622314

Browse files
mcdollmrdouglasny
andcommitted
feat(Analysis/SchwartzMap): translation of arguments (#35781)
We only define the translation with subtraction, because this is more common in applications. Co-authored-by: Michael Douglas <mdouglas@scgp.stonybrook.edu>
1 parent fafbbbf commit f622314

2 files changed

Lines changed: 44 additions & 11 deletions

File tree

Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -913,7 +913,7 @@ section Comp
913913
variable (𝕜)
914914
variable [RCLike 𝕜]
915915
variable [NormedAddCommGroup D] [NormedSpace ℝ D]
916-
variable [NormedSpace 𝕜 F] [SMulCommClass ℝ 𝕜 F]
916+
variable [NormedSpace 𝕜 F]
917917

918918
/-- Composition with a function on the right is a continuous linear map on Schwartz space
919919
provided that the function is temperate and growths polynomially near infinity. -/
@@ -1061,6 +1061,35 @@ theorem postcompCLM_postcompCLM (L₁ : F →L[𝕜] G) (L₂ : G →L[𝕜] H)
10611061

10621062
end Postcomp
10631063

1064+
section Translate
1065+
1066+
variable [RCLike 𝕜] [NormedSpace 𝕜 F]
1067+
1068+
variable (𝕜) in
1069+
/-- Translating the argument as a continuous linear map on Schwartz space. -/
1070+
def compSubConstCLM (a : E) : 𝓢(E, F) →L[𝕜] 𝓢(E, F) :=
1071+
compCLMOfAntilipschitz (g := fun x ↦ x - a) (K := 1) 𝕜 (by fun_prop)
1072+
(fun _ _ ↦ by simp [edist_dist, dist_eq_norm])
1073+
1074+
@[simp]
1075+
theorem compSubConstCLM_apply (f : 𝓢(E, F)) (a x : E) :
1076+
f.compSubConstCLM 𝕜 a x = f (x - a) := rfl
1077+
1078+
@[simp]
1079+
theorem compSubConstCLM_zero : compSubConstCLM 𝕜 (0 : E) (F := F) = ContinuousLinearMap.id _ _ := by
1080+
ext f x
1081+
simp
1082+
1083+
@[simp]
1084+
theorem compSubConstCLM_comp (f : 𝓢(E, F)) (a b : E) :
1085+
(f.compSubConstCLM 𝕜 a).compSubConstCLM 𝕜 b = f.compSubConstCLM 𝕜 (a + b) := by
1086+
ext x
1087+
simp only [compSubConstCLM_apply]
1088+
congr 1
1089+
exact (sub_add_eq_sub_sub_swap x a b).symm
1090+
1091+
end Translate
1092+
10641093
section Integration
10651094

10661095
/-! ### Integration -/

Mathlib/Analysis/Distribution/SchwartzSpace/Deriv.lean

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -73,10 +73,12 @@ theorem derivCLM_apply (f : 𝓢(ℝ, F)) (x : ℝ) : derivCLM 𝕜 F f x = deri
7373
theorem hasDerivAt (f : 𝓢(ℝ, F)) (x : ℝ) : HasDerivAt f (deriv f x) x :=
7474
f.differentiableAt.hasDerivAt
7575

76-
variable [SMulCommClass ℝ 𝕜 F]
77-
7876
open LineDeriv
7977

78+
section fderiv
79+
80+
variable [SMulCommClass ℝ 𝕜 F]
81+
8082
variable (E F) in
8183
/-- The Fréchet derivative on Schwartz space as a continuous `𝕜`-linear map. -/
8284
def fderivCLM : 𝓢(E, F) →L[𝕜] 𝓢(E, E →L[ℝ] F) :=
@@ -133,14 +135,6 @@ alias pderivCLM_apply := LineDeriv.lineDerivOpCLM_apply
133135
theorem lineDerivOp_apply (m : E) (f : 𝓢(E, F)) (x : E) : ∂_{m} f x = lineDeriv ℝ f x m :=
134136
f.differentiableAt.lineDeriv_eq_fderiv.symm
135137

136-
variable [NormedAddCommGroup D] [NormedSpace ℝ D]
137-
138-
theorem lineDerivOp_compCLMOfContinuousLinearEquiv (m : D) (g : D ≃L[ℝ] E) (f : 𝓢(E, F)) :
139-
∂_{m} (compCLMOfContinuousLinearEquiv 𝕜 g f) =
140-
compCLMOfContinuousLinearEquiv 𝕜 g (∂_{g m} f) := by
141-
ext x
142-
simp [lineDerivOp_apply_eq_fderiv, ContinuousLinearEquiv.comp_right_fderiv]
143-
144138
@[deprecated (since := "2025-11-25")]
145139
alias iteratedPDeriv := LineDeriv.iteratedLineDerivOpCLM
146140

@@ -169,6 +163,16 @@ theorem iteratedLineDerivOp_eq_iteratedFDeriv {n : ℕ} {m : Fin n → E} {f :
169163
@[deprecated (since := "2025-11-25")]
170164
alias iteratedPDeriv_eq_iteratedFDeriv := iteratedLineDerivOp_eq_iteratedFDeriv
171165

166+
end fderiv
167+
168+
variable [NormedAddCommGroup D] [NormedSpace ℝ D]
169+
170+
theorem lineDerivOp_compCLMOfContinuousLinearEquiv (m : D) (g : D ≃L[ℝ] E) (f : 𝓢(E, F)) :
171+
∂_{m} (compCLMOfContinuousLinearEquiv 𝕜 g f) =
172+
compCLMOfContinuousLinearEquiv 𝕜 g (∂_{g m} f) := by
173+
ext x
174+
simp [lineDerivOp_apply_eq_fderiv, ContinuousLinearEquiv.comp_right_fderiv]
175+
172176
end Derivatives
173177

174178
section support

0 commit comments

Comments
 (0)