let init_map closure univ =
  if List.length closure > 0 then begin
    let map = new intprojection (List.length closure) in
    List.iter map#add closure;
    map
  end
  else new identity