declaration:
theorem integral_bilinear_hasLineDerivAt_right_eq_neg_left_of_integrable_aux1 {E : Type u_1} {F : Type u_2} {G : Type u_3} {W : Type u_4} [NormedAddCommGroup E] [NormedSpace ℝ E] [NormedAddCommGroup F] [NormedSpace ℝ F] [NormedAddCommGroup G] [NormedSpace ℝ G] [NormedAddCommGroup W] [NormedSpace ℝ W] [MeasurableSpace E] {μ : MeasureTheory.Measure E} [MeasureTheory.SigmaFinite μ] {f : E × ℝ → F} {f' : E × ℝ → F} {g : E × ℝ → G} {g' : E × ℝ → G} {B : F →L[ℝ] G →L[ℝ] W} (hf'g : MeasureTheory.Integrable (fun x => (B (f' x)) (g x)) (MeasureTheory.Measure.prod μ MeasureTheory.volume)) (hfg' : MeasureTheory.Integrable (fun x => (B (f x)) (g' x)) (MeasureTheory.Measure.prod μ MeasureTheory.volume)) (hfg : MeasureTheory.Integrable (fun x => (B (f x)) (g x)) (MeasureTheory.Measure.prod μ MeasureTheory.volume)) (hf : ∀ (x : E × ℝ), HasLineDerivAt ℝ f (f' x) x (0, 1)) (hg : ∀ (x : E × ℝ), HasLineDerivAt ℝ g (g' x) x (0, 1)) : ∫ (x : E × ℝ), (B (f x)) (g' x) ∂MeasureTheory.Measure.prod μ MeasureTheory.volume =
  -∫ (x : E × ℝ), (B (f' x)) (g x) ∂MeasureTheory.Measure.prod μ MeasureTheory.volume


declaration:
/-- **Integration by parts for Fréchet derivatives**
Version with two scalar functions: `∫ f * g' = - ∫ f' * g` when `f * g'` and `f' * g` and `f * g`
are integrable, where `f'` and `g'` are the derivatives of `f` and `g` in a given direction `v`. -/
theorem integral_mul_fderiv_eq_neg_fderiv_mul_of_integrable {E : Type u_1} [NormedAddCommGroup E] [NormedSpace ℝ E] [MeasurableSpace E] [BorelSpace E] {μ : MeasureTheory.Measure E} [FiniteDimensional ℝ E] [MeasureTheory.Measure.IsAddHaarMeasure μ] {𝕜 : Type u_5} [NormedField 𝕜] [NormedAlgebra ℝ 𝕜] {f : E → 𝕜} {g : E → 𝕜} {v : E} (hf'g : MeasureTheory.Integrable (fun x => (fderiv ℝ f x) v * g x) μ) (hfg' : MeasureTheory.Integrable (fun x => f x * (fderiv ℝ g x) v) μ) (hfg : MeasureTheory.Integrable (fun x => f x * g x) μ) (hf : Differentiable ℝ f) (hg : Differentiable ℝ g) : ∫ (x : E), f x * (fderiv ℝ g x) v ∂μ = -∫ (x : E), (fderiv ℝ f x) v * g x ∂μ


declaration:
/-- **Integration by parts for line derivatives**
Version with a general bilinear form `B`.
If `B f g` is integrable, as well as `B f' g` and `B f g'` where `f'` and `g'` are derivatives
of `f` and `g` in a given direction `v`, then `∫ B f g' = - ∫ B f' g`. -/
theorem integral_bilinear_hasLineDerivAt_right_eq_neg_left_of_integrable {E : Type u_1} {F : Type u_2} {G : Type u_3} {W : Type u_4} [NormedAddCommGroup E] [NormedSpace ℝ E] [NormedAddCommGroup F] [NormedSpace ℝ F] [NormedAddCommGroup G] [NormedSpace ℝ G] [NormedAddCommGroup W] [NormedSpace ℝ W] [MeasurableSpace E] [BorelSpace E] {μ : MeasureTheory.Measure E} [FiniteDimensional ℝ E] [MeasureTheory.Measure.IsAddHaarMeasure μ] {f : E → F} {f' : E → F} {g : E → G} {g' : E → G} {v : E} {B : F →L[ℝ] G →L[ℝ] W} (hf'g : MeasureTheory.Integrable (fun x => (B (f' x)) (g x)) μ) (hfg' : MeasureTheory.Integrable (fun x => (B (f x)) (g' x)) μ) (hfg : MeasureTheory.Integrable (fun x => (B (f x)) (g x)) μ) (hf : ∀ (x : E), HasLineDerivAt ℝ f (f' x) x v) (hg : ∀ (x : E), HasLineDerivAt ℝ g (g' x) x v) : ∫ (x : E), (B (f x)) (g' x) ∂μ = -∫ (x : E), (B (f' x)) (g x) ∂μ


declaration:
/-- **Integration by parts for Fréchet derivatives**
Version with a scalar function: `∫ f • g' = - ∫ f' • g` when `f • g'` and `f' • g` and `f • g`
are integrable, where `f'` and `g'` are the derivatives of `f` and `g` in a given direction `v`. -/
theorem integral_smul_fderiv_eq_neg_fderiv_smul_of_integrable {E : Type u_1} {G : Type u_3} [NormedAddCommGroup E] [NormedSpace ℝ E] [NormedAddCommGroup G] [NormedSpace ℝ G] [MeasurableSpace E] [BorelSpace E] {μ : MeasureTheory.Measure E} [FiniteDimensional ℝ E] [MeasureTheory.Measure.IsAddHaarMeasure μ] {𝕜 : Type u_5} [NormedField 𝕜] [NormedAlgebra ℝ 𝕜] [NormedSpace 𝕜 G] [IsScalarTower ℝ 𝕜 G] {f : E → 𝕜} {g : E → G} {v : E} (hf'g : MeasureTheory.Integrable (fun x => (fderiv ℝ f x) v • g x) μ) (hfg' : MeasureTheory.Integrable (fun x => f x • (fderiv ℝ g x) v) μ) (hfg : MeasureTheory.Integrable (fun x => f x • g x) μ) (hf : Differentiable ℝ f) (hg : Differentiable ℝ g) : ∫ (x : E), f x • (fderiv ℝ g x) v ∂μ = -∫ (x : E), (fderiv ℝ f x) v • g x ∂μ


declaration: theorem integral_bilinear_hasLineDerivAt_right_eq_neg_left_of_integrable_aux2 {E : Type u_1} {F : Type u_2} {G : Type u_3} {W : Type u_4} [NormedAddCommGroup E] [NormedSpace ℝ E] [NormedAddCommGroup F] [NormedSpace ℝ F] [NormedAddCommGroup G] [NormedSpace ℝ G] [NormedAddCommGroup W] [NormedSpace ℝ W] [MeasurableSpace E] [BorelSpace E] [FiniteDimensional ℝ E] {μ : MeasureTheory.Measure (E × ℝ)} [MeasureTheory.Measure.IsAddHaarMeasure μ] {f : E × ℝ → F} {f' : E × ℝ → F} {g : E × ℝ → G} {g' : E × ℝ → G} {B : F →L[ℝ] G →L[ℝ] W} (hf'g : MeasureTheory.Integrable (fun x => (B (f' x)) (g x)) μ) (hfg' : MeasureTheory.Integrable (fun x => (B (f x)) (g' x)) μ) (hfg : MeasureTheory.Integrable (fun x => (B (f x)) (g x)) μ) (hf : ∀ (x : E × ℝ), HasLineDerivAt ℝ f (f' x) x (0, 1)) (hg : ∀ (x : E × ℝ), HasLineDerivAt ℝ g (g' x) x (0, 1)) : ∫ (x : E × ℝ), (B (f x)) (g' x) ∂μ = -∫ (x : E × ℝ), (B (f' x)) (g x) ∂μ


declaration:
/-- **Integration by parts for Fréchet derivatives**
Version with a general bilinear form `B`.
If `B f g` is integrable, as well as `B f' g` and `B f g'` where `f'` and `g'` are derivatives
of `f` and `g` in a given direction `v`, then `∫ B f g' = - ∫ B f' g`. -/
theorem integral_bilinear_hasFDerivAt_right_eq_neg_left_of_integrable {E : Type u_1} {F : Type u_2} {G : Type u_3} {W : Type u_4} [NormedAddCommGroup E] [NormedSpace ℝ E] [NormedAddCommGroup F] [NormedSpace ℝ F] [NormedAddCommGroup G] [NormedSpace ℝ G] [NormedAddCommGroup W] [NormedSpace ℝ W] [MeasurableSpace E] [BorelSpace E] {μ : MeasureTheory.Measure E} [FiniteDimensional ℝ E] [MeasureTheory.Measure.IsAddHaarMeasure μ] {f : E → F} {f' : E → E →L[ℝ] F} {g : E → G} {g' : E → E →L[ℝ] G} {v : E} {B : F →L[ℝ] G →L[ℝ] W} (hf'g : MeasureTheory.Integrable (fun x => (B ((f' x) v)) (g x)) μ) (hfg' : MeasureTheory.Integrable (fun x => (B (f x)) ((g' x) v)) μ) (hfg : MeasureTheory.Integrable (fun x => (B (f x)) (g x)) μ) (hf : ∀ (x : E), HasFDerivAt f (f' x) x) (hg : ∀ (x : E), HasFDerivAt g (g' x) x) : ∫ (x : E), (B (f x)) ((g' x) v) ∂μ = -∫ (x : E), (B ((f' x) v)) (g x) ∂μ


declaration:
/-- **Integration by parts for Fréchet derivatives**
Version with a general bilinear form `B`.
If `B f g` is integrable, as well as `B f' g` and `B f g'` where `f'` and `g'` are the derivatives
of `f` and `g` in a given direction `v`, then `∫ B f g' = - ∫ B f' g`. -/
theorem integral_bilinear_fderiv_right_eq_neg_left_of_integrable {E : Type u_1} {F : Type u_2} {G : Type u_3} {W : Type u_4} [NormedAddCommGroup E] [NormedSpace ℝ E] [NormedAddCommGroup F] [NormedSpace ℝ F] [NormedAddCommGroup G] [NormedSpace ℝ G] [NormedAddCommGroup W] [NormedSpace ℝ W] [MeasurableSpace E] [BorelSpace E] {μ : MeasureTheory.Measure E} [FiniteDimensional ℝ E] [MeasureTheory.Measure.IsAddHaarMeasure μ] {f : E → F} {g : E → G} {v : E} {B : F →L[ℝ] G →L[ℝ] W} (hf'g : MeasureTheory.Integrable (fun x => (B ((fderiv ℝ f x) v)) (g x)) μ) (hfg' : MeasureTheory.Integrable (fun x => (B (f x)) ((fderiv ℝ g x) v)) μ) (hfg : MeasureTheory.Integrable (fun x => (B (f x)) (g x)) μ) (hf : Differentiable ℝ f) (hg : Differentiable ℝ g) : ∫ (x : E), (B (f x)) ((fderiv ℝ g x) v) ∂μ = -∫ (x : E), (B ((fderiv ℝ f x) v)) (g x) ∂μ