proposition: Lemma EnsembleListEquivalence_lift_property {TItem: Type} {P: TItem -> Prop} : forall (sequence: list TItem) (ensemble: TItem -> Prop), EnsembleListEquivalence ensemble sequence -> ((forall item, List.In item sequence -> P item) <-> (forall item, Ensembles.In _ ensemble item -> P item)).
proof: Proof. intros * equiv; destruct equiv as [NoDup_l equiv]; setoid_rewrite equiv; reflexivity. Qed.
imports: Coq.Lists.List Coq.Sets.Ensembles Coq.Sorting.Permutation Fiat.Common Fiat.Common.List.PermutationFacts