File tree Expand file tree Collapse file tree
Analysis/SpecialFunctions/Trigonometric/Chebyshev Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -328,13 +328,11 @@ theorem abs_iterate_derivative_T_real_le (n k : ℕ) {x : ℝ} (hx : |x| ≤ 1)
328328 have := T_iterate_derivative_mem_span_T (R := ℝ) n k
329329 rw [setOf_T_eq_map] at this
330330 obtain ⟨f, hf⟩ := Submodule.mem_span_finset'.mp this
331- let g (m : ℕ) := if hm : m ∈ Finset.Icc 0 (n - k) then f ⟨(T ℝ m), by simp [hm]⟩ else 0
331+ let g (m : ℕ) := if hm : m ∈ Finset.Icc 0 (n - k) then f ⟨(T ℝ m), by simp [Tnat, hm]⟩ else 0
332332 have : ∑ m ∈ Finset.Icc 0 (n - k), g m • (T ℝ m) = ∑ a, f a • a.val := by
333333 rw [Finset.univ_eq_attach]
334- apply Finset.sum_bij
335- case i => use fun m hm => ⟨T ℝ m, by simp [hm]⟩
336- case hi => simp
337- case i_inj => intro _ _ _ _ hm; convert congrArg (Polynomial.degree ·.1 ) hm; simp [degree_T]
334+ apply Finset.sum_bij (fun m hm => ⟨T ℝ m, by simp [Tnat, hm]⟩) (by simp)
335+ case i_inj => intros; grind
338336 case i_surj => aesop
339337 grind
340338 replace hf (y : ℝ) :
Original file line number Diff line number Diff line change @@ -507,9 +507,15 @@ theorem U_mem_span_T (n : ℕ) : U R n ∈ Submodule.span ℕ {T R m | m ∈ Fin
507507 refine Submodule.add_mem _ ?_ ((Submodule.span_mono (by grind)) h₀)
508508 · exact Submodule.smul_of_tower_mem _ 2 (Submodule.mem_span_of_mem ⟨n + 2 , by simp⟩)
509509
510+ /-- `T` defines an injection from `ℕ` to `R[X]` given by `T R n` -/
511+ noncomputable def Tnat [IsDomain R] [NeZero (2 : R)] : ℕ ↪ R[X] :=
512+ {
513+ toFun m := T R m
514+ inj' m₁ m₂ hm := by convert congrArg Polynomial.degree hm; simp [degree_T]
515+ }
516+
510517theorem setOf_T_eq_map [IsDomain R] [NeZero (2 : R)] (n : ℕ) :
511- {T R m | m ∈ Finset.Icc 0 n} = (Finset.Icc 0 n).map ⟨fun (m : ℕ) => T R m,
512- by intro m₁ m₂ hm; convert congrArg Polynomial.degree hm; simp [degree_T]⟩ := by grind
518+ {T R m | m ∈ Finset.Icc 0 n} = (Finset.Icc 0 n).map (Tnat (R := R)) := by grind
513519
514520/-- `C n` is the `n`th rescaled Chebyshev polynomial of the first kind (also known as a Vieta–Lucas
515521polynomial), given by $C_n(2x) = 2T_n(x)$. See `Polynomial.Chebyshev.C_comp_two_mul_X`. -/
You can’t perform that action at this time.
0 commit comments