An [independence system](https://en.wikipedia.org/wiki/Independence_system) is a collection $I$ of subsets of a set such that if $A\in I$, then any subset of $A$ is in $I$. These sets are called independent.

Suppose I have an oracle for testing independence. Is there an efficient (especially in the sense of minimizing the number of calls to the oracle, which is expensive) algorithm for finding all maximal independent sets?

I implemented a brute force method (just looping over the powerset) which chokes for inputs sizes above about $n=6$. On the other hand, the [Bron-Kerbosch algorithm](https://en.wikipedia.org/wiki/Bron%E2%80%93Kerbosch_algorithm) solves exactly this problem in a special case, and my implementation of it runs quite happily up to around $n=30$. That would be plenty satisfactory to me.