proposition: Lemma InvertedIndex_BagEnumerateEmpty : BagEnumerateEmpty InvertedIndex_benumerate InvertedIndex_bempty.
proof: Proof. unfold BagEnumerateEmpty, InvertedIndex_benumerate, InvertedIndex_bempty; intros. simpl; intro. generalize H (elements_mapsto_iff (MValues.empty TItem)); clear. induction (MValues.elements (MValues.empty TItem)); simpl; intuition; subst. - destruct a; simpl in *. eapply MValues.empty_1; eapply H0. econstructor; eauto. reflexivity. - destruct a; simpl in *. eapply MValues.empty_1; eapply H0. econstructor; eauto. reflexivity. Qed.
imports: Fiat.Common.Coq__8_4__8_5__Compat Fiat.QueryStructure.Implementation.DataStructures.Bags.BagsInterface Fiat.QueryStructure.Implementation.DataStructures.Bags.BagsProperties Coq.Arith.Peano_dec Coq.Structures.OrdersEx Coq.FSets.FMapInterface Coq.FSets.FMapFacts Coq.FSets.FMapAVL Coq.ZArith.ZArith Fiat.Common Fiat.Common.String_as_OT Fiat.Common.List.ListFacts Fiat.Common.List.FlattenList Fiat.Common.SetEqProperties Fiat.Common.FMapExtensions Fiat.Common.List.PermutationFacts Fiat.QueryStructure.Specification.SearchTerms.ListInclusion