anchor.diff:                                        (Print.term_to_string t)
                                         (BU.set_elements s |> Print.bvs_to_string ",\n\t"))
       end
  -
  -let def_check_closed rng msg t =
  -    if not (Options.defensive ()) then () else
  -    def_check_vars_in_set rng msg Free.empty t
   
   let def_check_closed_in rng msg l t =
       if not (Options.defensive ()) then () else
  
positive.code:                             (print_ctx_uvar uv)
                              (Print.term_to_string phi);
          let phi = U.abs xs phi (Some (U.residual_tot U.ktype0)) in
          def_check_closed (p_loc prob) "solve_prob'" phi;
          U.set_uvar uv.ctx_uvar_head phi
      in
      let xs, uv = p_guard_uvar prob in
  
negative.code:         | _ -> UF.univ_change u t
        end
      | TERM(u, t) ->
        def_check_closed_in t.pos "commit" (List.map fst u.ctx_uvar_binders) t;
        U.set_uvar u.ctx_uvar_head t
      )
  
  