2

I have a set $S$ and a set $P = \{P_{1},...,P_{n}\}$ with $\bigcup P_{i} = S$. I want to find all the inclusion-minimal subsets of $P$ that are covers of $S$.

What is the best algorithm for enumerating all the inclusion-minimal covers of $S$ contained in a set $P$ and what is its running time?

Additional information : The algorithm must work in the general case. $|S|$ and $n$ can be anything. I need to enumerate the exact set of all the inclusion-minimal covers of $S$ contained in $P$. Obviously, it is possible to find the first one in polynomial time by just removing elements of $P$. The second one could be found easily by using the same method starting with the different $P\setminus \{P_{i}\}$ with $P_{i}$ an element of the first cover.

I don't really hope for a polynomial delay algorithm but I would be really happy with an incremental polynomial delay, if such a thing exists.

Authary
  • 23
  • 4
  • 1
    There could be exponentially many such covers, is that a problem? – Yuval Filmus Dec 18 '14 at 16:41
  • In practice ? Yes. But unfortunately I need them all anyway. – Authary Dec 18 '14 at 18:01
  • What are the parameter sizes in your setting? In other words, what's the size of $S$ and a typical range of sizes for each $P_i$? What's a typical value for $n$? About how many inclusion-minimal subsets do you expect there to exist, typically? These parameter settings will inform the choice of an algorithm and approach to your problem, so I suggest you edit your question to include that in the question. 2. Asking for a "best" algorithm is not well-defined, since you haven't described what metric you will use to evaluate the algorithm. Can you be more specific?
  • – D.W. Dec 18 '14 at 23:41