Suppose $r$ is a set of attributes with probabilities while $p$ is a set of attributes without probabilities. For example, say that $r$ = {$a$:0.4, $b$:1.0} and $p$ = {$a$, $c$}. (Here, $a.prob = 0.4$ and $b.prob = 1.0$.) There are two possible worlds for $r$: {$a$, $b$} with probability 0.4*1 = 0.4 and {$b$} with probability (1-0.4)*1 = 0.6.
I would like to efficiently compute the following equation:
\displaystyle F(r,p) = \sum_{r' \in 2^r - \mathrm{\{\emptyset\}}} (\Pi_{a \in r'} a.c)(\Pi_{a \in r-r'} 1 - a.c)\frac{|W(r')\cap p|}{|W(r')|}
where W(r') strips off the probabilities from r' (e.g., $W$({$b$:1.0}) = {$b$}).
Hence, $F(r,p) = 0.4 * \frac 1 2 + 0.6 * 0 = 0.2.$
The above equation is clearly inefficient to compute because of the exponential size of the power set $2^r$. The approximation
\displaystyle F'(r,p) = \frac{\sum_{a \in r \cap p} a.prob}{\sum_{a \in r} a.prob}
does not seem accurate because F'(r,p) = 0.4 / 0.4+1 = 0.285 $\neq$ 0.2 = $F(r, p)$.
Is F' still an theoretically approximate result or is there some better way to efficiently compute $F$ (say in polynomial time)? What are the related math problems?