proposition: Lemma eqlistA_eq {A} ls ls' : @SetoidList.eqlistA A eq ls ls' <-> ls = ls'.
proof: Proof. split; intro H; subst; try reflexivity. revert ls' H. induction ls as [|x xs IHxs]; intros []; intros; f_equal; inversion H; subst; trivial; eauto with nocore. Qed.
imports: Fiat.Common.Coq__8_4__8_5__Compat Coq.ZArith.ZArith Coq.Lists.List Coq.Lists.SetoidList Coq.Bool.Bool Fiat.Common Fiat.Common.List.Operations Fiat.Common.Equality Fiat.Common.List.FlattenList Fiat.Common.LogicFacts