Module OT := OTF_to_TotalOrder O.Definition max_l := max_l.Definition max_r := max_r.Definition min_l := min_l.Definition min_r := min_r.Notation max_monotone := max_mono.Notation min_monotone := min_mono.Notation max_min_antimonotone := max_min_antimono.Notation min_max_antimonotone := min_max_antimono.

(* Specifications: *)
Lemma max_monotone f : Proper (le ==> le) f -> forall x y, max (f x) (f y) = f (max x y).
Lemma min_monotone f : Proper (le ==> le) f -> forall x y, min (f x) (f y) = f (min x y).
Lemma min_max_antimonotone f : Proper (le ==> flip le) f -> forall x y, min (f x) (f y) = f (max x y).
Lemma max_min_antimonotone f : Proper (le ==> flip le) f -> forall x y, max (f x) (f y) = f (min x y).