(** We hence obtain all the generic properties of [min] and [max]. *)
Ltac order := Private_Tac.order.
(** Minimum, maximum and constant one *)

(** ** Results concerning [iter_op] *)
Lemma iter_op_succ : forall A (op:A->A->A),
(forall x y z, op x (op y z) = op (op x y) z) ->
forall p a,
iter_op op (succ p) a = op a (iter_op op p a).