let notexists_vars frame xs p =
    let _,xta = varmem_at frame Here in
    List.fold_left
      (fun p x ->
         let ta0 = F.var xta in
         let v_x = D.Xindex.get_ind x in
         let q = F.p_eq (D.e_app2 "access" ta0 v_x) (F.e_int 0) in
         F.p_implies q p
      ) p xs