Notation eqke := (@eqke elt).Notation eqk := (@eqk elt).Instance eqk_equiv : Equivalence eqk.Instance eqke_equiv : Equivalence eqke.

(* Specifications: *)
Lemma InA_eqke_eqk : forall k1 k2 e1 e2 l, E.eq k1 k2 -> InA eqke (k1,e1) l -> InA eqk (k2,e2) l.
Lemma NoDupA_eqk_eqke : forall l, NoDupA eqk l -> NoDupA eqke l.
Lemma findA_rev : forall l k, NoDupA eqk l -> findA (eqb k) l = findA (eqb k) (rev l).
Lemma elements_Empty : forall m:t elt, Empty m <-> elements m = nil.
Lemma elements_empty : elements (@empty elt) = nil.