diff --git a/Mathlib/Analysis/Analytic/IteratedFDeriv.lean b/Mathlib/Analysis/Analytic/IteratedFDeriv.lean index 3800e8c99e9a1f..a82f6110453b2f 100644 --- a/Mathlib/Analysis/Analytic/IteratedFDeriv.lean +++ b/Mathlib/Analysis/Analytic/IteratedFDeriv.lean @@ -127,17 +127,9 @@ lemma ContinuousMultilinearMap.iteratedFDeriv_comp_diagonal rw [← sum_comp (Equiv.embeddingEquivOfFinite (Fin n))] congr with σ congr with i - have A : ∃ y, σ y = i := by - have : Function.Bijective σ := (Fintype.bijective_iff_injective_and_card _).2 ⟨σ.injective, rfl⟩ - exact this.surjective i - rcases A with ⟨y, rfl⟩ - simp only [EmbeddingLike.apply_eq_iff_eq, exists_eq, ↓reduceDIte, - Function.Embedding.toEquivRange_symm_apply_self, ContinuousLinearMap.coe_pi', - ContinuousLinearMap.coe_id', id_eq, g] - congr 1 - symm + obtain ⟨y, rfl⟩ := σ.equivOfFiniteSelfEmbedding.surjective i simp [inv_apply, Perm.inv_def, - ofBijective_symm_apply_apply, Function.Embedding.equivOfFiniteSelfEmbedding] + ofBijective_symm_apply_apply, Function.Embedding.equivOfFiniteSelfEmbedding, g] private lemma HasFPowerSeriesWithinOnBall.iteratedFDerivWithin_eq_sum_of_subset (h : HasFPowerSeriesWithinOnBall f p s x r) (h' : AnalyticOn 𝕜 f s) diff --git a/Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean b/Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean index 14d25fb22eb80f..0b1a921be8277a 100644 --- a/Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean +++ b/Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean @@ -408,18 +408,8 @@ def Gamma (s : ℝ) : ℝ := set_option backward.isDefEq.respectTransparency false in theorem Gamma_eq_integral {s : ℝ} (hs : 0 < s) : Gamma s = ∫ x in Ioi 0, exp (-x) * x ^ (s - 1) := by - rw [Gamma, Complex.Gamma_eq_integral (by rwa [Complex.ofReal_re] : 0 < Complex.re s)] - dsimp only [Complex.GammaIntegral] - simp_rw [← Complex.ofReal_one, ← Complex.ofReal_sub] - suffices ∫ x : ℝ in Ioi 0, ↑(exp (-x)) * (x : ℂ) ^ ((s - 1 : ℝ) : ℂ) = - ∫ x : ℝ in Ioi 0, ((exp (-x) * x ^ (s - 1) : ℝ) : ℂ) by - have cc : ∀ r : ℝ, Complex.ofReal r = @RCLike.ofReal ℂ _ r := fun r => rfl - conv_lhs => rw [this]; enter [1, 2, x]; rw [cc] - rw [_root_.integral_ofReal, ← cc, Complex.ofReal_re] - refine setIntegral_congr_fun measurableSet_Ioi fun x hx => ?_ - push_cast - rw [Complex.ofReal_cpow (le_of_lt hx)] - push_cast; rfl + rw [Gamma, Complex.Gamma_eq_integral (RCLike.ofReal_pos.mp hs), Complex.GammaIntegral_ofReal, + Complex.ofReal_re] theorem Gamma_add_one {s : ℝ} (hs : s ≠ 0) : Gamma (s + 1) = s * Gamma s := by simp_rw [Gamma] diff --git a/Mathlib/Analysis/SpecialFunctions/Gaussian/FourierTransform.lean b/Mathlib/Analysis/SpecialFunctions/Gaussian/FourierTransform.lean index f6c3cacfd22085..3f43294b09daeb 100644 --- a/Mathlib/Analysis/SpecialFunctions/Gaussian/FourierTransform.lean +++ b/Mathlib/Analysis/SpecialFunctions/Gaussian/FourierTransform.lean @@ -97,13 +97,7 @@ theorem verticalIntegral_norm_le (hb : 0 < b.re) (c : ℝ) {T : ℝ} (hT : 0 ≤ rw [mul_assoc] · intro y hy have absy : |y| ≤ |c| := by - rcases le_or_gt 0 c with (h | h) - · rw [uIoc_of_le h] at hy - rw [abs_of_nonneg h, abs_of_pos hy.1] - exact hy.2 - · rw [uIoc_of_ge h.le] at hy - rw [abs_of_neg h, abs_of_nonpos hy.2, neg_le_neg_iff] - exact hy.1.le + simpa using Set.abs_sub_left_of_mem_uIcc (Set.uIoc_subset_uIcc hy) rw [norm_mul, norm_I, one_mul, two_mul] refine (norm_sub_le _ _).trans (add_le_add (vert_norm_bound hT absy) ?_) rw [← abs_neg y] at absy