I came across a specific problem and looking for some algorithm for it. The problem to solve is as described below.
Let's say we have combinations like below
1 - 3 - 5
1 - 4 - 5
1 - 8 - 5
2 - 4 - 5
3 - 4 - 5
2 - 4 - 7
These combinations were generated from given sets, in this particular case let's say from
{1},{3,4,8},{5}
{2,3},{4},{5}
{2},{4},{7}
What I want to do is recreate sets from these combinations. I know for these combinations you have more than one solution, e.g.
1st solution
{1}, {3, 4, 8}, {5}
{2, 3}, {4}, {5}
{2}, {4}, {7}
2nd solution
{1}, {3, 8}, {5}
{1, 2, 3}, {4}, {5}
{2}, {4}, {7}
3rd solution
{1}, {3, 4, 8}, {5}
{3}, {4}, {5}
{2}, {4}, {5, 7}
But the final (optimal) solution would be the one with as little sets as possible or the random one in case they are all equivalent in terms of sets count.
Do algorithms for such a problem exist? I appreciate if anybody who has been dealing with this kind of problem can give me some hints.
EDIT: looks like what I'm looking for is a decomposition of n-ary product (Cartesian product for N)
EDIT: after more research on the topic I found out that the problem is known in a 'graph theory' as the 'minimum clique cover' problem
regards, baz