let subst_result env v_exp p = match env.result with | None -> p | Some xres -> match v_exp with | Some v_exp -> D.subst xres (logic_of_value v_exp) p | None -> D.forall [xres] p