Do you know some neat Java libaries that allow you to make cartesian product of two (or more) sets?
For example: I have three sets. One with objects of class Person
how about using odl.com.google.common18.collect.Sets and calling Sets.cartesianProduct() method