Instance EqDec_AMap_key : EqDec AMap.key.

Lemma AMap_Raw_add_fold_left_permut A (EQ : A -> A -> Prop) B f (l l' : list B) (e : A) : (forall e, EQ e e) -> (forall e e', EQ e e' -> EQ e' e) -> (forall e e' e'', EQ e e' -> EQ e' e'' -> EQ e e'') -> (forall a e e', EQ e e' -> EQ (f e a) (f e' a)) -> (forall a b e, EQ (f (f e a) b) (f (f e b) a)) -> Permutation l l' -> EQ (fold_left f l e) (fold_left f l' e).