Zulip Chat Archive
Stream: Is there code for X?
Topic: strict_mono_subseq
Alex J. Best (Oct 12 2021 at 12:24):
I'm trying to brush up some old code that includes:
import order.monotone
variables {γ : Type*} [preorder γ] [decidable_rel ((≤) : γ → γ → Prop)]
def strict_mono_subseq {f : ℕ → γ} (h : ∀ n, ∃ m, f n < f (n + m)) : ℕ → ℕ
| 0 := 0
| (n + 1) := strict_mono_subseq n + nat.find (h (strict_mono_subseq n))
lemma strict_mono_subseq_spec (f : ℕ → γ) (h : ∀ n, ∃ m, f n < f (n + m)) :
strict_mono (f ∘ (strict_mono_subseq h)) := strict_mono_nat_of_lt_succ (λ n, nat.find_spec (h (strict_mono_subseq h n)))
and I noticed we now have docs#filter.strict_mono_subseq_of_tendsto_at_top, however the library lemma assumes linear_order
whereas the application I have is to submodules which only form a partial order (though it is true that in the application the values of f are in a chain I believe) so I was wondering if there is a natural way to combine use-cases, so I have a few related questions
- Is there a lemma/def like the one here that takes a strictly monotone subsequence in the library given these seemingly weaker assumptions?
- Can / should the library lemma strict_mono_subseq_of_tendsto_at_top be generalized to cover something closer to the lemma / def above?
- Is the assumption
(h : ∀ n, ∃ m, f n < f (n + m))
something nice when expressed in filter-language, it seems weaker thantendsto f at_top at_top
?
Yaël Dillies (Oct 12 2021 at 12:58):
A few things:
- I'm pretty sure that
filter.strict_mono_subseq_of_tendsto_at_top
can be generalized. - You condition
∀ n, ∃ m, f n < f (n + m)
still seems too strong. I think the correct hypothesis is "eventually strictly monotone", which does remind me that @Filippo A. E. Nuccio was looking for a definition of "eventually monotone".
Yaël Dillies (Oct 12 2021 at 13:09):
In some sense, you don't need the order to be linear, you just need it to be linear close to infinity. This is what happens with submodules because you have a maximal element.
Filippo A. E. Nuccio (Oct 12 2021 at 13:25):
Just for completeness, in the proof I was working on, I had a sequence that I wanted to state to be "eventually monotone". I new an index such that was monotone for all and ended up definining to be for and constantlu equal to . So, was "really monotone" and I applied some limit-lemma of the form "tendsto.eventually" to deduce properties of from those of .
Last updated: Dec 20 2023 at 11:08 UTC