1

Suppose I'm given a set $S$ and antichain $A \subset 2^S$ ($\forall a_1,a_2\in A: a_1\neq a_2 \iff a_1 \nsubseteq a_2$).
Let's call subset $b \in 2^S$ covered by $A$ if $\exists a \in A :b \subseteq a $.

I'm looking for a way to answer "What part/what percentage of $2^S$ is covered by $A$?"

Due to $|S|>100$, it's infeasible to check all subsets.
Due to $|A|>100$, it's infeasible to euler-diagram all cover intersections.

Randomly generating subsets is a solution, but
a) it won't be useful on extremely low and extremely high coverage (like $A$ consisting of only 1 subset containing half of $S$ will be undetectable)
and
b) quantitively comparing coverage of different antichains may be complicated due to noise

I've tried looking in literature, but my scholar-googling skills aren't great.
I hope you have any ideas.

NooneAtAll3
  • 123
  • 7

1 Answers1

1

I suggest you use inclusion-exclusion.

Let $A=\{a_1,\dots,a_n\}$. Let $B_i$ denote the set of all subsets of $a_i$, i.e., $B_i=\{b \in 2^S \mid b \subseteq a_i\}$. The inclusion-exclusion principle says that

$$\Big| \bigcup_i B_i \Big| = \sum_i |B_i| - \sum_{i<j} |B_i \cap B_j| + \sum_{i<j<k} |B_i \cap B_j \cap B_k| - \cdots$$

If you truncate this after $k$ terms, you get an approximation to the left-hand side, and you can compute this approximation in $O(n^k)$ time. Here you should use the fact that $|X|=2^{|X|}$, so we can efficiently compute

$$|B_i \cap B_j \cap B_k| = |2^{a_i \cap b_i \cap b_k}| = 2^{|a_i \cap b_i \cap b_k|}.$$

If you truncate after 3 or 4 or 5 terms, you'll probably get a pretty good approximation, and I'm guessing it'll be tractable to compute.

D.W.
  • 159,275
  • 20
  • 227
  • 470
  • That's a much better euler-diagram -ation than one I thought about (adding one set a time). And power of 2 is obvious, but thanks for spelling out. – NooneAtAll3 Feb 10 '23 at 14:32
  • I can think of counterexample for fast convergence (50 elements shared in all antichain's sets, 51th being different), but on average this should work great. – NooneAtAll3 Feb 10 '23 at 14:34