A new post in my blog about Cartesian products.
Problem: You have a number of sets and you want all the combinations when choosing one element from each set.
In mathematics, these combinations are called the Cartesian products. They are also known as cross-products. In the database world, they are sometimes called cross-joins.