let add_fct_pre config acc spec =
  let ki = Kglobal in
  let add b acc p = add_prop config acc Ahyp (prepare_pre config ki b p) in
  let acc = match Cil.find_default_behavior spec with None -> acc
    | Some b -> List.fold_left (add b) acc b.b_requires
  in
  let acc = match get_behav config ki spec.spec_behavior with None -> acc
    | Some b ->
        let acc =
          if not (Cil.is_default_behavior b) then
            List.fold_left (add b) acc b.b_requires
          else acc (* since default requires are already added *)
        in List.fold_left (add b) acc b.b_assumes
  in acc