let p_exists_vars vars (p: pred) : pred =
    let vars, p = fresh_vars_in_pred vars p in
      List.fold_left (fun p v -> p_exists v p) p vars