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