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₁ ×ᶠ 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.ord_connected.tendsto_Icc
- 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_Icc_Icc
- filter.tendsto_Ioc_Icc_Icc
- filter.tendsto_Icc_pure_pure
- filter.tendsto_Ico_pure_bot
- filter.tendsto_Ioc_pure_bot
- filter.tendsto_Ioo_pure_bot
- filter.tendsto_Icc_interval_interval
- filter.tendsto_Ioc_interval_interval
- filter.tendsto_interval_of_Icc
- tendsto_Icc_class_nhds
- tendsto_Ico_class_nhds
- tendsto_Ioc_class_nhds
- tendsto_Ioo_class_nhds
- tendsto_Ixx_nhds_within
- tendsto_Icc_class_nhds_pi