Documentation

Mathlib.Analysis.SpecificLimits.Normed

A collection of specific limit computations #

This file contains important specific limit computations in (semi-)normed groups/rings/spaces, as well as such computations in โ„ when the natural proof passes through a fact about normed spaces.

Powers #

theorem isLittleO_pow_pow_of_lt_left {rโ‚ rโ‚‚ : โ„} (hโ‚ : 0 โ‰ค rโ‚) (hโ‚‚ : rโ‚ < rโ‚‚) :
(fun (n : โ„•) => rโ‚ ^ n) =o[Filter.atTop] fun (n : โ„•) => rโ‚‚ ^ n
theorem isBigO_pow_pow_of_le_left {rโ‚ rโ‚‚ : โ„} (hโ‚ : 0 โ‰ค rโ‚) (hโ‚‚ : rโ‚ โ‰ค rโ‚‚) :
(fun (n : โ„•) => rโ‚ ^ n) =O[Filter.atTop] fun (n : โ„•) => rโ‚‚ ^ n
theorem isLittleO_pow_pow_of_abs_lt_left {rโ‚ rโ‚‚ : โ„} (h : |rโ‚| < |rโ‚‚|) :
(fun (n : โ„•) => rโ‚ ^ n) =o[Filter.atTop] fun (n : โ„•) => rโ‚‚ ^ n
theorem TFAE_exists_lt_isLittleO_pow (f : โ„• โ†’ โ„) (R : โ„) :
[โˆƒ a โˆˆ Set.Ioo (-R) R, f =o[Filter.atTop] fun (x : โ„•) => a ^ x, โˆƒ a โˆˆ Set.Ioo 0 R, f =o[Filter.atTop] fun (x : โ„•) => a ^ x, โˆƒ a โˆˆ Set.Ioo (-R) R, f =O[Filter.atTop] fun (x : โ„•) => a ^ x, โˆƒ a โˆˆ Set.Ioo 0 R, f =O[Filter.atTop] fun (x : โ„•) => a ^ x, โˆƒ a < R, โˆƒ (C : โ„), (0 < C โˆจ 0 < R) โˆง โˆ€ (n : โ„•), |f n| โ‰ค C * a ^ n, โˆƒ a โˆˆ Set.Ioo 0 R, โˆƒ C > 0, โˆ€ (n : โ„•), |f n| โ‰ค C * a ^ n, โˆƒ a < R, โˆ€แถ  (n : โ„•) in Filter.atTop, |f n| โ‰ค a ^ n, โˆƒ a โˆˆ Set.Ioo 0 R, โˆ€แถ  (n : โ„•) in Filter.atTop, |f n| โ‰ค a ^ n].TFAE

Various statements equivalent to the fact that f n grows exponentially slower than R ^ n.

  • 0: $f n = o(a ^ n)$ for some $-R < a < R$;
  • 1: $f n = o(a ^ n)$ for some $0 < a < R$;
  • 2: $f n = O(a ^ n)$ for some $-R < a < R$;
  • 3: $f n = O(a ^ n)$ for some $0 < a < R$;
  • 4: there exist a < R and C such that one of C and R is positive and $|f n| โ‰ค Ca^n$ for all n;
  • 5: there exists 0 < a < R and a positive C such that $|f n| โ‰ค Ca^n$ for all n;
  • 6: there exists a < R such that $|f n| โ‰ค a ^ n$ for sufficiently large n;
  • 7: there exists 0 < a < R such that $|f n| โ‰ค a ^ n$ for sufficiently large n.

NB: For backwards compatibility, if you add more items to the list, please append them at the end of the list.

theorem isLittleO_pow_const_const_pow_of_one_lt {R : Type u_2} [NormedRing R] (k : โ„•) {r : โ„} (hr : 1 < r) :
(fun (n : โ„•) => โ†‘n ^ k) =o[Filter.atTop] fun (n : โ„•) => r ^ n

For any natural k and a real r > 1 we have n ^ k = o(r ^ n) as n โ†’ โˆž.

theorem isLittleO_coe_const_pow_of_one_lt {R : Type u_2} [NormedRing R] {r : โ„} (hr : 1 < r) :

For a real r > 1 we have n = o(r ^ n) as n โ†’ โˆž.

theorem isLittleO_pow_const_mul_const_pow_const_pow_of_norm_lt {R : Type u_2} [NormedRing R] (k : โ„•) {rโ‚ : R} {rโ‚‚ : โ„} (h : โ€–rโ‚โ€– < rโ‚‚) :
(fun (n : โ„•) => โ†‘n ^ k * rโ‚ ^ n) =o[Filter.atTop] fun (n : โ„•) => rโ‚‚ ^ n

If โ€–rโ‚โ€– < rโ‚‚, then for any natural k we have n ^ k rโ‚ ^ n = o (rโ‚‚ ^ n) as n โ†’ โˆž.

theorem tendsto_pow_const_mul_const_pow_of_abs_lt_one (k : โ„•) {r : โ„} (hr : |r| < 1) :
Filter.Tendsto (fun (n : โ„•) => โ†‘n ^ k * r ^ n) Filter.atTop (nhds 0)

If |r| < 1, then n ^ k r ^ n tends to zero for any natural k.

theorem tendsto_const_div_pow (r : โ„) (k : โ„•) (hk : k โ‰  0) :
Filter.Tendsto (fun (n : โ„•) => r / โ†‘n ^ k) Filter.atTop (nhds 0)

For k โ‰  0 and a constant r the function r / n ^ k tends to zero.

theorem tendsto_pow_const_mul_const_pow_of_lt_one (k : โ„•) {r : โ„} (hr : 0 โ‰ค r) (h'r : r < 1) :
Filter.Tendsto (fun (n : โ„•) => โ†‘n ^ k * r ^ n) Filter.atTop (nhds 0)

If 0 โ‰ค r < 1, then n ^ k r ^ n tends to zero for any natural k. This is a specialized version of tendsto_pow_const_mul_const_pow_of_abs_lt_one, singled out for ease of application.

theorem tendsto_self_mul_const_pow_of_abs_lt_one {r : โ„} (hr : |r| < 1) :
Filter.Tendsto (fun (n : โ„•) => โ†‘n * r ^ n) Filter.atTop (nhds 0)

If |r| < 1, then n * r ^ n tends to zero.

theorem tendsto_self_mul_const_pow_of_lt_one {r : โ„} (hr : 0 โ‰ค r) (h'r : r < 1) :
Filter.Tendsto (fun (n : โ„•) => โ†‘n * r ^ n) Filter.atTop (nhds 0)

If 0 โ‰ค r < 1, then n * r ^ n tends to zero. This is a specialized version of tendsto_self_mul_const_pow_of_abs_lt_one, singled out for ease of application.

In a normed ring, the powers of an element x with โ€–xโ€– < 1 tend to zero.

theorem AbsoluteValue.tendsto_div_one_add_pow_nhds_one {R : Type u_2} {S : Type u_3} [Field R] [Field S] [LinearOrder S] [TopologicalSpace S] [IsStrictOrderedRing S] [Archimedean S] [_i : OrderTopology S] {v : AbsoluteValue R S} {a : R} (ha : v a < 1) :
Filter.Tendsto (fun (n : โ„•) => v (1 / (1 + a ^ n))) Filter.atTop (nhds 1)

v (1 / (1 + a ^n)) tends to 1 for all v : AbsoluteValue R S for fields R and S, provided v a < 1.

theorem AbsoluteValue.tendsto_div_one_add_pow_nhds_zero {R : Type u_2} {S : Type u_3} [Field R] [Field S] [LinearOrder S] [TopologicalSpace S] [IsStrictOrderedRing S] [Archimedean S] [_i : OrderTopology S] {v : AbsoluteValue R S} {a : R} (ha : 1 < v a) :
Filter.Tendsto (fun (n : โ„•) => v (1 / (1 + a ^ n))) Filter.atTop (nhds 0)

v (1 / (1 + a ^n)) tends to 0 whenever v : AbsoluteValue R S for fields R and S, provided 1 < v a.

Geometric series #

A normed ring has summable geometric series if, for all ฮพ of norm < 1, the geometric series โˆ‘ ฮพ ^ n converges. This holds both in complete normed rings and in normed fields, providing a convenient abstraction of these two classes to avoid repeating the same proofs.

Instances

    Bound for the sum of a geometric series in a normed ring. This formula does not assume that the normed ring satisfies the axiom โ€–1โ€– = 1.

    theorem geom_series_mul_neg {R : Type u_4} [NormedRing R] [HasSummableGeomSeries R] (x : R) (h : โ€–xโ€– < 1) :
    (โˆ‘' (i : โ„•), x ^ i) * (1 - x) = 1
    theorem geom_series_succ {R : Type u_4} [NormedRing R] [HasSummableGeomSeries R] (x : R) (h : โ€–xโ€– < 1) :
    โˆ‘' (i : โ„•), x ^ (i + 1) = โˆ‘' (i : โ„•), x ^ i - 1
    theorem geom_series_mul_one_add {R : Type u_4} [NormedRing R] [HasSummableGeomSeries R] (x : R) (h : โ€–xโ€– < 1) :
    (1 + x) * โˆ‘' (i : โ„•), x ^ i = 2 * โˆ‘' (i : โ„•), x ^ i - 1
    def Units.oneSub {R : Type u_4} [NormedRing R] [HasSummableGeomSeries R] (t : R) (h : โ€–tโ€– < 1) :

    In a normed ring with summable geometric series, a perturbation of 1 by an element t of distance less than 1 from 1 is a unit. Here we construct its Units structure.

    Equations
      Instances For
        @[simp]
        theorem Units.val_oneSub {R : Type u_4} [NormedRing R] [HasSummableGeomSeries R] (t : R) (h : โ€–tโ€– < 1) :
        โ†‘(oneSub t h) = 1 - t
        theorem hasSum_geometric_of_norm_lt_one {K : Type u_4} [NormedDivisionRing K] {ฮพ : K} (h : โ€–ฮพโ€– < 1) :
        HasSum (fun (n : โ„•) => ฮพ ^ n) (1 - ฮพ)โปยน
        theorem tsum_geometric_of_norm_lt_one {K : Type u_4} [NormedDivisionRing K] {ฮพ : K} (h : โ€–ฮพโ€– < 1) :
        โˆ‘' (n : โ„•), ฮพ ^ n = (1 - ฮพ)โปยน
        @[simp]
        theorem summable_geometric_iff_norm_lt_one {K : Type u_4} [NormedDivisionRing K] {ฮพ : K} :
        (Summable fun (n : โ„•) => ฮพ ^ n) โ†” โ€–ฮพโ€– < 1

        A geometric series in a normed field is summable iff the norm of the common ratio is less than one.

        theorem summable_norm_mul_geometric_of_norm_lt_one {R : Type u_4} [NormedRing R] {k : โ„•} {r : R} (hr : โ€–rโ€– < 1) {u : โ„• โ†’ โ„•} (hu : (fun (n : โ„•) => โ†‘(u n)) =O[Filter.atTop] fun (n : โ„•) => โ†‘(n ^ k)) :
        Summable fun (n : โ„•) => โ€–โ†‘(u n) * r ^ nโ€–
        theorem hasSum_choose_mul_geometric_of_norm_lt_one' {R : Type u_4} [NormedRing R] [HasSummableGeomSeries R] (k : โ„•) {r : R} (hr : โ€–rโ€– < 1) :
        HasSum (fun (n : โ„•) => โ†‘((n + k).choose k) * r ^ n) (Ring.inverse (1 - r) ^ (k + 1))
        theorem tsum_choose_mul_geometric_of_norm_lt_one' {R : Type u_4} [NormedRing R] [HasSummableGeomSeries R] (k : โ„•) {r : R} (hr : โ€–rโ€– < 1) :
        โˆ‘' (n : โ„•), โ†‘((n + k).choose k) * r ^ n = Ring.inverse (1 - r) ^ (k + 1)
        theorem hasSum_choose_mul_geometric_of_norm_lt_one {๐•œ : Type u_5} [NormedDivisionRing ๐•œ] (k : โ„•) {r : ๐•œ} (hr : โ€–rโ€– < 1) :
        HasSum (fun (n : โ„•) => โ†‘((n + k).choose k) * r ^ n) (1 / (1 - r) ^ (k + 1))
        theorem tsum_choose_mul_geometric_of_norm_lt_one {๐•œ : Type u_5} [NormedDivisionRing ๐•œ] (k : โ„•) {r : ๐•œ} (hr : โ€–rโ€– < 1) :
        โˆ‘' (n : โ„•), โ†‘((n + k).choose k) * r ^ n = 1 / (1 - r) ^ (k + 1)
        theorem hasSum_coe_mul_geometric_of_norm_lt_one' {R : Type u_4} [NormedRing R] [HasSummableGeomSeries R] {x : R} (h : โ€–xโ€– < 1) :
        HasSum (fun (n : โ„•) => โ†‘n * x ^ n) (x * Ring.inverse (1 - x) ^ 2)

        If โ€–rโ€– < 1, then โˆ‘' n : โ„•, n * r ^ n = r / (1 - r) ^ 2, HasSum version in a general ring with summable geometric series. For a version in a field, using division instead of Ring.inverse, see hasSum_coe_mul_geometric_of_norm_lt_one.

        theorem tsum_coe_mul_geometric_of_norm_lt_one' {๐•œ : Type u_5} [NormedDivisionRing ๐•œ] {r : ๐•œ} (hr : โ€–rโ€– < 1) :
        โˆ‘' (n : โ„•), โ†‘n * r ^ n = r * Ring.inverse (1 - r) ^ 2

        If โ€–rโ€– < 1, then โˆ‘' n : โ„•, n * r ^ n = r / (1 - r) ^ 2, version in a general ring with summable geometric series. For a version in a field, using division instead of Ring.inverse, see tsum_coe_mul_geometric_of_norm_lt_one.

        theorem hasSum_coe_mul_geometric_of_norm_lt_one {๐•œ : Type u_5} [NormedDivisionRing ๐•œ] {r : ๐•œ} (hr : โ€–rโ€– < 1) :
        HasSum (fun (n : โ„•) => โ†‘n * r ^ n) (r / (1 - r) ^ 2)

        If โ€–rโ€– < 1, then โˆ‘' n : โ„•, n * r ^ n = r / (1 - r) ^ 2, HasSum version.

        theorem tsum_coe_mul_geometric_of_norm_lt_one {๐•œ : Type u_5} [NormedDivisionRing ๐•œ] {r : ๐•œ} (hr : โ€–rโ€– < 1) :
        โˆ‘' (n : โ„•), โ†‘n * r ^ n = r / (1 - r) ^ 2

        If โ€–rโ€– < 1, then โˆ‘' n : โ„•, n * r ^ n = r / (1 - r) ^ 2.

        theorem SeminormedAddCommGroup.cauchySeq_of_le_geometric {ฮฑ : Type u_1} [SeminormedAddCommGroup ฮฑ] {C r : โ„} (hr : r < 1) {u : โ„• โ†’ ฮฑ} (h : โˆ€ (n : โ„•), โ€–u n - u (n + 1)โ€– โ‰ค C * r ^ n) :
        theorem dist_partial_sum_le_of_le_geometric {ฮฑ : Type u_1} [SeminormedAddCommGroup ฮฑ] {r C : โ„} {f : โ„• โ†’ ฮฑ} (hf : โˆ€ (n : โ„•), โ€–f nโ€– โ‰ค C * r ^ n) (n : โ„•) :
        dist (โˆ‘ i โˆˆ Finset.range n, f i) (โˆ‘ i โˆˆ Finset.range (n + 1), f i) โ‰ค C * r ^ n
        theorem cauchySeq_finset_of_geometric_bound {ฮฑ : Type u_1} [SeminormedAddCommGroup ฮฑ] {r C : โ„} {f : โ„• โ†’ ฮฑ} (hr : r < 1) (hf : โˆ€ (n : โ„•), โ€–f nโ€– โ‰ค C * r ^ n) :
        CauchySeq fun (s : Finset โ„•) => โˆ‘ x โˆˆ s, f x

        If โ€–f nโ€– โ‰ค C * r ^ n for all n : โ„• and some r < 1, then the partial sums of f form a Cauchy sequence. This lemma does not assume 0 โ‰ค r or 0 โ‰ค C.

        theorem norm_sub_le_of_geometric_bound_of_hasSum {ฮฑ : Type u_1} [SeminormedAddCommGroup ฮฑ] {r C : โ„} {f : โ„• โ†’ ฮฑ} (hr : r < 1) (hf : โˆ€ (n : โ„•), โ€–f nโ€– โ‰ค C * r ^ n) {a : ฮฑ} (ha : HasSum f a) (n : โ„•) :
        โ€–โˆ‘ x โˆˆ Finset.range n, f x - aโ€– โ‰ค C * r ^ n / (1 - r)

        If โ€–f nโ€– โ‰ค C * r ^ n for all n : โ„• and some r < 1, then the partial sums of f are within distance C * r ^ n / (1 - r) of the sum of the series. This lemma does not assume 0 โ‰ค r or 0 โ‰ค C.

        @[simp]
        theorem dist_partial_sum {ฮฑ : Type u_1} [SeminormedAddCommGroup ฮฑ] (u : โ„• โ†’ ฮฑ) (n : โ„•) :
        dist (โˆ‘ k โˆˆ Finset.range (n + 1), u k) (โˆ‘ k โˆˆ Finset.range n, u k) = โ€–u nโ€–
        @[simp]
        theorem dist_partial_sum' {ฮฑ : Type u_1} [SeminormedAddCommGroup ฮฑ] (u : โ„• โ†’ ฮฑ) (n : โ„•) :
        dist (โˆ‘ k โˆˆ Finset.range n, u k) (โˆ‘ k โˆˆ Finset.range (n + 1), u k) = โ€–u nโ€–
        theorem cauchy_series_of_le_geometric {ฮฑ : Type u_1} [SeminormedAddCommGroup ฮฑ] {C : โ„} {u : โ„• โ†’ ฮฑ} {r : โ„} (hr : r < 1) (h : โˆ€ (n : โ„•), โ€–u nโ€– โ‰ค C * r ^ n) :
        CauchySeq fun (n : โ„•) => โˆ‘ k โˆˆ Finset.range n, u k
        theorem NormedAddCommGroup.cauchy_series_of_le_geometric' {ฮฑ : Type u_1} [SeminormedAddCommGroup ฮฑ] {C : โ„} {u : โ„• โ†’ ฮฑ} {r : โ„} (hr : r < 1) (h : โˆ€ (n : โ„•), โ€–u nโ€– โ‰ค C * r ^ n) :
        CauchySeq fun (n : โ„•) => โˆ‘ k โˆˆ Finset.range (n + 1), u k
        theorem NormedAddCommGroup.cauchy_series_of_le_geometric'' {ฮฑ : Type u_1} [SeminormedAddCommGroup ฮฑ] {C : โ„} {u : โ„• โ†’ ฮฑ} {N : โ„•} {r : โ„} (hrโ‚€ : 0 < r) (hrโ‚ : r < 1) (h : โˆ€ n โ‰ฅ N, โ€–u nโ€– โ‰ค C * r ^ n) :
        CauchySeq fun (n : โ„•) => โˆ‘ k โˆˆ Finset.range (n + 1), u k
        theorem exists_norm_le_of_cauchySeq {ฮฑ : Type u_1} [SeminormedAddCommGroup ฮฑ] {f : โ„• โ†’ ฮฑ} (h : CauchySeq fun (n : โ„•) => โˆ‘ k โˆˆ Finset.range n, f k) :
        โˆƒ (C : โ„), โˆ€ (n : โ„•), โ€–f nโ€– โ‰ค C

        The term norms of any convergent series are bounded by a constant.

        Summability tests based on comparison with geometric series #

        theorem summable_of_ratio_test_tendsto_lt_one {ฮฑ : Type u_4} [NormedAddCommGroup ฮฑ] [CompleteSpace ฮฑ] {f : โ„• โ†’ ฮฑ} {l : โ„} (hlโ‚ : l < 1) (hf : โˆ€แถ  (n : โ„•) in Filter.atTop, f n โ‰  0) (h : Filter.Tendsto (fun (n : โ„•) => โ€–f (n + 1)โ€– / โ€–f nโ€–) Filter.atTop (nhds l)) :
        theorem summable_powerSeries_of_norm_lt {ฮฑ : Type u_1} [NormedDivisionRing ฮฑ] [CompleteSpace ฮฑ] {f : โ„• โ†’ ฮฑ} {w z : ฮฑ} (h : CauchySeq fun (n : โ„•) => โˆ‘ i โˆˆ Finset.range n, f i * w ^ i) (hz : โ€–zโ€– < โ€–wโ€–) :
        Summable fun (n : โ„•) => f n * z ^ n

        If a power series converges at w, it converges absolutely at all z of smaller norm.

        theorem summable_powerSeries_of_norm_lt_one {ฮฑ : Type u_1} [NormedDivisionRing ฮฑ] [CompleteSpace ฮฑ] {f : โ„• โ†’ ฮฑ} {z : ฮฑ} (h : CauchySeq fun (n : โ„•) => โˆ‘ i โˆˆ Finset.range n, f i) (hz : โ€–zโ€– < 1) :
        Summable fun (n : โ„•) => f n * z ^ n

        If a power series converges at 1, it converges absolutely at all z of smaller norm.

        Dirichlet and alternating series tests #

        theorem Monotone.cauchySeq_series_mul_of_tendsto_zero_of_bounded {E : Type u_4} [NormedAddCommGroup E] [NormedSpace โ„ E] {b : โ„} {f : โ„• โ†’ โ„} {z : โ„• โ†’ E} (hfa : Monotone f) (hf0 : Filter.Tendsto f Filter.atTop (nhds 0)) (hgb : โˆ€ (n : โ„•), โ€–โˆ‘ i โˆˆ Finset.range n, z iโ€– โ‰ค b) :
        CauchySeq fun (n : โ„•) => โˆ‘ i โˆˆ Finset.range n, f i โ€ข z i

        Dirichlet's test for monotone sequences.

        theorem Antitone.cauchySeq_series_mul_of_tendsto_zero_of_bounded {E : Type u_4} [NormedAddCommGroup E] [NormedSpace โ„ E] {b : โ„} {f : โ„• โ†’ โ„} {z : โ„• โ†’ E} (hfa : Antitone f) (hf0 : Filter.Tendsto f Filter.atTop (nhds 0)) (hzb : โˆ€ (n : โ„•), โ€–โˆ‘ i โˆˆ Finset.range n, z iโ€– โ‰ค b) :
        CauchySeq fun (n : โ„•) => โˆ‘ i โˆˆ Finset.range n, f i โ€ข z i

        Dirichlet's test for antitone sequences.

        theorem Monotone.cauchySeq_alternating_series_of_tendsto_zero {f : โ„• โ†’ โ„} (hfa : Monotone f) (hf0 : Filter.Tendsto f Filter.atTop (nhds 0)) :
        CauchySeq fun (n : โ„•) => โˆ‘ i โˆˆ Finset.range n, (-1) ^ i * f i

        The alternating series test for monotone sequences. See also Monotone.tendsto_alternating_series_of_tendsto_zero.

        theorem Monotone.tendsto_alternating_series_of_tendsto_zero {f : โ„• โ†’ โ„} (hfa : Monotone f) (hf0 : Filter.Tendsto f Filter.atTop (nhds 0)) :
        โˆƒ (l : โ„), Filter.Tendsto (fun (n : โ„•) => โˆ‘ i โˆˆ Finset.range n, (-1) ^ i * f i) Filter.atTop (nhds l)

        The alternating series test for monotone sequences.

        theorem Antitone.cauchySeq_alternating_series_of_tendsto_zero {f : โ„• โ†’ โ„} (hfa : Antitone f) (hf0 : Filter.Tendsto f Filter.atTop (nhds 0)) :
        CauchySeq fun (n : โ„•) => โˆ‘ i โˆˆ Finset.range n, (-1) ^ i * f i

        The alternating series test for antitone sequences. See also Antitone.tendsto_alternating_series_of_tendsto_zero.

        theorem Antitone.tendsto_alternating_series_of_tendsto_zero {f : โ„• โ†’ โ„} (hfa : Antitone f) (hf0 : Filter.Tendsto f Filter.atTop (nhds 0)) :
        โˆƒ (l : โ„), Filter.Tendsto (fun (n : โ„•) => โˆ‘ i โˆˆ Finset.range n, (-1) ^ i * f i) Filter.atTop (nhds l)

        The alternating series test for antitone sequences.

        Partial sum bounds on alternating convergent series #

        theorem Monotone.tendsto_le_alternating_series {E : Type u_4} [Ring E] [PartialOrder E] [IsOrderedRing E] [TopologicalSpace E] [OrderClosedTopology E] {l : E} {f : โ„• โ†’ E} (hfl : Filter.Tendsto (fun (n : โ„•) => โˆ‘ i โˆˆ Finset.range n, (-1) ^ i * f i) Filter.atTop (nhds l)) (hfm : Monotone f) (k : โ„•) :
        l โ‰ค โˆ‘ i โˆˆ Finset.range (2 * k), (-1) ^ i * f i

        Partial sums of an alternating monotone series with an even number of terms provide upper bounds on the limit.

        theorem Monotone.alternating_series_le_tendsto {E : Type u_4} [Ring E] [PartialOrder E] [IsOrderedRing E] [TopologicalSpace E] [OrderClosedTopology E] {l : E} {f : โ„• โ†’ E} (hfl : Filter.Tendsto (fun (n : โ„•) => โˆ‘ i โˆˆ Finset.range n, (-1) ^ i * f i) Filter.atTop (nhds l)) (hfm : Monotone f) (k : โ„•) :
        โˆ‘ i โˆˆ Finset.range (2 * k + 1), (-1) ^ i * f i โ‰ค l

        Partial sums of an alternating monotone series with an odd number of terms provide lower bounds on the limit.

        theorem Antitone.alternating_series_le_tendsto {E : Type u_4} [Ring E] [PartialOrder E] [IsOrderedRing E] [TopologicalSpace E] [OrderClosedTopology E] {l : E} {f : โ„• โ†’ E} (hfl : Filter.Tendsto (fun (n : โ„•) => โˆ‘ i โˆˆ Finset.range n, (-1) ^ i * f i) Filter.atTop (nhds l)) (hfa : Antitone f) (k : โ„•) :
        โˆ‘ i โˆˆ Finset.range (2 * k), (-1) ^ i * f i โ‰ค l

        Partial sums of an alternating antitone series with an even number of terms provide lower bounds on the limit.

        theorem Antitone.tendsto_le_alternating_series {E : Type u_4} [Ring E] [PartialOrder E] [IsOrderedRing E] [TopologicalSpace E] [OrderClosedTopology E] {l : E} {f : โ„• โ†’ E} (hfl : Filter.Tendsto (fun (n : โ„•) => โˆ‘ i โˆˆ Finset.range n, (-1) ^ i * f i) Filter.atTop (nhds l)) (hfa : Antitone f) (k : โ„•) :
        l โ‰ค โˆ‘ i โˆˆ Finset.range (2 * k + 1), (-1) ^ i * f i

        Partial sums of an alternating antitone series with an odd number of terms provide upper bounds on the limit.

        theorem Summable.tendsto_alternating_series_tsum {E : Type u_5} [Ring E] [UniformSpace E] [IsUniformAddGroup E] [CompleteSpace E] {f : โ„• โ†’ E} (hfs : Summable f) :
        Filter.Tendsto (fun (n : โ„•) => โˆ‘ i โˆˆ Finset.range n, (-1) ^ i * f i) Filter.atTop (nhds (โˆ‘' (i : โ„•), (-1) ^ i * f i))
        theorem alternating_series_error_bound {E : Type u_5} [Ring E] [LinearOrder E] [IsOrderedRing E] [UniformSpace E] [IsUniformAddGroup E] [CompleteSpace E] [OrderClosedTopology E] (f : โ„• โ†’ E) (hfa : Antitone f) (hfs : Summable f) (n : โ„•) :
        |โˆ‘' (i : โ„•), (-1) ^ i * f i - โˆ‘ i โˆˆ Finset.range n, (-1) ^ i * f i| โ‰ค f n

        Factorial #

        theorem Real.summable_pow_div_factorial (x : โ„) :
        Summable fun (n : โ„•) => x ^ n / โ†‘n.factorial

        The series โˆ‘' n, x ^ n / n! is summable of any x : โ„. See also expSeries_div_summable for a version that also works in โ„‚, and NormedSpace.expSeries_summable' for a version that works in any normed algebra over โ„ or โ„‚.

        Limits when f x * g x is bounded or convergent and f tends to the cobounded filter.

        theorem tendsto_zero_of_isBoundedUnder_smul_of_tendsto_cobounded {ฮฑ : Type u_1} {R : Type u_4} {K : Type u_5} [NormedRing K] [IsDomain K] [NormedAddCommGroup R] [Module K R] [Module.IsTorsionFree K R] [NormSMulClass K R] {f : ฮฑ โ†’ K} {g : ฮฑ โ†’ R} {l : Filter ฮฑ} (hmul : Filter.IsBoundedUnder (fun (x1 x2 : โ„) => x1 โ‰ค x2) l fun (x : ฮฑ) => โ€–f x โ€ข g xโ€–) (hf : Filter.Tendsto f l (Bornology.cobounded K)) :
        theorem tendsto_smul_congr_of_tendsto_left_cobounded_of_isBoundedUnder {ฮฑ : Type u_1} {R : Type u_4} {K : Type u_5} [NormedRing K] [IsDomain K] [NormedAddCommGroup R] [Module K R] [Module.IsTorsionFree K R] [NormSMulClass K R] {fโ‚ fโ‚‚ : ฮฑ โ†’ K} {g : ฮฑ โ†’ R} {t : R} {l : Filter ฮฑ} (hmul : Filter.Tendsto (fun (x : ฮฑ) => fโ‚ x โ€ข g x) l (nhds t)) (hfโ‚ : Filter.Tendsto fโ‚ l (Bornology.cobounded K)) (hbdd : Filter.IsBoundedUnder (fun (x1 x2 : โ„) => x1 โ‰ค x2) l fun (x : ฮฑ) => โ€–fโ‚ x - fโ‚‚ xโ€–) :
        Filter.Tendsto (fun (x : ฮฑ) => fโ‚‚ x โ€ข g x) l (nhds t)