fact: Definition DecodeBindOpt {V} (a : option (S * T)) (k : S -> T -> option (V * T)) : option (V * T) := BindOpt a (fun a => let (a, b) := a in k a b).
imports: Coq.Lists.List Fiat.Common Fiat.Computation.Core Fiat.Computation.Notations Fiat.Narcissus.Common.Notations Fiat.Narcissus.Common.Monoid Fiat.Narcissus.Stores.Cache