Zulip Chat Archive
Stream: general
Topic: Exists permutation, which makes the function monotone
Mantas Baksys (Mar 29 2022 at 20:30):
I'm pretty sure we don't have the following lemma (or smth similar) and I am not too sure where to start.
import order.monotone
import data.finset.basic
lemma exists_perm_comp_monotone_on {ι α : Type*} [preorder ι] [linear_order α] {f : ι → α} (s : finset ι) :
∃ σ : equiv.perm ι, {x | σ x ≠ x} ⊆ s ∧ monotone_on (f ∘ σ) s :=
begin
sorry
end
My first thought was to use finset.sort
in some way but I can't currently see how. Thanks for the help!
Yaël Dillies (Mar 29 2022 at 20:30):
Just noting that there is a more general version using docs#monovary and that the proof of the above should translate directly to a proof of the monovary
version.
Patrick Massot (Mar 29 2022 at 20:32):
I don't think you should use finset.sort
. I would do an induction on s
Patrick Massot (Mar 29 2022 at 20:33):
I mean starting with
classical,
apply s.induction_on,
Eric Wieser (Mar 29 2022 at 21:06):
I think there is probably a short and constructive way to get what you want here using docs#finset.sort
Eric Wieser (Mar 29 2022 at 21:07):
Not to say that it's easier than induction!
David Wärn (Mar 30 2022 at 06:58):
Here's a similar result proved using docs#mono_equiv_of_fin: https://github.com/leanprover-community/mathlib/blob/deuber/src/combinatorics/to_mathlib.lean#L15-L40. I'm still not sure about the best way to phrase the lemma
Yaël Dillies (Mar 30 2022 at 08:12):
David, if you have other statements in mind, do you think we should change the statement of docs#monovary_on.sum_smul_comp_perm_le_sum_smul?
Last updated: Dec 20 2023 at 11:08 UTC