fact: Definition refineEquiv_split_func_ex2' A A' B (P : A -> Prop) (P' : A' -> Prop) (f : A -> A' -> B) : refineEquiv { b | exists a, P a /\ exists a', P' a' /\ f a a' = b} (a <- { a | P a}; a' <- { a' | P' a'}; ret (f a a')).
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