-- Mathlib/Analysis/Convolution.lean
theorem integral_posConvolution [CompleteSpace E] [CompleteSpace E'] [CompleteSpace F]
    {μ ν : Measure ℝ}
    [SFinite μ] [SFinite ν] [IsAddRightInvariant μ] [NoAtoms ν] {f : ℝ → E} {g : ℝ → E'}
    (hf : IntegrableOn f (Ioi 0) ν) (hg : IntegrableOn g (Ioi 0) μ) (L : E →L[ℝ] E' →L[ℝ] F) :
    ∫ x : ℝ in Ioi 0, ∫ t : ℝ in (0)..x, L (f t) (g (x - t)) ∂ν ∂μ =
      L (∫ x : ℝ in Ioi 0, f x ∂ν) (∫ x : ℝ in Ioi 0, g x ∂μ)

Proof state:
case h.e'_2.h.e'_7.h.h.e
E : Type uE
E' : Type uE'
F : Type uF
inst✝¹² : NormedAddCommGroup E
inst✝¹¹ : NormedAddCommGroup E'
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace ℝ E
inst✝⁸ : NormedSpace ℝ E'
inst✝⁷ : NormedSpace ℝ F
inst✝⁶ : CompleteSpace E
inst✝⁵ : CompleteSpace E'
inst✝⁴ : CompleteSpace F
μ ν : Measure ℝ
inst✝³ : SFinite μ
inst✝² : SFinite ν
inst✝¹ : μ.IsAddRightInvariant
inst✝ : NoAtoms ν
f : ℝ → E
g : ℝ → E'
hf : Integrable ((Ioi 0).indicator f) ν
hg : Integrable ((Ioi 0).indicator g) μ
L : E →L[ℝ] E' →L[ℝ] F
x : ℝ
⊢ ((Ioi 0).indicator fun x => ∫ (t : ℝ) in 0 ..x, (L (f t)) (g (x - t)) ∂ν) =
    (Ioi 0).indicator f ⋆[L, ν] (Ioi 0).indicator g

Tactic:
apply posConvolution_eq_convolution_indicator

Result:
no goals

Proof state:
E : Type uE
E' : Type uE'
F : Type uF
inst✝¹² : NormedAddCommGroup E
inst✝¹¹ : NormedAddCommGroup E'
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace ℝ E
inst✝⁸ : NormedSpace ℝ E'
inst✝⁷ : NormedSpace ℝ F
inst✝⁶ : CompleteSpace E
inst✝⁵ : CompleteSpace E'
inst✝⁴ : CompleteSpace F
μ ν : Measure ℝ
inst✝³ : SFinite μ
inst✝² : SFinite ν
inst✝¹ : μ.IsAddRightInvariant
inst✝ : NoAtoms ν
f : ℝ → E
g : ℝ → E'
hf : Integrable ((Ioi 0).indicator f) ν
hg : Integrable ((Ioi 0).indicator g) μ
L : E →L[ℝ] E' →L[ℝ] F
⊢ ∫ (x : ℝ) in Ioi 0, ∫ (t : ℝ) in 0 ..x, (L (f t)) (g (x - t)) ∂ν ∂μ =
    (L (∫ (x : ℝ) in Ioi 0, f x ∂ν)) (∫ (x : ℝ) in Ioi 0, g x ∂μ)

Tactic:
simp_rw [← integral_indicator measurableSet_Ioi]

Result:
E : Type uE
E' : Type uE'
F : Type uF
inst✝¹² : NormedAddCommGroup E
inst✝¹¹ : NormedAddCommGroup E'
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace ℝ E
inst✝⁸ : NormedSpace ℝ E'
inst✝⁷ : NormedSpace ℝ F
inst✝⁶ : CompleteSpace E
inst✝⁵ : CompleteSpace E'
inst✝⁴ : CompleteSpace F
μ ν : Measure ℝ
inst✝³ : SFinite μ
inst✝² : SFinite ν
inst✝¹ : μ.IsAddRightInvariant
inst✝ : NoAtoms ν
f : ℝ → E
g : ℝ → E'
hf : Integrable ((Ioi 0).indicator f) ν
hg : Integrable ((Ioi 0).indicator g) μ
L : E →L[ℝ] E' →L[ℝ] F
⊢ ∫ (x : ℝ), (Ioi 0).indicator (fun x => ∫ (t : ℝ) in 0 ..x, (L (f t)) (g (x - t)) ∂ν) x ∂μ =
    (L (∫ (x : ℝ), (Ioi 0).indicator f x ∂ν)) (∫ (x : ℝ), (Ioi 0).indicator g x ∂μ)

Proof state:
E : Type uE
E' : Type uE'
F : Type uF
inst✝¹² : NormedAddCommGroup E
inst✝¹¹ : NormedAddCommGroup E'
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace ℝ E
inst✝⁸ : NormedSpace ℝ E'
inst✝⁷ : NormedSpace ℝ F
inst✝⁶ : CompleteSpace E
inst✝⁵ : CompleteSpace E'
inst✝⁴ : CompleteSpace F
μ ν : Measure ℝ
inst✝³ : SFinite μ
inst✝² : SFinite ν
inst✝¹ : μ.IsAddRightInvariant
inst✝ : NoAtoms ν
f : ℝ → E
g : ℝ → E'
hf : IntegrableOn f (Ioi 0) ν
hg : IntegrableOn g (Ioi 0) μ
L : E →L[ℝ] E' →L[ℝ] F
⊢ ∫ (x : ℝ) in Ioi 0, ∫ (t : ℝ) in 0 ..x, (L (f t)) (g (x - t)) ∂ν ∂μ =
    (L (∫ (x : ℝ) in Ioi 0, f x ∂ν)) (∫ (x : ℝ) in Ioi 0, g x ∂μ)

Tactic:
rw [← integrable_indicator_iff measurableSet_Ioi] at hf hg

Result:
E : Type uE
E' : Type uE'
F : Type uF
inst✝¹² : NormedAddCommGroup E
inst✝¹¹ : NormedAddCommGroup E'
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace ℝ E
inst✝⁸ : NormedSpace ℝ E'
inst✝⁷ : NormedSpace ℝ F
inst✝⁶ : CompleteSpace E
inst✝⁵ : CompleteSpace E'
inst✝⁴ : CompleteSpace F
μ ν : Measure ℝ
inst✝³ : SFinite μ
inst✝² : SFinite ν
inst✝¹ : μ.IsAddRightInvariant
inst✝ : NoAtoms ν
f : ℝ → E
g : ℝ → E'
hf : Integrable ((Ioi 0).indicator f) ν
hg : Integrable ((Ioi 0).indicator g) μ
L : E →L[ℝ] E' →L[ℝ] F
⊢ ∫ (x : ℝ) in Ioi 0, ∫ (t : ℝ) in 0 ..x, (L (f t)) (g (x - t)) ∂ν ∂μ =
    (L (∫ (x : ℝ) in Ioi 0, f x ∂ν)) (∫ (x : ℝ) in Ioi 0, g x ∂μ)

Proof state:
E : Type uE
E' : Type uE'
F : Type uF
inst✝¹² : NormedAddCommGroup E
inst✝¹¹ : NormedAddCommGroup E'
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace ℝ E
inst✝⁸ : NormedSpace ℝ E'
inst✝⁷ : NormedSpace ℝ F
inst✝⁶ : CompleteSpace E
inst✝⁵ : CompleteSpace E'
inst✝⁴ : CompleteSpace F
μ ν : Measure ℝ
inst✝³ : SFinite μ
inst✝² : SFinite ν
inst✝¹ : μ.IsAddRightInvariant
inst✝ : NoAtoms ν
f : ℝ → E
g : ℝ → E'
hf : Integrable ((Ioi 0).indicator f) ν
hg : Integrable ((Ioi 0).indicator g) μ
L : E →L[ℝ] E' →L[ℝ] F
⊢ ∫ (x : ℝ), (Ioi 0).indicator (fun x => ∫ (t : ℝ) in 0 ..x, (L (f t)) (g (x - t)) ∂ν) x ∂μ =
    (L (∫ (x : ℝ), (Ioi 0).indicator f x ∂ν)) (∫ (x : ℝ), (Ioi 0).indicator g x ∂μ)

Tactic:
convert integral_convolution L hf hg using 4 with x

Result:
case h.e'_2.h.e'_7.h.h.e
E : Type uE
E' : Type uE'
F : Type uF
inst✝¹² : NormedAddCommGroup E
inst✝¹¹ : NormedAddCommGroup E'
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace ℝ E
inst✝⁸ : NormedSpace ℝ E'
inst✝⁷ : NormedSpace ℝ F
inst✝⁶ : CompleteSpace E
inst✝⁵ : CompleteSpace E'
inst✝⁴ : CompleteSpace F
μ ν : Measure ℝ
inst✝³ : SFinite μ
inst✝² : SFinite ν
inst✝¹ : μ.IsAddRightInvariant
inst✝ : NoAtoms ν
f : ℝ → E
g : ℝ → E'
hf : Integrable ((Ioi 0).indicator f) ν
hg : Integrable ((Ioi 0).indicator g) μ
L : E →L[ℝ] E' →L[ℝ] F
x : ℝ
⊢ ((Ioi 0).indicator fun x => ∫ (t : ℝ) in 0 ..x, (L (f t)) (g (x - t)) ∂ν) =
    (Ioi 0).indicator f ⋆[L, ν] (Ioi 0).indicator g