Definition funPosetMixin := PosetMixin fun_refl fun_asym fun_trans.Canonical funPoset := Eval hnf in Poset tp funPosetMixin.

(* Specifications: *)
Lemma dfun_refl x : dfun_leq x x.
Lemma dfun_asym x y : dfun_leq x y -> dfun_leq y x -> x = y.
Lemma dfun_trans x y z : dfun_leq x y -> dfun_leq y z -> dfun_leq x z.