awhecmu/canonical-drafter-extract-mathlib huggingface dataset:
-- Lean 4 proof step from Mathlib.Analysis.Convolution (goal)
Goal:
𝕜 : Type u𝕜
G : Type uG
E : Type uE
E' : Type uE'
E'' : Type uE''
F : Type uF
F' : Type uF'
F'' : Type uF''
inst : NormedAddCommGroup E
inst_1 : NormedAddCommGroup E'
inst_2 : NormedAddCommGroup E''
inst_3 : NormedAddCommGroup F
f : G → E
g : G → E'
inst_4 : RCLike 𝕜
inst_5 : NormedSpace 𝕜 E
inst_6 : NormedSpace 𝕜 E'
inst_7 : NormedSpace 𝕜 E''
inst_8 : NormedSpace ℝ F
inst_9 : NormedSpace 𝕜 F
inst_10 : MeasurableSpace G
μ ν : Measure G
L : E →L[𝕜] E' →L[𝕜] F
inst_11 : CompleteSpace F
inst_12 : NormedAddCommGroup F'
inst_13 : NormedSpace ℝ F'
inst_14 : NormedSpace 𝕜 F'
inst_15 : CompleteSpace F'
inst_16 : NormedAddCommGroup F''
inst_17 : NormedSpace ℝ F''
inst_18 : NormedSpace 𝕜 F''
inst_19 : CompleteSpace F''
k : G → E''
L₂ : F →L[𝕜] E'' →L[𝕜] F'
L₃ : E →L[𝕜] F'' →L[𝕜] F'
L₄ : E' →L[𝕜] E'' →L[𝕜] F''
inst_20 : AddGroup G
inst_21 : SFinite μ
inst_22 : SFinite ν
inst_23 : μ.IsAddRightInvariant
inst_24 : MeasurableAdd₂ G
inst_25 : ν.IsAddRightInvariant
inst_26 : MeasurableNeg G
hL :
  ∀ (x : E) (y : E') (z : E''),
    Eq.{uF' + 1} (α := F')
      ((((L₂ : (a : F) → E'' →L[𝕜] F') ((((L : (a : E) → E' →L[𝕜] F) x : E' →L[𝕜] F) : (a : E') → F) y) :
              E'' →L[𝕜] F') :
            (a : E'') → F')
          z :
        F')
      ((((L₃ : (a : E) → F'' →L[𝕜] F') x : F'' →L[𝕜] F') : (a : F'') → F')
          ((((L₄ : (a : E') → E'' →L[𝕜] F'') y : E'' →L[𝕜] F'') : (a : E'') → F'') z : F'') :
        F')
x₀ : G
hfg : ∀ᵐ (y : G) ∂μ, ConvolutionExistsAt.{u𝕜, uG, uE, uE', uF} (𝕜 := 𝕜) (F := F) f g y L ν
hgk : ∀ᵐ (x : G) ∂ν, ConvolutionExistsAt.{u𝕜, uG, uE', uE'', uF''} (𝕜 := 𝕜) (F := F'') g k x L₄ μ
hi :
  Integrable.{uF', uG} (ε := F')
    (uncurry fun (x y : G) ↦
      (((L₃ : (a : E) → F'' →L[𝕜] F') (f y) : F'' →L[𝕜] F') : (a : F'') → F')
        ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g (x - y)) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - x)) : F''))
    (μ.prod ν)
⊢ Eq.{uF' + 1} (α := F')
    (∫ (s : G),
      ∫ (t : G),
        (((L₃ : (a : E) → F'' →L[𝕜] F') (f s) : F'' →L[𝕜] F') : (a : F'') → F')
          ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g (t - s)) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - t)) : F'') ∂μ ∂ν)
    (∫ (s : G),
      ∫ (u : G),
        (((L₃ : (a : E) → F'' →L[𝕜] F') (f s) : F'' →L[𝕜] F') : (a : F'') → F')
          ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g u) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - s - u)) : F'') ∂μ ∂ν)
have e_f : Eq (α := G → F')
  (fun (s : G) ↦
    ∫ (t : G),
      (((L₃ : (a : E) → F'' →L[𝕜] F') (f s) : F'' →L[𝕜] F') : (a : F'') → F')
        ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g (t - s)) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - t)) : F'') ∂μ)
  fun (s : G) ↦
  ∫ (u : G),
    (((L₃ : (a : E) → F'' →L[𝕜] F') (f s) : F'' →L[𝕜] F') : (a : F'') → F')
      ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g u) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - s - u)) : F'') ∂μ
Tactic: congr
-- Lean 4 proof step from Mathlib.Analysis.Convolution (goal)
Goal:
𝕜 : Type u𝕜
G : Type uG
E : Type uE
E' : Type uE'
E'' : Type uE''
F : Type uF
F' : Type uF'
F'' : Type uF''
inst : NormedAddCommGroup E
inst_1 : NormedAddCommGroup E'
inst_2 : NormedAddCommGroup E''
inst_3 : NormedAddCommGroup F
f : G → E
g : G → E'
inst_4 : RCLike 𝕜
inst_5 : NormedSpace 𝕜 E
inst_6 : NormedSpace 𝕜 E'
inst_7 : NormedSpace 𝕜 E''
inst_8 : NormedSpace ℝ F
inst_9 : NormedSpace 𝕜 F
inst_10 : MeasurableSpace G
μ ν : Measure G
L : E →L[𝕜] E' →L[𝕜] F
inst_11 : CompleteSpace F
inst_12 : NormedAddCommGroup F'
inst_13 : NormedSpace ℝ F'
inst_14 : NormedSpace 𝕜 F'
inst_15 : CompleteSpace F'
inst_16 : NormedAddCommGroup F''
inst_17 : NormedSpace ℝ F''
inst_18 : NormedSpace 𝕜 F''
inst_19 : CompleteSpace F''
k : G → E''
L₂ : F →L[𝕜] E'' →L[𝕜] F'
L₃ : E →L[𝕜] F'' →L[𝕜] F'
L₄ : E' →L[𝕜] E'' →L[𝕜] F''
inst_20 : AddGroup G
inst_21 : SFinite μ
inst_22 : SFinite ν
inst_23 : μ.IsAddRightInvariant
inst_24 : MeasurableAdd₂ G
inst_25 : ν.IsAddRightInvariant
inst_26 : MeasurableNeg G
hL :
  ∀ (x : E) (y : E') (z : E''),
    Eq.{uF' + 1} (α := F')
      ((((L₂ : (a : F) → E'' →L[𝕜] F') ((((L : (a : E) → E' →L[𝕜] F) x : E' →L[𝕜] F) : (a : E') → F) y) :
              E'' →L[𝕜] F') :
            (a : E'') → F')
          z :
        F')
      ((((L₃ : (a : E) → F'' →L[𝕜] F') x : F'' →L[𝕜] F') : (a : F'') → F')
          ((((L₄ : (a : E') → E'' →L[𝕜] F'') y : E'' →L[𝕜] F'') : (a : E'') → F'') z : F'') :
        F')
x₀ : G
hfg : ∀ᵐ (y : G) ∂μ, ConvolutionExistsAt.{u𝕜, uG, uE, uE', uF} (𝕜 := 𝕜) (F := F) f g y L ν
hgk : ∀ᵐ (x : G) ∂ν, ConvolutionExistsAt.{u𝕜, uG, uE', uE'', uF''} (𝕜 := 𝕜) (F := F'') g k x L₄ μ
hi :
  Integrable.{uF', uG} (ε := F')
    (uncurry fun (x y : G) ↦
      (((L₃ : (a : E) → F'' →L[𝕜] F') (f y) : F'' →L[𝕜] F') : (a : F'') → F')
        ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g (x - y)) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - x)) : F''))
    (μ.prod ν)
⊢ Eq (α := G → F')
    (fun (s : G) ↦
      ∫ (t : G),
        (((L₃ : (a : E) → F'' →L[𝕜] F') (f s) : F'' →L[𝕜] F') : (a : F'') → F')
          ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g (t - s)) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - t)) : F'') ∂μ)
    fun (s : G) ↦
    ∫ (u : G),
      (((L₃ : (a : E) → F'' →L[𝕜] F') (f s) : F'' →L[𝕜] F') : (a : F'') → F')
        ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g u) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - s - u)) : F'') ∂μ
have e_f : ∀ (t : G),
  Eq.{uF' + 1} (α := F')
    (∫ (t_1 : G),
      (((L₃ : (a : E) → F'' →L[𝕜] F') (f t) : F'' →L[𝕜] F') : (a : F'') → F')
        ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g (t_1 - t)) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - t_1)) : F'') ∂μ)
    (∫ (u : G),
      (((L₃ : (a : E) → F'' →L[𝕜] F') (f t) : F'' →L[𝕜] F') : (a : F'') → F')
        ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g u) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - t - u)) : F'') ∂μ)
Tactic: ext t
-- Lean 4 proof step from Mathlib.Analysis.Convolution (goal)
Goal:
𝕜 : Type u𝕜
G : Type uG
E : Type uE
E' : Type uE'
E'' : Type uE''
F : Type uF
F' : Type uF'
F'' : Type uF''
inst : NormedAddCommGroup E
inst_1 : NormedAddCommGroup E'
inst_2 : NormedAddCommGroup E''
inst_3 : NormedAddCommGroup F
f : G → E
g : G → E'
inst_4 : RCLike 𝕜
inst_5 : NormedSpace 𝕜 E
inst_6 : NormedSpace 𝕜 E'
inst_7 : NormedSpace 𝕜 E''
inst_8 : NormedSpace ℝ F
inst_9 : NormedSpace 𝕜 F
inst_10 : MeasurableSpace G
μ ν : Measure G
L : E →L[𝕜] E' →L[𝕜] F
inst_11 : CompleteSpace F
inst_12 : NormedAddCommGroup F'
inst_13 : NormedSpace ℝ F'
inst_14 : NormedSpace 𝕜 F'
inst_15 : CompleteSpace F'
inst_16 : NormedAddCommGroup F''
inst_17 : NormedSpace ℝ F''
inst_18 : NormedSpace 𝕜 F''
inst_19 : CompleteSpace F''
k : G → E''
L₂ : F →L[𝕜] E'' →L[𝕜] F'
L₃ : E →L[𝕜] F'' →L[𝕜] F'
L₄ : E' →L[𝕜] E'' →L[𝕜] F''
inst_20 : AddGroup G
inst_21 : SFinite μ
inst_22 : SFinite ν
inst_23 : μ.IsAddRightInvariant
inst_24 : MeasurableAdd₂ G
inst_25 : ν.IsAddRightInvariant
inst_26 : MeasurableNeg G
hL :
  ∀ (x : E) (y : E') (z : E''),
    Eq.{uF' + 1} (α := F')
      ((((L₂ : (a : F) → E'' →L[𝕜] F') ((((L : (a : E) → E' →L[𝕜] F) x : E' →L[𝕜] F) : (a : E') → F) y) :
              E'' →L[𝕜] F') :
            (a : E'') → F')
          z :
        F')
      ((((L₃ : (a : E) → F'' →L[𝕜] F') x : F'' →L[𝕜] F') : (a : F'') → F')
          ((((L₄ : (a : E') → E'' →L[𝕜] F'') y : E'' →L[𝕜] F'') : (a : E'') → F'') z : F'') :
        F')
x₀ : G
hfg : ∀ᵐ (y : G) ∂μ, ConvolutionExistsAt.{u𝕜, uG, uE, uE', uF} (𝕜 := 𝕜) (F := F) f g y L ν
hgk : ∀ᵐ (x : G) ∂ν, ConvolutionExistsAt.{u𝕜, uG, uE', uE'', uF''} (𝕜 := 𝕜) (F := F'') g k x L₄ μ
hi :
  Integrable.{uF', uG} (ε := F')
    (uncurry fun (x y : G) ↦
      (((L₃ : (a : E) → F'' →L[𝕜] F') (f y) : F'' →L[𝕜] F') : (a : F'') → F')
        ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g (x - y)) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - x)) : F''))
    (μ.prod ν)
t : G
⊢ Eq.{uF' + 1} (α := F')
    (∫ (t_1 : G),
      (((L₃ : (a : E) → F'' →L[𝕜] F') (f t) : F'' →L[𝕜] F') : (a : F'') → F')
        ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g (t_1 - t)) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - t_1)) : F'') ∂μ)
    (∫ (u : G),
      (((L₃ : (a : E) → F'' →L[𝕜] F') (f t) : F'' →L[𝕜] F') : (a : F'') → F')
        ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g u) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - t - u)) : F'') ∂μ)
have e_f : Eq.{uF' + 1} (α := F')
  (∫ (x : G),
    (((L₃ : (a : E) → F'' →L[𝕜] F') (f t) : F'' →L[𝕜] F') : (a : F'') → F')
      ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g (x - t)) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - t - (x - t))) :
        F'') ∂μ)
  (∫ (t_1 : G),
    (((L₃ : (a : E) → F'' →L[𝕜] F') (f t) : F'' →L[𝕜] F') : (a : F'') → F')
      ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g (t_1 - t)) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - t_1)) : F'') ∂μ)
Tactic: rw [eq_comm, ← integral_sub_right_eq_self _ t]
-- Lean 4 proof step from Mathlib.Analysis.Convolution (goal)
Goal:
𝕜 : Type u𝕜
G : Type uG
E : Type uE
E' : Type uE'
E'' : Type uE''
F : Type uF
F' : Type uF'
F'' : Type uF''
inst : NormedAddCommGroup E
inst_1 : NormedAddCommGroup E'
inst_2 : NormedAddCommGroup E''
inst_3 : NormedAddCommGroup F
f : G → E
g : G → E'
inst_4 : RCLike 𝕜
inst_5 : NormedSpace 𝕜 E
inst_6 : NormedSpace 𝕜 E'
inst_7 : NormedSpace 𝕜 E''
inst_8 : NormedSpace ℝ F
inst_9 : NormedSpace 𝕜 F
inst_10 : MeasurableSpace G
μ ν : Measure G
L : E →L[𝕜] E' →L[𝕜] F
inst_11 : CompleteSpace F
inst_12 : NormedAddCommGroup F'
inst_13 : NormedSpace ℝ F'
inst_14 : NormedSpace 𝕜 F'
inst_15 : CompleteSpace F'
inst_16 : NormedAddCommGroup F''
inst_17 : NormedSpace ℝ F''
inst_18 : NormedSpace 𝕜 F''
inst_19 : CompleteSpace F''
k : G → E''
L₂ : F →L[𝕜] E'' →L[𝕜] F'
L₃ : E →L[𝕜] F'' →L[𝕜] F'
L₄ : E' →L[𝕜] E'' →L[𝕜] F''
inst_20 : AddGroup G
inst_21 : SFinite μ
inst_22 : SFinite ν
inst_23 : μ.IsAddRightInvariant
inst_24 : MeasurableAdd₂ G
inst_25 : ν.IsAddRightInvariant
inst_26 : MeasurableNeg G
hL :
  ∀ (x : E) (y : E') (z : E''),
    Eq.{uF' + 1} (α := F')
      ((((L₂ : (a : F) → E'' →L[𝕜] F') ((((L : (a : E) → E' →L[𝕜] F) x : E' →L[𝕜] F) : (a : E') → F) y) :
              E'' →L[𝕜] F') :
            (a : E'') → F')
          z :
        F')
      ((((L₃ : (a : E) → F'' →L[𝕜] F') x : F'' →L[𝕜] F') : (a : F'') → F')
          ((((L₄ : (a : E') → E'' →L[𝕜] F'') y : E'' →L[𝕜] F'') : (a : E'') → F'') z : F'') :
        F')
x₀ : G
hfg : ∀ᵐ (y : G) ∂μ, ConvolutionExistsAt.{u𝕜, uG, uE, uE', uF} (𝕜 := 𝕜) (F := F) f g y L ν
hgk : ∀ᵐ (x : G) ∂ν, ConvolutionExistsAt.{u𝕜, uG, uE', uE'', uF''} (𝕜 := 𝕜) (F := F'') g k x L₄ μ
hi :
  Integrable.{uF', uG} (ε := F')
    (uncurry fun (x y : G) ↦
      (((L₃ : (a : E) → F'' →L[𝕜] F') (f y) : F'' →L[𝕜] F') : (a : F'') → F')
        ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g (x - y)) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - x)) : F''))
    (μ.prod ν)
⊢ Eq.{uF' + 1} (α := F')
    (∫ (s : G),
      ∫ (u : G),
        (((L₃ : (a : E) → F'' →L[𝕜] F') (f s) : F'' →L[𝕜] F') : (a : F'') → F')
          ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g u) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - s - u)) : F'') ∂μ ∂ν)
    (∫ (s : G),
      (((L₃ : (a : E) → F'' →L[𝕜] F') (f s) : F'' →L[𝕜] F') : (a : F'') → F')
        (∫ (u : G), (((L₄ : (a : E') → E'' →L[𝕜] F'') (g u) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - s - u)) ∂μ) ∂ν)
have refine : EventuallyEq.{uG, uF'} (β := F') (ae ν)
  (fun (s : G) ↦
    ∫ (u : G),
      (((L₃ : (a : E) → F'' →L[𝕜] F') (f s) : F'' →L[𝕜] F') : (a : F'') → F')
        ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g u) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - s - u)) : F'') ∂μ)
  fun (s : G) ↦
  (((L₃ : (a : E) → F'' →L[𝕜] F') (f s) : F'' →L[𝕜] F') : (a : F'') → F')
    (∫ (u : G), (((L₄ : (a : E') → E'' →L[𝕜] F'') (g u) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - s - u)) ∂μ)
Tactic: refine integral_congr_ae ?_
-- Lean 4 proof step from Mathlib.Analysis.Convolution (goal)
Goal:
𝕜 : Type u𝕜
G : Type uG
E : Type uE
E' : Type uE'
E'' : Type uE''
F : Type uF
F' : Type uF'
F'' : Type uF''
inst : NormedAddCommGroup E
inst_1 : NormedAddCommGroup E'
inst_2 : NormedAddCommGroup E''
inst_3 : NormedAddCommGroup F
f : G → E
g : G → E'
inst_4 : RCLike 𝕜
inst_5 : NormedSpace 𝕜 E
inst_6 : NormedSpace 𝕜 E'
inst_7 : NormedSpace 𝕜 E''
inst_8 : NormedSpace ℝ F
inst_9 : NormedSpace 𝕜 F
inst_10 : MeasurableSpace G
μ ν : Measure G
L : E →L[𝕜] E' →L[𝕜] F
inst_11 : CompleteSpace F
inst_12 : NormedAddCommGroup F'
inst_13 : NormedSpace ℝ F'
inst_14 : NormedSpace 𝕜 F'
inst_15 : CompleteSpace F'
inst_16 : NormedAddCommGroup F''
inst_17 : NormedSpace ℝ F''
inst_18 : NormedSpace 𝕜 F''
inst_19 : CompleteSpace F''
k : G → E''
L₂ : F →L[𝕜] E'' →L[𝕜] F'
L₃ : E →L[𝕜] F'' →L[𝕜] F'
L₄ : E' →L[𝕜] E'' →L[𝕜] F''
inst_20 : AddGroup G
inst_21 : SFinite μ
inst_22 : SFinite ν
inst_23 : μ.IsAddRightInvariant
inst_24 : MeasurableAdd₂ G
inst_25 : ν.IsAddRightInvariant
inst_26 : MeasurableNeg G
hL :
  ∀ (x : E) (y : E') (z : E''),
    Eq.{uF' + 1} (α := F')
      ((((L₂ : (a : F) → E'' →L[𝕜] F') ((((L : (a : E) → E' →L[𝕜] F) x : E' →L[𝕜] F) : (a : E') → F) y) :
              E'' →L[𝕜] F') :
            (a : E'') → F')
          z :
        F')
      ((((L₃ : (a : E) → F'' →L[𝕜] F') x : F'' →L[𝕜] F') : (a : F'') → F')
          ((((L₄ : (a : E') → E'' →L[𝕜] F'') y : E'' →L[𝕜] F'') : (a : E'') → F'') z : F'') :
        F')
x₀ : G
hf : AEStronglyMeasurable f ν
hg : AEStronglyMeasurable g μ
hk : AEStronglyMeasurable k μ
hfg : ∀ᵐ (y : G) ∂μ, ConvolutionExistsAt.{u𝕜, uG, uE, uE', uF} (𝕜 := 𝕜) (F := F) f g y L ν
hgk : ∀ᵐ (x : G) ∂ν, ConvolutionExistsAt (fun (x : G) ↦ ‖g x‖) (fun (x : G) ↦ ‖k x‖) x (mul ℝ ℝ) μ
hfgk :
  ConvolutionExistsAt (fun (x : G) ↦ ‖f x‖) ((fun (x : G) ↦ ‖g x‖) ⋆[mul ℝ ℝ, μ] fun (x : G) ↦ ‖k x‖) x₀ (mul ℝ ℝ) ν
⊢ Eq.{uF' + 1} (α := F')
    (convolution.{u𝕜, uG, uF, uE'', uF'} (𝕜 := 𝕜) (E := F) (convolution.{u𝕜, uG, uE, uE', uF} (𝕜 := 𝕜) f g L ν) k L₂ μ
      x₀)
    (convolution.{u𝕜, uG, uE, uF'', uF'} (𝕜 := 𝕜) (E' := F'') f
      (convolution.{u𝕜, uG, uE', uE'', uF''} (𝕜 := 𝕜) g k L₄ μ) L₃ ν x₀)
have refine : Integrable.{uF', uG} (ε := F')
  (uncurry fun (x y : G) ↦
    (((L₃ : (a : E) → F'' →L[𝕜] F') (f y) : F'' →L[𝕜] F') : (a : F'') → F')
      ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g (x - y)) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - x)) : F''))
  (μ.prod ν)
Tactic: refine convolution_assoc' L L₂ L₃ L₄ hL hfg (hgk.mono fun x hx => hx.of_norm L₄ hg hk) ?_
-- Lean 4 proof step from Mathlib.Analysis.Convolution (goal)
Goal:
𝕜 : Type u𝕜
G : Type uG
E : Type uE
E' : Type uE'
E'' : Type uE''
F : Type uF
F' : Type uF'
F'' : Type uF''
inst : NormedAddCommGroup E
inst_1 : NormedAddCommGroup E'
inst_2 : NormedAddCommGroup E''
inst_3 : NormedAddCommGroup F
f : G → E
g : G → E'
inst_4 : RCLike 𝕜
inst_5 : NormedSpace 𝕜 E
inst_6 : NormedSpace 𝕜 E'
inst_7 : NormedSpace 𝕜 E''
inst_8 : NormedSpace ℝ F
inst_9 : NormedSpace 𝕜 F
inst_10 : MeasurableSpace G
μ ν : Measure G
L : E →L[𝕜] E' →L[𝕜] F
inst_11 : CompleteSpace F
inst_12 : NormedAddCommGroup F'
inst_13 : NormedSpace ℝ F'
inst_14 : NormedSpace 𝕜 F'
inst_15 : CompleteSpace F'
inst_16 : NormedAddCommGroup F''
inst_17 : NormedSpace ℝ F''
inst_18 : NormedSpace 𝕜 F''
inst_19 : CompleteSpace F''
k : G → E''
L₂ : F →L[𝕜] E'' →L[𝕜] F'
L₃ : E →L[𝕜] F'' →L[𝕜] F'
L₄ : E' →L[𝕜] E'' →L[𝕜] F''
inst_20 : AddGroup G
inst_21 : SFinite μ
inst_22 : SFinite ν
inst_23 : μ.IsAddRightInvariant
inst_24 : MeasurableAdd₂ G
inst_25 : ν.IsAddRightInvariant
inst_26 : MeasurableNeg G
hL :
  ∀ (x : E) (y : E') (z : E''),
    Eq.{uF' + 1} (α := F')
      ((((L₂ : (a : F) → E'' →L[𝕜] F') ((((L : (a : E) → E' →L[𝕜] F) x : E' →L[𝕜] F) : (a : E') → F) y) :
              E'' →L[𝕜] F') :
            (a : E'') → F')
          z :
        F')
      ((((L₃ : (a : E) → F'' →L[𝕜] F') x : F'' →L[𝕜] F') : (a : F'') → F')
          ((((L₄ : (a : E') → E'' →L[𝕜] F'') y : E'' →L[𝕜] F'') : (a : E'') → F'') z : F'') :
        F')
x₀ : G
hf : AEStronglyMeasurable f ν
hg : AEStronglyMeasurable g μ
hk : AEStronglyMeasurable k μ
hfg : ∀ᵐ (y : G) ∂μ, ConvolutionExistsAt.{u𝕜, uG, uE, uE', uF} (𝕜 := 𝕜) (F := F) f g y L ν
hgk : ∀ᵐ (x : G) ∂ν, ConvolutionExistsAt (fun (x : G) ↦ ‖g x‖) (fun (x : G) ↦ ‖k x‖) x (mul ℝ ℝ) μ
hfgk :
  ConvolutionExistsAt (fun (x : G) ↦ ‖f x‖) ((fun (x : G) ↦ ‖g x‖) ⋆[mul ℝ ℝ, μ] fun (x : G) ↦ ‖k x‖) x₀ (mul ℝ ℝ) ν
⊢ AEStronglyMeasurable.{uG, uF'} (β := F')
    (uncurry fun (x y : G) ↦
      (((L₃ : (a : E) → F'' →L[𝕜] F') (f y) : F'' →L[𝕜] F') : (a : F'') → F')
        ((((L₄ : (a : E') → E'' →L[𝕜] F'') (g x) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - y - x)) : F''))
    (μ.prod ν)
have refine : AEStronglyMeasurable.{uG, uF''} (β := F'')
  (fun (x : G × G) ↦ (((L₄ : (a : E') → E'' →L[𝕜] F'') (g x.1) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - x.2 - x.1)))
  (μ.prod ν)
Tactic: refine L₃.aestronglyMeasurable_comp₂ hf.comp_snd ?_
-- Lean 4 proof step from Mathlib.Analysis.Convolution (goal)
Goal:
𝕜 : Type u𝕜
G : Type uG
E : Type uE
E' : Type uE'
E'' : Type uE''
F : Type uF
F' : Type uF'
F'' : Type uF''
inst : NormedAddCommGroup E
inst_1 : NormedAddCommGroup E'
inst_2 : NormedAddCommGroup E''
inst_3 : NormedAddCommGroup F
f : G → E
g : G → E'
inst_4 : RCLike 𝕜
inst_5 : NormedSpace 𝕜 E
inst_6 : NormedSpace 𝕜 E'
inst_7 : NormedSpace 𝕜 E''
inst_8 : NormedSpace ℝ F
inst_9 : NormedSpace 𝕜 F
inst_10 : MeasurableSpace G
μ ν : Measure G
L : E →L[𝕜] E' →L[𝕜] F
inst_11 : CompleteSpace F
inst_12 : NormedAddCommGroup F'
inst_13 : NormedSpace ℝ F'
inst_14 : NormedSpace 𝕜 F'
inst_15 : CompleteSpace F'
inst_16 : NormedAddCommGroup F''
inst_17 : NormedSpace ℝ F''
inst_18 : NormedSpace 𝕜 F''
inst_19 : CompleteSpace F''
k : G → E''
L₂ : F →L[𝕜] E'' →L[𝕜] F'
L₃ : E →L[𝕜] F'' →L[𝕜] F'
L₄ : E' →L[𝕜] E'' →L[𝕜] F''
inst_20 : AddGroup G
inst_21 : SFinite μ
inst_22 : SFinite ν
inst_23 : μ.IsAddRightInvariant
inst_24 : MeasurableAdd₂ G
inst_25 : ν.IsAddRightInvariant
inst_26 : MeasurableNeg G
hL :
  ∀ (x : E) (y : E') (z : E''),
    Eq.{uF' + 1} (α := F')
      ((((L₂ : (a : F) → E'' →L[𝕜] F') ((((L : (a : E) → E' →L[𝕜] F) x : E' →L[𝕜] F) : (a : E') → F) y) :
              E'' →L[𝕜] F') :
            (a : E'') → F')
          z :
        F')
      ((((L₃ : (a : E) → F'' →L[𝕜] F') x : F'' →L[𝕜] F') : (a : F'') → F')
          ((((L₄ : (a : E') → E'' →L[𝕜] F'') y : E'' →L[𝕜] F'') : (a : E'') → F'') z : F'') :
        F')
x₀ : G
hf : AEStronglyMeasurable f ν
hg : AEStronglyMeasurable g μ
hk : AEStronglyMeasurable k μ
hfg : ∀ᵐ (y : G) ∂μ, ConvolutionExistsAt.{u𝕜, uG, uE, uE', uF} (𝕜 := 𝕜) (F := F) f g y L ν
hgk : ∀ᵐ (x : G) ∂ν, ConvolutionExistsAt (fun (x : G) ↦ ‖g x‖) (fun (x : G) ↦ ‖k x‖) x (mul ℝ ℝ) μ
hfgk :
  ConvolutionExistsAt (fun (x : G) ↦ ‖f x‖) ((fun (x : G) ↦ ‖g x‖) ⋆[mul ℝ ℝ, μ] fun (x : G) ↦ ‖k x‖) x₀ (mul ℝ ℝ) ν
⊢ AEStronglyMeasurable.{uG, uF''} (β := F'')
    (fun (x : G × G) ↦
      (((L₄ : (a : E') → E'' →L[𝕜] F'') (g x.1) : E'' →L[𝕜] F'') : (a : E'') → F'') (k (x₀ - x.2 - x.1)))
    (μ.prod ν)
have refine : AEStronglyMeasurable.{uG, uE''} (β := E'') (fun (x : G × G) ↦ k (x₀ - x.2 - x.1)) (μ.prod ν)
Tactic: refine L₄.aestronglyMeasurable_comp₂ hg.comp_fst ?_
-- Lean 4 proof step from Mathlib.Analysis.Convolution (goal)
Goal:
𝕜 : Type u𝕜
G : Type uG
E : Type uE
E' : Type uE'
E'' : Type uE''
F : Type uF
F' : Type uF'
F'' : Type uF''
inst : NormedAddCommGroup E
inst_1 : NormedAddCommGroup E'
inst_2 : NormedAddCommGroup E''
inst_3 : NormedAddCommGroup F
f : G → E
g : G → E'
inst_4 : RCLike 𝕜
inst_5 : NormedSpace 𝕜 E
inst_6 : NormedSpace 𝕜 E'
inst_7 : NormedSpace 𝕜 E''
inst_8 : NormedSpace ℝ F
inst_9 : NormedSpace 𝕜 F
inst_10 : MeasurableSpace G
μ ν : Measure G
L : E →L[𝕜] E' →L[𝕜] F
inst_11 : CompleteSpace F
inst_12 : NormedAddCommGroup F'
inst_13 : NormedSpace ℝ F'
inst_14 : NormedSpace 𝕜 F'
inst_15 : CompleteSpace F'
inst_16 : NormedAddCommGroup F''
inst_17 : NormedSpace ℝ F''
inst_18 : NormedSpace 𝕜 F''
inst_19 : CompleteSpace F''
k : G → E''
L₂ : F →L[𝕜] E'' →L[𝕜] F'
L₃ : E →L[𝕜] F'' →L[𝕜] F'
L₄ : E' →L[𝕜] E'' →L[𝕜] F''
inst_20 : AddGroup G
inst_21 : SFinite μ
inst_22 : SFinite ν
inst_23 : μ.IsAddRightInvariant
inst_24 : MeasurableAdd₂ G
inst_25 : ν.IsAddRightInvariant
inst_26 : MeasurableNeg G
hL :
  ∀ (x : E) (y : E') (z : E''),
    Eq.{uF' + 1} (α := F')
      ((((L₂ : (a : F) → E'' →L[𝕜] F') ((((L : (a : E) → E' →L[𝕜] F) x : E' →L[𝕜] F) : (a : E') → F) y) :
              E'' →L[𝕜] F') :
            (a : E'') → F')
          z :
        F')
      ((((L₃ : (a : E) → F'' →L[𝕜] F') x : F'' →L[𝕜] F') : (a : F'') → F')
          ((((L₄ : (a : E') → E'' →L[𝕜] F'') y : E'' →L[𝕜] F'') : (a : E'') → F'') z : F'') :
        F')
x₀ : G
hf : AEStronglyMeasurable f ν
hg : AEStronglyMeasurable g μ
hk : AEStronglyMeasurable k μ
hfg : ∀ᵐ (y : G) ∂μ, ConvolutionExistsAt.{u𝕜, uG, uE, uE', uF} (𝕜 := 𝕜) (F := F) f g y L ν
hgk : ∀ᵐ (x : G) ∂ν, ConvolutionExistsAt (fun (x : G) ↦ ‖g x‖) (fun (x : G) ↦ ‖k x‖) x (mul ℝ ℝ) μ
hfgk :
  ConvolutionExistsAt (fun (x : G) ↦ ‖f x‖) ((fun (x : G) ↦ ‖g x‖) ⋆[mul ℝ ℝ, μ] fun (x : G) ↦ ‖k x‖) x₀ (mul ℝ ℝ) ν
⊢ AEStronglyMeasurable.{uG, uE''} (β := E'') (fun (x : G × G) ↦ k (x₀ - x.2 - x.1)) (μ.prod ν)
have refine : Measure.map (fun (x : G × G) ↦ x₀ - x.2 - x.1) (μ.prod ν) ≪ μ
Tactic: refine (hk.mono_ac ?_).comp_measurable (by fun_prop)
-- Lean 4 proof step from Mathlib.Analysis.Convolution (goal)
Goal:
𝕜 : Type u𝕜
G : Type uG
E : Type uE
E' : Type uE'
E'' : Type uE''
F : Type uF
F' : Type uF'
F'' : Type uF''
inst : NormedAddCommGroup E
inst_1 : NormedAddCommGroup E'
inst_2 : NormedAddCommGroup E''
inst_3 : NormedAddCommGroup F
f : G → E
g : G → E'
inst_4 : RCLike 𝕜
inst_5 : NormedSpace 𝕜 E
inst_6 : NormedSpace 𝕜 E'
inst_7 : NormedSpace 𝕜 E''
inst_8 : NormedSpace ℝ F
inst_9 : NormedSpace 𝕜 F
inst_10 : MeasurableSpace G
μ ν : Measure G
L : E →L[𝕜] E' →L[𝕜] F
inst_11 : CompleteSpace F
inst_12 : NormedAddCommGroup F'
inst_13 : NormedSpace ℝ F'
inst_14 : NormedSpace 𝕜 F'
inst_15 : CompleteSpace F'
inst_16 : NormedAddCommGroup F''
inst_17 : NormedSpace ℝ F''
inst_18 : NormedSpace 𝕜 F''
inst_19 : CompleteSpace F''
k : G → E''
L₂ : F →L[𝕜] E'' →L[𝕜] F'
L₃ : E →L[𝕜] F'' →L[𝕜] F'
L₄ : E' →L[𝕜] E'' →L[𝕜] F''
inst_20 : AddGroup G
inst_21 : SFinite μ
inst_22 : SFinite ν
inst_23 : μ.IsAddRightInvariant
inst_24 : MeasurableAdd₂ G
inst_25 : ν.IsAddRightInvariant
inst_26 : MeasurableNeg G
hL :
  ∀ (x : E) (y : E') (z : E''),
    Eq.{uF' + 1} (α := F')
      ((((L₂ : (a : F) → E'' →L[𝕜] F') ((((L : (a : E) → E' →L[𝕜] F) x : E' →L[𝕜] F) : (a : E') → F) y) :
              E'' →L[𝕜] F') :
            (a : E'') → F')
          z :
        F')
      ((((L₃ : (a : E) → F'' →L[𝕜] F') x : F'' →L[𝕜] F') : (a : F'') → F')
          ((((L₄ : (a : E') → E'' →L[𝕜] F'') y : E'' →L[𝕜] F'') : (a : E'') → F'') z : F'') :
        F')
x₀ : G
hf : AEStronglyMeasurable f ν
hg : AEStronglyMeasurable g μ
hk : AEStronglyMeasurable k μ
hfg : ∀ᵐ (y : G) ∂μ, ConvolutionExistsAt.{u𝕜, uG, uE, uE', uF} (𝕜 := 𝕜) (F := F) f g y L ν
hgk : ∀ᵐ (x : G) ∂ν, ConvolutionExistsAt (fun (x : G) ↦ ‖g x‖) (fun (x : G) ↦ ‖k x‖) x (mul ℝ ℝ) μ
hfgk :
  ConvolutionExistsAt (fun (x : G) ↦ ‖f x‖) ((fun (x : G) ↦ ‖g x‖) ⋆[mul ℝ ℝ, μ] fun (x : G) ↦ ‖k x‖) x₀ (mul ℝ ℝ) ν
⊢ Measure.map (fun (x : G × G) ↦ x₀ - x.2 - x.1) (μ.prod ν) ≪ μ
have refine : QuasiMeasurePreserving (fun (x : G × G) ↦ x₀ - x.2 - x.1) (μ.prod ν) μ
Tactic: refine QuasiMeasurePreserving.absolutelyContinuous ?_