simp only [randDeriv, rand_simp, DRand.bindDR, bindRD, E]
case h.h.a
R : Type ?u.24924
inst✝¹⁸ : RealScalar R
W : Type u_1
inst✝¹⁷ : NormedAddCommGroup W
inst✝¹⁶ : NormedSpace ℝ W
inst✝¹⁵ : NormedSpace R W
inst✝¹⁴ : MeasurableSpace W
X : Type ?u.25180
inst✝¹³ : NormedAddCommGroup X
inst✝¹² : NormedSpace ℝ X
inst✝¹¹ : NormedSpace R W
inst✝¹⁰ : MeasurableSpace X
Y : Type ?u.25419
inst✝⁹ : NormedAddCommGroup Y
inst✝⁸ : NormedSpace ℝ Y
inst✝⁷ : NormedSpace R W
inst✝⁶ : MeasurableSpace Y
Z : Type ?u.25658
inst✝⁵ : NormedAddCommGroup Z
inst✝⁴ : NormedSpace ℝ Z
inst✝³ : NormedSpace R W
inst✝² : MeasurableSpace Z
α : Type
inst✝¹ : MeasurableSpace α
β : Type
inst✝ : MeasurableSpace β
x : W → Rand α
f : W → α → Rand β
hx : RandDifferentiable x
hf : ∀ (x : α), RandDifferentiable fun x_1 => f x_1 x
w dw : W
φ : β → ℝ
⊢ (randDeriv
          (fun w =>
            let x ~ x w
            f w x)
          w dw).action
      φ =
    ((DRand.bindDR (randDeriv x w dw) fun x => f w x) +
          bindRD (x w) fun x => randDeriv (fun x_1 => f x_1 x) w dw).action
      φ
case h.h.a
R : Type ?u.24924
inst✝¹⁸ : RealScalar R
W : Type u_1
inst✝¹⁷ : NormedAddCommGroup W
inst✝¹⁶ : NormedSpace ℝ W
inst✝¹⁵ : NormedSpace R W
inst✝¹⁴ : MeasurableSpace W
X : Type ?u.25180
inst✝¹³ : NormedAddCommGroup X
inst✝¹² : NormedSpace ℝ X
inst✝¹¹ : NormedSpace R W
inst✝¹⁰ : MeasurableSpace X
Y : Type ?u.25419
inst✝⁹ : NormedAddCommGroup Y
inst✝⁸ : NormedSpace ℝ Y
inst✝⁷ : NormedSpace R W
inst✝⁶ : MeasurableSpace Y
Z : Type ?u.25658
inst✝⁵ : NormedAddCommGroup Z
inst✝⁴ : NormedSpace ℝ Z
inst✝³ : NormedSpace R W
inst✝² : MeasurableSpace Z
α : Type
inst✝¹ : MeasurableSpace α
β : Type
inst✝ : MeasurableSpace β
x : W → Rand α
f : W → α → Rand β
hx : RandDifferentiable x
hf : ∀ (x : α), RandDifferentiable fun x_1 => f x_1 x
w dw : W
φ : β → ℝ
⊢ (fderiv ℝ
        (fun x' =>
          ∫ (y : β),
            φ y ∂↑(let x ~ x x'
                f x' x).μ)
        w)
      dw =
    (fderiv ℝ (fun x' => ∫ (y : α), ∫ (y : β), φ y ∂↑(f w y).μ ∂↑(x x').μ) w) dw +
      ∫ (x' : α), (fderiv ℝ (fun x'_1 => ∫ (y : β), φ y ∂↑(f x'_1 x').μ) w) dw ∂↑(x w).μ