fact: Definition sequence_Decode' {S S' : Type} (decode1 : DecodeM (S' * T) T) (decode2 : S' -> DecodeM (S * T) T) : DecodeM (S' * S * T) T := fun t env => `(s', t', env') <- decode1 t env; `(s, t', env'') <- decode2 s' t' env'; Some ((s', s), t', env'').
imports: Fiat.Computation Fiat.Common.DecideableEnsembles Fiat.Narcissus.Common.Specs Fiat.Narcissus.Common.ComposeOpt Fiat.Narcissus.Common.Notations Fiat.Narcissus.Formats.Base.FMapFormat Fiat.Narcissus.Formats.Base.LaxTerminalFormat