let check_fct_preconditions kf state =
  try
    let spec = Kernel_function.get_spec kf in
    let slevel = get_slevel kf in
    check_preconditions kf Kglobal ~slevel
      (Pretty_utils.sfprintf "Function %a@?" Kernel_function.pretty_name kf)
      (State_set.singleton state) spec
  with Not_found -> (State_set.singleton state)