fact: Definition CacheSig : ADTSig := ADTsignature { "EmptyCache" : unit → rep, "AddKey" : rep × (Key * Value) → rep × bool, "UpdateKey" : rep × (Key * (Value -> Value)) → rep × bool, "LookupKey" : rep × Key → rep × (option Value) }.
imports: Fiat.Common.Coq__8_4__8_5__Compat Coq.Strings.String Coq.ZArith.ZArith Coq.Lists.List Coq.Logic.FunctionalExtensionality Coq.Sets.Ensembles Computation ADT ADTRefinement ADTNotation BuildADTRefinements KVEnsembles