:: (a -> a -> Bool) -> [a] -> [[a]] package:maximal-cliques

Given a list of nodes, and a function that determines whether there is an edge between any two nodes, yields a list of maximal cliques -- sets of nodes such that every node is connected to every other, and such that no other node may be added while maintaining this property.