let do_lists_intersect (equal: '-> '-> bool) (list1: 'a list) (list2: 'a list) : bool =
  List.exists
    (fun element1 ->
       (List.exists
          (fun element2 -> 
             equal element1 element2
          )
          list2
       )
    )
    list1