proposition: Lemma refine_if A : forall (c : Comp A) (b : bool) ta ea, (b = true -> refine c ta) -> (b = false -> refine c ea) -> refine c (If b Then ta Else ea).
proof: Proof. destruct b; simpl; auto. Qed.
imports: Coq.Strings.String Coq.Sets.Ensembles Coq.Bool.Bool Fiat.Common Fiat.Common.BoolFacts Fiat.Common.LogicFacts Fiat.Computation.Core Fiat.Computation.Monad Fiat.Computation.SetoidMorphisms Fiat.Computation.Refinements.Tactics