let domains_disjoint maps =
    match D.duplicates (List.concat (List.map (fun m -> List.map fst (M.bindings m)) maps)) with
      | D.No_dups _ -> true
      | D.Has_dups _ -> false