Convergence of intervals
If both a and b tend to some filter l₁, sometimes this implies that Ixx a b tends to
l₂.lift' powerset, i.e., for any s ∈ l₂ eventually Ixx a b becomes a subset of s. Here and
below Ixx is one of Icc, Ico, Ioc, and Ioo. We define filter.tendsto_Ixx_class Ixx l₁ l₂
to be a typeclass representing this property.
The instances provide the best l₂ for a given l₁. In many cases l₁ = l₂ but sometimes we can
drop an endpoint from an interval: e.g., we prove tendsto_Ixx_class Ico (𝓟 $ Iic a) (𝓟 $ Iio a),
i.e., if u₁ n and u₂ n belong eventually to Iic a, then the interval Ico (u₁ n) (u₂ n) is
eventually included in Iio a.
The next table shows “output” filters l₂ for different values of Ixx and l₁. The instances
that need topology are defined in topology/algebra/ordered.
| Input filter | Ixx = Icc | Ixx = Ico | Ixx = Ioc | Ixx = Ioo |
| -----------: | :-----------: | :-----------: | :-----------: | :-----------: |
| at_top | at_top | at_top | at_top | at_top |
| at_bot | at_bot | at_bot | at_bot | at_bot |
| pure a | pure a | ⊥ | ⊥ | ⊥ |
| 𝓟 (Iic a) | 𝓟 (Iic a) | 𝓟 (Iio a) | 𝓟 (Iic a) | 𝓟 (Iio a) |
| 𝓟 (Ici a) | 𝓟 (Ici a) | 𝓟 (Ici a) | 𝓟 (Ioi a) | 𝓟 (Ioi a) |
| 𝓟 (Ioi a) | 𝓟 (Ioi a) | 𝓟 (Ioi a) | 𝓟 (Ioi a) | 𝓟 (Ioi a) |
| 𝓟 (Iio a) | 𝓟 (Iio a) | 𝓟 (Iio a) | 𝓟 (Iio a) | 𝓟 (Iio a) |
| 𝓝 a | 𝓝 a | 𝓝 a | 𝓝 a | 𝓝 a |
| 𝓝[Iic a] b | 𝓝[Iic a] b | 𝓝[Iio a] b | 𝓝[Iic a] b | 𝓝[Iio a] b |
| 𝓝[Ici a] b | 𝓝[Ici a] b | 𝓝[Ici a] b | 𝓝[Ioi a] b | 𝓝[Ioi a] b |
| 𝓝[Ioi a] b | 𝓝[Ioi a] b | 𝓝[Ioi a] b | 𝓝[Ioi a] b | 𝓝[Ioi a] b |
| 𝓝[Iio a] b | 𝓝[Iio a] b | 𝓝[Iio a] b | 𝓝[Iio a] b | 𝓝[Iio a] b |
- tendsto_Ixx : filter.tendsto (λ (p : α × α), Ixx p.fst p.snd) (l₁.prod l₁) (filter.lift' l₂ set.powerset)
A pair of filters l₁, l₂ has tendsto_Ixx_class Ixx property if Ixx a b tends to
l₂.lift' powerset as a and b tend to l₁. In all instances Ixx is one of Icc, Ico,
Ioc, or Ioo. The instances provide the best l₂ for a given l₁. In many cases l₁ = l₂ but
sometimes we can drop an endpoint from an interval: e.g., we prove tendsto_Ixx_class Ico (𝓟 $ Iic
a) (𝓟 $ Iio a), i.e., if u₁ n and u₂ n belong eventually to Iic a, then the interval Ico (u₁
n) (u₂ n) is eventually included in Iio a.
We mark l₂ as an out_param so that Lean can automatically find an appropriate l₂ based on
Ixx and l₁. This way, e.g., tendsto.Ico h₁ h₂ works without specifying explicitly l₂.
Instances
- filter.tendsto_Icc_at_top_at_top
- filter.tendsto_Ico_at_top_at_top
- filter.tendsto_Ioc_at_top_at_top
- filter.tendsto_Ioo_at_top_at_top
- filter.tendsto_Icc_at_bot_at_bot
- filter.tendsto_Ico_at_bot_at_bot
- filter.tendsto_Ioc_at_bot_at_bot
- filter.tendsto_Ioo_at_bot_at_bot
- filter.tendsto_Icc_Ici_Ici
- filter.tendsto_Icc_Iic_Iic
- filter.tendsto_Icc_Ioi_Ioi
- filter.tendsto_Icc_Iio_Iio
- filter.tendsto_Ico_Ici_Ici
- filter.tendsto_Ico_Ioi_Ioi
- filter.tendsto_Ico_Iic_Iio
- filter.tendsto_Ico_Iio_Iio
- filter.tendsto_Ioc_Ici_Ioi
- filter.tendsto_Ioc_Iic_Iic
- filter.tendsto_Ioc_Iio_Iio
- filter.tendsto_Ioc_Ioi_Ioi
- filter.tendsto_Ioo_Ici_Ioi
- filter.tendsto_Ioo_Iic_Iio
- filter.tendsto_Ioo_Ioi_Ioi
- filter.tendsto_Ioo_Iio_Iio
- filter.tendsto_Icc_pure_pure
- filter.tendsto_Ico_pure_bot
- filter.tendsto_Ioc_pure_bot
- filter.tendsto_Ioo_pure_bot
- tendsto_Icc_class_nhds
- tendsto_Ico_class_nhds
- tendsto_Ioc_class_nhds
- tendsto_Ioo_class_nhds
- tendsto_Ixx_nhds_within
- interval_integral.FTC_filter.to_tendsto_Ixx_class