let use_spec_instead_of_definition kf =
  not (Kernel_function.is_definition kf) ||
    (let name = Kernel_function.get_name kf in
     Builtins.overridden_by_builtin name ||
     Datatype.String.Set.mem name (Value_parameters.UsePrototype.get ())
    )