fact: Definition IndexedEnsembleUpdate (ens : IndexedEnsemble) (cond : Ensemble ElementType) (updateR : relation ElementType) : IndexedEnsemble := fun e => (exists f: IndexedElement, ((ens f) /\ cond (indexedElement f) /\ updateR (indexedElement f) (indexedElement e)) /\ elementIndex e = elementIndex f) \/ ((ens e) /\ Complement _ (fun f => cond (indexedElement f)) e).
imports: Fiat.Common.Coq__8_4__8_5__Compat Coq.Lists.List Coq.Strings.String Coq.ZArith.ZArith Coq.Logic.FunctionalExtensionality Coq.Sorting.Permutation Coq.Sets.Ensembles Fiat.Common.DecideableEnsembles Fiat.Common.List.PermutationFacts Fiat.Common.List.ListMorphisms Fiat.Common.List.ListFacts