proposition: Lemma unguard {T} (x : T) : refine { x' : T | True } (ret x).
proof: Proof. repeat intro; computes_to_inv; subst. apply PickComputes; constructor. Qed.
imports: Fiat.Parsers.ContextFreeGrammar.Core Fiat.Parsers.ContextFreeGrammar.PreNotations Fiat.Parsers.StringLike.FirstCharSuchThat Coq.Strings.String Coq.Arith.PeanoNat Fiat.Computation.Core Coq.Program.Program Fiat.Computation.ApplyMonad Fiat.Computation.SetoidMorphisms Fiat.Common Fiat.Parsers.StringLike.Core Fiat.Parsers.ContextFreeGrammar.Equality Fiat.Parsers.ContextFreeGrammar.Carriers Fiat.Common.Equality Fiat.Common.BoolFacts Fiat.Common.NatFacts Coq.Lists.List