Set Implicit Arguments.
Require qs_definitions.
Require ne_tree_monad.
Section contents.
Variable E: sort_order.E.
Definition M: Monad := MonoidMonadTrans.M NatAddMonoid ne_tree_monad.ext.
Definition cmp (x y: E): M comparison :=
@ret ne_tree_monad.M _ (1%nat, sort_order.Ecmp E x y).
Definition pick := monoid_tree_monad.pick NatAddMonoid.

Lemma Mext: extMonad M.
Proof MonoidMonadTrans.Mext NatAddMonoid ne_tree_monad.ext.